SLH-DSA
Stateless Hash-Based Digital Signature Standard
Yayım tarihi: 13 AğustosAğustosAğustos 2024
Özet
SPHINCS+ temelli, ML-DSA'ya yedek dijital imza standardı. Kafes varsayımlarından bağımsız olarak yalnızca hash fonksiyonlarının güvenliğine dayanır ve matematiksel çeşitlilik sağlar.
Güvenlik Seviyeleri
SLH-DSA Nedir?
FIPS 205 (SLH-DSA), NIST'in 13 Ağustos 2024'te yayımladığı, SPHINCS+ algoritmasına dayanan post-kuantum dijital imza standardıdır. SLH-DSA, ML-DSA'ya bir yedek (backup) olarak konumlandırılır ve tamamen farklı bir matematiksel temele dayanarak ekosisteme kriptografik çeşitlilik kazandırır.
Neden Yedek Bir Standart?
NIST, kriptografik çeşitliliği bir güvenlik stratejisi olarak benimsemiştir. ML-DSA ve FN-DSA'nın her ikisi de kafes tabanlı kriptografiye dayanır. Eğer gelecekte kafes problemlerini zayıflatan beklenmedik bir matematiksel atılım yaşanırsa, kafese dayanan tüm imza şemaları aynı anda risk altına girer. SLH-DSA bu riski azaltır: yalnızca hash fonksiyonlarına dayandığı için "tek noktadan çökme" senaryosuna karşı bağımsız bir güvence sağlar.
SLH-DSA'nın varlık nedeni güvenlik mühendisliğinin temel ilkesidir: kritik bir bileşen için her zaman bağımsız bir yedek bulundurun.
Hash Tabanlı Güvenliğin Avantajı
SLH-DSA'nın güvenliği yalnızca temel hash fonksiyonlarının (SHA-2 veya SHAKE) çakışma ve ön-görüntü dayanıklılığına dayanır. Hash fonksiyonları onlarca yıldır yoğun biçimde incelenmiştir ve kuantum bilgisayarlara karşı yalnızca sınırlı bir hızlanma (Grover algoritması — yalnızca √2 katı) yaşarlar. Bu nedenle SLH-DSA'nın güvenlik varsayımları, kafes tabanlı şemalara kıyasla son derece muhafazakâr ve iyi anlaşılmıştır.
Bu avantajın bedeli imza boyutudur: kullanılan Merkle ağaçları ve tek-seferlik imza zincirleri büyük yapısal yük getirir.
Yapısal Bileşenler
SLH-DSA üç klasik hash-tabanlı yapı taşının kombinasyonudur:
- WOTS+ (Winternitz One-Time Signature): tek-seferlik imza şeması, tek bir anahtarla yalnızca bir mesaj imzalar.
- FORS (Forest Of Random Subsets): mesajı imzalamak için WOTS+ örneklerini seçer.
- HyperTree: birden çok Merkle ağacını hiyerarşik biçimde birleştirir; toplam imza kapasitesini 264+ adete çıkarır.
Durumsuz (Stateless) Yapı
Daha eski hash tabanlı imza şemaları (XMSS, LMS) "durumlu" (stateful) idi: her imzanın hangi tek seferlik anahtarla üretildiğini takip etmek zorunluydu; bu durumun kaybedilmesi (yedekten geri yükleme, sanal makine kopyalama, vb.) güvenliği tamamen bozuyordu. SLH-DSA ise durumsuzdur — uygulamanın herhangi bir sayaç ya da geçmiş tutması gerekmez. Bu özellik SLH-DSA'yı dağıtık sistemler, yedeklenen ortamlar ve bulut konuşlandırması için pratik kılar.
Parametre Setleri
SLH-DSA üç güvenlik seviyesinin her birinde iki varyant sunar: "s" (small — küçük imza, yavaş üretim) ve "f" (fast — büyük imza, hızlı üretim). Ek olarak SHA-2 ve SHAKE-256 hash seçenekleri mevcuttur.
| Parametre | Seviye | Açık Anahtar | İmza | Sign (μs) | Verify (μs) |
|---|---|---|---|---|---|
| SLH-DSA-128s | 1 | 32 B | 7 856 B | ~600 000 | ~750 |
| SLH-DSA-128f | 1 | 32 B | 17 088 B | ~30 000 | ~1 700 |
| SLH-DSA-192s | 3 | 48 B | 16 224 B | ~1 050 000 | ~1 100 |
| SLH-DSA-192f | 3 | 48 B | 35 664 B | ~50 000 | ~2 500 |
| SLH-DSA-256s | 5 | 64 B | 29 792 B | ~900 000 | ~1 500 |
| SLH-DSA-256f | 5 | 64 B | 49 856 B | ~75 000 | ~2 800 |
Açık Anahtar Avantajı
SLH-DSA'nın açık anahtarı son derece kompakttır (32–64 bayt) — Ed25519 ile aynı boyut. Bu, açık anahtarın geniş ölçekte dağıtılması gereken senaryolarda (firmware güvenli açılış, kök sertifika) önemli bir avantajdır.
İdeal Kullanım Senaryoları
- Kök sertifika (Root CA) imzalama: Nadir, kritik, uzun ömürlü imzalar. İmzalama süresinin 0.5 saniye olması kabul edilebilir.
- Firmware ve yazılım imzalama: Aygıt güvenli açılış zinciri (UEFI Secure Boot, ARM TrustZone). 64 baytlık açık anahtar OTP belleğe sığar.
- Yasal ve diplomatik belge imzalama: Uzun süre geçerli kalması gereken e-imzalar; matematiksel temellerin saldırıya uğrama olasılığı en düşük algoritma tercih edilir.
- Hibrit (Composite) imza: ML-DSA + SLH-DSA birleştirmesi — her iki algoritma da kırılmazsa imza geçerlidir.
Kötü Uygulama Senaryoları
- Yüksek hacimli TLS handshake — SLH-DSA-128f bile her bağlantıda 17 KB imza ekler; ML-DSA tercih edilmelidir.
- Mobil uygulamalardan otomatik kod imzalama — imza üretim süresi cihazın kullanıcı deneyimini bozar.
- IoT cihaz-cihaz mesaj imzalama — bant genişliği maliyeti çok yüksek.
liboqs ile Örnek Kullanım
OQS_SIG *sig = OQS_SIG_new(OQS_SIG_alg_sphincs_sha2_128s_simple);
uint8_t pk[OQS_SIG_sphincs_sha2_128s_simple_length_public_key];
uint8_t sk[OQS_SIG_sphincs_sha2_128s_simple_length_secret_key];
uint8_t signature[OQS_SIG_sphincs_sha2_128s_simple_length_signature];
size_t sig_len;
OQS_SIG_keypair(sig, pk, sk);
OQS_SIG_sign(sig, signature, &sig_len, message, mlen, sk);
// ... transmit signature ...
OQS_SIG_verify(sig, message, mlen, signature, sig_len, pk);
Hibrit Composite Signature (Önerilen)
IETF LAMPS çalışma grubu, X.509 sertifikaları için ML-DSA + SLH-DSA hibrit imzasını composite signature formatıyla tanımlamaktadır. Bu yaklaşımda iki imza bir araya getirilir:
composite_signature = ML-DSA-65(M) || SLH-DSA-128s(M)
verify(M, csig) = verify_mldsa(M, csig.part1) AND verify_slhdsa(M, csig.part2)
Saldırganın bu sertifikayı taklit edebilmesi için her iki şemayı da kırması gerekir — matematiksel çeşitliliğin en pratik kullanımı.
Standart Belgeleri ve Kaynaklar
- NIST FIPS 205 (resmi) —
csrc.nist.gov/pubs/fips/205/final - SPHINCS+ teknik şartname —
sphincs.org - IETF LAMPS Composite Signatures —
datatracker.ietf.org/wg/lamps - RFC 8391 (XMSS) ve RFC 8554 (LMS) — durumlu hash imzalar (karşılaştırma için)