NFTS Beyond Ethereum: کاوش در جریان و Solana - قسمت 2: Solana

ساخت وبلاگ

در دنیای NFT ها ، در درجه اول با NFT ها در blockchains مبتنی بر دستگاه مجازی Ethereum (EVM) در تماس خواهید بود. اکنون که Opensea Solana NFT ها را در سکوی معاملاتی خود یکپارچه کرده است یا بازارهای مشهور مانند NbatoPshot در جریان اجرا شده است ، ارزش آن را دارد که به هر دوی آنها نگاه دقیق تری بیندازید. نه حداقل برای جلوگیری از اشتباهات گران قیمت ، ناشی از تصمیمات بد برای یک فناوری خاص.

برای به دست آوردن درک عملی از هر دو blockchain ، ما اجرای یکسان یک بازار NFT را که از جمله اجرای قراردادهای هوشمند NFT مرتبط بر روی هر یک از آنها است ، مستقر کرده ایم. تجربیات و درسهای آموخته شده در این مجموعه وبلاگ با شما به اشتراک گذاشته می شود.

در این بخش ، شما می آموزید که چگونه Solana یک منحنی یادگیری شیب دار برای نوشتن قراردادهای هوشمند بسیار عملکردی ارائه می دهد.

در صورتی که قسمت 1 را از دست داده اید ، اینجا را کلیک کنید:

