EverCrypt: ஒரு குறியாக்க சரிபார்ப்பு நூலகம்

எவரெஸ்ட் திட்டம்

ஆராய்ச்சியாளர்கள் தகவல் மற்றும் ஆட்டோமேஷன் ஆராய்ச்சிக்கான மாநில நிறுவனம் (INRIA), மைக்ரோசாப்ட் ரிசர்ச் மற்றும் கார்னகி மெலன் பல்கலைக்கழகம் வழங்கின முதல் சோதனை பதிப்பு EverCrypt கிரிப்டோ நூலகம் எவரெஸ்ட் திட்டத்தின் கட்டமைப்பிற்குள் உருவாக்கப்பட்டது மற்றும் முறையான நம்பகத்தன்மை சரிபார்ப்பின் கணித முறைகளைப் பயன்படுத்துகிறது.

அதன் திறன்கள் மற்றும் செயல்திறனுக்காக, EverCrypt தற்போதுள்ள கிரிப்டோ நூலகங்களுக்கு மிக அருகில் உள்ளது (OpenSSL) ஆனால், அவை போலல்லாமல், நம்பகத்தன்மை மற்றும் பாதுகாப்பிற்கான கூடுதல் உத்தரவாதங்களை வழங்குகிறது.

உதாரணமாக, சரிபார்ப்பு செயல்முறை விரிவான விவரக்குறிப்புகளை வரையறுக்கிறது இது திட்டத்தின் அனைத்து நடத்தைகளையும் விவரிக்கிறது மற்றும் எழுதப்பட்ட குறியீடு என்பதற்கான கணித சான்று தயாரிக்கப்பட்ட விவரக்குறிப்புகளை பூர்த்தி செய்கிறது.

ஆதாரங்களை அடிப்படையாகக் கொண்ட தரக் கட்டுப்பாட்டு முறைகளைப் போலன்றி, சரிபார்ப்பு நம்பகமான உத்தரவாதங்களை வழங்குகிறது டெவலப்பர்கள் விரும்பியபடி மட்டுமே நிரல் இயங்கும் மற்றும் குறிப்பிட்ட வகுப்புகள் பிழைகள் இல்லை.

எடுத்துக்காட்டாக, விவரக்குறிப்புடன் இணங்குதல் நினைவகத்துடன் பாதுகாப்பான வேலை மற்றும் இடையக வழிதல் வழிவகுக்கும் பிழைகள் இல்லாததை உறுதி செய்கிறது, மதிப்பிழப்பு சுட்டிகள், ஏற்கனவே விடுவிக்கப்பட்ட நினைவக பகுதிகளை அணுக அல்லது நினைவக தொகுதிகளை இரட்டிப்பாக்குவது.

EverCrypt என்றால் என்ன?

எவர்கிரிப்ட் வலுவான வகை மற்றும் மதிப்பு சரிபார்ப்பை வழங்குகிறது- ஒரு கூறு ஒருபோதும் மற்ற இணக்கமற்ற கூறுகளுக்கு அளவுருக்களை அனுப்பாது மற்றும் பிற கூறுகளின் உள் நிலைகளுக்கான அணுகலைப் பெறாது.

உள்ளீடு / வெளியீட்டு நடத்தை எளிய கணித செயல்பாடு செயல்களுக்கு முழுமையாக ஒத்துப்போகிறது, அவை கிரிப்டோகிராஃபிக் தரங்களில் வரையறுக்கப்பட்டுள்ளன.

தாக்குதல்களிலிருந்து பாதுகாக்க மூன்றாம் தரப்பு சேனல்களில், கணக்கீடுகளின் போது நடத்தை (எடுத்துக்காட்டாக, மரணதண்டனை காலம் அல்லது குறிப்பிட்ட நினைவகத்திற்கான அணுகல் இருப்பது) இது செயலாக்கப்பட்ட ரகசிய தரவைப் பொறுத்தது அல்ல.

