Files
dev-procfile/گزارش-زیرساخت-توکنسازی-دارانو.md

16 KiB
Raw Permalink Blame History

گزارش فنی زیرساخت سامانه توکن‌سازی دارانو

تهیه‌کننده: شرکت توسعه راه‌کارهای نامتمرکز سنا
تاریخ انتشار: مرداد ۱۴۰۴
نسخه: ۱.۰


۱. معرفی پروژه

۱.۱ درباره شرکت

شرکت توسعه راه‌کارهای نامتمرکز سنا فعال در حوزه فناوری بلاکچین و توکن‌سازی دارایی‌های واقعی (RWA — Real World Assets) است. مأموریت اصلی این شرکت، ایجاد زیرساخت‌های لازم برای تبدیل دارایی‌های فیزیکی و حقوقی به توکن‌های قابل معامله در بازارهای دیجیتال، با رعایت کامل الزامات رگولاتوری و قوانین بانک مرکزی جمهوری اسلامی ایران است.

۱.۲ معرفی سامانه دارانو

سامانه دارانو پلتفرمی برای توکن‌سازی دارایی‌های واقعی است. این سامانه دارایی‌های فیزیکی (مانند املاک و مستغلات) را پس از طی فرآیندهای احراز مالکیت، ارزیابی و تکمیل تشریفات حقوقی، به توکن‌های دیجیتال تبدیل می‌کند. هر توکن نماینده بخشی از مالکیت دارایی پایه بوده و امکان خرید، فروش و معامله در بازار اولیه و ثانویه را فراهم می‌سازد.

در فاز پایلوت، تمرکز سامانه بر روی املاک است و یک واحد ملکی با نام «مژگان» به‌عنوان نمونه اولیه توکن‌سازی انتخاب شده است.

۱.۳ اصول حاکم بر سامانه

اصل توضیح
رعایت رگولاتوری کلیه فرآیندها منطبق بر قوانین بانک مرکزی و مقررات مرتبط طراحی شده‌اند
بلاکچین به عنوان Source of Truth مالکیت توکن‌ها فقط و فقط روی شبکه ققنوس ثبت می‌شود
تفکیک نقش‌ها ناشر، میزبان، سرمایه‌گذار، بازارگردان و ناظر هر کدام نقش مشخصی دارند
امنیت چندلایه لایه‌های امنیتی از Cloudflare تا مدیریت کلیدها
شفافیت کامل تمامی تراکنش‌ها و وضعیت دارایی‌ها شفاف و قابل ردیابی است

۲. شرح پروژه

۲.۱ فرآیند توکن‌سازی

فرآیند توکن‌سازی در دارانو شامل مراحل زیر است:

flowchart LR
    A[۱. شناسایی و ارزیابی دارایی] --> B[۲. بررسی حقوقی و مالکیت]
    B --> C[۳. قرارداد میزبانی و امانت]
    C --> D[۴. انتشار توکن روی ققنوس]
    D --> E[۵. عرضه در بازار اولیه]
    E --> F[۶. معامله در بازار ثانویه]
    F --> G[۷. توزیع درآمد دوره‌ای]

۲.۲ جریان درآمدی دارایی

درآمدهای حاصل از دارایی پایه (مانند اجاره‌بها) از طریق مکانیزم‌های مختلف میان دارندگان توکن توزیع می‌شود:

  • توزیع مستقیم ریالی: محاسبه ضریب توزیع بر اساس نسبت توکن‌های فروخته‌شده به کل توکن‌ها
  • بازخرید توکن از طریق بازارگردان: ایجاد فشار خرید و رشد قیمت توکن
  • سبدگردانی و اثر مرکب: امکان سرمایه‌گذاری مجدد سود برای دارندگان توکن

۳. کاربران هدف

سیستم دارانو شامل نقش‌های زیر می‌باشد:

