EdDSA - EdDSA

EdDSA
Genel
tasarımcılar Daniel J. Bernstein , Niels Duif, Tanja Lange , Peter Schwabe, Bo-Yin Yang, et al.
İlk yayınlanan 26 Eylül 2011
Detay
yapı Eliptik eğri şifreleme

Olarak açık anahtar şifrelemesi , Edwards eğrisi dijital imza algoritması ( EdDSA ) a, sayısal imza bir varyantını kullanarak Şema Schnorr imza göre bükülmüş Edwards eğrileri . Güvenlikten ödün vermeden mevcut dijital imza şemalarından daha hızlı olacak şekilde tasarlanmıştır. Daniel J. Bernstein , Niels Duif, Tanja Lange , Peter Schwabe ve Bo-Yin Yang gibi bir ekip tarafından geliştirildi . Referans uygulama olduğu kamuya açık yazılım .

Özet

Aşağıda, tamsayıları ve eğri noktalarını bit dizileri olarak kodlama ayrıntılarını göz ardı ederek EdDSA'nın basitleştirilmiş bir açıklaması yer almaktadır; tüm ayrıntılar belgelerde ve RFC'dedir.

Bir EdDSA imza şeması bir seçimdir:

  • ait sonlu alanında tek asal güç üzerinde ;
  • ve eliptik eğri üzerinde kimin grubu arasında -rational noktalarına sahip düzeni , büyük asal ve kofaktör olarak adlandırılır;
  • temel noktanın emriyle ; ve
  • ve kriptografik hızlı arama fonksiyonu ile -bit çıkışları, elemanları ve böylece de ve destek noktası dizileri ile temsil edilebilir bit.

Bu parametreler, EdDSA imza şemasının tüm kullanıcıları için ortaktır. EdDSA imza şemasının güvenlik üssü keyfi seçim hariç, parametrelerin seçimler önemli unsurunu oluşturmaktadır noktadan-örneğin, logaritma için Pollard rho algoritması yaklaşık sürmesi bekleniyor böylece, bir ayrık logaritma hesaplamak için önce eğri eklemeler olmalıdır bunun mümkün olmaması için yeterince büyük ve tipik olarak 2 200 ' ü aştığı kabul ediliyor . Seçimi seçimi ile sınırlıdır tarafından beri, Hasse teoremi , farklı olamaz fazla tarafından . Karma işlevi normalde EdDSA'nın güvenliğinin resmi analizlerinde rastgele bir kahin olarak modellenir . HashEdDSA varyantında, ek bir çarpışmaya dayanıklı hash fonksiyonu gereklidir.

Bir EdDSA imza şeması içinde,

Genel anahtar
EdDSA ortak anahtarı, bit olarak kodlanmış bir eğri noktasıdır .
İmza
Genel anahtar tarafından iletideki bir EdDSA imzası, bir eğri noktasının ve aşağıdaki doğrulama denklemini sağlayan bir tamsayının bit olarak kodlanmış çiftidir . birleştirmeyi ifade eder .

Özel anahtar
EdDSA özel anahtarı, rasgele bir şekilde seçilmesi gereken bir -bit dizesidir . Karşılık gelen ortak anahtar, küçük endian'da bir tamsayı olarak yorumlanan en az anlamlı bitlerin olduğu yerdir . Bir iletide imza olduğu yerlerde için , ve
Bu, doğrulama denklemini karşılar:

Ed25519

Ed25519 EdDSA imza kullanılarak şemasıdır SHA-512 (SHA-2) ve Curve25519

  • ve
  • benzersiz bir yer olan koordinat olan ve koordine pozitiftir. "pozitif", bit kodlaması açısından tanımlanır:
    • "pozitif" koordinatlar çift koordinatlardır (en az anlamlı bit temizlenir)
    • "negatif" koordinatlar tek koordinatlardır (en az anlamlı bit ayarlanır)
  • olan SHA-512 ile .

Eğrisi olup birationally eşdeğer için Montgomery eğrisi olarak da bilinir Curve25519 . denklik

Verim

Orijinal ekip, x86-64 Nehalem / Westmere işlemci ailesi için Ed25519'u optimize etti . Doğrulama, daha da fazla verim için 64 imzalık gruplar halinde gerçekleştirilebilir. Ed25519, kaliteli 128 bit simetrik şifrelerle karşılaştırılabilir saldırı direnci sağlamayı amaçlamaktadır . Genel anahtarlar 256 bit uzunluğunda ve imzalar 512 bit uzunluğundadır.

Güvenli kodlama

Güvenlik özellikleri olarak, Ed25519, birçok yan kanal saldırısını yenmek için, gizli verilere bağlı olan şube işlemlerini ve dizi indeksleme adımlarını kullanmaz .

Diğer ayrık günlük tabanlı imza şemaları gibi, EdDSA her imza için benzersiz nonce adı verilen gizli bir değer kullanır . DSA ve ECDSA imza şemalarında , bu nonce geleneksel olarak her imza için rastgele oluşturulur ve rasgele sayı üreteci imza yaparken bozulur ve tahmin edilebilir olursa, Sony PlayStation 3 ürün yazılımında olduğu gibi imza özel anahtarı sızdırabilir. imzalama anahtarını güncelleyin. Buna karşılık, EdDSA, özel anahtarın ve mesajın bir bölümünün karma değeri olarak deterministik olmayanı seçer. Böylece, bir özel anahtar üretildikten sonra, EdDSA'nın imza yapmak için bir rasgele sayı üretecine artık ihtiyacı yoktur ve imza yapmak için kullanılan bozuk bir rasgele sayı üretecinin özel anahtarı açığa çıkarma tehlikesi yoktur.

Standardizasyon ve uygulama tutarsızlıkları

Not EdDSA, IETF dan biri, bilgilendirici için iki standardizasyon çalışmaları olduğunu RFC  8032 FIPS 186-5 (2019) bir parçası olarak NIST ve bir. Standartlar arasındaki farklar analiz edilmiştir ve test vektörleri mevcuttur.

Yazılım

Ed25519'un dikkate değer kullanımları arasında OpenSSH , GnuPG ve çeşitli alternatifler ve OpenBSD'nin Signify aracı yer alır . Ed25519'un SSH protokolünde kullanımı standart hale getiriliyor. 2019'da FIPS 186-5 standardının bir taslak versiyonu, onaylanmış bir imza şeması olarak deterministik Ed25519'u içeriyordu.

Ed448

Ed448 , RFC 8032'de tanımlanan SHA-3 ve Curve448'i kullanan EdDSA imza şemasıdır . FIPS 186-5 standardının taslağında da onaylanmıştır.  

Referanslar

Dış bağlantılar