See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 1525|Vastuse: 3

Curve25519 krüpteerimisalgoritm

[Kopeeri link]
Postitatud 2025-2-12 17:05:02 | | | |
urve25519 on kõrgeim Diffie-Hellmani funktsiooni tase, mis on saadaval paljude stsenaariumite jaoks, mille on välja töötanud professor Daniel J. Bernstein. Krüptograafias on Curve25519 elliptiline kõver, mis pakub 128-bitist turvalisust ja on mõeldud kasutamiseks elliptilise kõvera Diffie-Hellman (ECDH) võtmeläbirääkimiste skeemiga. See on üks kiiremaid ECC kõveraid ega kuulu ühegi teadaoleva patendi alla.

Kasutaja 32-baidise võtme korral arvutab curve25519 kasutaja 32-baidise avaliku võtme. Arvestades selle kasutaja 32-baidist võtit ja teise kasutaja 32-baidist avalikku võtit, arvutab curve25519 mõlemale kasutajale 32-baidise jagatud võtme. Seda saladust saab seejärel kasutada info autentimiseks ja krüpteerimiseks mõlema kasutaja jaoks.

2. Laadi alla ja koosta Curve25519

curve25519 teek arvutab curve25519 funktsiooni väga suure kiirusega. Raamatukogul on lai valik rakendusi. Sa saad ja peaksid selle rakendama oma programmis, mitte jagatud raamatukogule; Kompileeritud kood on umbes 16KB, sõltuvalt protsessorist.

Laadi alla ja kompileeri

Alla laadima

Kompileerida


3. Kasuta Curve25519

Iga C programmi puhul, mis kasutab curve25519, muuda programm nii, et see sisaldaks curve25519.h, ning muuda makefile'i nii, et see seob programmi kõverusega 25519.a ja öelge, et programm sõltub curve25519.a-st ja curve25519.h-st.

Arvutusvõtmed

Sisemiselt, et genereerida 32-baidine kõver 25519 võti, genereeri esmalt saladus 32 juhusliku baidi suuruses krüptograafilisest turvaallikast: mysecret[0], mysecret[1], ..., mysecret[31]. Seejärel tee nii:
mysecret[0] &= 248;
mysecret[31] &= 127;
mysecret[31] |= 64;
Genereeri 32-baidine Curve25519 võti mysecret[0], mysecret[1], ..., mysecret[31].

Tulevikus toetab teegi versioon curve25519_ tihendusfunktsiooni, mis tihendab 128 baiti räsi 32 baidiks, lisades kaitset ebapiisavate juhuslike arvude generaatorite vastu; curve25519_ klambrifunktsioon, mis teisendab 32 baiti võtmeks; ning kõige lihtsamini kasutatavat curve25519_ võtmegeneratsiooni funktsioonide kombinatsiooni, mis teisendavad otse 128 baiti võtmeteks.

Arvuta avalikud võtmed

32-baidise avaliku võtme genereerimiseks, mis vastab 32-baidisele võtmele mypublic[0], mypublic[1], ..., mypublic[31], kutsu funktsioon
kõver 25519 (minu avalik, salajane, baaspunkt);
kus konstantne baaspunkt on:

const unsigned char basepoint[32] = {9};
Raamatukogu tulevased versioonid toetavad lühemat curve25519_ avalikku funktsiooni.

Genereeri jagatud võti

Teise kasutaja Curve25519 avaliku võtme korral hispublic[0], hispublic[1], ..., hispublic[31], call

curve25519 (jagatud, minu saladus, tema avalik);
Genereeri 32-baidised jagatud võtmed jagatud[0], jagatud[1], ..., jagatud[31]. Teine inimene saab sama jagatud võtme genereerida nii oma privaatvõtme kui ka sinu avaliku võtme põhjal.
Seejärel saate mõlemad selle ühisvõtme räsi teha ja kasutada tulemust võtmena, näiteks Poly1305-AES puhul.
Tulevased teegi versioonid toetavad curve25519_ laiendusfunktsiooni, mis räsitab otse 32-baidise võtme, et genereerida 128 baiti võtmena, ning on kõige lihtsam kasutada – kombinatsioon curve25519_ jagatud funktsioon.

4. Viide

[Ed25519 ja Curve25519 selgitatud]Hüperlingi sisselogimine on nähtav.
[Curve25519 krüpteerimine ja dekrüpteerimine ning ED25519 allkirjade kasutamine]Hüperlingi sisselogimine on nähtav.
[ED25519]Hüperlingi sisselogimine on nähtav.
[Android ED25519 rakendus]Hüperlingi sisselogimine on nähtav.
[[ED25519 C rakendus]Hüperlingi sisselogimine on nähtav.
[ed25519 Java rakendus]Hüperlingi sisselogimine on nähtav.

Originaal:Hüperlingi sisselogimine on nähtav.




Eelmine:Angular 18 seeria (Kolmkümmend üks) VS koodi arendusabi plugin
Järgmine:NVIDIA Project DIGITS isiklik tehisintellekti superarvuti
 Üürileandja| Postitatud 2025-2-12 17:07:50 |
.NET/C# rakenduskood:


Katse




Curve25519.cs (31 KB, Allalaadimiste arv: 1, 售价: 10 粒MB)
Postitatud 2025-2-13 16:26:18 |
Tundub hea, toeta seda.
Postitatud 2025-2-14 09:51:22 |
Tundub hea, toeta seda
Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com