نقش شرح دسترسی
سرمایه‌گذار (خریدار) کاربران عادی که توکن‌ها را خریداری و نگهداری می‌کنند خرید توکن، معامله در بازار ثانویه، مشاهده پورتفولیو
ناشر مالک اصلی دارایی (یا صاحب سببی مانند صلح‌نامه/وکالت‌نامه) ایجاد پروژه توکن‌سازی، ثبت اطلاعات دارایی
میزبان (امین دارایی) نهاد مسئول نگهداری فیزیکی و حقوقی دارایی تأیید وضعیت دارایی، همکاری حقوقی
تیم بازارگردان یک یا چند نفر مسئول تنظیم و مدیریت بازار ثانویه مدیریت نقدینگی، تسهیل معاملات
پلتفرم (ادمین) تیم سنا مستقر در سامانه — شامل تیم فنی، پشتیبانی و مدیر سامانه مدیریت کاربران، صدور توکن، پیکربندی سیستم
بازرس بانکی کارشناس منتخب بانک برای نظارت امنیتی و بازرسی دفتری مشاهده تراکنش‌ها، تیک امنیتی، نظارت بر حساب‌وکتاب

نکته: سامانه اپراتور عمومی ندارد و تنها چند ادمین اصلی با دسترسی‌های مجزا فعالیت می‌کنند. مدیر سامانه دسترسی به ایجاد توکن جدید و تغییرات سایت دارد. تیم توسعه به کدها و اجرای آن‌ها روی سرور تست و سندباکس دسترسی دارد، اما استقرار در محیط عملیاتی (Production) نیازمند تأیید مدیر سامانه و کمیته اجرایی است.


۴. ارتباط سامانه با بیرون

۴.۱ معماری ارتباطی

flowchart LR
    subgraph External
        CDN[CDN / Cloudflare]
        Firewall[فایروال لینوکس]
    end
    subgraph Darano
        Traefik[Traefik<br/>Reverse Proxy]
        API[API Gateway]
        Services[سرویس‌های داخلی]
    end
    Internet[(اینترنت)] --> CDN --> Firewall --> Traefik --> API --> Services

    style CDN fill:#e1f5fe
    style Firewall fill:#fff3e0
    style Traefik fill:#e8f5e9
  • لایه CDN: ترافیک ورودی ابتدا از CDN عبور می‌کند (پشتیبانی از DDoS Protection و TLS/SSL)
  • فایروال: در حال حاضر از فایروال لینوکس (Firewalld) استفاده می‌شود؛ در آینده قرار است سرورها پشت CDN اصلی قرار گیرند
  • Traefik: نقش Reverse Proxy و مدیریت ترافیک داخلی
  • API Gateway: نقطه ورود واحد برای تمام درخواست‌های API

۴.۲ ارتباط با شبکه ققنوس

سامانه برای ثبت تراکنش‌های توکنی از شبکه ققنوس (بر پایه استلار) استفاده می‌کند. بانک ملت نیز یکی از میزبان‌های این شبکه است. ارتباط از طریق Horizon API انجام شده و یک سرویس Wallet Streamer به‌صورت مداوم تراکنش‌های شبکه را رصد و با سیستم داخلی همگام‌سازی می‌کند.


۵. دیاگرام موارد استفاده (Use Case Diagram)

graph TB
    Investor[سرمایه‌گذار]
    Issuer[ناشر]
    Custodian[میزبان/امین دارایی]
    MarketMaker[بازارگردان]
    PlatformAdmin[ادمین پلتفرم]
    BankInspector[بازرس بانکی]

    Investor --> UC1[ثبت‌نام و ورود]
    Investor --> UC2[احراز هویت KYC]
    Investor --> UC3[خرید توکن در بازار اولیه]
    Investor --> UC4[معامله در بازار ثانویه]
    Investor --> UC5[مشاهده پورتفولیو و تاریخچه]
    Investor --> UC6[واریز و برداشت ریال]
    Investor --> UC7[واریز و برداشت توکن]

    Issuer --> UC8[ایجاد پروژه توکن‌سازی]
    Issuer --> UC9[ثبت اطلاعات دارایی]

    Custodian --> UC10[تأیید وضعیت دارایی]
    Custodian --> UC11[همکاری حقوقی]

    MarketMaker --> UC12[مدیریت نقدینگی بازار]
    MarketMaker --> UC13[سفارش‌گذاری در بازار ثانویه]

    PlatformAdmin --> UC14[مدیریت کاربران]
    PlatformAdmin --> UC15[صدور و مدیریت توکن]
    PlatformAdmin --> UC16[مدیریت سفارش‌ها و بازار]
    PlatformAdmin --> UC17[مدیریت بازخرید]
    PlatformAdmin --> UC18[پیکربندی و پایش سامانه]

    BankInspector --> UC19[مشاهده تراکنش‌ها]
    BankInspector --> UC20[تیک امنیتی و نظارت]

    style Investor fill:#e3f2fd
    style Issuer fill:#f3e5f5
    style Custodian fill:#e8f5e9
    style MarketMaker fill:#fff3e0
    style PlatformAdmin fill:#fce4ec
    style BankInspector fill:#efebe9