திட்ட குறியீடு செயல்பாட்டு மொழியில் எழுதப்பட்டுள்ளது F * (எஃப் நட்சத்திரம்) , இது சார்பு வகைகள் மற்றும் சுத்திகரிப்புகளின் அமைப்பை வழங்குகிறது, இது நிரல்களுக்கான சரியான விவரக்குறிப்புகளை (கணித மாதிரி) நிறுவவும், SMT சூத்திரங்கள் மற்றும் துணை சோதனைக் கருவிகள் மூலம் செயல்படுத்துவதில் பிழைகள் இல்லாதிருப்பதை உறுதிப்படுத்தவும் அனுமதிக்கிறது.

எஃப் * இல் உள்ள குறியீடு அப்பாச்சி 2.0 உரிமத்தின் கீழ் விநியோகிக்கப்படுகிறது, மேலும் சி மற்றும் எம்ஐடி உரிமத்தின் கீழ் கூடியிருக்கும் இறுதி தொகுதிகள்.

குறிப்பு குறியீட்டின் அடிப்படையில் F *, அசெம்பிளர், சி, ஓகாம்ல், ஜாவாஸ்கிரிப்ட் உருவாக்கப்படுகிறது மற்றும் வலை சட்டசபை குறியீடு.

குறியீட்டின் சில பகுதிகள் தயாராக இந்த திட்டத்தால் ஏற்கனவே விண்டோஸ் கர்னலான ஃபயர்பாக்ஸில் பயன்படுத்தப்படுகிறது , of blockchain தேசோஸ் மற்றும் வி.பி.என் வயர்கார்ட்.

EverCrypt கூறுகள்

சாராம்சத்தில், எவர் கிரிப்ட் எச்.ஏ.சி.எல் * மற்றும் வேல் ஆகியவற்றிலிருந்து முன்னர் வேறுபட்ட இரண்டு திட்டங்களை ஒருங்கிணைக்கிறது, அவற்றை அடிப்படையாகக் கொண்ட ஒரு ஒருங்கிணைந்த API ஐ வழங்குதல் மற்றும் அவற்றை உண்மையான திட்டங்களில் பயன்படுத்த ஏற்றது.

HACL * லோவில் எழுதப்பட்டுள்ளது* மற்றும் அதன் குறிக்கோள் சி நிரல்களில் பயன்படுத்த கிரிப்டோகிராஃபிக் ஆதிமனிதர்களை வழங்குவதாகும் அவை லிப்சோடியம் மற்றும் NaCL பாணி API களைப் பயன்படுத்துகின்றன.

திட்டம் வேல் ஒரு குறிப்பிட்ட மொழியை உருவாக்கினார் அசெம்பிளரில் சரிபார்ப்புகளை உருவாக்க டொமைன்.

லோ * மொழியில் சுமார் 110 ஆயிரம் வரிகள் HACL * குறியீடும், வேலுக்கான 25 ஆயிரம் வரிகளும் இணைக்கப்பட்டுள்ளன மேலும் அவை உலகளாவிய மொழியான எஃப் * இல் சுமார் 70 ஆயிரம் வரிகளில் மீண்டும் எழுதப்படுகின்றன, அவை உருவாக்கப்பட்டு வருகின்றன எவரெஸ்ட் திட்டத்தின் ஒரு பகுதியாக.

