Nonce nedir?
Nonce (bir kez kullanılan sayı), tekrar saldırılarını ve kalıp analizini önlemek amacıyla özdeş girdilerin farklı çıktılar üretmesini sağlamak için bir kriptografik işlemde tam olarak bir kez kullanılan benzersiz, genellikle rastgele veya sıralı bir değerdir.
Diğer adlarıyla: number used once, cryptographic nonce
Aynı düz metni aynı anahtar ve nonce olmaksızın şifrelersen, her seferinde özdeş şifreli metin elde edersin. Birden fazla mesajı izleyen saldırgan kalıpları tespit edebilir — özdeş şifreli metinler, şifresini çözmeden bile aynı mesajın gönderildiğini ortaya koyar. Nonce, her şifreleme işlemine benzersiz bir değer girerek bu sorunu ortadan kaldırır; aynı düz metnin aynı anahtarla şifrelenmesinin her zaman farklı şifreli metin üretmesini sağlar.
Nonce'lara yönelik güvenlik gereksinimleri algoritmaya göre değişir. Bazı algoritmalar (AES-GCM gibi) bir nonce'ın aynı anahtarla hiçbir zaman yeniden kullanılmamasını gerektirir — yeniden kullanım hem gizliliği hem de kimlik doğrulamayı felaket biçimde tehlikeye atabilir. Bu algoritmalar için rastgele nonce'lar, kazara çarpışmanın ihmal edilebilecek kadar düşük kalması için yeterince büyük olmalıdır. 96 bitlik rastgele nonce (AES-GCM'de kullanıldığı gibi), tek bir anahtar altında yaklaşık 2^32 şifrelemeye kadar yeterli çarpışma direnci sağlar.
Nonce'lar, kriptografik protokollerde farklı adlarla karşımıza çıkar. AES-GCM'de başlatma vektörleri, güçlük-yanıt kimlik doğrulamada güçlükler ve blok zincirinde madencilik nonce'ları olarak adlandırılırlar. Ortak nokta benzersizliktir: değer, kullanıldığı bağlamda tekrarlamamalıdır.
Vaulted Nonce nasıl kullanır
Vaulted ile şifrelenen her gizli bilgi, Web Crypto API'nin kriptografik güvenli rastgele sayı üreticisi tarafından oluşturulan benzersiz 12 baytlık (96 bitlik) rastgele bir nonce kullanır. Bu nonce, AES-256-GCM şifrelemesi için başlatma vektörü olarak hizmet eder. Şifreli metinle birlikte sunucuda depolanır ve şifre çözme için alıcıya iletilir. Her gizli bilgi yeni oluşturulmuş bir anahtar-nonce çifti kullandığından, nonce yeniden kullanımı büyük ölçekte bile pratik bir sorun değildir.