فهرست مطالب:

  1. آشنایی با سولانا
  2. مفاهیم سولانا
    1. اثبات تاریخ (POH)
    2. برنامه های Solana
    3. حساب ها
    4. آدرس های مشتق شده برنامه (PDA)
    5. برنامه توکن کتابخانه برنامه Solana (SPL)
    6. استقرار برنامه
    1. بررسی اجمالی
    2. کله پا

    آشنایی با سولانا

    Solana با ارائه اثبات تاریخ - اثبات برای تأیید نظم و عبور از زمان بین رویدادها ، یک اثبات با کارایی بالا و اثبات شده است که سعی در غلبه بر محدودیت شبکه های کلاسیک blockchain دارد. داشتن جدول زمانی که گره ها می توانند به آن اعتماد کنند ، به این معنی است که Solana می تواند از مفاهیم سیستم های توزیع شده مدرن برای افزایش عملکرد شبکه استفاده کند.

    در هر زمان معین ، یکی از گره های سیستم به عنوان رهبر تعیین می شود ، که به طور تصادفی از طریق POS انتخاب می شود. رهبر پیام های کاربر را سفارش می دهد ، با استفاده از یک عملکرد تأخیر قابل اثبات ، اثبات توالی تاریخ را ایجاد می کند و آن را به تأییدیه ها منتشر می کند ، که تأیید آنها را پخش می کند. هر تأیید کننده به همان قابلیت های سخت افزاری با کارایی بالا مجهز است و از طریق انتخابات مبتنی بر POS می تواند رهبر انتخاب شود. Solana از چرخش رهبر برنامه ریزی شده برای به حداقل رساندن اثرات یک رهبر مخرب ، سانسور آرا یا معاملات استفاده می کند.

    Solana

    جریان معامله Solana از کاغذ سفید Solana

    به جای انتشار یک بلوک نتیجه گیری شده برای اعتبار سنج ها ، گره رهبر به همان سرعتی که می تواند معاملات معتبر را در یک ورودی قرار دهد ، وارد می شود. اعتبار سنج ها قبل از دریافت آخرین ورود ، پردازش ورودی ها را شروع می کنند و این باعث کاهش تأخیر بین دریافت بقیه بلوک و رای گیری در مورد اعتبار آن می شود. اثبات تاریخ با داشتن رهبر "Timestamp" هر بلوک با اثبات رمزنگاری مبنی بر گذراندن مدت زمان از آخرین اثبات ، اجرا می شود.

    مفاهیم سولانا

    اثبات تاریخ (POH)

    POH از یک تابع هش رمزنگاری مقاوم در برابر برخورد برای ایجاد یک دنباله هش مداوم استفاده می کند ، جایی که هر عملکرد هش دارای خروجی عملکرد هش قبلی به عنوان ورودی است ، شبیه به نحوه استفاده در یک blockchain معمولی هر بلوک حاوی هش بلوک قبلی است. Solana از این دنباله POH برای اثبات گذر زمان با اضافه کردن وقایع به خروجی هش قبلی استفاده می کند. جدول 1 نمونه ای از دنباله POH را نشان می دهد که ثابت می کند عکس 1 باید مدتی قبل از عکس 2 ایجاد شده باشد. درج عکس 1 تمام مقادیر بعدی را در دنباله تغییر می دهد و از این طریق از قبل محاسباتی غیرممکن است که یک دنباله آینده را انجام دهد.

    فهرست مطالب عمل هش خروجی
    1 SHA256 ("هر مقدار شروع تصادفی") Hash1
    200 SHA256 (Hash199) HASH200
    300 SHA256 (HASH299) HASH300
    326 SHA256 (ضمیمه (Hash335 ، Photo1 Sha256)) 326
    400 SHA256 (HASH399) HASH400
    500 SHA256 (HASH499) HASH500
    600 SHA256 (ضمیمه (Hash599 ، Photo2 SHA256)) HASH600
    700 SHA256 (HASH699) HASH700

    نمونه ای از دنباله POH از کاغذ سفید Solana

    تأیید توالی POH با تقسیم دنباله هش و توزیع تأیید آنها در هسته های متعدد یک GPU مدرن می تواند در زمان قابل توجهی کمتر از زمان لازم برای تولید آن رخ دهد. به همین ترتیب ، نسل یک دنباله POH می تواند به صورت افقی با اضافه کردن دوره ای از هش هش از توالی های موازی به یکدیگر مقیاس شود.

    برنامه های Solana

    برای جلوگیری از مسائل مربوط به همزمانی و بهبود مقیاس پذیری برنامه های Solana ، کد اجرایی و حالت از هم جدا شدند. در سولانا ، همه برنامه ها بدون تابعیت هستند و هرگونه داده ای که با آنها کار می کنند باید از خارج منتقل شوند. به نوبه خود ، برنامه های Solana می تواند به طور موازی فراخوانی شود ، تا زمانی که آنها سعی نکنند روی همان داده ها بنویسند.

    حساب ها

    تمام داده های مربوط به Solana در حساب ها ذخیره می شود ، زیرا حساب های موجود در Solana در اصل بافرهای حافظه هستند که توسط یک کلید عمومی قابل دسترسی هستند. حساب های Solana را می توان به سه نوع جدا کرد:

    • حساب های بومی ،
    • حسابهای داده ای که وضعیت را ذخیره می کنند ، و
    • حساب های برنامه ای که کد اجرایی را ذخیره می کنند.

    حساب توکن مرتبط

    آدرس حساب سیستم هر کاربر با یک حساب کاربری برای پیش فرض Solana Token همراه است ، اما هر نشانه سفارشی به حساب توکن خاص خود به نام حساب Token مرتبط نیاز دارد. آدرس آنها به طور قطعی از آدرس نعناع و آدرس حساب اصلی سیستم کاربر گرفته شده است. آدرس توکن قطعی و منحصر به فرد برای هر نشانه همچنین به حسابهای خارجی امکان ایجاد یک حساب جدید را برای گیرنده می دهد.

    آدرس های مشتق شده برنامه (PDA)

    برای خواندن ایمن و نوشتن داده ها ، برنامه های Solana همیشه بدون تابعیت از P rogram d استفاده می کنند. PDA ها حساب هایی هستند که توسط برنامه های Solana کنترل می شوند و به عنوان پایه و اساس دعوت برنامه های متقابل عمل می کنند. PDA به طور قطعی با استفاده از شناسه و دانه های یک برنامه تولید می شود. فقط برنامه ای که PDA از آن گرفته شده است ، می تواند با استفاده از بذر و برآمدگی ، PDA را امضا کند. برنامه های Solana به طور کلی می تواند دارای چندین حساب داده برای ذخیره حالت های لازم باشد.

    برنامه توکن کتابخانه برنامه Solana (SPL)

    هر نوع توکن روی Solana با استفاده از برنامه توکن کتابخانه برنامه Solana ایجاد می شود. نشانه های SPL با استانداردهای توکن مانند ERC-20 یا ERC-721 قابل مقایسه هستند ، اما به جای ایجاد یک قرارداد جدید برای هر نشانه ، برنامه توکن مطابق دستورالعمل دریافتی ، نشانه را ایجاد و نعناع می کند.

    استقرار برنامه

    استقرار برنامه های Solana از لودر BPF قابل ارتقاء استفاده می کند که از سه نوع مختلف حساب دولتی برای استقرار یک برنامه پشتیبانی می کند.

    حساب برنامه حساب اصلی یک برنامه زنجیره ای است و با "شناسه برنامه" مورد استفاده برای فراخوانی برنامه به آن اشاره شده است. حساب های برنامه پس از استقرار تغییر ناپذیر است ، اما فقط یک حساب پروکسی را به حساب های ذخیره شده با کد بایت و ایالت ها نشان می دهد.

    حساب داده برنامه کد بایت اجرایی برنامه را ذخیره می کند. حساب های بافر برای ذخیره موقت کد بایت در حالی که این برنامه در طول یک سری معاملات مستقر شده است ، استفاده می شود.

    CLI کد بایت را به~1 کیلوبایت قطعه که با نرخ 100 معاملات در ثانیه به حساب بافر ارسال می شوند. پس از معامله نهایی ، کد بایت که به حساب بافر نوشته شده است در یک حساب داده برنامه کپی شده و تأیید می شود.

    پیاده سازی

    بررسی اجمالی

    نمونه اولیه بازار با یک صفحه اصلی شروع می شود که NFT های کاربر وارد شده را نشان می دهد، که فقط پس از احراز هویت با ارائه دهنده کیف پول قابل دسترسی است.

    Solanna_2

    NFT های فهرست شده را می توان در نمای جزئیات باز کرد و اطلاعات اضافی را ارائه کرد و امکان انتقال و سوزاندن NFT را فراهم کرد.

    Solanna_3

    صفحه minting به کاربر اجازه می دهد تا NFT خود را ضرب کند، در حالی که یک پیش نمایش از نتیجه نهایی را نشان می دهد.

    برپایی

    این بازار از شبکه Solana برای استخراج و مدیریت NFT ها استفاده می کند. توکن ها به عنوان توکن های SPL نشان داده می شوند و با یک حساب ابرداده با استفاده از Metaplex مرتبط می شوند، ابرداده های آن ها با استفاده از Bundlr در شبکه Arweave ذخیره می شوند. هنگام دریافت یا ضرب یک توکن جدید، یک حساب توکن جدید با استفاده از آدرس کاربر و آدرس ضرابخانه توکن ایجاد می شود. حساب توکن بخشی از فضای ذخیره سازی کاربر است تا زمانی که توکن به بیرون منتقل یا سوزانده شود.

    Solanna_4

    نمای کلی اجزای مورد استفاده در پیاده سازی Marketplace

    کله پا

    پروتکل Metaplex به عنوان یک استاندارد NFT برای پشتیبانی از توسعه دهندگان در پروژه های NFT خود توسعه داده شد. Metaplex مجموعه ای از ابزارها و قراردادهای هوشمند برای ساده سازی استخراج و فروش NFT در Solana است.

    Solanna_5

    ارائه ساده پیوند بین SPL Token و ابرداده Metaplex

    ساختار NFT در سولانا

    Solanna_6

    حساب های Mint مسئول ذخیره سازی اطلاعات جهانی یک Token، مانند عرضه فعلی و مقامات آن هستند، اما برای ذخیره اطلاعات اضافی به حساب Metadata نیاز دارند. برای ایجاد یک دارایی دیجیتال از یک توکن ساده، یک حساب Metadata با استفاده از یک آدرس مشتق شده از برنامه پیوست می شود. حساب فراداده اطلاعات اضافی مانند یک شی JSON خارج از زنجیره را در خود نگه می دارد. در مورد ما، این در شبکه Arweave ذخیره می شود.

    فرمت های NFT اضافی توسط Metaplex پشتیبانی می شوند که در اینجا در دسترس هستند.

    ویترین متاپلکس پروتکلی است که قراردادهای هوشمندی را برای ایجاد/ضربه NFT، شروع انواع حراج ها یا فروش مستقیم و همچنین تجسم NFT ها به روشی استاندارد فراهم می کند. این به یک برنامه زنجیره ای و یک قسمت جلویی خود میزبانی جدا می شود که می تواند به دلخواه جایگزین یا اصلاح شود. از ایجاد NFTهایی که درصد حق امتیاز پرداخت می کنند، تقسیم سازندگان به هنرمندان اصلی و نسخه های اصلی با چاپ محدود پشتیبانی می کند. NFT ها را می توان در فروش فوری یا حراجی با تنظیمات مختلف در رابطه با زمان، قیمت، اندازه تیک و حراج های سطحی فروخت.

    دستگاه آب نبات متاپلکس

    دستگاه آب نبات Metaplex یک برنامه توزیع NFT در زنجیره ای است که به دلیل توزیع غیرقابل پیش بینی آن از NFT ها نامگذاری شده است و امکان توزیع عادلانه موارد نادر را فراهم می کند. پس از پیکربندی دستگاه آب نبات ، بارگذاری دارایی ها و تنظیم وب سایت Minting ، کاربران می توانند کیف پول Solana خود را به وب سایت وصل کنند و یک NFT تصادفی را از این مجموعه خریداری کنند. برای محافظت در برابر رباتها ، دستگاه آب نبات را می توان با یک چالش دروازه بان پیکربندی کرد.

    یافته های خلاصه

    ما مهمترین یافته ها و تجربیات را از اجرای مثال ما در دو جدول زیر گردآوری کرده ایم. ما اینها را با دنیای توسعه یافته تر و گسترده تر اتریوم تضاد کرده ایم. لازم به ذکر است که این تجربیات از نیمه اول سال 2022 است.

    محیط توسعه

    ابزارهای مختلف تجزیه و تحلیل امنیتی: Mythril ، Mythx ، Echidna.

    شرکت های حسابرسی قرارداد در دسترس < SPAN> دستگاه آب نبات Metaplex یک برنامه توزیع NFT در زنجیره ای است که به دلیل توزیع غیرقابل پیش بینی آن از NFT ها نامگذاری شده است و امکان توزیع منصفانه موارد نادر را فراهم می کند. پس از پیکربندی دستگاه آب نبات ، بارگذاری دارایی ها و تنظیم وب سایت Minting ، کاربران می توانند کیف پول Solana خود را به وب سایت وصل کنند و یک NFT تصادفی را از این مجموعه خریداری کنند. برای محافظت در برابر رباتها ، دستگاه آب نبات را می توان با یک چالش دروازه بان پیکربندی کرد.

استراتژی‌های اسکالپ...
ما را در سایت استراتژی‌های اسکالپ دنبال می کنید

برچسب : نویسنده : ناصر تقوایی بازدید : 33 تاريخ : چهارشنبه 15 شهريور 1402 ساعت: 6:18