Tämä artikkeli on konekäännöksen peiliartikkeli, klikkaa tästä siirtyäksesi alkuperäiseen artikkeliin.

Näkymä: 1525|Vastaus: 3

Curve25519-salausalgoritmi

[Kopioi linkki]
Julkaistu 2025-2-12 klo 17:05:02 | | | |
urve25519 on korkein Diffie-Hellman-funktiotaso, joka on saatavilla monenlaisiin skenaarioihin, ja sen on suunnitellut professori Daniel J. Bernstein. Kryptografiassa Curve25519 on elliptinen käyrä, joka tarjoaa 128-bittisen turvallisuuden ja on suunniteltu käytettäväksi elliptisen käyrän Diffie-Hellman (ECDH) avainneuvottelujärjestelmän kanssa. Se on yksi nopeimmista ECC-käyristä, eikä sitä kata tunnetut patentit.

Kun käyttäjän 32-tavuinen avain on annettu, curve25519 laskee käyttäjän 32-tavuisen julkisen avaimen. Kun kyseisen käyttäjän 32-tavuinen avain ja toisen käyttäjän 32-tavuinen julkinen avain on käytössä, curve25519 laskee 32-tavuisen jaetun avaimen molempien käyttäjien käyttöön. Tätä salaisuutta voidaan käyttää molempien käyttäjien tietojen todentamiseen ja salaamiseen.

2. Lataa ja käännä Curve25519

curve25519-kirjasto laskee curve25519-funktion erittäin suurella nopeudella. Kirjastolla on laaja valikoima käyttökohteita. Voit ja sinun pitäisi soveltaa sitä omassa ohjelmassasi sen sijaan, että linkittäisit jaettuun kirjastoon; Käännetty koodi on noin 16KB, riippuen suorittimesta.

Lataa ja käännä

Ladata

kääntää


3. Käytä Curve25519

Mille tahansa C-ohjelmalle, joka käyttää curve25519:ää, muokkaa ohjelmaa sisältämään curve25519.h ja muokkaa makefilea linkittämään ohjelma curve25519.a:han ja ilmoittamaan, että ohjelma riippuu curve25519.a:sta ja curve25519.h:stä.

Laskentaavaimet

Sisäisesti 32 tavun käyrä25519-avaimen luomiseksi luodaan ensin 32 tavun satunnainen salaisuus kryptografisesta turvalähteestä: mysecret[0], mysecret[1], ..., mysecret[31]. Sitten tee näin:
mysecret[0] &= 248;
mysecret[31] &= 127;
mysecret[31] |= 64;
Luo 32-tavuinen Curve25519 -avain mysecret[0], mysecret[1], ..., mysecret[31].

Tulevaisuudessa kirjastoversio tukee curve25519_ pakkausfunktiota, joka pakkaa 128 tavua hajautuksia 32 tavuun, lisäten suojaa riittämättömiltä satunnaislukugeneraattoreilta; curve25519_ puristinfunktio, joka muuntaa 32 tavua avaimeksi; ja helpoimmin käytettävä yhdistelmä curve25519_ avainten generointifunktioita, jotka muuntavat suoraan 128 tavua avaimiksi.

Laske julkiset avaimet

Luodaksesi 32 tavun julkisen avaimen, joka vastaa 32 tavun avainta mypublic[0], mypublic[1], ..., mypublic[31], kutsu funktiota
curve25519 (mypublic, mysecret, basepoint);
missä vakio peruspiste on:

const unsigned char basepoint[32] = {9};
Kirjaston tulevat versiot tukevat tiiviimpiä curve25519_ julkisia toimintoja.

Luo jaettu avain

Kun toisen käyttäjän Curve25519 on julkinen avain hispublic[0], hispublic[1], ..., hispublic[31], call

curve25519 (jaettu, salaisuuteni, julkinen);
Luo 32 tavun jaetut avaimet jaettu[0], jaettu[1], ..., jaettu[31]. Toinen henkilö voi luoda saman jaetun avaimen omasta yksityisestä avaimestaan sekä sinun julkisesta avaimestaan.
Sitten molemmat voitte hajauttaa tämän jaetun avaimen ja käyttää tulosta avaimena, esimerkiksi Poly1305-AES:lle.
Kirjaston tulevat versiot tukevat curve25519_ laajennusfunktiota, joka suoraan hajauttaa 32 tavun avaimen tuottaakseen 128 tavua avaimena, ja on helpoin käyttää, yhdistelmä curve25519_ jaettu toiminto.

4. Viite

[Ed25519 ja Curve25519 selitetty]Hyperlinkin kirjautuminen on näkyvissä.
[Curve25519 salaus ja purku sekä ED25519 allekirjoitusten käyttö]Hyperlinkin kirjautuminen on näkyvissä.
[ED25519]Hyperlinkin kirjautuminen on näkyvissä.
[Android ED25519 toteutus]Hyperlinkin kirjautuminen on näkyvissä.
[[ED25519 C-toteutus]Hyperlinkin kirjautuminen on näkyvissä.
[ed25519 Java-toteutus]Hyperlinkin kirjautuminen on näkyvissä.

Alkuperäinen:Hyperlinkin kirjautuminen on näkyvissä.




Edellinen:Angular 18 Series (Thirty-One) VS Code Development Assistance -lisäosa
Seuraava:NVIDIA Project DIGITS -henkilökohtainen tekoälysupertietokone
 Vuokraisäntä| Julkaistu 2025-2-12 klo 17:07:50 |
.NET/C#-toteutuskoodi:


Testi




Curve25519.cs (31 KB, Latausten määrä: 1, 售价: 10 粒MB)
Julkaistu 2025-2-13 klo 16:26:18 |
Näyttää hyvältä, tue sitä.
Julkaistu 2025-2-14 09:51:22 |
Näyttää hyvältä, tue sitä
Vastuuvapauslauseke:
Kaikki Code Farmer Networkin julkaisemat ohjelmistot, ohjelmamateriaalit tai artikkelit ovat tarkoitettu vain oppimis- ja tutkimustarkoituksiin; Yllä mainittua sisältöä ei saa käyttää kaupallisiin tai laittomiin tarkoituksiin, muuten käyttäjät joutuvat kantamaan kaikki seuraukset. Tämän sivuston tiedot ovat peräisin internetistä, eikä tekijänoikeuskiistat liity tähän sivustoon. Sinun tulee poistaa yllä oleva sisältö kokonaan tietokoneeltasi 24 tunnin kuluessa lataamisesta. Jos pidät ohjelmasta, tue aitoa ohjelmistoa, osta rekisteröityminen ja hanki parempia aitoja palveluita. Jos rikkomuksia ilmenee, ota meihin yhteyttä sähköpostitse.

Mail To:help@itsvse.com