رنډ خلاصه سرچینه ده. بشپړ نوډ، explorer، bridge، د ثبوت څېړنه او د والټ مراجعین هر یو په GitHub کې خپل جلا repository لري. کوډ ولولئ، ازموینې وچلوئ، او اصلاحات ولېږئ. دا پاڼه نقشه ده: هره برخه چېرته ده، په څه جوړه شوې، د ثبوت سیسټم تر کومه ځایه رسېدلی، او نن ورځ چېرته دریږي.
Repositoryګانې
| repository | څه پکې دي | ژبه |
|---|---|---|
randprotocol/fullnode | مرجع بشپړ نوډ او والټ: chained HotStuff BFT، د libp2p شبکه، د RAND پټ شوي نوټونو حوض، د zkVM د ثبوت تاییدوونکی، JSON-RPC، د rand والټ CLI او د rand-prover استازی ثبوت جوړوونکی. | Rust |
randprotocol/randscan.org | د randscan.org تر شا د بلاکونو explorer: یو axum indexer چې د PostgreSQL پر سر REST او WebSocket API لري، او د Next.js مخکینۍ برخه. | Rust · TypeScript |
randprotocol/bridge | له Ethereum، Binance Smart Chain، Tron او Solana څخه د USDT او USDC لپاره د ساتونکو bridge: د امانت ساتنې قراردادونه، د تصدیق ګډ بڼه او د هغې د ازموینې وېکټورونه. | Solidity · Rust |
randprotocol/zkp-circuits | د ثبوت سیسټمونو ګام په ګام لارښوونې (Groth16 او STARK پرتله، پټ شوی حوض، حلقوي لاسلیکونه، mixer)، research/، د Rand مرجع zkVM، recursion/، د recursion VM، د guest وسایل او دوه ژباړونکي، او د CUDA kernelونه. د fullnode جوړول اړتیا لري چې دا repository د هغه تر څنګ د circuits/ په نوم checkout شوی وي. | Rust |
randprotocol/clients | د والټ مراجعین: desktop، ویب، iOS او Android. | Rust · Swift · Java · JavaScript |
ټیکنالوژیکي جوړښت
له سره تر پایه Rust. رنډ خپله جلا زنځیر ده: یو HotStuff BFT نوډ د libp2p gossip طبقې سره، د لیجر په توګه په بشپړه توګه پټ شوی نوټونو حوض، له کوانټم وروسته لاسلیکونه او د نوټونو کوډ کول، او د محرم محاسبې لپاره د Rand zkVM، دا ټول په fullnode repository کې. د ثبوت سیسټم پخپله هغه برخه ده چې لا تر فعالې څېړنې لاندې ده، لاندې وګورئ.
| طبقه | څه چلېږي |
|---|---|
| اجماع | Chained HotStuff BFT، د ونډې پر بنسټ وزن لرونکي کورمونه، درېزنځیره ژمنه |
| شبکه | libp2p: TCP، Noise، Yamux، gossipsub، Kademlia، په LANونو کې mDNS |
| لیجر | د پټ شوي نوټونو حوض: د 32 ژورتیا Poseidon2 ونه، د nullifierونو ټولګه، په هره راکړه ورکړه کې یو 4-in-4-out پټشتمنۍ بنډل (تر chain 13 پورې 2-in-2-out)؛ له chain 17 راهیسې د بنډل د ثبوت تر څنګ دوهم، tier-10 د اجازې ثبوت (وېشل شوې اجازه)؛ له chain 18 راهیسې د 1,860 بایټه نوټ پوښونه د کوډ شوي memo سره |
| ټوکنونه | RPL: ټوکن د لیجر په ثبت کې یو داخله ده چې rpl1… پېژندنه لري، قرارداد نه دی؛ د نوټونو په توګه په همدې حوض کې خوځېږي |
| سټیکنګ | د تصدیقوونکو عامه ثبت: له بنډل څخه تضمین، دوهدورهیي آزادول، 1,000 بلاکه دورې؛ له chain 20 راهیسې نوی تصدیقوونکی د ټولګې په رایه منل کېږي |
| محرمه محاسبه | Rand zkVM: RV32IM د Plonky3 batch STARK لاندې، ZK پټوونکی FRI، د محدودیتونو ټولګه 8؛ له chain 18 راهیسې یوه غوښتنه د gas حد اعلانوي چې circuit یې پلي کوي او د هر gas او هر KiB فیس ورکوي؛ له chain 20 راهیسې پروګرام خپل حالت په cellونو کې ساتي او ارزښت په vault کې ساتي (RPL-2) |
| کرپټوګرافي | Dilithium2 · ML-KEM-768 · Poseidon2 · BLAKE3 · ChaCha20-Poly1305 |
| ذخیره | په هر نوډ کې یو RocksDB، fsync شوې ژمنې، د پیل پر مهال د بشپړتیا ازموینه؛ د تاریخ اختیاري لنډول (--prune-history 24h)، او د آرشیف نوډونه هر څه ساتي |
| Bridge | په څلورو زنځیرونو د ساتونکو له خوا تصدیق شوي قفلونه، په هر mint د Dilithium2 ګډ لاسلیک کورم سره؛ bridge شوې شتمني په همدې حوض کې یو نوټ دی |
| ژبه | په ټوله کې Rust؛ د bridge لپاره Solidity، د explorer لپاره TypeScript |
د هر پروګرام لپاره یوه اړیکه
د سپینې پاڼې د اجرا عمومي اړیکه R_exec د کوډ په بڼه شتون لري: rand_zkvm، یو RV32IM ماشین چې د Goldilocks ساحې پر سر په Plonky3 کې د یوه batch STARK لاندې ثابتېږي. دا ثابتوي چې یو څه trace پروګرام hc تر دې عامه پایلو پورې چلولی، په داسې ورودیو چې د مالګې لرونکي H_IN له لارې ژمنه پرې شوې، او د پروګرام هېڅ شی هېڅکله د تاییدوونکي پارامټر نه دی. د محرم پروګرام خپرول د یوه hash ثبتول دي، نه د ځانګړي circuit جوړول.
د ثبوت سیسټم شفاف دی، نه باوري جوړښت لري او نه pairing منحني، او فرضیه یې یو د ټکر پر وړاندې مقاوم hash دی. تمه دا ده چې هره بله برخه چې له ثبوتونو سره سروکار لري پر همدې crate راټوله شي، نه دا چې خپل جلا جوړ کړي. دا crate په zkp-circuits/research کې دی او د محدودیتونو په ټولګه 8 کې fullnode ته vendor شوی (circuits aeacf31، fullnode v0.6.7 او v0.6.8). لاندې جدولونه او اندازې د محدودیتونو ټولګه 5 (milestone M4.2) بیانوي، مګر دا چې یوه کرښه وروسته ټولګه نوموي؛ دا د 2026-09-13 پورې د fullnode له docs/zkvm.md، docs/zkvm-milestones.md او docs/confidential.md څخه اخیستل شوې، او اندازې لکه څنګه چې په Apple Silicon لپټاپ کې اندازه شوې نقل شوې، نه د موخو په توګه.
په نومول شویو busونو اته جدولونه، او نهم د اړتیا پر مهال
یوه ژمنه، یو FRI پرانیستل. جدولونه یو بل نه غواړي؛ هغوی د نومول شویو LogUp busونو له لارې حقایق تبادله کوي (PROGRAM، PROGRAM_WORD، MEMORY، ALU، POSEIDON2، INPUT_DIGEST، INPUT_READ، KECCAK او د range او nibble لټونونه) او تاییدوونکی ګوري چې هر bus په ټولیزه توګه انډول دی. د هر جدول د محدودیت اعظمي درجه د یوې ازموینې له لارې د 8 تر هغه سقف لاندې ټاکل شوې چې د FRI blowup یې اجازه ورکوي.
| جدول | ډول | دنده |
|---|---|---|
program | شاهد | خام لارښوونې کلمې چې له M3.4 راهیسې د circuit دننه decode کېږي، او cpu یې په hc کې digest کوي |
cpu | شاهد | د هر دور لپاره یو قطار، او د digest قطارونه چې پروګرام په hc کې او مالګه لرونکې ورودۍ په H_IN کې جذبوي |
memory | شاهد | راجسټرونه او RAM په یوه جدول کې، د (space، addr، ts) له مخې ترتیب شوي؛ له M2.5 راهیسې له کلمې کوچنی لاسرسی |
alu | شاهد | د بایټlimb حساب، shiftونه، پرتلې؛ له M2.6 راهیسې د RV32M ضرب او وېش |
range | مخکې پروسس شوی · 256 قطاره | د range ازموینې او د دوه د توانونو لټون |
nibble | مخکې پروسس شوی · 256 قطاره | 4-bit AND، OR، XOR؛ هره موندنه پخپله پر دواړو operandونو د range ازموینه ده |
poseidon2 | شاهد | د هر permutation پړاو لپاره یو قطار په 32 قطاره بلاکونو کې؛ POSEIDON2 bus او دواړه digestونه خدمتوي |
input | شاهد · له M4.1 راهیسې | د هرې خصوصي ورودي کلمې لپاره یو قطار؛ INPUT_DIGEST او INPUT_READ خدمتوي، نو یوه لوستنه له ژمنې نشي تښتېدلی |
keccak | شاهد · اختیاري | Keccak-f[1600] په 32 قطاره بلاکونو کې، یوازې په هغه ثبوت کې شتون لري چې guest یې KECCAK غوښتی وي (M4.2) |
له هغه راهیسې د محدودیتونو درې ټولګې پلي شوې دي. ټولګې 6 د پروګرام د deploy وخت عامه ورودۍ لپاره لازمي public جدول اضافه کړ، چې له بېمالګې digest H_PUB سره تړل شوی، او د keccak تر څنګ اختیاري sha256 جدول. ټولګه 7 (chain 16) هر LogUp ټرمینل پر یوه نوي BLIND bus پټوي او هر اعلان شوی جدول لږ تر لږه 2⁷ قطارونو ته رسوي، او د اوږدوالي پورې تړلی POSEIDON2_LEN syscall اضافه کوي. ټولګه 8 (chain 18) د cpu جدول ته یو GAS ستون او یو عامه ارزښت، اعلان شوی GAS_LIMIT، اضافه کوي.
ثبوت څه ښکاره کوي
عامه: د کوډ hash hc (د circuit دننه اته digest کلمې)، د مالګې لرونکې ورودۍ ژمنه H_IN (اته کلمې)، د gas tier، او اته د پایلې کلمې. له محدودیتونو ټولګې 6 راهیسې H_PUB هم، چې د عامه ورودۍ digest دی، او له محدودیتونو ټولګې 8 راهیسې اعلان شوی gas حد. د ثبوت سرلیک د Keccak او SHA-256 جدولونو لوړوالی اعلانوي، نو ښيي چې آیا یوې غوښتنې hash کړی او، د 2⁷ له لږ تر لږه حد پورته، په تقریبي ډول څومره.
پټ: خصوصي ورودۍ (H_IN مالګه لري، نو هم پټوونکی دی او هم تړونکی)؛ د لارښوونې هره کلمه، ځکه چې تاییدوونکی hc ګوري او هېڅکله پروګرام نه ګوري؛ د هر راجسټر او حافظې ارزښت؛ هره اخیستل شوې څانګه؛ د دورونو دقیق شمېر او دقیق مصرف شوی gas؛ او کوم syscallونه چلېدلي، پرته له هغه څه چې د hash جدولونو دوه لوړوالي یې ښيي.
tier د هر ثبوت لپاره عامه دی ځکه چې د STARK اندازه دمخه د هغه د trace لوړوالی ښکاره کوي؛ د شاخص پټول به هېڅ ګټه ونه لري. hc تړونکی دی، پټوونکی نه دی: نن ورځ چېرته دریږي وګورئ.
اندازه شوي، د محدودیتونو په ټولګه 5 کې
| FRI | 80 پوښتنې · 20 PoW bits · blowup 8 · arity 8 · ZK فعال؛ 260-bit فرضي، شاوخوا 86 ثابت شوي. د M2 د 27 پوښتنو بیا تنظیم د 2026-09-12 پلټنې له خوا بېرته واخیستل شو |
| غوښتنه | private_payment په tier 10 کې: د ثبوت لپاره شاوخوا 7 s، په 80 پوښتنو کې شاوخوا 1.2 MB ثبوت (په 27 کې 435 KB)، په M1 کې له 21.6 s او 892 KB څخه را ټیټ شوی |
| لېږد | تر chain 13 پورې د زنځیرونو 2-in-2-out بنډل guest: 3,811 کلمې، شاوخوا 9,160 دورونه، tier 14؛ د ثبوت لپاره شاوخوا 100 s، شاوخوا 1.3 MB ثبوت. د chain 14 د 4-in-4-out پټشتمنۍ guest په همدې tier ټاکل شوی: شاوخوا 100 s، شاوخوا 1.42 MB |
| تایید | د تود key سره شاوخوا 16 ms؛ په نوي (tier، heights) key کې لومړی تایید شاوخوا 230 ms دی |
| بلاک | 4 MiB بودیجه او 2 MiB د ثبوت سقف: په 80 پوښتنو کې په هر بلاک کې شاوخوا درې پټ شوي لېږدونه |
Apple Silicon لپټاپ، release build. په M2.3 کې د بایټ جدول وېشلو د ثبوت وخت بدل کړ؛ د 80 پوښتنو پروفایل د ثبوت اندازه بېرته پورته کړه. د تاییدوونکي key د پروګرام له محتوا څخه خپلواک دی، د tier او د ثبوت له خوا اعلان شوي پروګرام، ورودۍ او keccak لوړوالي له مخې ټاکل کېږي، نو یو نوډ یو key تودوي او بیا یې کاروي.
وروستیو سیټونو اندازې بدلې کړې. د محدودیتونو د سیټ 7 لاندې، د درجې 10 یو ثبوت د تولید په پروفایل کې 1,367,688 بایټه دی، او د درجې 10 یو Keccak لرونکی ثبوت 3,283,898 بایټه دی (اندازه شوی 2026-09-28). له زنځیر 17 راهیسې یو لېږد دوه ثبوتونه لري: د درجې 14 د بنډل ثبوت چې شاوخوا 1.49 MB دی، او د درجې 10 د تصدیق ثبوت چې شاوخوا 1.37 MB دی او جوړول یې شاوخوا 7 s نیسي. د زنځیر 20 جېنېسیس د بلاک حد 20 MiB او د ثبوت حد 4 MiB ټاکي، او یوه غوښتنه له درجې 14 نه نه شي اوړېدای.
درې هدفونه، یو سرکټ
یوازې RISC-V په اصلي ډول اجرا کېږي. د Solidity او Solana پروګرامونه یا د همدې اړیکې دننه په یوه مفسر میلمه کې چلېږي او بایټکوډ یې د ننوت په توګه ورکول کېږي، یا له زنځیر بهر په داسې RISC-V پروګرامونو ژباړل کېږي چې وتنې یې کلمه په کلمه د مفسر له وتنو سره برابرې دي. ګران اپکوډونه د بټ په بټ سمولیشن پر ځای ځانګړو همپروسیسر جدولونو ته اړتیا لري.
| هدف | لاره | همپروسیسرونه |
|---|---|---|
| RISC-V | اصلي. RV32IM: یا په لاس د asm.rs له لارې اسمبل شوی، یا د riscv32im-unknown-none-elf لپاره کمپایل شوی no_std Rust چې له M4.1 راهیسې د فلیټ باینري په توګه بارېږي، یا د rand-guest له خوا له Rust یا C څخه د انځور کانټېنر ته جوړ شوی (د Rust پروګرام ځای پر ځای کول) | Poseidon2 (او له سیټ 7 راهیسې POSEIDON2_LEN)؛ له M4.2 راهیسې Keccak-f[1600]؛ له سیټ 6 راهیسې SHA-256 |
| Solidity | solc --bin-runtime تر EVM بایټکوډ پورې، بیا یا د evm.bin مفسر میلمه (بایټکوډ د ننوت په توګه) یا evm2rv، چې بایټکوډ په C ژباړي او rand-guest یې د همغو وتنو سره په یوه RV32IM انځور جوړوي (د Ethereum ټرانسپایلر) | Keccak-256 (جدول خپور شوی)، 256-بټي ماډولر حساب، ECRECOVER، د زېرمې لپاره د Merkle شاهد syscalls |
| Solana / SVM | یو sBPF ELF چې د sbpf.bin مفسر میلمه یې چلوي، یا د sbpf2rv له خوا د همغو وتنو سره په یوه RV32IM انځور ژباړل کېږي (د Solana ټرانسپایلر) | SHA-256، د Ed25519 تایید، 64-بټي ضرب |
پړاوونه
لومړي پړاو د عمومي موخې ماشین ثابت کړ. درېیم پړاو هغه په یوه پټ حوض بدل کړ: یو لېږد چې غړیتوب یې د سرکټ دننه ثابتېږي د R_exec لاندې ثبوت کېږي، او تاییدوونکی hc کتنه کوي پرته له دې چې کله هم د پروګرام یوه کلمه وویني. څلورم پړاو د مطابقت پړاو دی: د هغه بارونکی، د ننوت ژمنه او د Keccak جدول د محدودیتونو د 4 او 5 سیټونو په توګه خپاره شول، او د SHA-256 جدول له سیټ 6 سره. د EVM او sBPF مفسر میلمانه، د rand-guest توکسیټ او دواړه ژباړونکي جوړ شوي دي. د ERC-20 لېږد په یوه 128 GB ماشین ثابت شوی؛ د SPL Token ثبوت، په درجه 20 کې، نه دی جوړ شوی. پنځم پړاو د بلاک د راټولونې تر شا د ریکرشن VM دی، چې جوړ شوی او په هر زنځیر بند دی. د محدودیتونو 7 او 8 سیټونه د سپټمبر له بیاکتنو او د ګاز له ماډل وروسته راغلل.
| پېژند | ساحه | د وتلو معیار | حالت |
|---|---|---|---|
| M1 | پنځه جدولونه، د RV32I اساسي ISA، HALT/WRITE_OUTPUT/READ_INPUT، ZK فعال، د درجې ډکول، اسمبلر، امولېټر | fib، memcpy، bubble_sort، alu_mix او balance_check ثابتېږي او تاییدېږي؛ د درغلۍ هره ازموینه ردېږي | بشپړ. 44 ازموینې؛ وروسته یوې بیاکتنې په یوه څپه کې د سلامتۍ پنځه تشې وتړلې |
| M1.5 | د لیدو کلي: د یو ننوت او یو وتون پټ لېږد میلمه، د ML-KEM-768 او ChaCha20-Poly1305 لاندې د نوټ لفافې، د اړخ او معاملې په کچه افشا کول، یو سمول شوی لیجر | یو لېږد په درجه 12 کې ثابتېږي او لیجر یې مني؛ د افشا هره ساحه یوازې خپل قطارونه پرانیزي؛ د لیدو کلی نه شي لګول کېدای | بشپړ. په نوډ کې نه دی شامل شوی |
| M2 | د تاییدوونکي د کلي کېش، FRI د 100-بټي اټکلي هدف ته بیا تنظیم شو، د بایټ جدول د حد او نیبل په جدولونو ووېشل شو، د فرعي کلمې بارول او ساتل، د RV32M توسیع | له ټاکلې ساحې تنګ وسپارل شو: د فلیټ باینري بارونکی او د READ_INPUT ټینګه تړنه M4.1 ته ولېږدول شول | بشپړ. fib په درجه 10 کې: ثبوت له 892 KB نه 268 KB ته، جوړول له 21.6 s نه 3.1 s ته، لومړی تایید له 2.17 s نه 16 ms ته. د محدودیتونو سیټ 3، یو هارډ فورک |
| M3 | د Poseidon2 چپ او syscall؛ NOTE_COMMIT، NULLIFY او MERKLE_VERIFY د هغه پر سر د میلمه د روټینونو په توګه؛ لګول شوې ژمنه له عامه وتون څخه لرې شوه؛ د پروګرام جدول د شاهد په توګه، چې hc یې د سرکټ دننه ډایجسټ کېږي | د لېږد اړیکه د R_exec لاندې د سرکټ دننه غړیتوب سره ثابتېږي، او verify(hc, proof) هېڅکله د پروګرام کلمه نه ویني | بشپړ. د لېږد میلمه: 4,554 لارښوونې، 4,903 سایکلونه، درجه 14. د Merkle ګرځښت اوس یوه شمېرل شوې لوپ ده، نو د پروګرام اندازه نور د ونې له ژوروالي سره نه زیاتېږي |
| CUDA | د GPU ثبوت جوړونکي بیکانډ: NTTs او د Poseidon2 Merkle ژمنې د CUDA کرنلونو په توګه د Plonky3 د Dft او Mmcs traits تر شا؛ rand send، call او deploy د --cuda بیرغ مني | هر میلمه د خالص Rust د مرجع جوړې او جعلي ډرایور له لارې ثابتېږي او تاییدېږي؛ د CPU تاییدوونکی بیکانډونه سره نه شي بېلولی | بشپړ؛ په هارډویر لومړی چلول 2026-09-28. په NVIDIA H100 کې کرنلونه د sm_80 او sm_90 لپاره PTX ته جوړېږي او د CPU او Plonky3 له مرجع سره سمون لري. د بېړۍ په یوه GPU نوډ د تولید بیا اندازه کول لا پاتې دي. یوه CUDA غوښتنه د ننوت لفافه نه شي مهرولی، ځکه چې مالګه هېڅکله له ثبوت جوړونکي نه نه وځي |
| M4.1 | د فلیټ باینري بارونکی او د riscv32im-unknown-none-elf لپاره لومړني کمپایل شوي no_std Rust میلمانه؛ مالګه لرونکې د ننوت ژمنه H_IN د خپل ننوت جدول سره، نو READ_INPUT د یوه ژمن شوي وېکټور په وړاندې لټون دی | د معیاري توکسیټ له خوا جوړ شوی میلمه بارېږي، ثابتېږي او تاییدېږي؛ د یوه ننوت شاخص دوه لوستنې سره سمون لري او ننوتونه H_IN ته تړل شوي دي | بشپړ. د 2026-09-11 نېټه د محدودیتونو د سیټ 4 په توګه راغی: 26 عامه ارزښتونه، اته جدولونه، یو هارډ فورک |
| M4.2 | په لاس لیکل شوی Keccak-f[1600] همپروسیسر جدول او KECCAK syscall، چې په ثبوت کې یوازې هغه وخت شته وي کله چې میلمه کارولی وي؛ په ثبوت کې اعلان شوی د حافظې لوړوالی؛ د تاییدوونکي کلی چې پر څلورو برخو ولاړ دی؛ له 2026-09-12 پلټنې وروسته FRI بېرته 80 پوښتنو ته | keccak256 د کمپایل شوي میلمه په توګه ثابتېږي، او له جدول پرته ثبوت په بڼه کې د M4.1 له ثبوت سره بایټ په بایټ یو شان دی | بشپړ. د 2026-09-12 نېټه د محدودیتونو د سیټ 5 په توګه راغی، یو هارډ فورک. Keccak لرونکی ثبوت شاوخوا 1.9 MB لوی دی، د 2 MiB له ډیفالټ حد نه پورته. هغه زنځیر چې جېنېسیس یې حد لوړ کړی وي داسې ثبوت مني: زنځیر 13 (8 MiB) د 2026-09-19 نېټه د 3.41 MB یوه Keccak لرونکې غوښتنه ومنله، او د زنځیر 20 حد 4 MiB دی |
| M4.3 · M4.4 | د EVM او sBPF میلمه مفسرونه چې RV32IM ته کمپایل شوي، او بهرنی بایټکوډ یې د ننوت په توګه اخلي؛ د Keccak تر څنګ د SHA-256 همپروسیسر جدول؛ بیا د rand-guest توکسیټ او د evm2rv او sbpf2rv ژباړونکي (2026-09-18) | یو ERC-20 لېږد او یو SPL Transfer هر یو د R_exec لاندې ثابتېږي | جوړ شوی؛ د وتلو یو ثبوت جوړ شوی. evm.bin (18,009 کلمې) او sbpf.bin (8,317) د ERC-20 او SPL Token وېکټورونه چلوي، او ژباړل شوي انځورونه کلمه په کلمه ورسره سمون لري. د ERC-20 transfer د 2026-09-19 نېټه په یوه 128 GB droplet کې په درجه 18 ثابت شو (85.0 GB لوړه کچه، 53.8 min)؛ د SPL Token ثبوت، په درجه 20 کې، شاوخوا 330 GB اټکل شوی او نه دی جوړ شوی (د ثبوت جوړولو حافظه). هېڅ یو یې په زنځیر کې نه شي غوښتل کېدای: یوه غوښتنه په درجه 14 محدوده ده |
| M5 | د ریکرشن VM (rVM): د 24 لارښوونو یو Goldilocks-اصلي ماشین چې پروګرامونه یې د Rand zkVM ثبوتونه تاییدوي، د هرې داخلي ثبوت بڼې لپاره یو N-عمومي راټولونې پروګرام، د CPU او CUDA بیکانډ وېش، او یو ځان-تاییدوونکی (M5.1 تر M5.4، 2026-09-13 تر 2026-09-16) | د تولید 50 ریښتیني بنډل ثبوتونه منل شوي او 50 لاسوهل شوي په نومول شوي ګام کې رد شوي؛ د یوه ریښتیني بنډل ثبوت پر سر د تاییدوونکي پروګرام rVM ثبوت په اصلي ډول تاییدېږي (د ازموینې پروفایل) | جوړ شوی؛ د تولید ثبوتونه لوی ماشین ته اړتیا لري. د crates/randprotocol-rvm په توګه شامل شوی. د زنځیر په اړخ راټولونه یوځای شوې او په هر زنځیر بنده ده (لاندې) |
| سیټ 7 | هر LogUp پای ړوند شو؛ هر اعلان شوی جدول لږ تر لږه 2⁷ قطارونو ته ورسول شو؛ د ننوت، عامه او مالګې پر کلمو 32-بټي د حد کتنې؛ د POSEIDON2_LEN syscall؛ د JALR سمون؛ د تاییدوونکي کلي له key_derivation_v2 نه مالګه شوي | د 2026-09-27 او 28 د zkVM بیاکتنو هغه سمونونه چې د تاییدوونکي کلی بدلوي، په یوه پرې کې اخیستل شوي | بشپړ. Fullnode v0.6.1، زنځیر 16 (2026-09-28)، یو هارډ فورک |
| سیټ 8 | د ګاز مېټر: په cpu جدول کې یو GAS کالم او یو عامه GAS_LIMIT، چې GAS ≤ GAS_LIMIT د سرکټ دننه ثابتېږي؛ د چلولو دقیق ګاز پټ پاتې کېږي | یوه غوښتنه د هغه حد پیسې ورکوي چې اعلانوي یې، او هر بنډل ثبوت همغه ټاکلی حد اعلانوي | بشپړ. Fullnode v0.6.7-rc1، زنځیر 18 (2026-09-29)، یو هارډ فورک. bundle_gas_limit 20,479 دی |
د پټ حوض پړاوونه
د fullnode لیجر په درې پړاوونو کې راغی، او هر یو هارډ فورک و (docs/shielded.md §7). S1 د حساب لیجر په نوټ حوض بدل کړ؛ S3 پل بېرته د نوټونو په توګه راوست او لومړی راغی؛ S2 سټېکینګ د هغه پر سر کېښود. درې واړه په main او په اوسني زنځیر کې دي.
وروسته له S2 څخه کرښې د v0.5 کار دی. هره کرښه یو سخت فورک دی؛ دا ټول یوځای د یوه نوي chain په توګه، chain 14، په 2026-09-20 د b3c594c له build څخه پرې شول، او په همغه ورځ د ګمارل شویو سرچینې endpoints له لارې د zUSD د یوه ژوندي بشپړ سفر وروسته د v0.5 په نښه ولګول شول. Chain 15، چې له 2026-09-26 راهیسې په v0.5.8 او وروسته نسخو ژوندی و، دا ټول یې له ځانه سره درلودل، او د v4 او v5 پلټنو هغه سمونونه یې فعال کړل چې په genesis پورې تړلي دي: د اجازې لړلیک لرونکی faucet د هرې دورې له بودیجې سره، د ګرو ځنډول شوی فعالېدل، د ونډې د وزن سقف، په genesis پورې تړلې نوملیکنې، consensus_domain 1، د bridge قواعد v2، او د ټوکن ثبتلیک سقف، سوځول شوې د نوملیکنې فیس او د نوټ 2⁶³ پوله. Chain 20، چې له 2026-10-01 06:17 UTC راهیسې په v0.6.8 (c9c9bd3c) ژوندی دی او د chain 19 سخت فورک دی، دا ټول ساتي او د v0.6 خپرونو کار ورزیاتوي، چې لاندې لېست شوی.
| id | ساحه | د وتلو معیار | حالت |
|---|---|---|---|
| S1 | پخپله pool: نوټونه، د 2-دننه-2-بهر ثابت شوي بنډلونه، د 32 ژورتیا لرونکې Poseidon2 د ژمنې ونه او د nullifier ټولګه، د rand بټوه له محلي ثابتوونکي سره، او سانسور شوی RPC | د بټوو ترمنځ یو پټ لېږد، د دوو تاییدوونکو ترمنځ د دوه ځله لګښت سیالي، او یو deploy-and-call چې بیه یې بنډلونه ورکوي، ټول د cluster په ازموینو کې بریالي کېږي | بشپړ. له chain 6 (2026-09-12) راهیسې په عامه fleet کې ژوندی |
| S3 | bridge د نوټونو په توګه: یوه bridge شوې شتمني د ثبتلیک د شتمنۍ index لري، یوه تصدیقنامه یو نوټ زېرمه کوي چې chain یې پخپله محاسبه کوي، BridgeBurn یوازینۍ دوه-بنډله راکړه ورکړه ده؛ د call د ننوتو لپاره مهر شوي لفافې، چې call کوونکی، د هر call کیلي یا یو ټاکلی پلټونکی یې پرانیستلای شي | یوه bridge شوې شتمني د نوټ په توګه mint، لګول او سوځول کېږي؛ call کوونکی کولای شي څرګند کړي چې یو پروګرام په څه چلېدلی پرته له دې چې خپور یې کړي، او rand open-call پرانیستنه د H_IN پر وړاندې ازمويي | بشپړ. لومړی ځای پر ځای شو. Chains 9 تر 13 د bridge برخه له خپل genesis څخه لرې کړې وه؛ له 14 راهیسې هر chain دا لري. له chain 14 راهیسې یوه سوځونه یو بنډل ده، نه دوه |
| S2 | په پټ chain کې staking: د تاییدوونکو عامه ثبتلیک، Bond د یوه بنډل له سوځونې څخه، Unbond په دوو دورو کې، Withdraw د تادیې په یوه پته کې یوه نوټ ته، د 1,000 بلاکونو دورې چې ټولګه بیا راباسي، او د ثبتلیک او pool پر سر د عرضې پلټنه | پنځم تاییدوونکی له راتلونکې دورې څخه نوم لیکي، ګرو ږدي او وړاندیز کوي؛ یو یې له ټولګې څخه Unbond کوي او هغه نوټ ته Withdraw کوي چې د تادیې بټوه یې لګوي؛ دواړه د cluster په ازموینو کې بریالي کېږي | بشپړ. د بټوې محلي د ژمنې ونه په 2026-09-21 ورپسې راغله: بټوه خپل شاهدان پخپله محاسبه کوي او نور خپل node ته نه وايي چې کومه پاڼه لګوي |
| RPL | د ټوکن معیار (docs/tokens.md): ټوکن په ledger کې د ثبتلیک یوه ننوتنه ده چې 62 توري لرونکی rpl1… bech32m id لري؛ جوړول یې د RAND په نوملیکنې فیس د هر چا لپاره خلاص دي؛ د mint واک د نوملیکنې پر مهال د هېڅ، یوې کیلي یا bridge په توګه ټاکل کېږي؛ سمبولونه بېساري نه دي؛ rand token create، mint، set-authority، burn، info، list، او rand_getTokens، rand_getToken، rand_getTokenSupply | یو ټوکن نوم لیکل کېږي، mint کېږي، د rand send --asset په واسطه لېږل کېږي او د نوټونو په توګه په همغه pool کې سوځول کېږي | له chain 14 (v0.5) راهیسې روان. په chain 20 کې د نوملیکنې فیس 1 RAND دی چې سوځول کېږي، ثبتلیک تر ډېره 4,096 ټوکنونه ساتي، او genesis zUSD په index 1 کې لېست کوي |
| RPL-2 | د پروګرام حالت (docs/program-state.md): د هر پروګرام cells (یوه 8-کلمهيي کیلي یو 8-کلمهيي ارزښت ته، د حالت په ریښه کې)، د هرې شتمنۍ لپاره یو عامه vault، هغه ټوکن چې یوازې د خپل پروګرام لخوا mint کېږي، او د Invoke عمل (Action 33)، داسې call چې هغه cells اعلانوي چې لولي او لیکي یې، او هغه نوټونه چې تادیه کوي یې؛ rand program invoke، state، vault، او rand_getProgramCell، rand_getProgramCells، rand_getProgramVault | ledger یو انتقال یوازې هغه وخت پلي کوي چې هره اعلان شوې لوستنه لا هم سمه وي او vault هره تادیه پوښي؛ زړه لوستنه ردېږي او بیا ثابتېږي | له chain 20 (v0.6.8) راهیسې روان. cell_fee د هر جوړ شوي cell لپاره 0.01 RAND؛ په هر invoke کې تر ډېره 8 لوستنې، 8 لیکنې او 4 تادیې. پروګرامونه وګورئ |
| د پټې شتمنۍ بنډل | هره راکړه ورکړه د 2-دننه-2-بهر پر ځای سم یو 4-دننه-4-بهر بنډل لري: سلاټونه 0–1 خصوصي شتمني ساتي (د یوازې RAND په لېږد کې ډمي)، سلاټونه 2–3 تل RAND دي او فیس ورکوي. د ټوکن دوه-بنډله لېږد او د bridge دوه-بنډله سوځونه له منځه تللي دي | د RAND لېږد او د هر RPL ټوکن لېږد یو شان بڼه خپروي، نو هغه شتمني چې خوځېدلې پټه پاتې کېږي | له chain 14 (v0.5) راهیسې روان. Tier 14، د ثابتولو لپاره نږدې 100 s، په chains 14 او 15 کې نږدې 1.42 MB ثبوت؛ هلته hc_bundle 83d3a370…. Chains 18 تر 20 د بنډل guest v3 ټاکي، hc_bundle 60af094a…، نږدې 1.49 MB |
| د راکړې ورکړې تړون | د هر بنډل ثبوت پر H("rand-tx-bind-1", chain_id ‖ tx with proofs blanked) جوړېږي او د هغه پر وړاندې تاییدېږي، چې د عامه ننوتو په برخه کې وړل کېږي | یو کاپي شوی، نه بدل شوی ثبوت چې د بدل شوي منزل، تاییدوونکي یا memo لاندې بیا وسپارل شي، ردېږي | له chain 14 (v0.5) راهیسې روان. له chain 20 (binding_domain 1) راهیسې preimage H("rand-tx-bind-2", genesis hash ‖ chain_id ‖ …) دی، او د هر لاسلیک شوي عمل پیغام هم genesis hash لري، نو هېڅ شی چې د یوه chain لپاره ثابت یا لاسلیک شوی وي په بل chain کې نه تاییدېږي |
| B1–B4 | د bridge ټینګول (docs/bridge.md §§14–20). B1: د هرې ملاتړسرچینې ورځنی mint سقف، او د درولو کیلي چې یوازې درولای شي (بیا چالانول PQ quorum ته اړتیا لري). B2: د بلاک timestamp چې د خپل مور له timestamp څخه له 60 s زیات وروسته وي ناسم دی، او تاییدوونکی هغه بلاک ته رایه نه ورکوي چې د هغه له ساعت څخه له 15 s زیات مخکې وي، نو تاییدوونکي NTP ته اړتیا لري. B3: په هر mint باندې د Dilithium2 د ګډ لاسلیک quorum. B4: له genesis وروسته د PQ ساتونکو د quorum لاندې د bridge شوي ټوکن یا ملاتړسرچینې لېست کول، پرته له نوي chain پرې کولو | zUSD، یو ټوکن له اوو ملاتړسرچینو سره (USDT او USDC په Ethereum، Binance Smart Chain، Tron او Solana کې)، د راکړې ورکړې له لارې نوم لیکل کېږي، او total_supply == Σ backings.locked د جوړښت له مخې ټینګ پاتې کېږي. محلي نهه-پړاوه دروازه (zusd_e2e.rs: څلور تاییدوونکي، رښتیني ثبوتونه، له faucet څخه نوملیکنې ته، زېرمې ته، لېږد ته، سوځونې ته، پلټنې ته) له 9 څخه 9 بریالۍ شوه | له chain 14 (v0.5) راهیسې روان. په chain 20 کې: د هرې ملاتړسرچینې لپاره په ورځ کې 100,000 zUSD mint سقف، او په هرو 24 خوځنده ساعتونو کې 4,000 zUSD نړیوال سقف (bridge قواعد v2)، د ساتونکو ټولګه 1 له اتو PQ ساتونکو سره، په هر mint او هره سوځونه د zUSD 10 bps فیس (bridge.fees)، او د ساتونکو بدلونونه چې ملکیت ته اړتیا لري او 86,400 s انتظار کوي (bridge.rotation). zUSD د chain 20 په genesis کې له خپلو اوو ملاتړسرچینو او د پرې کېدو پر مهال له 99 تړل شوو zUSD سره لېست شوی |
| audit v3 | د دریم داخلي پلټنې پړاو سمونونه، چې یو ګډ بنسټګر یې مشري کړې (2026-09-19؛ هېڅ خپلواکه پلټنه نه ده شوې). POOL-1: د faucet Mint د خپل نوټ پرانیستنه (pk، time، r) لري، داخله ژمنه بیا محاسبه کوي، او mint کوونکی rand-mint-2 لاسلیک کوي؛ د genesis د وېش نوټونه هم پرانیستنه لري. RPC-1: rand_getWitness(es) په یو وخت کې تر ډېره د ونې دوه بیا جوړونې چلوي او له 10 s وروسته -32000 بوخت ځواب ورکوي. OPS-1: د تاییدوونکو ټولې اتلس کیلي بدلې شوې، له repository بهر جوړې شوې، او هېڅ کیلي په repository کې نه تعقیبېږي | هغه mint چې ژمنه یې د خپل مقدار څخه زیات ته پرانیستل کېږي ردېږي؛ د chain 14 هېڅ کیلي هېڅکله په repository کې نه ده وه | له chain 14 (v0.5) راهیسې روان. PRIV-1، د شاهد هغه غوښتنه چې پاڼه یې نومولې، په 2026-09-21 د بټوې د خپلې ونې په واسطه وتړل شوه |
له v0.5 راهیسې خپرونې
هره خپرونه یو git tag دی چې د fullnode په CHANGELOG.md کې ننوتنه لري. هغه خپرونه چې اجماع، د wire بڼه یا د تاییدوونکي کیلي بدلوي له نوي chain سره خپرېږي؛ نورې یو node وروسته له بل په ژوندي chain باندې پلي کېږي.
| خپرونه | څه یې راوړل | زنځیر |
|---|---|---|
| له v0.5 تر v0.5.8 | د RPL ټوکنونه، zUSD او پیاوړی شوی پل (پورته)؛ د پلټنې سمونې؛ د تاریخ پرې کول؛ د اجماع او همغږۍ پیاوړتیا | 14, 15 |
| v0.5.9 | د بیا سکن سمونې: د فاسېټ ټوکن جوړونه یوازې د جنیسس له اعتبارورکوونکو منل کېږي، د همغږۍ ځنډنۍ بیا هڅه، د ګوسیپ مخکینۍ ازموینې | 15 |
| v0.5.10 | د پتې شریکول: ګوتنښې، randpay: لینکونه او QR کوډونه؛ کوډ شوی یادداشت، چې لومړی ځل په 18 زنځیر فعال شو | 15 |
| v0.5.11 | د ټیم، پانګوالو او شریکانو د ونډو لپاره د جنیسس وختقفلي تدریجي خلاصون. د جنیسس پورې تړلی او په هېڅ زنځیر فعال نه دی | هېڅ |
| v0.6 | د سپټمبر له بیاکتنو وروسته د zkVM، rVM او راټولونې سمونې | 15 |
| v0.6.1 | د محدودیتونو ټولګه 7: د LogUp پټونه، د 2⁷ جدول ټیټه پوله، 32-bit د حد ازموینې، POSEIDON2_LEN، د JALR سمون. 16 زنځیر د hardening_v6 او د بنډل مېلمه پروګرام v2 سره پرې شو | 16 |
| v0.6.2 | استازي شوی ثبوت، لومړی پړاو: د rand-prover باینري او د والټ --prover. د لومړي پړاو ثابتوونکی د لګښت کیلي ترلاسه کوي | 16 |
| v0.6.3, v0.6.4 | استازي شوی ثبوت، دوهم پړاو: وېشل شوې اجازه. د بنډل ثبوت نور د لګښت کیلي نه اخلي، بلکې د 10 کچې د اجازې ثبوت یې اخلي، او د راکړې ورکړې د پېژند ډومېن rand-txid-3 کېږي | 17 |
| v0.6.6, v0.6.7-rc1 | ګاز: د محدودیتونو ټولګه 8، د هر ثبوت لپاره اعلان شوی د ګاز حد، د ګاز او بایټ متحرکې بیې؛ یادداشت فعال شو. v0.6.6 هېڅکله په ټګ شوې بڼه پرې نه شو | 18 |
| v0.6.7 | په 18 زنځیر هغه سمونې چې د اجماع هېڅ قاعده نه بدلوي: د مهر شویو ثبوتونو پرې کول (غیرفعال)، د پوښ د بڼې ټاکل، د لید کیلي پاکوالی، د rVM تخصیصکوونکی، د GPU کرنل د حافظې ګډې نښې، د ALU د ازموینې پوښښ. د کاري ځای د ازموینو د بشپړې ټولګې له پای ته رسېدو مخکې ټګ شو | 18, 19 |
| v0.6.8 | RPL-2: د پروګرام حجرې، د پروګرام خزانې او د Invoke عمل. د zUSD د پل فیسونه، دواړو لورو ته. د v6 پلټنې وروستۍ سمونې: د قفل اتومات خلاصون نشته (CON-4) او د وختختمېدو د سند پر بنسټ ګامټاکونکی (CH-1)؛ د --public-rpc اورېدونکی، د لوستلو حدونه، خوندي شوي اعتبارورکوونکي همتایان، د همغږۍ او ګوسیپ بودیجې، د حوض د بایټ سقف، د ثبوت د سرلیک په اعلان شوې درجه حد (ZKV-4)؛ او د جنیسس پورې تړلې قاعدې چې 20 زنځیر یې فعالوي: د جنیسس هش تړون، testnet، د 1,024 بلاکونو د ثبوت کړکۍ، د ګاز د بیې سقفونه او د تادیه کوونکي بایټ بار، د رایې له لارې منل، د ونډې د ننوتو سقف د یوې برخې په توګه، د پل د بدلونونو لپاره ملکیت او ځنډ. والټونه په 20 زنځیر د لېږلو لپاره همدې جوړښت ته اړتیا لري | 20 |
نن ورځ چېرته ودرېږي
له سپینې پاڼې انحرافونه، چې څرګند ویل شوي، نه پټ شوي. هر یو د کرېټ په خپل اسناد کې د هغه پړاو سره څارل کېږي چې دا یې تړي.
hcتړونکی دی خو پټوونکی نه دی: مالګه نه لري، نو یو اټکل شوی پروګرام تاییدېدای شي او د یو پروګرام دوه ګمارنې سره تړل کېدای شي. هغه څه چې M3.4 لرې کړل دا وو چې تاییدوونکی ټول پروګرام په ښکاره بڼه ساتي.- هغه والټ چې له 2026-09-21 مخکې جوړ شوی، له خپل نوډ څخه شاهدان غواړي، او د شاهد غوښتنه هغه پاڼه نوموي چې د لګولو په حال کې ده. اوسنی
randد ونې خپله کاپي ساتي او هېڅکله غوښتنه نه کوي؛ نوډ لا هم د زړو والټونو لپارهrand_getWitnessوړاندې کوي. - زېرمې په پوله کې عامې دي: د فاسېټ ټوکن جوړونه، د جنیسس نوټ او د پل زېرمه ټول خپل مقدار په ښکاره بڼه لېږدوي (له 14 زنځیر راهیسې د ټوکن جوړونه او د جنیسس نوټ خپل پرانیستل هم لېږدوي، نو د مالک کیلي هم عامه ده)، همغه یو ګامي ښکارهوالی چې د ښکاره څخه پټ ته زېرمه هر چېرې لري.
- صفر پوهه احصایوي ده، نه بشپړه. دا هغه ځانګړنه ده چې د Plonky3 0.7 پټوونکی FRI یې په رښتیا برابروي، او کرېټ همدا وايي.
- د لیکنې هش Poseidon2 دی چې د پراختیا د دورې ثابتونه لري، نه د پاڼو SHA3-384 / BLAKE3-384. دا د تنظیم بدلون دی، نه بیا لیکنه.
- په 80 FRI پوښتنو کې د بنډل ثبوت په 14 او 15 زنځیرونو شاوخوا 1.42 MB و (تر 13 زنځیر پورې شاوخوا 1.3 MB). له 17 زنځیر راهیسې یوه لېږدونه شاوخوا 2.85 MB ثبوت لېږدوي: د بنډل ثبوت، شاوخوا 1.49 MB، او د اجازې ثبوت، شاوخوا 1.37 MB. په یو ډیفالټ زنځیر کې، د 4 MiB بلاکونو او د 2 MiB د ثبوت سقف سره، هغه ثبوت چې Keccak لري په بشپړ ډول د ثبوت له سقف څخه زیاتېږي؛ د 20 زنځیر جنیسس 20 MiB بلاکونه او د 4 MiB د ثبوت سقف ټاکي (له 13 تر 16 زنځیرونو 8 MiB ټاکلی و).
- د غوښتنې د ثبوت سرلیک پټ نه دی. دا کچه او د Keccak او SHA-256 جدولونو لوړوالی اعلانوي، نو ښيي چې ایا غوښتنې هش کړی که نه. هغه غوښتنې چې په 15 زنځیر کې د v0.6 د ثابتوونکي له ټیټې پولې مخکې ثبت شوې، نور هم ښکاره کړل: له 2⁷ قطارونو کم خصوصي جدول د ثبوت څخه لوستل کېدای شو. د v0.6 د ثابتوونکي ټیټې پولې دا د نویو غوښتنو لپاره وتړله، او د محدودیتونو ټولګې 7 د
hardening_v6سره دا له 16 زنځیر وروسته د زنځیر قاعده وګرځوله. - یوه غوښتنه په 14 کچه محدوده ده، تر ډېره 2¹² Keccak قطارونو (128 بدلونونه) او 2¹³ SHA-256 قطارونو (128 فشارونه) سره، او د
hardening_v6لاندې له 8,180 کلمو زیات پروګرام نه شي ګمارل کېدای. د EVM او sBPF د تفسیرکوونکو مېلمه پروګرامونه او ژباړل شوي ERC-20 او SPL Token انځورونه ټول له دې پورته دي. - هر څوک چې شاهد لري، هر څه ویني. ZK د تاییدوونکي لید ساتي، نه د ثابتوونکي. له 17 زنځیر راهیسې والټ کولای شي د بنډل ثبوت یو جوړه شوي
rand-proverته وسپاري پرته له دې چې د لګښت کیلي ورکړي، خو هغه ثابتوونکی لا هم د لید کیلي لري او نوټونه ویني. د CUDA شاتنی سیستم لومړی ځل په 2026-09-28 په هارډویر وچلېد او تر اوسه یې د تولید اندازه نه ده شوې.
د زېرمتون جوړښت
د fullnode د Cargo کاري ځای، لکه څنګه چې یې په README او crates/ لارښود کې ترتیب شوی.
| لار | څه پکې دي |
|---|---|
crates/randprotocol-core/ | خالص منطق، پرته له I/O: کریپټوګرافي، نوټونه او د ژمنې ونه، د لیجر قاعدې، ګاز، جنیسس، د HotStuff د حالت ماشین |
crates/randprotocol-zkvm/ | د Rand zkVM، چې د محدودیتونو په ټولګه 8 کې له zkp-circuits/research څخه راوړل شوی (سرکټونه aeacf31؛ د deploy/sync-zkvm.sh سره بیا همغږی شوی)، جمع د زنځیر لوري د ثبوت تاییدوونکی او د هغه د تاییدوونکي کیلي زېرمه |
crates/randprotocol-rvm/ | د تکرار VM، چې له zkp-circuits/recursion څخه راوړل شوی: د ساحې پر بنسټ ماشین چې پروګرامونه یې د Rand zkVM ثبوتونه تاییدوي |
crates/bridge-codec/ | د ساتونکي پل د لېږد بڼه او د نصاب قاعده، چې بایټ په بایټ د Solidity تړونونو او Solana پروګرام سره شریکه ده |
crates/randprotocol-node/ | د RocksDB زېرمه، د libp2p شبکه، د انتظار حوض، د بلاکونو همغږي، د JSON-RPC سرور او د rand-node باینري |
crates/randprotocol-client/ | د rand والټ باینري او د RpcClient کتابتون، پرته له RocksDB یا libp2p تړاو |
crates/randprotocol-prover/ | د rand-prover باینري: استازی ثابتوونکی چې د جوړه شویو والټونو لپاره بنډلونه ثابتوي |
deploy/ | د Testnet د جنیسس فایلونه، nodes.env، د چلولو سکریپټونه، د ورېځې برابرول، د لېږد او بیا جوړونې سکریپټونه. د 14 زنځیر له چمتووالي راهیسې دلته هېڅ کیلي نه څارل کېږي |
docs/ | د حوالې اسناد او د ډیزاین مشخصات |
scripts/ | ځایي د دوو اعتبارورکوونکو testnet |
ټاکل شوي، خو لا نه دي خپاره شوي
دا برخې په پاڼو یا د fullnode په اسنادو کې تشرېح شوې خو نه چلېږي: یا له زېرمتونونو څخه نشته، یا جوړې شوې او په هېڅ زنځیر فعالې نه دي. دوی دلته لیست شوي ترڅو د مشخصاتو او کوډ ترمنځ واټن روښانه وي، نه اټکلي.
| برخه | حالت |
|---|---|
| پل · ساتونکی | د ساتونکي او بیا لېږدوونکي ډیمونونه چې د تصدیق بڼه له پیله تر پایه چلوي؛ تړونونه، کوډیک او د fullnode ترلاسه کوونکې نیمه خپرېږي، ډیمونونه نه |
| fullnode · راټولونه | د تکرار VM سره د بلاکونو راټولونه: مهرول، پرې کول او د مهر شوې بڼې همغږي. جوړه شوې او په هر زنځیر بنده ده؛ rand-node هغه جنیسس ردوي چې aggregation برخه ولري. لا هم د جعلي راټول شوي ثبوت له پیله تر پایه ازموینې ته اړتیا لري، او یوازې د بنډل ثبوت لرې کوي، نه د اجازې ثبوت. د تولید rVM ثبوتونه لوی ماشین ته اړتیا لري: د محدودیتونو د ټولګې 7 لاندې د دوو راټولونې 133 GB، د دریو 221 GB، او د وتلو ثبوت له 256 GB زیات ونیول (په 2026-09-28 او 29 اندازه شوي؛ د محدودیتونو د ټولګې 8 لاندې بیا نه دي اندازه شوي) |
| fullnode · تدریجي خلاصون | د ټیم، پانګوالو او شریکانو لپاره د جنیسس وختقفلي ونډې (v0.5.11، docs/vesting.md). د جنیسس پورې تړلی: پرته له vesting برخې څلور د تدریجي خلاصون عملونه ردېږي، او هېڅ زنځیر دا برخه نه لري. د 20 زنځیر د عرضې پلټنه د تدریجي خلاصون هر شمېرونکی صفر راپوروي. له v0.6.8 راهیسې د لغوه وړ ننوته د هغې د لغوه کوونکو د یوې پولې لخوا لغوه کېږي، او یوازې هغه خزانې ته چې د هغې د جنیسس ننوته یې نوموي |
| fullnode · سزا ورکول | د مشر د دوهګونې رایې لپاره سزا ورکول او بندول په v0.6.8 کې د staking.slashing تر شا جوړ شوي او په 20 زنځیر بند دي (د هغه جنیسس دا نه لري، په داسې حال کې چې ټولې 26 د اعتبارورکوونکو کیلي یو چلوونکي پورې اړه لري). د بلاک انعامونه، د هش پر بنسټ د مشر د ټاکلو بیکن، د نولیفایر راټولوونکی او د پروګرامونو ترمنځ غوښتنې نه دي جوړې شوې. د هر پروګرام دوامداره حالت د RPL-2 په توګه خپور شو (پورته) |
prover/ | د GPU د ثبوت ډیمون: له کتار څخه دستې اخلي، د سپارلو لپاره سیالي کوي. د CUDA کرنلونه په zkp-circuits کې دي او لومړی ځل په 2026-09-28 په NVIDIA H100 وچلېدل؛ د بازار ډیمون شتون نه لري. rand-prover، چې خپرېږي، د هغو والټونو لپاره ثبوت جوړوي چې ورسره جوړه شوي او بازار نه دی |
| zkp-circuits · M4.4 د وتلو ثبوت | د SPL Token د لېږدونې ثبوت (کچه 20)، چې شاوخوا 330 GB اټکل شوی. د ERC-20 لېږدونه (کچه 18) په 2026-09-19 په یوه 128 GB droplet ثابته شوه. هېڅ یو یې په 20 زنځیر نه شي غوښتل کېدای، چې غوښتنه په 14 کچه محدودوي |
جوړول او ازموینه
په هره ریپازيټورۍ کې د Rust معیاري کاري بهیر کارول کېږي. fullnode یو واحد Cargo workspace دی چې یوه ثابته شوې د وسایلو لړۍ او د کلستر د ازموینو یوه ټولګه لري چې د TCP له لارې ریښتیني نوډونه پیلوي. د دې جوړول اړتیا لري چې د circuits ریپازيټوري د هغې تر څنګ، د circuits په نوم یوه فولډر کې، په هغه کمېټ کې راواخیستل شوې وي چې شامل شوي کرېټونه ورڅخه همغږي شوي دي (د v0.6.7 او v0.6.8 لپاره aeacf31). zkVM په zkp-circuits کې یو خپلواک کرېټ دی چې خپله ثابته شوې د وسایلو لړۍ او یوه نندارتي برنامه لري، او دا برنامه بیانوي چې یو محرم غوښتنه څه څرګندوي او څه نه څرګندوي.
fullnode:
git clone https://github.com/randprotocol/fullnode.git
git clone https://github.com/randprotocol/zkp-circuits.git circuits # the sibling directory must be named circuits
git -C circuits checkout "$(sed -n 's/^circuits: //p' fullnode/crates/randprotocol-zkvm/guests-compiled/PROVENANCE.md)"
cd fullnode
# Rust 1.98.1 is pinned by rust-toolchain.toml; first build pulls RocksDB and Plonky3, 10 to 20 minutes
cargo build --release # target/release/rand-node, target/release/rand, target/release/rand-prover
# All crates; release because STARK proving is slow in debug. One to two hours, mostly proving
cargo test --release
# One machine, two validators
scripts/local-testnet.sh
target/release/rand --rpc http://127.0.0.1:8545 status
څېړنیز zkVM، په zkp-circuits/research کې:
# Toolchain is pinned by rust-toolchain.toml; the first build pulls Plonky3
cargo build --release
# Narrated demo: thirteen proofs, one at production FRI parameters (~6-7 min)
cargo run --release
# Emulator, per-table constraints, cheating provers, ZK, end-to-end, viewing keys, compiled guests (395 tests, ~17 min)
cargo test
د fullnode د ازموینو ټولګه، لکه څنګه چې په v0.6.1 کې پر یوه 16-vCPU ماشین اندازه شوې: core 521 ازموینې، node 373، client 117، د درغلګر prover ټولګه 116، د پټې بنډل درغلۍ 21 (75 دقیقې)، د والټ بهیر 6 (53 دقیقې)، کلستر 26 (44 دقیقې) او د zUSD له پیل تر پایه دروازه 2 (51 دقیقې). د بیا راګرځېدونکي VM تولیدي ثبوتونه له دې ټولګې بهر دي او هغې حافظې ته اړتیا لري چې پورته ذکر شوې ده.
د نوډ چلول په دې جوړښت سره عامه testnet ته د یوځای کېدو لارښوونه کوي؛ د testnet genesis، د پیل ملګري نوډونه او د چلولو سکرېپټونه د fullnode په deploy/ فولډر کې وړاندې کېږي، او د ډاونلوډ پاڼه یې لنډه بڼه لري.
ونډه واخلئ
fullnode د GNU General Public License v3.0 (GPL-3.0-only) لاندې جواز لري؛ مخکې Apache-2.0 و. د تېروتنو او ډیزاین وړاندیزونو لپاره پر هغې ریپازيټورۍ مسله پرانیزئ چې بدلون پرې اغېز کوي. د Pull غوښتنو هرکلی کېږي: د سپارلو مخکې cargo fmt && cargo clippy وچلوئ او بدلونونه محدود وساتئ. د fullnode مسلې د پیل ځای دی.
جوړښت، د محرمیت سرکټ، د فیس ټوکن ثبوت او د کوانټم وروسته سوداګري ټول د مقالو پاڼې پر سپینه پاڼه کې مستند شوي دي. د fullnode ریپازيټورۍ خپل docs/ فولډر هغه سرچینه ده چې د دې اسنادو هره پاڼه ورسره پرتله او تایید کېږي.