தொகுதிச்சங்கிலி தரவு சேமிப்பு உத்திகள்
தகவல்களை நேரடியாக தொகுதிச்சங்கிலியில் அல்லது தொகுதிச்சங்கிலியால் பாதுகாக்கப்படும் வகையில் சேமிக்க பல வழிகள் உள்ளன:
- EIP-4844 ப்ளாப்கள் (blobs)
- அழைப்புத் தரவு (Calldata)
- அடுக்கு 1 (l1) வழிமுறைகளுடன் புறச்சங்கிலி
- ஒப்பந்த "குறியீடு"
- நிகழ்வுகள்
- EVM சேமிப்பகம்
எந்த முறையைப் பயன்படுத்துவது என்ற தேர்வு பல அளவுகோல்களை அடிப்படையாகக் கொண்டது:
- தகவலின் ஆதாரம். அழைப்புத் தரவில் உள்ள தகவல்கள் நேரடியாக தொகுதிச்சங்கிலியிலிருந்தே வர முடியாது.
- தகவலின் இலக்கு. அழைப்புத் தரவு அதை உள்ளடக்கிய பரிவர்த்தனையில் மட்டுமே கிடைக்கும். நிகழ்வுகளை சங்கிலிசார் அணுகவே முடியாது.
- எவ்வளவு சிரமம் ஏற்றுக்கொள்ளத்தக்கது? முழு அளவிலான கணுவை இயக்கும் கணினிகள், உலாவியில் இயங்கும் பயன்பாட்டில் உள்ள இலகுரக கிளையண்ட்டை விட அதிக செயலாக்கத்தைச் செய்ய முடியும்.
- ஒவ்வொரு கணுவிலிருந்தும் தகவல்களை எளிதாக அணுகுவதற்கு வசதி செய்வது அவசியமா?
- பாதுகாப்புத் தேவைகள்.
பாதுகாப்புத் தேவைகள்
பொதுவாக, தகவல் பாதுகாப்பு மூன்று பண்புகளைக் கொண்டுள்ளது:
-
ரகசியத்தன்மை (Confidentiality), அங்கீகரிக்கப்படாத நிறுவனங்கள் தகவல்களைப் படிக்க அனுமதிக்கப்படுவதில்லை. இது பல சந்தர்ப்பங்களில் முக்கியமானது, ஆனால் இங்கே இல்லை. தொகுதிச்சங்கிலியில் எந்த ரகசியங்களும் இல்லை. தொகுதிச்சங்கிலிகள் வேலை செய்கின்றன, ஏனென்றால் யார் வேண்டுமானாலும் நிலை மாற்றங்களைச் சரிபார்க்க முடியும், எனவே ரகசியங்களை நேரடியாகச் சேமிக்க அவற்றைப் பயன்படுத்துவது சாத்தியமற்றது. தொகுதிச்சங்கிலியில் ரகசியத் தகவல்களைச் சேமிக்க வழிகள் உள்ளன, ஆனால் அவை அனைத்தும் குறைந்தபட்சம் ஒரு திறவுகோலைச் சேமிக்க சில புறச்சங்கிலி கூறுகளை நம்பியுள்ளன.
-
ஒருமைப்பாடு (Integrity), தகவல் சரியானது, அதை அங்கீகரிக்கப்படாத நிறுவனங்களால் அல்லது அங்கீகரிக்கப்படாத வழிகளில் மாற்ற முடியாது (எடுத்துக்காட்டாக,
Transferநிகழ்வு இல்லாமல் ERC-20 டோக்கன்களை (புதிய தாவலில் திறக்கும்) மாற்றுவது). தொகுதிச்சங்கிலியில், ஒவ்வொரு கணுவும் ஒவ்வொரு நிலை மாற்றத்தையும் சரிபார்க்கிறது, இது ஒருமைப்பாட்டை உறுதி செய்கிறது. -
கிடைக்கும் தன்மை (Availability), எந்தவொரு அங்கீகரிக்கப்பட்ட நிறுவனத்திற்கும் தகவல் கிடைக்கும். தொகுதிச்சங்கிலியில், ஒவ்வொரு முழு முனையம் (புதிய தாவலில் திறக்கும்) மீதும் தகவல்களைக் கிடைக்கச் செய்வதன் மூலம் இது பொதுவாக அடையப்படுகிறது.
இங்குள்ள வெவ்வேறு தீர்வுகள் அனைத்தும் சிறந்த ஒருமைப்பாட்டைக் கொண்டுள்ளன, ஏனெனில் ஹாஷ்கள் அடுக்கு 1 (l1)-இல் பதிவிடப்படுகின்றன. இருப்பினும், அவை வெவ்வேறு கிடைக்கும் தன்மை உத்தரவாதங்களைக் கொண்டுள்ளன.
முன்நிபந்தனைகள்
உங்களுக்கு தொகுதிச்சங்கிலி அடிப்படைகள் பற்றிய நல்ல புரிதல் இருக்க வேண்டும். வாசகருக்கு தொகுதிகள், பரிவர்த்தனைகள் மற்றும் பிற தொடர்புடைய தலைப்புகள் தெரிந்திருக்கும் என்றும் இந்தப் பக்கம் கருதுகிறது.
EIP-4844 ப்ளாப்கள்
டென்குன் ஹார்ட்ஃபோர்க்கில் (புதிய தாவலில் திறக்கும்) தொடங்கி எத்திரியம் தொகுதிச்சங்கிலி EIP-4844 (புதிய தாவலில் திறக்கும்)-ஐ உள்ளடக்கியுள்ளது, இது எத்திரியத்தில் வரையறுக்கப்பட்ட வாழ்நாளுடன் (ஆரம்பத்தில் சுமார் 18 நாட்கள் (புதிய தாவலில் திறக்கும்)) தரவு ப்ளாப்களைச் சேர்க்கிறது. இதேபோன்ற வழிமுறையைப் பயன்படுத்தினாலும், இந்த ப்ளாப்கள் செயலாக்க எரிவாயுவிலிருந்து தனித்தனியாக விலை நிர்ணயம் செய்யப்படுகின்றன. தற்காலிகத் தரவைப் பதிவிட அவை மலிவான வழியாகும்.
EIP-4844 ப்ளாப்களுக்கான முக்கிய பயன்பாட்டு நிகழ்வு, ரோலப்கள் அவற்றின் பரிவர்த்தனைகளை வெளியிடுவதாகும். ஆப்டிமிஸ்டிக் ரோல்அப்கள் அவற்றின் தொகுதிச்சங்கிலிகளில் பரிவர்த்தனைகளை வெளியிட வேண்டும். ரோலப்பின் வரிசைப்படுத்தி (புதிய தாவலில் திறக்கும்) தவறான நிலை மூலத்தைப் பதிவிட்டால், தவறைச் சரிசெய்ய சரிபார்ப்பிகளை (புதிய தாவலில் திறக்கும்) அனுமதிக்க, அந்தப் பரிவர்த்தனைகள் சவால் காலத்தில் (புதிய தாவலில் திறக்கும்) யாருக்கும் கிடைக்க வேண்டும்.
இருப்பினும், சவால் காலம் கடந்து, நிலை மூலம் இறுதியாக்கப்பட்டது-க்கு பிறகு, இந்தப் பரிவர்த்தனைகளை அறிந்துகொள்வதற்கான மீதமுள்ள நோக்கம் சங்கிலியின் தற்போதைய நிலையைப் பிரதிபலிப்பதாகும். இந்த நிலை சங்கிலி கணுக்களிலிருந்தும் கிடைக்கிறது, இதற்கு மிகக் குறைவான செயலாக்கமே தேவைப்படுகிறது. எனவே பரிவர்த்தனைத் தகவல்கள் தொகுதி எக்ஸ்ப்ளோரர்கள் போன்ற சில இடங்களில் இன்னும் பாதுகாக்கப்பட வேண்டும், ஆனால் எத்திரியம் வழங்கும் தணிக்கை எதிர்ப்பின் நிலைக்கு பணம் செலுத்த வேண்டிய அவசியமில்லை.
பூஜ்ய-அறிவு ரோலப்களும் தற்போதைய நிலையைப் பிரதிபலிக்கவும் செல்லுபடியாகும் சான்றுகளைச் சரிபார்க்கவும் பிற கணுக்களை அனுமதிக்க அவற்றின் பரிவர்த்தனைத் தரவைப் பதிவிடுகின்றன, ஆனால் மீண்டும் அது ஒரு குறுகிய காலத் தேவையாகும்.
எழுதும் நேரத்தில் EIP-4844-இல் பதிவிடுவதற்கு ஒரு பைட்டுக்கு ஒரு Wei (10-18 ETH) செலவாகிறது, இது ப்ளாப்களைப் பதிவிடும் பரிவர்த்தனை உட்பட எந்தவொரு பரிவர்த்தனைக்கும் செலவாகும் 21,000 செயலாக்க எரிவாயுவுடன் (புதிய தாவலில் திறக்கும்) ஒப்பிடும்போது மிகக் குறைவு. தற்போதைய EIP-4844 விலையை நீங்கள் blobscan.com (புதிய தாவலில் திறக்கும்)-இல் பார்க்கலாம்.
சில பிரபலமான ரோலப்களால் பதிவிடப்பட்ட ப்ளாப்களைப் பார்ப்பதற்கான முகவரிகள் இங்கே.
அழைப்புத் தரவு
அழைப்புத் தரவு என்பது பரிவர்த்தனையின் ஒரு பகுதியாக அனுப்பப்படும் பைட்டுகளைக் குறிக்கிறது. அந்தப் பரிவர்த்தனையை உள்ளடக்கிய தொகுதியில் தொகுதிச்சங்கிலியின் நிரந்தரப் பதிவின் ஒரு பகுதியாக இது சேமிக்கப்படுகிறது.
தொகுதிச்சங்கிலியில் தரவை நிரந்தரமாக வைப்பதற்கான மலிவான முறை இதுவாகும். ஒரு பைட்டுக்கான செலவு 4 செயலாக்க எரிவாயு (பைட் பூஜ்ஜியமாக இருந்தால்) அல்லது 16 எரிவாயு (வேறு ஏதேனும் மதிப்பு). தரவு சுருக்கப்பட்டால், இது நிலையான நடைமுறையாகும், ஒவ்வொரு பைட் மதிப்பும் சமமாக இருக்கும், எனவே சராசரி செலவு ஒரு பைட்டுக்கு தோராயமாக 15.95 எரிவாயு ஆகும்.
எழுதும் நேரத்தில், விலைகள் 12 Gwei/எரிவாயு மற்றும் 2300 $/ETH ஆகும், அதாவது ஒரு கிலோபைட்டுக்கு தோராயமாக 45 சென்ட்கள் செலவாகும். EIP-4844-க்கு முன்பு இது மலிவான முறையாக இருந்ததால், பரிவர்த்தனைத் தகவல்களைச் சேமிக்க ரோலப்கள் பயன்படுத்திய முறை இதுவாகும், இது பிழை சவால்களுக்குக் (புதிய தாவலில் திறக்கும்) கிடைக்க வேண்டும், ஆனால் நேரடியாக சங்கிலிசார் அணுக வேண்டிய அவசியமில்லை.
சில பிரபலமான ரோலப்களால் பதிவிடப்பட்ட பரிவர்த்தனைகளைப் பார்ப்பதற்கான முகவரிகள் இங்கே.
அடுக்கு 1 (l1) வழிமுறைகளுடன் புறச்சங்கிலி
உங்கள் பாதுகாப்புப் பரிமாற்றங்களைப் பொறுத்து, தகவல்களை வேறு எங்கும் வைப்பது மற்றும் தேவைப்படும்போது தரவு கிடைப்பதை உறுதிசெய்யும் ஒரு வழிமுறையைப் பயன்படுத்துவது ஏற்றுக்கொள்ளத்தக்கதாக இருக்கலாம். இது வேலை செய்ய இரண்டு தேவைகள் உள்ளன:
-
தரவின் ஹாஷை (புதிய தாவலில் திறக்கும்) தொகுதிச்சங்கிலியில் பதிவிடவும், இது உள்ளீட்டு உறுதிப்பாடு (input commitment) என்று அழைக்கப்படுகிறது. இது ஒரு 32-பைட் வார்த்தையாக இருக்கலாம், எனவே இது விலை உயர்ந்ததல்ல. உள்ளீட்டு உறுதிப்பாடு கிடைக்கும் வரை, ஒருமைப்பாடு உறுதி செய்யப்படுகிறது, ஏனெனில் அதே மதிப்பிற்கு ஹாஷ் செய்யும் வேறு எந்தத் தரவையும் கண்டுபிடிப்பது சாத்தியமில்லை. எனவே தவறான தரவு வழங்கப்பட்டால், அதைக் கண்டறிய முடியும்.
-
கிடைக்கும் தன்மையை உறுதி செய்யும் ஒரு வழிமுறையைக் கொண்டிருங்கள். எடுத்துக்காட்டாக, Redstone (புதிய தாவலில் திறக்கும்)-இல் எந்தவொரு கணுவும் கிடைக்கும் தன்மை சவாலைச் சமர்ப்பிக்கலாம். காலக்கெடுவிற்குள் வரிசைப்படுத்தி சங்கிலிசார் பதிலளிக்கவில்லை என்றால், உள்ளீட்டு உறுதிப்பாடு நிராகரிக்கப்படும், எனவே தகவல் ஒருபோதும் பதிவிடப்படவில்லை என்று கருதப்படுகிறது.
இது ஒரு ஆப்டிமிஸ்டிக் ரோல்அப்-க்கு ஏற்றுக்கொள்ளத்தக்கது, ஏனெனில் நிலை மூலத்திற்கு குறைந்தபட்சம் ஒரு நேர்மையான சரிபார்ப்பியையாவது கொண்டிருப்பதை நாங்கள் ஏற்கனவே நம்பியுள்ளோம். அத்தகைய நேர்மையான சரிபார்ப்பி, தொகுதிகளைச் செயலாக்குவதற்கான தரவு தன்னிடம் இருப்பதை உறுதிசெய்து, தகவல் புறச்சங்கிலியில் கிடைக்கவில்லை என்றால் கிடைக்கும் தன்மை சவாலை வழங்கும். இந்த வகையான ஆப்டிமிஸ்டிக் ரோல்அப் பிளாஸ்மா என்று அழைக்கப்படுகிறது.
ஒப்பந்தக் குறியீடு
ஒரு முறை மட்டுமே எழுதப்பட வேண்டிய, ஒருபோதும் மேலெழுதப்படாத, மற்றும் சங்கிலிசார் கிடைக்க வேண்டிய தகவல்களை ஒப்பந்தக் குறியீடாகச் சேமிக்கலாம். அதாவது, தரவுகளுடன் ஒரு "திறன் ஒப்பந்தத்தை" உருவாக்கி, பின்னர் தகவல்களைப் படிக்க EXTCODECOPY (புதிய தாவலில் திறக்கும்)-ஐப் பயன்படுத்துகிறோம். குறியீட்டை நகலெடுப்பது ஒப்பீட்டளவில் மலிவானது என்பது இதன் நன்மையாகும்.
நினைவக விரிவாக்கச் செலவைத் தவிர, EXTCODECOPY ஒரு ஒப்பந்தத்திற்கான முதல் அணுகலுக்கு ("குளிராக" இருக்கும்போது) 2600 எரிவாயுவும், அதே ஒப்பந்தத்திலிருந்து அடுத்தடுத்த நகல்களுக்கு 100 எரிவாயுவும், மேலும் 32 பைட் வார்த்தைக்கு 3 எரிவாயுவும் செலவாகும். ஒரு பைட்டுக்கு 15.95 செலவாகும் அழைப்புத் தரவோடு ஒப்பிடும்போது, இது சுமார் 200 பைட்டுகளில் தொடங்கும் மலிவானதாகும். நினைவக விரிவாக்கச் செலவுகளுக்கான சூத்திரத்தின் (புதிய தாவலில் திறக்கும்) அடிப்படையில், உங்களுக்கு 4MB-க்கு மேல் நினைவகம் தேவைப்படாத வரை, நினைவக விரிவாக்கச் செலவு அழைப்புத் தரவைச் சேர்ப்பதற்கான செலவை விடச் சிறியது.
நிச்சயமாக, இது தரவைப் படிக்க ஆகும் செலவு மட்டுமே. ஒப்பந்தத்தை உருவாக்க தோராயமாக 32,000 எரிவாயு + 200 எரிவாயு/பைட் செலவாகும். வெவ்வேறு பரிவர்த்தனைகளில் ஒரே தகவலைப் பலமுறை படிக்க வேண்டியிருக்கும் போது மட்டுமே இந்த முறை சிக்கனமானது.
ஒப்பந்தக் குறியீடு 0xEF உடன் தொடங்காத வரை, அர்த்தமற்றதாக இருக்கலாம். 0xEF உடன் தொடங்கும் ஒப்பந்தங்கள் எத்திரியம் ஆப்ஜெக்ட் ஃபார்மேட் (ethereum object format) (புதிய தாவலில் திறக்கும்) ஆக விளக்கப்படுகின்றன, இது மிகவும் கடுமையான தேவைகளைக் கொண்டுள்ளது.
நிகழ்வுகள்
நிகழ்வுகள் (புதிய தாவலில் திறக்கும்) திறன் ஒப்பந்தங்களால் வெளியிடப்படுகின்றன, மேலும் புறச்சங்கிலி மென்பொருளால் படிக்கப்படுகின்றன. புறச்சங்கிலி குறியீடு நிகழ்வுகளைக் கேட்க முடியும் என்பது அவற்றின் நன்மையாகும். இதன் செலவு எரிவாயு (புதிய தாவலில் திறக்கும்), 375 மற்றும் தரவின் ஒரு பைட்டுக்கு 8 எரிவாயு ஆகும். 12 Gwei/எரிவாயு மற்றும் 2300 $/ETH-இல், இது ஒரு சென்ட் மற்றும் ஒரு கிலோபைட்டுக்கு 22 சென்ட்கள் என மொழிபெயர்க்கப்படுகிறது.
சேமிப்பகம்
திறன் ஒப்பந்தங்கள் நிரந்தர சேமிப்பகத்திற்கான (புதிய தாவலில் திறக்கும்) அணுகலைக் கொண்டுள்ளன. இருப்பினும், இது மிகவும் விலை உயர்ந்தது. முன்பு காலியாக இருந்த சேமிப்பக நேரப்பகுதியில் 32 பைட் வார்த்தையை எழுதுவதற்கு 22,100 எரிவாயு செலவாகும் (புதிய தாவலில் திறக்கும்). 12 Gwei/எரிவாயு மற்றும் 2300 $/ETH-இல், இது ஒரு எழுதும் செயல்பாட்டிற்கு சுமார் 61 சென்ட்கள் அல்லது ஒரு கிலோபைட்டுக்கு $19.5 ஆகும்.
எத்திரியத்தில் இது மிகவும் விலை உயர்ந்த சேமிப்பக வடிவமாகும்.
சுருக்கம்
இந்த அட்டவணை வெவ்வேறு விருப்பங்கள், அவற்றின் நன்மைகள் மற்றும் தீமைகளைச் சுருக்கமாகக் கூறுகிறது.
| சேமிப்பக வகை | தரவின் ஆதாரம் | கிடைக்கும் தன்மை உத்தரவாதம் | சங்கிலிசார் கிடைக்கும் தன்மை | கூடுதல் வரம்புகள் |
|---|---|---|---|---|
| EIP-4844 ப்ளாப்கள் | புறச்சங்கிலி | ~18 நாட்களுக்கு (புதிய தாவலில் திறக்கும்) எத்திரியம் உத்தரவாதம் | ஹாஷ் மட்டுமே கிடைக்கும் | |
| அழைப்புத் தரவு | புறச்சங்கிலி | எத்திரியம் உத்தரவாதம் என்றென்றும் (தொகுதிச்சங்கிலியின் ஒரு பகுதி) | ஒரு ஒப்பந்தத்தில் எழுதப்பட்டால் மட்டுமே கிடைக்கும், அதுவும் அந்தப் பரிவர்த்தனையில் | |
| அடுக்கு 1 (l1) வழிமுறைகளுடன் புறச்சங்கிலி | புறச்சங்கிலி | சவால் காலத்தில் "ஒரு நேர்மையான சரிபார்ப்பி" உத்தரவாதம் | ஹாஷ் மட்டுமே | சவால் வழிமுறையால் உத்தரவாதம் அளிக்கப்படுகிறது, சவால் காலத்தில் மட்டுமே |
| ஒப்பந்தக் குறியீடு | சங்கிலிசார் அல்லது புறச்சங்கிலி | எத்திரியம் உத்தரவாதம் என்றென்றும் (தொகுதிச்சங்கிலியின் ஒரு பகுதி) | ஆம் | "சீரற்ற" முகவரியில் எழுதப்பட்டது, 0xEF உடன் தொடங்க முடியாது |
| நிகழ்வுகள் | சங்கிலிசார் | எத்திரியம் உத்தரவாதம் என்றென்றும் (தொகுதிச்சங்கிலியின் ஒரு பகுதி) | இல்லை | |
| சேமிப்பகம் | சங்கிலிசார் | எத்திரியம் உத்தரவாதம் என்றென்றும் (தொகுதிச்சங்கிலியின் ஒரு பகுதி மற்றும் மேலெழுதப்படும் வரை தற்போதைய நிலை) | ஆம் |