એવરક્રિપ્ટ: ક્રિપ્ટોગ્રાફિક વેરિફિકેશન લાઇબ્રેરી

એવરેસ્ટ પ્રોજેક્ટ

માંથી સંશોધનકારો ઇન્ફર્મેટિક્સ અને Autoટોમેશનમાં સંશોધન માટે રાજ્ય સંસ્થા (ઈનરીઆ), માઇક્રોસ .ફ્ટ રિસર્ચ અને કાર્નેગી મેલોન યુનિવર્સિટીએ રજૂ કર્યું ની પ્રથમ ટ્રાયલ એડિશન એવરક્રિપ્ટ ક્રિપ્ટો લાઇબ્રેરી એવરેસ્ટ પ્રોજેક્ટના માળખામાં વિકસિત અને reliપચારિક વિશ્વસનીયતા ચકાસણીની ગાણિતિક પદ્ધતિઓનો ઉપયોગ કરીને.

તેની ક્ષમતાઓ અને પ્રદર્શન માટે, એવરક્રિપ્ટ હાલની ક્રિપ્ટો લાઇબ્રેરીઓની ખૂબ નજીક છે (ઓપનએસએસએલ) પરંતુ તે, તેમનાથી વિપરીત, વિશ્વસનીયતા અને સુરક્ષાની વધારાની બાંયધરી આપે છે.

ઉદાહરણ તરીકે, વિગતવાર સ્પષ્ટીકરણો વ્યાખ્યાયિત કરવા માટે ચકાસણી પ્રક્રિયા ઉકળે છે જે પ્રોગ્રામની બધી વર્તણૂકાનું વર્ણન કરે છે અને ગાણિતિક પુરાવો કે લેખિત કોડ તૈયાર સ્પષ્ટીકરણો મળે છે.

પુરાવા-આધારિત ગુણવત્તા નિયંત્રણ પદ્ધતિઓથી વિપરીત, ચકાસણી વિશ્વસનીય ગેરંટી પૂરી પાડે છે કે પ્રોગ્રામ ફક્ત વિકાસકર્તાઓના હેતુ મુજબ ચાલશે અને તેમાં કોઈ વિશિષ્ટ પ્રકારની ભૂલો નથી.

ઉદાહરણ તરીકે, સ્પષ્ટીકરણનું પાલન મેમરી સાથે સલામત કાર્યની ખાતરી આપે છે અને ભૂલોની ગેરહાજરી જે બફર ઓવરફ્લો તરફ દોરી જાય છે, નિર્દેશોના નિર્દેશન માટે, પહેલાથી મુક્ત કરેલા મેમરી વિસ્તારોમાં accessક્સેસ કરવા અથવા મેમરી બ્લોક્સને ડબલ ફ્રી કરવા માટે.

એવરક્રિપ્ટ શું છે?

એવરક્રિપ્ટ મજબૂત પ્રકાર અને મૂલ્ય ચકાસણી પ્રદાન કરે છે- ઘટક ક્યારેય અન્ય બિન-સુસંગત ઘટકમાં પરિમાણો પસાર કરશે નહીં અને અન્ય ઘટકોની આંતરિક સ્થિતિમાં પ્રવેશ મેળવશે નહીં.

ઇનપુટ / આઉટપુટ વર્તન સરળ ગણિતના ફંક્શન ક્રિયાઓને સંપૂર્ણપણે અનુરૂપ છેછે, જે ક્રિપ્ટોગ્રાફિક ધોરણોમાં વ્યાખ્યાયિત છે.

હુમલાઓથી બચાવવા માટે તૃતીય-પક્ષ ચેનલોમાં, ગણતરી દરમિયાન વર્તન (ઉદાહરણ તરીકે, એક્ઝેક્યુશનનો સમયગાળો અથવા ચોક્કસ મેમરીની cesક્સેસની હાજરી) તે પ્રક્રિયા કરવામાં આવતા ગુપ્ત ડેટા પર આધારિત નથી.

પ્રોજેક્ટ કોડ કાર્યકારી ભાષા F * માં લખાયેલ છે (એફ સ્ટાર) , જે આશ્રિત પ્રકારો અને શુદ્ધિકરણોની સિસ્ટમ પ્રદાન કરે છે, જે પ્રોગ્રામ્સ માટે ચોક્કસ સ્પષ્ટીકરણો (ગાણિતિક મોડેલ) સ્થાપિત કરવાની મંજૂરી આપે છે અને એસએમટી સૂત્રો અને સહાયક પરીક્ષણ સાધનોના માધ્યમથી અમલીકરણમાં ચોકસાઈ અને ભૂલોની ગેરહાજરીની બાંયધરી આપે છે.

એફ * માં કોડ અપાચે 2.0 લાઇસેંસ હેઠળ વિતરિત કરવામાં આવે છે, અને સીમાં અંતિમ મોડ્યુલો અને એમઆઈટી લાઇસેંસ હેઠળ એસેમ્બલર.

સંદર્ભ કોડ એફ * ના આધારે, એસેમ્બલર, સી, ઓકૈમલ, જાવાસ્ક્રિપ્ટ જનરેટ થાય છે અને વેબ એસેમ્બલી કોડ.

કોડના કેટલાક ભાગો તૈયાર પ્રોજેકટ દ્વારા વિન્ડોઝ કર્નલ ફાયરફોક્સમાં પહેલેથી જ ઉપયોગમાં છે , ના બ્લોકચેન ટેઝોસ અને વીપીએન વાયરગાર્ડ.

એવરક્રિપ્ટ ઘટકો

