Curve25519

Kriptolojide, Curve25519 128 bit güvenlik sağlayan ve eliptik eğri Diffie–Hellman (ECDH) anahtar değişim protokolu ile kullanılması için tasarlanan bir eliptik eğridir. ECC eğrileri içinde en hızlılarından biridir ve bilinen herhangi bir patent kapsamında değildir. 

Curve25519, orijinal yayınında bir  Diffie–Hellman (DH) fonksiyonu olarak tanımlanmıştır. Daha sonrasında Daniel J. Bernstein DH fonksiyonu için X25519 ismini, Curve25519'un ise altındaki eğri için kullanılmasını önermiştir.

Matematiksel özellikleri 
Kullanılan eğri  , bir Montgomery eğrisi,   asal sayısı ile tanımlanan asal cisminin ikinci dereceden bir genişlemesi üzerindedir ve  baz noktasını kullanır. 
Bu bazın mertebesi; .

Protokol sıkıştırılmış eliptik nokta kullanır (sadece X koordinatları) ve  bu sayede ECDH için Montgomery merdiveninin, sadece XZ koordinatlarını kullanarak etkili/verimli kullanımına izin verir.

Curve25519, birçok potansiyel implementasyon tuzağını önleyecek şekilde inşa edilmiştir. Tasarım gereği, zamanlama saldırılarına karşı dayanıklıdır, herhangi bir 32 byte bir stringi geçerli bir açık anahtar olarak kabul edebilir ve doğrulama gerektirmez.

Eğri, Ed25519 imza şemasında kullanılan bükülmüş Edwards eğrisine birasyonel denktir.

Popülerlik 
Curve25519, ilk kez Daniel J. Bernstein tarafından 2005'te yayınlandı. Ancak bu eğriye ilgi  2013'ten sonra, NSA'nın Dual EC DRBG'nin güvenlik sistemine gizli bir erişim implementasyonu uyguladığı keşfedildikten sonra önemli ölçüde arttı. Her ne kadar doğrudan ilişkilendirilemese de  NIST'in P eğrisi sabitlerinin şüpheli yönleri, NSA'nın açık anahtar üretiminde kendilerine avantaj sağlayan değerlere sahip olduğuna dair endişelere yol açmıştır.

O zamandan beri, Curve25519, P-256'ya bir alternatif haline gelmiştir ve uygulamalar geniş bir yelpazede kullanılmaktadır.  2014'ten itibaren OpenSSH 'da ECDH tabanlı Curve25519'u varsaymaktadır.

2017 de, Curve25519 ve Curve448'in ABD Federal Hükümeti tarafından kullanılmak üzere onaylanmış eliptik eğrileri belirten “Special Publication 800-186” yayınına eklendikleri NIST tarafından ilan edildi.

Kütüphaneler 

 Libgcrypt  
 libssh
 NaCl
 GnuTLS
 mbed TLS (formerly PolarSSL)
 wolfSSL
 Botan
 SChannel
 Libsodium
 OpenSSL since version 1.1.0
 LibreSSL
 NaCl for Tcl — a port to the Tcl language.
 NSS since version 3.28
 Monocypher
 Crypto++

Protokoller 
 OMEMO, a proposed extension for XMPP (Jabber)
 Secure Shell
 Signal Protocol
 Tox
 Zcash

Uygulamaları 

 Conversations Android application
 Cryptocat
 DNSCrypt
 DNSCurve
 Dropbear
 Facebook Messenger 
 Gajim via plugin
 GNUnet
 GnuPG
 Google Allo
 I2P
 iOS
 minilock
 OpenBSD
 OpenSSH
 Peerio
 PuTTY
 Signal
 Silent Phone
 SmartFTP
 SSHJ
 Threema Instant Messenger
 TinySSH
 TinyTERM
 Tor
 Userify
 Viber
 Virgil
 WhatsApp
 Wire

Not listesi

Kaynakça

Dış bağlantılar 
  

Kaynak kodlu kamuya açık yazılım
Eliptik eğri kriptografisi
Eliptik eğriler