இந்தப் பக்கத்தைக் கொண்டு ஒரு நிரூபண இயந்திரத்தின் அளவைத் தீர்மானிக்கலாம்; ஒரு பரிமாற்றம் ஏன் ஒரு நிமிடத்துக்கு மேல் எடுக்கிறது, செயல்திறனை ஏன் கணினித் திறன் அல்ல, பிளாக் இடமே வரம்பிடுகிறது என்பதைப் புரிந்துகொள்ளலாம்; நிரூபண அமைப்பு மாறும்போது எவை உடையும் என்பதையும் அறியலாம். ஒரு வேலிடேட்டர் ஏற்கும் ஒவ்வொன்றுக்கும், அது தானே சரிபார்த்த ஒரு நிரூபணம் ஆதாரமாக உள்ளது.
ஒரு நிரூபணம் எதைக் கூறுகிறது
சங்கிலி இயக்கும் ஒவ்வொரு நிரலுக்கும் ஒரே உறவு:
இந்த RV32IM நிரல்,
base_pc-இல் தொடங்கி,H_INஉறுதிமொழியிட்ட ஒரு தனிப்பட்ட உள்ளீட்டு வெக்டரின் மீதும்H_PUBஉறுதிமொழியிட்ட ஒரு பொது உள்ளீட்டுப் பகுதியின் மீதும் இயங்கி,2ᵗ − 1சுழற்சிகளுக்குள் நின்று, அதிகபட்சம்GAS_LIMITgas செலவிட்டு, இந்த எட்டு வெளியீட்டுச் சொற்களை வெளியிட்டது.
நிரல் அதன் சுற்றுக்குள்ளான செரிமானம் hc மூலம் அடையாளம் காணப்படுகிறது; சரிபார்ப்பி எந்த அறிவுறுத்தல் சொல்லையும் பார்ப்பதில்லை. ஒரு மறைக்கப்பட்ட பரிமாற்றம் என்பது அந்த உறவை மறைக்கப்பட்ட-சொத்துத் தொகுப்பு விருந்தினர் நிரலுக்குப் பயன்படுத்துவதாகும்; இது கையால் தொகுக்கப்பட்ட 4-உள்ளீடு-4-வெளியீடு நிரல், அதன் hc ஜெனிசிஸ் கோப்பில் hc_bundle ஆகப் பொருத்தப்பட்டுள்ளது. Chain 20, விருந்தினர் நிரல் v3-ஐப் பொருத்துகிறது (guests::bundle_hidden_v3, 60af094a…6e3fce, chain 17 முதல்). Chain 14, 15 ஆகியவை v1-ஐயும் (83d3a370…cd0ef8) chain 16 கிளையற்ற v2-ஐயும் (651043e2…839b) பொருத்தின. Chain 17 முதல் ஒவ்வொரு தொகுப்பும் அங்கீகார விருந்தினர் நிரலின் (guests::auth, ஜெனிசிஸ் hc_auth, 1e4e347f…5639c1) இரண்டாவது நிரூபணத்தையும் கொண்டுள்ளது: தொகுப்பு நிரூபணம் பார்வை விசையை எடுத்துக்கொள்கிறது; அதன் பின்னால் உள்ள செலவு விசை அனுப்புநரிடம் இருப்பதை அங்கீகார நிரூபணம் காட்டுகிறது. இதுவே பிரிக்கப்பட்ட அங்கீகாரம்; பார்வை விசையை மட்டுமே வைத்திருக்கும் இணைக்கப்பட்ட நிரூபிப்பாளர் தொகுப்பு நிரூபணத்தை உருவாக்க இதுவே வழிவகுக்கிறது. Chain 13 வரையிலான சங்கிலிகளின் 2-உள்ளீடு-2-வெளியீடு bundle விருந்தினர் நிரலை மறைக்கப்பட்ட-சொத்து விருந்தினர் நிரல் மாற்றியது; அது fullnode-இல் சோதனைகளுக்காக மட்டுமே எஞ்சியுள்ளது, எந்தச் சங்கிலியும் அதைப் பொருத்துவதில்லை. ஒரு ரகசிய அழைப்பு என்பது அதே உறவை வரிசைப்படுத்தப்பட்ட ஒரு நிரலுக்குப் பயன்படுத்துவதாகும் (நிரல்கள்).
வாலட் ஒரு தொகுப்பை எவ்வாறு நிரூபிக்கிறது
rand send <rand1…> <amount> தனிப்பட்ட பணியை உள்ளூரிலேயே செய்கிறது; நிரூபணங்கள், உறுதிமொழிகள், நல்லிஃபையர்கள், முத்திரையிட்ட உறைகள் மட்டுமே சங்கிலியை அடைகின்றன:
- ஸ்கேன் செய்தல்: பார்வை விசையைக் கொண்டு மரத்தை ஸ்கேன் செய்து உள்ளீடுகளைத் தேர்ந்தெடுக்கிறது: 2–3 இடங்களில், தொகையையும் கட்டணத்தையும் ஈடுகட்டும் அதிகபட்சம் இரண்டு RAND நோட்டுகள்; ஒரு டோக்கன் பரிமாற்றம் அல்லது எரிப்புக்கு, 0–1 இடங்களில் அந்த டோக்கனின் அதிகபட்சம் இரண்டு நோட்டுகள், RAND நோட்டுகள் கட்டணத்தை மட்டும் ஈடுகட்டும். பயன்படுத்தப்படாத உள்ளீட்டு இடம் ஒரு போலி: தொகை 0, வாலட்டுக்குச் சொந்தமானது, அதன் உறுப்பினர் தோல்வி சுற்றுக்குள் மறைக்கப்படுகிறது, நல்லிஃபையர் அப்போதும் வெளியிடப்படுகிறது. விருந்தினர் நிரல் v2 முதல் அது கிளையற்றது: ஒரு போலியின் பாதையும் உண்மையான நோட்டின் பாதையைப் போலவே 32 நிலைகளிலும் மேல்நோக்கி ஹாஷ் செய்யப்படுகிறது.
- பெறுதல்: முன்னணி நங்கூரத்தையும் (
rand_getAnchor) ஒவ்வொரு உண்மையான உள்ளீட்டின் 32-நிலை Merkle சான்றையும் (rand_getWitness(index)) பெற்று, திரும்பிய மூலத்தை நங்கூரத்துடன் சரிபார்க்கிறது. - உருவாக்குதல்: நான்கு வெளியீடுகள்: மதிப்பை நகர்த்தும் குழுவில் பெறுநரின் நோட்டும் மீதி நோட்டும், பூஜ்ஜியமாக இருந்தாலும் இடம்பெறும்; மற்ற இடங்களில் பூஜ்ஜியத் தொகை போலிகள், ஒருமுறைப் பயன்பாட்டு விசைக்கு முத்திரையிடப்பட்டவை.
- முத்திரையிடுதல்: ஒவ்வொரு வெளியீட்டையும் ஒரு உறையில் முத்திரையிடுகிறது (பெறுநருக்கு ML-KEM-768, அத்துடன் வாலட்டின்
ovk-இன் கீழ் சுற்றப்பட்ட பரிவர்த்தனை விசை), முழுப் பரிவர்த்தனையையும் அதன் செயலுடன் தொகுத்து, அதன் பிணைப்பை எடுக்கிறது: நிரூபணங்கள் வெறுமையாக்கப்பட்ட பரிவர்த்தனையின் மீதுblake3("rand-tx-bind-1" || …), எட்டுச் சொற்கள் (பரிவர்த்தனைகள்). ஜெனிசிஸ்binding_domain: 1என அமைக்கும் chain 20-இல் அதுblake3("rand-tx-bind-2" || …)ஆகும்; முதலில் ஜெனிசிஸ் ஹாஷ், பின்னர் chain id; எனவே ஒரு சங்கிலிக்காக உருவாக்கப்பட்ட நிரூபணம் வேறு எந்தச் சங்கிலியிலும் சரிபார்க்கப்படாது, அதே chain id கொண்டதிலும் கூட. v0.6.8-ஐ விடப் பழைய வாலட் பழைய பிணைப்பை எடுக்கிறது; chain 20 அதன் நிரூபணங்களை மறுக்கிறது. - அங்கீகரித்தல்: புதிய 256-பிட் உப்பை எடுத்து, அங்கீகார விருந்தினர் நிரலை அதன் 16-சொல் தனிப்பட்ட உள்ளீட்டின் மீது, அதாவது செலவு விசை மற்றும் உப்பின் மீது, பிணைப்பைப் பொது உள்ளீட்டுப் பகுதியாகக் கொண்டு, அடுக்கு 10-இல் நிரூபிக்கிறது. அது செலவு விசையிலிருந்து
nk-ஐ வருவித்துc = H(AUTH, nk ‖ salt)-ஐ வெளியிடுகிறது; தொகுப்பு அதைauth_commitஆகக் கொண்டுசெல்கிறது. - நிரூபித்தல்: தொகுப்பு விருந்தினர் நிரலை அதன் 1,212-சொல் தனிப்பட்ட உள்ளீட்டின் மீது (பார்வை விசை
nk, நான்கு உள்ளீட்டு இடங்களும் அவற்றின் பாதைகளும், நங்கூரம், நான்கு வெளியீடுகள்,fee,burn_a,burn_r, தனிப்பட்ட சொத்துA,time, உப்பு), அதே பிணைப்பைப் பொது உள்ளீட்டுப் பகுதியாகக் கொண்டு, அடுக்கு 14-இல் நிரூபிக்கிறது. உரிமை, உறுப்பினர் நிலை, ஒவ்வொரு உண்மையான உள்ளீடும் அதன் இடத்துக்குரிய சொத்தைக் கொண்டுள்ளது என்பது, நான்கு நல்லிஃபையர்கள், அதேc, இரண்டு இருப்புச் சமன்பாடுகள்in₀ + in₁ = out₀ + out₁ + burn_aமற்றும்in₂ + in₃ = out₂ + out₃ + fee + burn_rஆகியவற்றை நிரூபணம் காட்டுகிறது. வாலட்டுக்குப் பதிலாக இணைக்கப்பட்ட நிரூபிப்பாளர் உருவாக்கக்கூடிய நிரூபணம் இதுவே; அங்கீகார நிரூபணம் வாலட்டின் சொந்த இயந்திரத்திலேயே உருவாக்கப்படுகிறது. - சரிபார்த்தல்: நிரூபணம் வெளியிட்ட செரிமானத்தை வெற்றுரையிலிருந்து கணக்கிடப்பட்டதுடன் சரிபார்த்து,
Transaction { chain_id, bundle, action: None }-ஐச் சமர்ப்பிக்கிறது.
Chain 14 முதல் இந்த வரிசை முக்கியமானது: நிரூபணங்களுக்கு முன்பே உறைகளும் செயலும் இருக்கின்றன, ஏனெனில் நிரூபணங்கள் அவற்றுக்கு உறுதிமொழியிடுகின்றன. ஒரு அழைப்புக்கு, அழைப்பு நிரூபணம் முதலில் உருவாக்கப்பட்டு அதுவும் பிணைப்புக்குள் அமைகிறது. hardening_v6 சங்கிலியில், அழைப்பு நிரூபணமே இரண்டு நிரூபணங்களும் வெறுமையாக்கப்பட்ட பரிவர்த்தனையின் அழைப்புப் பிணைப்பின் மீது உருவாக்கப்படுகிறது (chain 16 முதல் 19 வரை rand-call-bind-1, chain 20-இல் ஜெனிசிஸ் ஹாஷுடன் rand-call-bind-2); அது கட்டணத் தொகுப்பின் நல்லிஃபையர்களை உள்ளடக்குவதால், அதை வேறொரு தொகுப்பின் கீழ் நகலெடுக்க முடியாது.
proving bundle (tier 14; about a minute on a laptop)…
proved in 98.3s: tier 14, 1423170 bytes
submitted transfer 4f2c… 1.5 RAND out, 98.499 RAND change, fee 0.001 RAND, anchored at height 192
இந்தப் பதிவு, chain 14 நிலவரப்படி fullnode-இன் வழிகாட்டியில் உள்ள வாலட்டின் வெளியீட்டு வடிவம்; காட்டப்படும் பைட் எண்ணிக்கை chain 14-இல் உறுதிசெய்யப்பட்ட ஒரு உற்பத்தி-சுயவிவரத் தொகுப்பு நிரூபணத்தினுடையது. Chain 17 முதலான வாலட், chain 20-இல் உள்ள v0.6.8 உட்பட, இவற்றுக்கு முன் proving the spend authorisation on this machine (tier 10; seconds)…, authorisation proved in …: tier 10, … bytes என்ற இரண்டு வரிகளை அச்சிடுகிறது; தொகுப்பு வரியை proving the bundle (tier 14; about a minute and a half on a laptop)… என அமைக்கிறது.
இதே இயங்குமுறையே ஒவ்வொரு செயலுக்கும், எப்போதும் சரியாக ஒரே தொகுப்புடன், கட்டணம் செலுத்துகிறது: வரிசைப்படுத்தல், அழைப்பு, டோக்கன் பதிவு அல்லது டோக்கன் அச்சிடல் ஆகியவை RAND-இன் பூஜ்ஜிய-மதிப்புச் சுய-பரிமாற்றத்தின் மீது பயணிக்கின்றன; பிணைப்பு வைப்பு, burn_r வழியாகப் பங்குத்தொகையை எரிக்கும் ஒரு தொகுப்பின் மீது; டோக்கன் எரிப்பு அல்லது பாலம் எரிப்பு, 0–1 இடங்களிலிருந்து சொத்தை எரித்து (burn_a, burn_asset) 2–3 இடங்களிலிருந்து RAND கட்டணத்தைச் செலுத்தும் ஒரே தொகுப்பின் மீது. ஒரு பரிமாற்றம் நகர்த்தும் சொத்து ஒரு சான்றுச் சொல்; அது எந்தப் பொதுப் புலத்திலும் இல்லை.
இதன் செலவு என்ன
மேம்பாட்டு மடிக்கணினியில் (Apple Silicon, வெளியீட்டுக் கட்டமைப்பு) அளவிடப்பட்டவை, fullnode-இன் சொந்த ஆவணங்கள் பதிவுசெய்யும் எண்கள்:
| விருந்தினர் நிரல் | சொற்கள் | சுழற்சிகள் | அடுக்கு | நிரூபணம் | நிரூபண அளவு (உற்பத்தி, 80 வினவல்கள்) |
|---|---|---|---|---|---|
| தொகுப்பு விருந்தினர் நிரல் v3 (chain 17 முதல் 20 வரை) | — | அடுக்கு-14 வரவுசெலவில் 4,024 சுழற்சிகளும் 273 Poseidon2 வரிசைமாற்றங்களும் மிச்சம் | 14 | ≈ 100 வி, உச்சம் 5.7 GB; chain 18-இல் 102.5 முதல் 134.0 வி வரை அளவிடப்பட்டது (2026-09-30) | ≈ 1.50 MB; chain 18-இல் 1,494,151 முதல் 1,504,260 பைட்டுகள் வரை அளவிடப்பட்டது (2026-09-30) |
| அங்கீகார விருந்தினர் நிரல் (chain 17 முதல் 20 வரை) | — | 250 | 10 | ≈ 7 வி; chain 18-இல் 6.6 முதல் 19.9 வி வரை அளவிடப்பட்டது (2026-09-30) | ≈ 1.37 MB; chain 18-இல் 1,364,940 முதல் 1,375,371 பைட்டுகள் வரை அளவிடப்பட்டது (2026-09-30) |
| மறைக்கப்பட்ட-சொத்துத் தொகுப்பு v1, 4-உள்ளீடு-4-வெளியீடு (chain 14, 15) | — | அடுக்கு-14 வரவுசெலவுக்குள், சுமார் 2,071 சுழற்சிகள் (13%) மிச்சத்துடன் | 14 | ≈ 98–100 வி, உச்சம் 5.7 GB | ≈ 1.43 MB; chain 14-இல் 1,422,116, 1,423,170 பைட்டுகள் அளவிடப்பட்டன |
bundle, 2-உள்ளீடு-2-வெளியீடு (ஓய்வுபெற்றது; chain 13 வரை) | 3,811 | ≈ 9,160 | 14 | ≈ 100 வி (தனியாக 94.6–97.9 வி; இரண்டு ஒரே நேரத்தில் எனில் ஒவ்வொன்றும் 114 வி) | chain 8-இல் 1,321,773 பைட்டுகள் அளவிடப்பட்டது |
private_payment (ஒரு அழைப்பு) | சிறியது | < 1,000 | 10 | ≈ 7 வி | ≈ 1.37 MB (அடுக்கு 10-இல் fib: கட்டுப்பாட்டுத் தொகுதி 7-இன் கீழ் 1,367,688 பைட்டுகள்; தொகுதி 6-இன் கீழ் 1,298,729) |
| ஹாஷ் அட்டவணை இல்லாத அழைப்பு (சங்கிலிக்கு வெளியிலான பேரேடு, chain 18) | 773 | — | 14 | 114.8 வி | 1,498,589 பைட்டுகள் |
| SHA-256 அட்டவணையுடன் கூடிய அழைப்பு (பொறுப்புகளுக்கான நிரூபணம், chain 18) | 994 | — | 14 | 122.9 வி | 1,911,152 பைட்டுகள் |
| Keccak அட்டவணையுடன் கூடிய அழைப்பு (அநாமதேய வாக்கு, chain 18) | — | — | 12 | 29.2 வி | 3,346,865 பைட்டுகள் |
சரிபார்ப்பே ஒருமித்த ஒப்புதலின் செலவு; அதை ஒவ்வொரு முனையும் செலுத்துகிறது: முன்பே தயாரான சரிபார்ப்பி விசையுடன் சுமார் 16 ms; ஒரு குறிப்பிட்ட வடிவத்துக்கு முதன்முறையாக விசை உருவாக்கப்படும்போது சுமார் 230 ms. சரிபார்ப்பி விசை நிரலின் உள்ளடக்கத்தைச் சார்ந்ததல்ல — அது (tier, program_log_height, input_log_height, keccak_log_height, sha256_log_height, public_log_height)-ஐ விசையாகக் கொண்டது — எனவே ஒரு முனை ஒவ்வொரு வடிவத்துக்கும் ஒன்றை உருவாக்கி மீண்டும் பயன்படுத்துகிறது; வரிசைப்படுத்தப்பட்ட நிரலுக்கு, அந்த விசை வரிசைப்படுத்தும் நேரத்தில் பின்னணியில் ஒருமுறை கணக்கிடப்படுகிறது (மடிக்கணினியில் சுமார் 2 வி, 2-vCPU சேவையகத்தில் 7 வி). Chain 13 மற்றும் அதற்கு முந்தையவற்றின் 2-உள்ளீடு-2-வெளியீடு தொகுப்பு program 12, input 10, keccak 0, sha256 0, public 2, mem 16 என்ற வடிவத்தை அறிவித்தது; chain-14 தொகுப்பு நிரூபணம் எட்டுப் பிணைப்புச் சொற்களின் உயரமான public 4-ஐ அறிவிக்கிறது, எந்த ஹாஷ் அட்டவணையையும் கொண்டிருப்பதில்லை; அது வேறொரு அடுக்கையோ, ஏதேனும் ஒரு அட்டவணையையோ, வேறொரு பொது உயரத்தையோ அறிவித்தால், எந்தச் சரிபார்ப்பி விசையும் உருவாக்கப்படுவதற்கு முன்பே மறுக்கப்படுகிறது. கட்டுப்பாட்டுத் தொகுதி 7 முதல், அறிவிக்கப்படும் ஒவ்வொரு அட்டவணையிலும் குறைந்தது 2⁷ வரிசைகள் உள்ளன; எனவே chain-20 தொகுப்பு நிரூபணம் public 7-ஐ அறிவிக்கிறது.
சங்கிலி 20-இல் ஒரு பரிமாற்றம் ஆகவே சுமார் 2.87 MB நிரூபணத்தைச் சுமக்கிறது: தொகுப்பு நிரூபணமும் அங்கீகார நிரூபணமும். ஓர் அழைப்பு அதற்கு மேல் மூன்றாவது நிரூபணத்தையும் சுமக்கிறது. ஒவ்வொன்றும் genesis max_proof_bytes-க்குள் அடங்க வேண்டும்; அது சங்கிலிகள் 17 முதல் 19 வரை இருந்ததைப் போலவே சங்கிலி 20-இலும் 4,194,304 (4 MiB). சங்கிலிகள் 13 முதல் 16 வரை அது 8 MiB ஆக இருந்தது.
மறைக்கப்பட்ட-சொத்து விருந்தினர் நிரல் அடுக்கு 14-இல் அடங்குவதற்கு ஒரே காரணம், அது தனது தனிப்பட்ட உள்ளீடுகளை ஒரு சுழலில் படிப்பதும் Merkle சரிபார்ப்பின் உடன்பிறப்பு வாசிப்புகளை ஒன்றிணைப்பதும்தான். பழைய விரிக்கப்பட்ட பாணியில் எழுதப்பட்டால் அதே உறவு அடுக்கு 16-இல் சென்று சேர்கிறது. அப்போது சுமார் 400 s நேரமும் 21–22 GB நினைவகமும் தேவைப்படும்; அது 16 GB பணப்பைகளை விலக்கிவிடும்.
நிரூபித்தல் CPU-சார்ந்தது. இன்று பணப்பை ஒவ்வொரு தளத்திலும் CPU பின்னிலையைப் பயன்படுத்துகிறது. பெரிய-அடுக்கு ஓட்டங்களில் நிரூபிப்பான் ஒற்றை இழையாக இயங்கியது: 16-vCPU droplet ஒன்று ஒரு கோரின் 99%-இல் ஓடியது. ஒரு நிரூபணம் முடிந்ததா என்பதைக் கோர்கள் அல்ல, நினைவகமே தீர்மானித்தது (நிரூபித்தல் நினைவகம்). send, bond, call, deploy, bridge-mint, bridge-burn ஆகியவற்றின் மீதான --cuda கொடி ஒரு NVIDIA பின்னிலையைத் தேர்ந்தெடுக்கிறது; அதற்கு --features cuda உடனான கட்டமைப்பு தேவை. அதன் kernel-கள் 2026-09-28 அன்று உண்மையான வன்பொருளான NVIDIA H100-இல் முதன்முறையாக ஓடி CPU குறிப்பு முடிவுகளுடன் ஒத்துப்போயின. ஆனால் வெளியீடு உள்ளடக்கும் சுற்றுகள் checkout-இல் எந்த PTX-உம் commit செய்யப்படவில்லை. ஆகவே kernel-கள் தொகுக்கப்படும் வரை கட்டமைப்பு no PTX for the GPU kernels என்று தோல்வியடைகிறது. தொகுதியின் எந்த GPU கணுவிலும் எந்த உற்பத்தி நிரூபணமும் இதுவரை அளவிடப்படவில்லை. CPU-க்குத் திரும்பும் மாற்றுவழி வேண்டுமென்றே இல்லை. ஒரு CUDA அழைப்பால் உள்ளீட்டு உறையை முத்திரையிடவும் முடியாது, ஏனெனில் உப்பு நிரூபிப்பானை விட்டு ஒருபோதும் வெளியேறுவதில்லை. அடுக்கு-14 மறைக்கப்பட்ட-சொத்து தொகுப்பு நிரூபணத்தின் உச்ச நினைவகம் சுமார் 5.7 GB (Production FRI, CPU). பெரிய நினைவக வகுப்புகள் கீழே உள்ள மொழிபெயர்ப்பி மற்றும் மீள்சுழல் நிரூபணங்களுக்கு உரியவை (≥ 64 GB மற்றும் அதற்கு மேல்).
ஒரு கணு எவ்வாறு சரிபார்க்கிறது
ஏற்பு முதலில் மலிவான சரிபார்ப்புகளை இயக்குகிறது (பரிமாற்றங்கள்). பின்னர் அது:
- வெளியிடப்பட்ட மூல உரையிலிருந்து தொகுப்புச் சுருக்கத்தை மீண்டும் கணக்கிடுகிறது. அந்த மூல உரையில் நங்கூரம், நான்கு செல்லாதாக்கிகள், நான்கு உறுதிப்பாடுகள்,
fee,burn_a,burn_r,burn_asset,time, தொகுப்பின்auth_commit, பூஜ்ஜியத்தில் நிலைநிறுத்தப்பட்ட ஒரு கறைச் சொல் ஆகியவை உள்ளன. கணக்கிட்ட சுருக்கம் நிரூபணம் வெளியிட்டதற்குச் சமமாக இருக்க வேண்டும். சாட்சி உறவை மீறிய ஒரு நிரூபணம் கறைபட்ட சுருக்கத்தை வெளியிடுகிறது; அது எந்த மூல உரையுடனும் பொருந்தாது. சில சரிபார்ப்புகள் இதற்குப் பதிலாகக் கட்டமைப்பு சார்ந்தவை: ஒரு வெளியீட்டின் அனுப்புநர், சொத்து, நேரம் ஆகியவற்றை விருந்தினர் நிரலே வழங்குகிறது, ஆகவே நிரூபிப்பானால் அவற்றைத் தேர்ந்தெடுக்க முடியாது. தனிப்பட்ட சொத்து சுருக்கத்தில் இல்லை; - நிரூபணத்தைக் குறிவிலக்கி, அதன் அறிவிக்கப்பட்ட உயரங்களை அடுக்குக்கு எதிராகச் சரிபார்க்கிறது (
check_declared_heights). ஆகவே ஒரு நிரூபணத்தின் வடிவத்தின் மீதான சங்கிலியின் வரம்பே சரிபார்ப்பானின் வரம்பு. எந்தக் கையொப்பமோ நிரூபணமோ சரிபார்க்கப்படுவதற்கு முன், சமர்ப்பிக்கப்பட்ட அல்லது பரப்பப்பட்ட ஒவ்வொரு பரிமாற்றத்தின் மீதும் ஒரு நியமன-நிரூபணத் திரையிடல் இயங்குகிறது (hardening_v6-இன் கீழ் தொகுதிச் சரிபார்ப்பிலும்). fullnode v0.6.8 முதல் (audit v6, ZKV-4) அந்தத் திரையிடல் முதலில் அறிவிக்கப்பட்ட ஒவ்வொரு படியையும் 25 பிட்களுக்குள் கட்டுப்படுத்துகிறது (MAX_HONEST_DEGREE_BITS, நினைவக அட்டவணையின் உச்சவரம்பு கூட்டல் ஒன்று). இதனால் மிகப் பெரிய படி கொண்ட ஒரு தலைப்பு, அதற்காக நேர்மையான மடிப்பு அட்டவணை மீண்டும் வருவிக்கப்படும் நேரம் முழுவதும் ஒரு கணுவை இனி பிடித்து வைத்திருக்காது. திரையிடலுக்குள் ஏற்படும் panic அந்தப் பரிமாற்றத்தை மட்டும் மறுக்கிறது, கணுவை நிறுத்துவதில்லை; - பரிமாற்றத்தின் பிணைப்பைக் கணக்கிட்டு
Machine::verify_public(hc_bundle, &binding, proof)-ஐ இயக்குகிறது. இது தொகுதிச் சரிபார்ப்பானுடன்,H_PUBஅந்த எட்டுச் சொற்களின் சுருக்கம் என்ற சரிபார்ப்பையும் சேர்த்துச் செய்கிறது. ஆகவே வேறு செயல், வேறு உறை அல்லது வேறு சங்கிலி அடையாளம் கொண்ட ஒரு பரிமாற்றத்தின் மீது நகலெடுக்கப்பட்ட நிரூபணம் சரிபார்ப்பில் தேறாது. சங்கிலி 20-இல் வேறொரு சங்கிலியின் genesis மீது நகலெடுக்கப்பட்ட நிரூபணமும் தேறாது. சங்கிலி 13 வரை அந்தப் பகுதி வெறுமையாக இருந்தது; எதுவும் ஒரு நிரூபணத்தை அதன் பரிமாற்றத்துடன் பிணைக்கவில்லை; - அங்கீகார நிரூபணத்தை
hc_auth-க்கும் அதே பிணைப்புக்கும் எதிராகச் சரிபார்க்கிறது. அது வெளியிடும்c,auth_commit-க்குச் சமமாக இருக்க வேண்டும். அங்கீகார நிரூபணம் இல்லாத தொகுப்பு மறுக்கப்படுகிறது (AuthMissing).cவேறுபடும் தொகுப்பும் மறுக்கப்படுகிறது (AuthMismatch); - தொகுப்பு நிரூபணத்தின்
GAS_LIMIT, genesisbundle_gas_limitஆன 20,479-க்குச் சமமாக இருக்க வேண்டும். அங்கீகார நிரூபணத்தினுடையது 1,279-க்குச் சமமாக இருக்க வேண்டும். இவை இரு விருந்தினர் நிரல்களின் தலைப்பு உச்சவரம்புகள் (BundleGasLimit,AuthGasLimit); - ஓர் அழைப்புக்கு, நிரலின் சேமிக்கப்பட்ட
code_hash-க்கு எதிராக இதையே செய்கிறது. இங்கே பகுதி என்பது நிரலின் பொதுச் சொற்களும் அவற்றைத் தொடர்ந்து அழைப்புப் பிணைப்பும் ஆகும் (ஓர் RPL-2Invokeதனது நிலைமாற்றத்தைச் சூழல் சொற்களாகச் சேர்க்கிறது, நிரல்கள்). பின்னர் நிரூபணம் அறிவிக்கும் gas வரம்புக்கும் அதன் பைட்டுகளுக்கும் எதிராகக் கட்டணத்தைச் சரிபார்க்கிறது (கட்டணங்கள்).
RPC அல்லது பரப்புதல் வழியாகச் சமர்ப்பிக்கப்பட்ட ஒரு பரிமாற்றம், ஒருமித்த சுழலுக்கு வெளியே, 64-ஆழ வரிசைக்குப் பின்னால் உள்ள நான்கு பணியாளர்களில் ஒன்றில் சரிபார்க்கப்படுகிறது. சரிபார்ப்பு முடிந்த பின்னரே அது மேலும் பரப்பப்படுகிறது. ஒவ்வொரு சக கணுவுக்குமான டோக்கன் வாளி (வெடிப்பு 16, வினாடிக்கு 4 நிரப்பல்) ஒரு சக கணு ஒரு கணுவை எவ்வளவு சரிபார்க்கச் செய்ய முடியும் என்பதை அளவிடுகிறது. நிரந்தரமாக மறுக்கப்பட்ட ஒரு பரிமாற்றம் மீண்டும் வந்தால், 8,192-பதிவு தற்காலிக நினைவகம் செலவின்றிப் பதிலளிக்கிறது. முன்மொழியப்பட்ட தொகுதிக்குள் உள்ள நிரூபணங்களின் சரிபார்ப்பு, அந்தத் தொகுதி பயன்படுத்தப்படும்போது இன்னும் ஒருமித்த சுழலிலேயே இயங்குகிறது. ஒத்திசைக்கும் கணு ஒவ்வொரு தொகுதியையும் ஏற்கும் முன் அதன் ஒவ்வொரு சான்றிதழையும் ஒவ்வொரு நிரூபணத்தையும் மீண்டும் சரிபார்க்கிறது. குறைவெண் கையொப்பமிட்டது என்பதற்காக எதுவும் நம்பப்படுவதில்லை.
அடுக்குகள்
| அடுக்கு | சுழற்சி வரவுசெலவு (2ᵗ − 1) | cpu வரிசைகள் | பயன்படுத்துபவை |
|---|---|---|---|
| 10 | 1,023 | 2¹⁰ | அங்கீகார விருந்தினர் நிரல்; private_payment, fib |
| 12 | 4,095 | 2¹² | |
| 14 | 16,383 | 2¹⁴ | மறைக்கப்பட்ட-சொத்து தொகுப்பு விருந்தினர் நிரல் (மற்றும் ஓய்வுபெற்ற bundle விருந்தினர் நிரல்); மிகப் பெரிய அழைப்பு |
| 16 | 65,535 | 2¹⁶ | சோதனைத் தொகுப்பில் உள்ள EVM அழைப்பு நிரூபணம்; மொழிபெயர்க்கப்பட்ட ERC-20 approve (சங்கிலி 13-இல் அழைக்கப்பட்டது) |
| 18 | 262,143 | 2¹⁸ | ERC-20 transfer, transferFrom, மொழிபெயர்க்கப்பட்டவை அல்லது மொழிபெயர்ப்பியில் இயக்கப்பட்டவை |
| 20 | 1,048,575 | 2²⁰ | SPL Token, மொழிபெயர்க்கப்பட்டது அல்லது sBPF மொழிபெயர்ப்பி விருந்தினர் நிரலில் இயக்கப்பட்டது |
fullnode v0.5.6 (2026-09-25) முதல், அடுக்கு 14-க்கு மேற்பட்ட ஓர் அழைப்பு நிரூபணம் சரிபார்ப்பான் சாவி கட்டமைக்கப்படும் முன்பே மறுக்கப்படுகிறது (CallTierTooHigh). அத்தகைய ஒன்றைச் சுமக்கும் தொகுதி செல்லாது. ஓர் அழைப்பு அதிகபட்சம் 128 Keccak-f வரிசைமாற்றங்களையும் 128 SHA-256 சுருக்குதல்களையும் மட்டுமே சுமக்க முடியும். அடுக்குகள் 16 முதல் 20 வரை இன்னும் நிரூபிக்கின்றன, ஆனால் சங்கிலிக்கு வெளியே மட்டுமே. மேலே உள்ள அவற்றின் வரிசைகளில் எதையும் சங்கிலி 20-இல் அழைக்க முடியாது. எந்த அடுக்கு-14 அழைப்புக்கும் மிகப் பெரிதான நிரலின் வரிசைப்படுத்தலையும் சங்கிலி 20 மறுக்கிறது: பொது உள்ளீடு இல்லாமல் 8,180 சொற்களுக்கு மேல் உள்ள நிரல் அத்தகையது (ProgramUncallable) (வரவுசெலவு).
சுழற்சிகளையும் நிரல் மற்றும் உள்ளீட்டுச் சுருக்க வரிசைகளையும் வரவுசெலவு உள்ளடக்கும் மிகச் சிறிய அடுக்கை நிரூபிப்பான் தேர்ந்தெடுக்கிறது. அடங்காத ஓர் ஓட்டம் நிரூபித்தலுக்கு முன்பே தோல்வியடைகிறது. அடுக்கு மட்டுமே பொதுவானது. ஒவ்வொரு படியும் நிரூபித்தல் நேரத்தைத் தோராயமாக நான்கு மடங்காக்குகிறது; நிரூபண அளவை சற்றுக் கூட்டுகிறது. சங்கிலி 20-இல் ஓர் அழைப்பின் கட்டணம் அடுக்கைப் பின்பற்றுவதில்லை. அதன் நிரூபணம் அறிவிக்கும் gas வரம்பையும் பைட்டுகளில் அதன் அளவையும் அது பின்பற்றுகிறது (கட்டணங்கள்).
கட்டுப்பாட்டுத் தொகுப்புகளும் கடினப் பிளவுகளும்
ஒரு கட்டுப்பாட்டுத் தொகுப்பு என்பது சரிபார்ப்பான் சரிபார்க்கும் அட்டவணைகள், நெடுவரிசைகள், பாட்டைகள், பொது மதிப்புகள், FRI அளவுருக்கள் ஆகியவற்றின் துல்லியமான தொகுப்பு. ஒரு தொகுப்பின் கீழ் உருவாக்கப்பட்ட நிரூபணம் இன்னொரு தொகுப்பின் கீழ் சரிபார்ப்பில் தேறாது; இது இரு திசைகளிலும் பொருந்தும். ஒரு கணுவின் தொடக்க மீளியக்கம் அதன் சங்கிலியில் உள்ள ஒவ்வொரு நிரூபணத்தையும் மீண்டும் சரிபார்க்கிறது. ஆகவே வேறொரு தொகுப்பிலிருந்து கட்டமைக்கப்பட்ட கணு முதல் நிரூபணத்திலேயே தோல்வியடைந்து வெட்டிக் குறைக்கிறது. அதனால்தான் தொகுப்பின் ஒவ்வொரு மாற்றமும், ஒவ்வொரு கணுவும் ஒரே கட்டமைப்பில் இருக்க, ஒரு புதிய சங்கிலி அடையாளமாக வெளியிடப்படுகிறது. அதனால்தான் rand_status, hc_bundle, hc_auth ஆகியவற்றை அறிவிக்கிறது; genesis-உடன் கட்டமைப்பு முரண்படும் கணு தொடங்க மறுக்கிறது.
| தொகுப்பு | தேதி | மாறியவை |
|---|---|---|
| 2 | 2026-09-10 | முதல் மதிப்பாய்வுக்குப் பின் ஐந்து உறுதித்தன்மைத் திருத்தங்கள் |
| 3 | 2026-09-11 | Poseidon2 சில்லு, சுற்றுக்குள் hc, சாட்சியாக நிரல் அட்டவணை, துணைச்-சொல் நினைவகம், RV32M, 27 வினவல்களுக்கு மீண்டும் சீரமைக்கப்பட்ட FRI |
| 4 | 2026-09-11 | தனக்கென அட்டவணையுடன் உப்பிடப்பட்ட உள்ளீட்டு உறுதிப்பாடு H_IN; தட்டை-இருமக் கோப்பு ஏற்றி |
| 5 | 2026-09-12 | விருப்பத்தேர்வான keccak அட்டவணை; நிரூபணம் அறிவிக்கும் நினைவக உயரம்; zk தணிக்கையிலிருந்து இரண்டு முக்கியத் திருத்தங்கள்; FRI மீண்டும் 80 வினவல்களுக்கு; MAX_PROOF_BYTES 2 MiB-க்கு |
| 6 | 2026-09-14 | கட்டாய public அட்டவணையும் H_PUB-உம்; விருப்பத்தேர்வான sha256 அட்டவணை; நூலகங்களாக EVM, sBPF மொழிபெயர்ப்பி விருந்தினர் நிரல்கள்; 34 பொது மதிப்புகள். சங்கிலிகள் 12 முதல் 15 வரை இயக்கியது இதுவே. |
| 7 | 2026-09-28 | ஒவ்வொரு LogUp முனையமும் BLIND பாட்டை வழியாக மறைக்கப்பட்டது; அறிவிக்கப்பட்ட ஒவ்வொரு அட்டவணையும் குறைந்தபட்சம் 2⁷ வரிசைகள்; உள்ளீடு, பொது, உப்புச் சொற்களின் மீது 32-பிட் வரம்புச் சரிபார்ப்புகள்; POSEIDON2_LEN syscall (7); JALR தன் இலக்கின் பிட் 0-ஐ அழிக்கிறது, funct3 = 0 என்பதைக் கோருகிறது; key_derivation_v2-இலிருந்து உப்பிடப்பட்ட சரிபார்ப்பான் சாவிகள். சங்கிலிகள் 16, 17 இயக்கியது இதுவே. |
| 8 | 2026-09-29 | gas அளவி: cpu அட்டவணையில் GAS நெடுவரிசையும் பொது மதிப்பு GAS_LIMIT-உம்; 35 பொது மதிப்புகள். சங்கிலிகள் 18 முதல் 20 வரை இயக்குவது இதுவே. |
சங்கிலிகள் 14, 15 எந்தக் கட்டுப்பாட்டையும் மாற்றவில்லை. சங்கிலி 15-இன் கணு Poseidon2-இன் 86 சுற்று மாறிலிகளை விதையிடப்பட்ட எடுப்புக்குப் பதிலாக ஓர் நேரடி அட்டவணையாக வைத்திருக்கிறது (audit ZKV-2). மதிப்புகள் அதே என்பதால் எந்த hash-உம் சுருக்கமும் நிரூபணமும் மாறவில்லை. சங்கிலி 14-இல் மறைக்கப்பட்ட-சொத்து தொகுப்பு ஒரு புதிய விருந்தினர் நிரல் (ஒரு புதிய hc_bundle). பரிமாற்றப் பிணைப்பு, தொகுப்பு 6 ஏற்கெனவே சுற்றுக்குள் பிணைக்கும் பொதுப் பகுதியைப் பயன்படுத்துகிறது. இருந்தாலும் இது ஒரு கடினப் பிளவுதான். தொகுப்பின் கம்பி வடிவமும், நிலைநிறுத்தப்பட்ட விருந்தினர் நிரலும், ஒவ்வொரு பரிமாற்ற அடையாளமும் மாறின. தொகுப்பைச் சுமக்கும் சங்கிலி-13 பரிமாற்றத்தைப் புதிய கட்டமைப்பு மறுக்கிறது. பிளவுக்கு முன் கட்டமைக்கப்பட்ட பணப்பை வெறுமையான பகுதி கொண்ட நிரூபணங்களை உருவாக்குகிறது; அவற்றைச் சங்கிலி மறுக்கிறது.
மாற்றத்திற்குப் பின் வந்த மூன்று சங்கிலிகள் ஒவ்வொன்றும் நிரூபணம் என்பதன் வரையறையை மாற்றின. சங்கிலி 16 (fullnode v0.6.1, 2026-09-28) கட்டுப்பாட்டுத் தொகுப்பு 7-க்கு மாறியது, கிளைகளற்ற கட்டு விருந்தினர் நிரல் v2-ஐ நிலைநிறுத்தியது, hardening_v6-ஐ அமைத்தது. குறுகிய அட்டவணைகளும் மறைப்பிடப்படாத LogUp முனையங்களும் தனிப்பட்ட தரவைக் கசியவிட்டன என்று 2026-09-27 மீளாய்வு காட்டியதைத் தொடர்ந்து இந்த மாற்றம் வந்தது (zkVM எவ்வாறு செயல்படுகிறது). ஒவ்வொரு சரிபார்ப்பி விசையும் மாறியது. சங்கிலி 17 (v0.6.3, 2026-09-29) தொகுப்பு 7-ஐயே வைத்துக்கொண்டு பிரிக்கப்பட்ட அங்கீகாரத்தைச் சேர்த்தது: கட்டு விருந்தினர் நிரல் v3, அங்கீகார விருந்தினர் நிரல், கட்டின் பரிமாற்ற வடிவத்தில் இரண்டு புதிய புலங்கள், பரிவர்த்தனை அடையாளக் களம் rand-txid-3. சங்கிலி 18 (v0.6.7-rc1, 2026-09-29) gas அளவீட்டுக்காகக் கட்டுப்பாட்டுத் தொகுப்பு 8-க்கு மாறியது. இதனால் நிரூபண அளவில் அளவிடப்பட்ட கூடுதல் செலவு 1%-க்கும் குறைவு. சங்கிலி 19 (2026-10-01) அதே v0.6.7 கட்டமைப்பில் சங்கிலி 18-இன் மறு-தொடக்கம். நிரூபணங்களில் அது எதையும் மாற்றவில்லை. சங்கிலி 20 (fullnode v0.6.8, 2026-10-01) கட்டுப்பாட்டுத் தொகுப்பு 8-ஐயும் அதே விருந்தினர் நிரல்களையும் சரிபார்ப்பி விசைகளையும் வைத்துக்கொள்கிறது. மாறியது நிரூபணம் எதனுடன் பிணைக்கப்படுகிறது என்பது மட்டுமே. பரிவர்த்தனை, அழைப்புப் பிணைப்புகள் இப்போது தொடக்கத் தொகுதியின் ஹாஷைக் கொண்டுள்ளன (binding_domain: 1). இது பணப்பையும் பேரேடும் கணக்கிடும் ஒரு பொது உள்ளீடு. எனவே எந்தச் சுற்றும் மாறவில்லை. இருந்தபோதிலும் இது ஒரு கடின ஃபோர்க் ஆகும், ஏனெனில் v0.6.7 பணப்பையின் நிரூபணங்கள் இதில் சரிபார்க்கப்படுவதில்லை. ஒவ்வொரு கட்டமைப்பும் தனக்கு முந்தைய சங்கிலிகளைத் தொடக்கத் தொகுதி ஹாஷ் மூலம் மறுக்கிறது.
குறியீட்டில் பதிவாகியுள்ள, அறிந்துகொள்ளத் தக்க இரண்டு தணிக்கைக் குறிப்புகள் உள்ளன. முதலாவது, TIER பொது மதிப்பைச் சரிபார்ப்பி நிரூபணத் தலைப்புடனும் தொகுப்பின் படி பிட்களுடனும் ஒப்பிட்டுச் சரிபார்க்கிறது. ஆனால் சுற்று அதைக் கட்டுப்படுத்துவதில்லை (தணிக்கை ZL1). அதை நீக்கினால் பொது மதிப்புகளின் அமைப்பு மாறும் என்பதால், இது சரிசெய்யப்படாமல் அடுத்த தொகுப்புக்காகக் குறிக்கப்பட்டுள்ளது. இரண்டாவது, H_IN விருந்தினர் நிரலுக்குத் தெரியும் ஓர் உறுதிப்பாடு. அழைப்பவர் வழங்கும் மதிப்புடன் சரிபார்ப்பி அதை ஒப்பிடுவதில்லை. இது வடிவமைப்பின்படியே.
வரவிருப்பது: தொகுதி-நிலைத் திரட்டல்
சங்கிலிகள் 14, 15-இல் மறைக்கப்பட்ட-சொத்து கட்டு நிரூபணம் ஒன்று சுமார் 1.43 MB. அந்த அளவில் 4 MiB தொகுதியில் (இயல்புநிலை அளவு, சங்கிலி 12-இன் அளவும் இதுவே) இரண்டு மறைக்கப்பட்ட பரிமாற்றங்களே அடங்கின. 2-உள்ளீடு-2-வெளியீடு கட்டின் ~1.3 MB அளவில் மூன்று அடங்கின. சங்கிலிகள் 13, 14, 15 தொகுதி வரம்பை 20 MiB ஆக உயர்த்தின (max_block_bytes). அதில் பதினான்கு பரிமாற்றங்களுக்கு இடம் உண்டு. சங்கிலி 20 அதே 20 MiB-ஐ வைத்துக்கொள்கிறது. ஆனால் அதில் ஒரு பரிமாற்றம் சுமார் 2.87 MB நிரூபணத்தைக் கொண்டுள்ளதால், ஒரு தொகுதியில் சுமார் ஏழு பரிமாற்றங்களே அடங்கும். இதற்குத் தீர்வாக, கத்தரிப்பையோ பெரிய தொகுதியையோ விட, fullnode தொகுதி-நிலைத் திரட்டலைத் தேர்ந்தெடுத்தது (2026-09-12). இதில் முத்திரையிடப்பட்ட ஒவ்வொரு சாளரத்துக்கும் ஒரு சுழல்நிலை நிரூபணம் N கட்டு நிரூபணங்களைச் சரிபார்க்கிறது. இதனால் வரலாறு தொடக்கம் முதல் இறுதிவரை நிரூபணங்களைத் தாங்கியதாகவே இருக்கும், மூல நிரூபணங்களைக் கைவிடவும் முடியும். இது கட்டமைக்கப்பட்டு இணைக்கப்பட்டுள்ளது, ஆனால் செயல்படுத்தப்படவில்லை. சங்கிலி 14 முதல், செயல்படுத்துவதற்கு முன் இதை மீண்டும் அளவிட வேண்டியுள்ளது. இது ஏற்கும் கட்டு வடிவம் வெற்றுப் பொதுப் பகுதியுடன் (public 2) அளவிடப்பட்டது. பரிவர்த்தனையுடன் பிணைக்கப்பட்ட கட்டு public 4 என அறிவிக்கிறது. எனவே சங்கிலி 14-இல் நிரூபிக்கப்பட்ட எந்தக் கட்டும் அதனுடன் பொருந்தவில்லை. கட்டுப்பாட்டுத் தொகுப்புகள் 7, 8 அந்த வடிவத்தை மீண்டும் மாற்றின. இப்போது ஒரு கட்டு நிரூபணம் public 7 என அறிவித்து 35 மதிப்புகளை வெளியிடுகிறது. எனவே திரட்டின் இடைமுகம் ஒரு நிரூபணத்துக்கு 35 சொற்கள். aggregation பகுதியைக் கொண்ட எந்தத் தொடக்கத் தொகுதியிலும் கணு கட்டமைப்பு தொடங்க மறுக்கிறது. சங்கிலிகள் 14 முதல் 20 வரை அந்தப் பகுதி இல்லாமலே தொடங்கப்பட்டன. சங்கிலி 20-இல் உள்ளது போன்ற இயங்குநிலை gas விலைகளைக் கொண்ட தொடக்கத் தொகுதியும் aggregation பகுதியுடன் சேர்ந்திருந்தால் மறுக்கப்படுகிறது. fullnode v0.5.8 முதல் திரட்டு நிரூபணம் தன் திரட்டியையும் பிணைக்கிறது (தணிக்கை AGG-2: நிரல் aggregate_binding(chain_id, aggregator, nonce)-ஐ உள்வாங்குகிறது). எனவே ஏற்கப்படும் வடிவத்தின் நிரல் சுருக்கத்தை அந்த மாற்றத்தைக் கொண்ட கட்டமைப்பில் அளவிட வேண்டும். செயல்படுத்துவதற்கு வேறு இரண்டும் இன்னும் தேவை. ஒன்று, சரிசெய்யப்பட்ட சுழல்நிலைச் சரிபார்ப்பிக்கு எதிராகப் போலித் திரட்டு நிரூபணம் கொண்டு தொடக்கம் முதல் இறுதிவரை ஒரு சோதனை. அது இன்னும் நடத்தப்படவில்லை. மற்றொன்று, அங்கீகார நிரூபணம் குறித்த ஒரு முடிவு. திரட்டு நிரல் கட்டு நிரூபணங்களை மட்டுமே சரிபார்க்கிறது. எனவே பிரிக்கப்பட்ட அங்கீகாரம் கொண்ட சங்கிலியில் ஒரு சாளரத்தை முத்திரையிட்டால் ஒரு பரிமாற்றம் சுமார் 2.87 MB-இலிருந்து சுமார் 1.37 MB ஆகக் குறையும், முற்றிலும் மறையாது.
கட்டமைக்கப்பட்டுள்ளவை:
- இரண்டாவது, Goldilocks-இல் இயல்பாக இயங்கும் இயந்திரம் (சுழல்நிலை VM,
randprotocol-rvm). அதன் சரிபார்ப்பி நிரல் ஒரு RV32 நிரூபணத்தை அடுக்கு 21-இல் சுமார் 1.97 மில்லியன் வரிசைகளில் சரிபார்க்கிறது (கட்டுப்பாட்டுத் தொகுப்பு 7-இன் கீழ் 2,044,506). அதோடு, கட்டு நிரூபணங்களின் ஒரு சாளரத்தின் மீது இயங்கும், எந்த N-க்கும் பொருந்தும் திரட்டு நிரல்; - இரண்டு பாத்திரங்கள்: சரிபார்ப்பாளர்கள் குறைந்த CPU செலவில் இயங்கி, முத்திரையிடப்பட்ட ஒவ்வொரு தொகுதிக்கும் ஒரு திரட்டு நிரூபணத்தைச் சரிபார்க்கின்றனர். திரட்டிகள் (அனுமதி தேவையற்ற, பிணையம் வைக்கப்பட்ட, மறைக்கப்பட்ட கொடுப்பனவு முகவரி கொண்ட பதிவேடு) GPU-வகை இயந்திரங்களில் திரட்டு நிரூபணங்களை உருவாக்குகின்றனர். அவர்களுக்கு உள்ளடக்கப்பட்ட கட்டுகளின் நிரூபணப் பங்கும், பாதியாகும் அட்டவணையில் புதிய RAND-இல் ஒரு தொகுதி மானியமும் வழங்கப்படுகின்றன;
- ஐந்து செயல்கள் (
RegisterAggregator,UnbondAggregator,WithdrawAggregator,SlashAggregator,Aggregate). இவற்றில்SlashAggregatorபரிமாற்ற வடிவத்தில் தொடர்ந்தாலும் மறுக்கப்படுகிறது, ஏனெனில் மீண்டும் முயலப்படும் திரட்டு அதே nonce-இல் மீண்டும் கையொப்பமிடுகிறது, அது இருமுகச் செயல் ஆகாது. அதோடு ஒன்பது-படி ஏற்பு நடைமுறை, உள்ளடக்கப்பட்ட கட்டுகளை முத்திரையிட்டு ஒவ்வொன்றையும் சுமார் 3 KB பொதுப் புலங்களாகக் கத்தரித்தல், புதிய கணுவுக்கு ஒரு சாளரத்துக்கு ஒரு சுழல்நிலைச் சரிபார்ப்பு மட்டுமே செலவாகும் முத்திரையிட்ட-வடிவ ஒத்திசைவு, RPC முறைகள்rand_getAggregate,rand_getAggregators,rand_getUnsealed,rand_getRawTransaction, மற்றும்rand-node aggregate --watchபின்னணிச் செயலி.
சோதனை FRI சுயவிவரத்தில் அளவிடப்பட்டவை: சுமை ஏற்றப்பட்ட மடிக்கணினியில் ஒரு N=1 திரட்டு நிரூபணம் சுமார் 26 நிமிடங்களில் உருவானது (327,035 பைட்டுகள்). ஒரு புதிய கணு ஏழு-தொகுதி முத்திரையிட்ட தொகுப்பை ஒரு சுழல்நிலைச் சரிபார்ப்புடன் ஒரு வினாடிக்குள் பயன்படுத்தியது. முதலில் வரம்பிடப்பட்ட இயந்திர வகைகள்: N=1-க்கு ≥ 64 GB ஓம்பி நினைவகம், N=2-க்கு ≥ 128 GB, N=3-க்கு ≥ 160 GB தேவை. உற்பத்தி நிலையில் N ≥ 2 CUDA பின்தளத்துக்கு உரியது. அதற்கு ஒரு GPU கணு தேவை, அது இன்னும் இல்லை. கட்டுப்பாட்டுத் தொகுப்பு 7-இன் கீழ் 256 GB இயந்திரத்தில் அளவிட்டபோது (2026-09-28, 29), N=2 திரட்டு 133 GB, N=3 221 GB எடுத்துக்கொண்டன. உற்பத்தி வெளியேற்ற நிரூபணம் (ஓர் உள் நிரூபணத்தின் மீது இயங்கும் சரிபார்ப்பி நிரல்) 256 GB-ஐத் தாண்டியது. இவற்றில் எதுவும் கட்டுப்பாட்டுத் தொகுப்பு 8-இன் கீழ் மீண்டும் அளவிடப்படவில்லை. திரட்டல் செயல்படுத்தப்படும் வரை சங்கிலி 20-இல் எந்தத் திரட்டு நிரூபணமும் ஒரு நிரூபணத்துக்குப் பதிலாக நிற்பதில்லை. அதன் இரண்டு காப்பகக் கணுக்களும் ஒவ்வொரு மூல நிரூபணத்தையும் வைத்திருக்கின்றன. அதன் சரிபார்ப்பாளர்கள் 24 மணிநேரத்துக்கு மேற்பட்ட பழைய வரலாற்றைக் கத்தரிக்கின்றனர்.