۶. سرویس‌های شخص ثالث (3rd Party)

۶.۱ خدمات احراز هویت و بانکی

سرویس نقش توضیح
سامانه شاهکار احراز مالکیت سیم‌کارت و مطابقت کدملی با شماره تماس استعلام از پایگاه داده پست
سامانه احراز هویت تأیید اطلاعات هویتی (کدملی، تاریخ تولد، تصویر) سرویس‌های شخص ثالث مشابه (مانند زحل، احراز، جیبیت)
استعلامات بانکی تأیید مالکیت حساب بانکی و شماره شبا سرویس‌های مشابه

۶.۲ خدمات ارتباطی

سرویس نقش توضیح
پنل ایمیل سازمانی ارسال ایمیل‌های خدماتی (خوش‌آمدگویی، تأیید تراکنش و …) سرویس‌هایی مشابه لیموهاست
پنل پیامک ارسال OTP و پیام‌های خدماتی سرویس‌هایی مشابه کاوه‌نگار

۶.۳ زیرساخت و مانیتورینگ

سرویس نقش توضیح
Prometheus جمع‌آوری متریک‌ها استاندارد CNCF
Grafana داشبورد و تجسم داده‌ها استاندارد CNCF
OpenTelemetry Observability یکپارچه استاندارد CNCF
Node Exporter / cAdvisor مانیتورینگ سیستم‌عامل و کانتینرها استاندارد CNCF
S3 / Object Storage ذخیره‌سازی فایل‌ها و بک‌آپ سرویس ابری
Traefik Reverse Proxy و Load Balancer استاندارد CNCF
مرورگر شبکه (Stellar Horizon) ارتباط با شبکه ققنوس سرویس بلاکچین

۷. زیرساخت پلتفرم

۷.۱ زیرساخت فعلی

flowchart TB
    subgraph InternetLayer
        CDN[CDN / Cloudflare]
        Firewall[Firewalld]
    end

    subgraph VPSLayer["زیرساخت ابری مورد تایید بانک"]
        Docker[Docker + Docker Compose]

        subgraph Services
            Traefik[Traefik<br/>Reverse Proxy]
            UI[UI - Next.js]
            Admin[Django Admin]
            API[API Gateway - Go]
            Auth[Auth Service - Go]
            Wallet[Wallet Service - Go]
            Market[Market Service - Go]
            Streamer[Wallet Streamer - Go]
        end

        subgraph Data
            DB[(PostgreSQL)]
            Cache[(Redis)]
            MQ[(RabbitMQ)]
        end
    end

    subgraph BlockchainLayer
        Ghoghnos[(شبکه ققنوس<br/>بر پایه استلار)]
    end

    subgraph Monitoring
        Prometheus[Prometheus<br/>سرور جداگانه]
        Grafana[Grafana]
        Alertmanager[Alertmanager]
    end

    CDN --> Firewall --> Traefik
    Traefik --> UI
    Traefik --> Admin
    Traefik --> API

    API --> Auth
    API --> Wallet
    API --> Market

    Auth --> DB
    Auth --> Cache
    Wallet --> DB
    Wallet --> Cache
    Market --> DB
    Market --> Cache
    Market --> MQ
    Streamer --> DB
    Streamer --> MQ

    Wallet --> Ghoghnos
    Streamer --> Ghoghnos

    Prometheus --> API
    Prometheus --> Auth
    Prometheus --> Wallet
    Prometheus --> Market
    Prometheus --> DB
    Grafana --> Prometheus
    Alertmanager --> Prometheus