EverCrypt நூலகத்தின் முதல் பதிப்பு அம்சங்கள் சரிபார்க்கப்பட்ட செயலாக்கங்கள் பின்வரும் கிரிப்டோகிராஃபிக் வழிமுறைகளில் சி அல்லது அசெம்பிளர் பதிப்புகளில் முன்மொழியப்பட்டது (பயன்படுத்தும் போது.

இவற்றில், திட்டப்பக்கத்தில் பின்வருபவை தனித்து நிற்கின்றன:

  • ஹாஷ் வழிமுறைகள்: SHA2, SHA3, SHA1 மற்றும் MD5 இன் அனைத்து வகைகளும்
  • அங்கீகாரக் குறியீடுகள்: தரவு மூல அங்கீகாரத்திற்காக SHA1, SHA2-256, SHA2-384 மற்றும் SHA2-512 க்கு மேல் HMAC
  • HKDF விசை தலைமுறை அல்காரிதம் (HMAC- அடிப்படையிலான பிரித்தெடுத்தல் மற்றும் விசை வழித்தோன்றல் செயல்பாட்டை விரிவாக்குதல்)
  • ChaCha20 ஸ்ட்ரீம் குறியாக்கம் (உகந்ததாக்கப்படாத சி பதிப்பு கிடைக்கிறது)
  • Poly1305 செய்தி அங்கீகார அல்காரிதம் (MAC) (சி மற்றும் அசெம்பிளர் பதிப்பு)
  • நீள்வட்ட வளைவுகளில் டிஃபி-ஹெல்மேன் நெறிமுறை வளைவு 25519 (பிஎம்ஐ 2 மற்றும் ஏடிஎக்ஸ் வழிமுறைகளின் அடிப்படையில் மேம்படுத்தல்களுடன் சி மற்றும் அசெம்பிளர் பதிப்புகள்)
  • சைபர் பயன்முறையைத் தடு AEAD (அங்கீகரிக்கப்பட்ட சைபர்) சாச்சாபோலி (பதிப்பு சி உகந்ததாக இல்லை)
  • AEAD AES-GCM தொகுதி குறியாக்க முறை (AES-NI தேர்வுமுறைகளுடன் கூடிய அசெம்பிளர் பதிப்பு).

முதலில் ஆல்பா பதிப்பு, குறியீடு சரிபார்ப்பு ஏற்கனவே முடிந்தது பெரும்பாலும், ஆனால் இன்னும் சில பகுதிகள் கண்டுபிடிக்கப்படவில்லை.

கூடுதலாக, API இன்னும் உறுதிப்படுத்தப்படவில்லை, இது விரிவாக்கப்படும் பின்வரும் ஆல்பா பதிப்புகளில் (அனைத்து API களுக்கும் கட்டமைப்புகளை ஒன்றிணைக்க திட்டமிடப்பட்டுள்ளது.

குறைபாடுகளில், x86_64 கட்டமைப்பிற்கான ஆதரவும் சிறப்பிக்கப்படுகிறது (முதல் கட்டத்தில், முக்கிய குறிக்கோள் நம்பகத்தன்மை, அதே நேரத்தில் தேர்வுமுறை மற்றும் தளங்கள் இரண்டாவது இடத்தில் செயல்படுத்தப்படும்).

மூல: https://jonathan.protzenko.fr


உங்கள் கருத்தை தெரிவிக்கவும்

உங்கள் மின்னஞ்சல் முகவரி வெளியிடப்பட்ட முடியாது. தேவையான புலங்கள் குறிக்கப்பட்டிருக்கும் *

*

*

  1. தரவுக்கு பொறுப்பு: மிகுவல் ஏஞ்சல் கேடன்
  2. தரவின் நோக்கம்: கட்டுப்பாட்டு ஸ்பேம், கருத்து மேலாண்மை.
  3. சட்டபூர்வமாக்கல்: உங்கள் ஒப்புதல்
  4. தரவின் தொடர்பு: சட்டபூர்வமான கடமையால் தவிர மூன்றாம் தரப்பினருக்கு தரவு தெரிவிக்கப்படாது.
  5. தரவு சேமிப்பு: ஆக்சென்டஸ் நெட்வொர்க்குகள் (EU) வழங்கிய தரவுத்தளம்
  6. உரிமைகள்: எந்த நேரத்திலும் உங்கள் தகவல்களை நீங்கள் கட்டுப்படுத்தலாம், மீட்டெடுக்கலாம் மற்றும் நீக்கலாம்.