સાર, એવરક્રિપ્ટ એચ.એ.સી.એલ * અને વેલેના અગાઉના બે જુદા જુદા પ્રોજેક્ટ્સને જોડે છે, તેમના આધારે એક યુનિફાઇડ API પ્રદાન કરીને અને તેમને વાસ્તવિક પ્રોજેક્ટ્સમાં ઉપયોગ માટે યોગ્ય બનાવશે.

એચએસીએલ * લો માં લખાયેલ છે* અને તેનું લક્ષ્ય સી પ્રોગ્રામ્સના ઉપયોગ માટે ક્રિપ્ટોગ્રાફિક આદિમ પ્રદાન કરવાનું છે જે તેઓ લિબ્સોડિયમ અને એનએસીએલ શૈલીના API નો ઉપયોગ કરે છે.

આ પ્રોજેક્ટ વેલેએ એક વિશિષ્ટ ભાષા વિકસાવી એસેમ્બલરમાં ચકાસણી બનાવવા માટે ડોમેન.

નીચા * ભાષામાં એચએસીએલ * કોડની લગભગ 110 હજાર લાઇનો અને વેલ માટે કોડની 25 હજાર લાઇન સંયુક્ત છે અને તેઓ સાર્વત્રિક ભાષા એફ * માં લગભગ 70 હજાર કોડની લાઇનમાં ફરીથી લખાઈ છે, જેનો વિકાસ પણ થઈ રહ્યો છે એવરેસ્ટ પ્રોજેક્ટના ભાગ રૂપે.

એવરક્રિપ્ટ પુસ્તકાલયનું પ્રથમ સંસ્કરણ સુવિધાઓ ચકાસાયેલ અમલીકરણો નીચેના ક્રિપ્ટોગ્રાફિક એલ્ગોરિધમ્સનો સી અથવા એસેમ્બલર સંસ્કરણોમાં સૂચિત (જ્યારે વાપરી રહ્યા હો.

તેમાંથી, પ્રોજેક્ટ પૃષ્ઠ પર નીચેની બાબતો બહાર આવે છે:

  • હેશ ગાણિતીક નિયમો: SHA2, SHA3, SHA1 અને MD5 ના બધા પ્રકારો
  • પ્રમાણીકરણ કોડ: ડેટા સ્રોત પ્રમાણીકરણ માટે SHA1, SHA2-256, SHA2-384 અને SHA2-512 ઉપર HMAC
  • એચકેડીએફ કી જનરેશન એલ્ગોરિધમ (એચએમએસી-આધારિત એક્સ્ટ્રેક્ટ અને વિસ્તૃત કી ડેરિવેશન ફંક્શન)
  • ChaCha20 સ્ટ્રીમ એન્ક્રિપ્શન (નોન-optimપ્ટિમાઇઝ્ડ સી સંસ્કરણ ઉપલબ્ધ છે)
  • Poly1305 સંદેશ સત્તાધિકરણ એલ્ગોરિધમ (MAC) (સી અને એસેમ્બલર સંસ્કરણ)
  • લંબગોળ વળાંકવાળા કર્વે 25519 પર ડિફી-હેલમેન પ્રોટોકોલ (BMI2 અને ADX સૂચનો પર આધારિત optimપ્ટિમાઇઝેશન સાથે સી અને એસેમ્બલ સંસ્કરણ)
  • અવરોધિત સાઇફર મોડ AEAD (પ્રમાણિત સાઇફર) ચાચાપોલી (સંસ્કરણ સી optimપ્ટિમાઇઝ થયેલ નથી)
  • AEAD AES-GCM બ્લોક એન્ક્રિપ્શન મોડ (AES-NI optimપ્ટિમાઇઝેશન સાથે એસેમ્બલર સંસ્કરણ).

પ્રથમ આલ્ફા સંસ્કરણ, કોડ ચકાસણી પહેલાથી જ પૂર્ણ થઈ ગઈ છે મોટે ભાગે, પરંતુ હજી પણ કેટલાક વિસ્તારો ખુલ્લા છે.

ઉપરાંત, એપીઆઇ હજી સ્થિર નથીછે, જેનો વિસ્તાર કરવામાં આવશે નીચેના આલ્ફા સંસ્કરણોમાં (તે બધા API માટે માળખાંને એકીકૃત કરવાનું આયોજન છે.

ભૂલોમાં, x86_64 આર્કિટેક્ચર માટેનું સમર્થન પણ પ્રકાશિત કરવામાં આવ્યું છે (પ્રથમ તબક્કામાં, મુખ્ય ધ્યેય વિશ્વસનીયતા છે, જ્યારે ઓપ્ટિમાઇઝેશન અને પ્લેટફોર્મ્સ બીજા સ્થાને અમલમાં મૂકવામાં આવશે).

સ્રોત: https://jonathan.protzenko.fr


તમારી ટિપ્પણી મૂકો

તમારું ઇમેઇલ સરનામું પ્રકાશિત કરવામાં આવશે નહીં. આવશ્યક ક્ષેત્રો સાથે ચિહ્નિત થયેલ છે *

*

*

  1. ડેટા માટે જવાબદાર: મિગ્યુએલ gelંજેલ ગેટóન
  2. ડેટાનો હેતુ: નિયંત્રણ સ્પામ, ટિપ્પણી સંચાલન.
  3. કાયદો: તમારી સંમતિ
  4. ડેટાની વાતચીત: કાયદાકીય જવાબદારી સિવાય ડેટા તૃતીય પક્ષને આપવામાં આવશે નહીં.
  5. ડેટા સ્ટોરેજ: cસેન્ટસ નેટવર્ક્સ (ઇયુ) દ્વારા હોસ્ટ કરેલો ડેટાબેઝ
  6. અધિકાર: કોઈપણ સમયે તમે તમારી માહિતીને મર્યાદિત, પુન recoverપ્રાપ્ત અને કા deleteી શકો છો.