مشخصات فنی زیرساخت فعلی:

لایه فناوری توضیح
میزبانی سرویس ابری مورد تایید بانک VPS با گواهی امنیتی بانکی
کانتینری‌سازی Docker + Docker Compose ایزولاسیون کامل سرویس‌ها
Reverse Proxy Traefik v2.10 مدیریت TLS و Routing
API Gateway Go + Gin Router مسیریابی، احراز هویت، Rate Limiting
سرویس‌های بیزینس Go (GORM, Stellar SDK) Auth, Wallet, Market
پنل مدیریت Python + Django Server-Side Rendering
رابط کاربری Next.js + React SSR + Client Rendering
پایگاه داده PostgreSQL 15 داده‌های رابطه‌ای اصلی
کش / Session Redis 7 Session، Rate Limit، Cache
صف پیام RabbitMQ 3.12 Event-Driven آینده
مانیتورینگ Prometheus + Grafana + OpenTelemetry سرور مانیتورینگ جداگانه

۷.۲ زیرساخت آینده (Roadmap)

flowchart LR
    subgraph Current["زیرساخت فعلی (Sync)"]
        API --> Auth
        API --> Wallet
        API --> Market
        Market --> Wallet
    end

    subgraph Future["زیرساخت آینده (Event-Driven)"]
        API --> Auth
        API --> Wallet
        API --> Market

        EventBus[(Event Bus<br/>Kafka / RabbitMQ)]
        Auth -.->|Events| EventBus
        Wallet -.->|Events| EventBus
        Market -.->|Events| EventBus
        Streamer -.->|Events| EventBus

        EventBus --> Notification[Notification Service]
        EventBus --> Analytics[Analytics Service]
        EventBus --> Audit[Audit Service]
    end

    style Current fill:#e3f2fd
    style Future fill:#e8f5e9
ویژگی وضعیت فعلی هدف آینده
الگوی ارتباطی Synchronous (REST/gRPC) Event-Driven (Kafka/RabbitMQ)
مقیاس‌پذیری Docker Compose + Horizontal Scaling Kubernetes (K8s)
Event Bus محدود (فقط RabbitMQ در Wallet) Event Bus مرکزی با Kafka
مدیریت کلیدها Secret Manager در Git HashiCorp Vault / AWS KMS
CI/CD GitHub Actions Pipeline خودکار با تأیید دو مرحله‌ای
Service Mesh ندارد Istio یا Linkerd
Database PostgreSQL Single Master-Slave + Read Replicas

۸. خلاصه و جمع‌بندی

سامانه دارانو، توسعه‌یافته توسط شرکت توسعه راه‌کارهای نامتمرکز سنا، یک پلتفرم توکن‌سازی دارایی‌های واقعی است که با رعایت کامل ضوابط رگولاتوری و قوانین بانک مرکزی طراحی و پیاده‌سازی شده است. معماری سامانه بر پایه میکروسرویس، بلاکچین ققنوس به عنوان Source of Truth و زیرساخت ابری مورد تایید بانک بنا شده و از خدمات شخص ثالث معتبر برای احراز هویت، ارتباطات و مانیتورینگ بهره می‌برد.

نقاط قوت کلیدی سامانه:

  • امنیت بالا: مدیریت کلیدها با Secret Manager، احراز هویت چندمرحله‌ای، فایروال و CDN
  • شفافیت: مالکیت توکن‌ها فقط روی بلاکچین، ردیابی کامل تراکنش‌ها
  • مقیاس‌پذیری: معماری میکروسرویس با امکان مهاجرت به Event-Driven و Kubernetes
  • نظارت: مانیتورینگ ۲۴/۷ با ابزارهای استاندارد CNCF و دسترسی بازرس بانکی