Optimal asimetrik şifreleme dolgusu - Optimal asymmetric encryption padding

İçinde kriptografi, Optimal Asimetrik Şifreleme Dolgusu (OAEP) bir dolgu şeması sıklıkla birlikte kullanılır RSA şifreleme. OAEP, Bellare ve Rogaway,[1] ve daha sonra standartlaştırıldı PKCS # 1 v2 ve RFC 2437.

OAEP algoritması bir tür Feistel ağı bir çift kullanan rastgele oracle'lar G ve H'den önce düz metni işlemek için asimetrik şifreleme. Herhangi bir güvenli ile birleştirildiğinde trapdoor tek yönlü permütasyon bu işlem, rastgele oracle modeli birleşik bir şema oluşturmak için anlamsal olarak güvenli altında düz metin saldırısı seçildi (IND-CPA). Belirli trapdoor permütasyonlarıyla (ör. RSA) uygulandığında, OAEP'in de güvenli olduğu kanıtlanmıştır. seçilen şifreli metin saldırısı. OAEP, bir ya hep ya hiç dönüşümü.

OAEP aşağıdaki iki hedefi karşılar:

  1. Bir rasgele unsuru dönüştürmek için kullanılabilecek bir rastgelelik öğesi ekleyin deterministik şifreleme şema (ör. geleneksel RSA ) içine olasılığa dayalı düzeni.
  2. Bir rakibin şifresiz metnin herhangi bir bölümünü tersine çeviremeden kurtaramamasını sağlayarak şifreli metinlerin (veya diğer bilgi sızıntılarının) kısmen çözülmesini önleyin. trapdoor tek yönlü permütasyon .

OAEP'in orijinal versiyonu (Bellare / Rogaway, 1994) bir "düz metin farkındalığı "(iddia ettikleri, seçilen şifreli metin saldırısı ) rastgele oracle modelinde OAEP herhangi bir trapdoor permütasyonu ile kullanıldığında. Daha sonraki sonuçlar bu iddiayla çelişerek OAEP'in yalnızca IND-CCA1 güvenli. Bununla birlikte, orijinal şema rastgele oracle modeli olmak IND-CCA2 OAEP, RSA-OAEP durumunda olduğu gibi standart şifreleme üsleri kullanılarak RSA permütasyonu ile kullanıldığında güvenlidir.[2]Herhangi bir trapdoor tek yönlü permütasyon ile çalışan geliştirilmiş bir şema (OAEP + olarak adlandırılır) tarafından Victor Shoup bu problemi çözmek için.[3]Daha yeni çalışmalar göstermiştir ki, standart Model (yani, hash fonksiyonları rastgele oracle'lar olarak modellenmediğinde), RSA-OAEP'in IND-CCA2 güvenliğini, varsayılan sertlik altında kanıtlamak imkansızdır. RSA sorunu.[4][5]

Algoritma

OAEP bir Feistel ağı

Diyagramda,

  • n RSA modülündeki bit sayısıdır.
  • k0 ve k1 protokol tarafından sabitlenmiş tam sayılardır.
  • m düz metin mesajıdır, bir (n − k0 − k1 ) bit dizesi
  • G ve H vardır rastgele oracle'lar gibi kriptografik hash fonksiyonları.
  • ⊕ bir xor işlemidir.

Kodlamak için

  1. mesajlar ile doldurulur k1 sıfır olmak n − k0 bit uzunluğunda.
  2. r rastgele oluşturulmuş k0-bit dizge
  3. G genişletir k0 bitleri r -e n − k0 bitler.
  4. X = m00...0 ⊕ G(r)
  5. H azaltır n − k0 bitleri X -e k0 bitler.
  6. Y = rH(X)
  7. Çıktı X || Y nerede X diyagramda en soldaki blok olarak gösterilir ve Y en sağdaki blok olarak.

RSA'da kullanım: Kodlanmış mesaj daha sonra RSA ile şifrelenebilir. RSA'nın deterministik özelliği artık OAEP kodlaması kullanılarak engellenmektedir.

Çözmek için

  1. rastgele dizeyi kurtar r = YH(X)
  2. mesajı olarak kurtar m00...0 = XG(r)

Güvenlik

"Ya hep ya hiç "güvenlik, kurtarmak için m, tüm kurtarılmalı X ve tamamı Y; X kurtarmak için gerekli r itibaren Y, ve r kurtarmak için gerekli m itibaren X. Değiştirilmiş herhangi bir şifreleme hash biti sonucu tamamen değiştirdiğinden, Xve tamamı Y her ikisi de tamamen kurtarılmalıdır.

Uygulama

PKCS # 1 standardında, rastgele oracle'lar G ve H Özdeş. PKCS # 1 standardı ayrıca rastgele oracle'ların MGF1 uygun bir hash işlevi ile.[6]

Ayrıca bakınız

Referanslar

  1. ^ M. Bellare, P. Rogaway. Optimal Asimetrik Şifreleme - RSA ile nasıl şifrelenir. Kriptolojideki Gelişmelerde genişletilmiş özet - Eurocrypt '94 Tutanakları, Bilgisayar Bilimlerinde Ders Notları Cilt 950, A. De Santis ed, Springer-Verlag, 1995. tam sürüm (pdf)
  2. ^ Eiichiro Fujisaki, Tatsuaki Okamoto, David Pointcheval ve Jacques Stern. RSA - OAEP, RSA varsayımı altında güvenlidir. J. Kilian, ed., Advances in Cryptology - KRİPTO 2001, cilt. Bilgisayar Bilimlerinde Ders Notları 2139, SpringerVerlag, 2001. tam sürüm (pdf)
  3. ^ Victor Shoup. OAEP Yeniden Değerlendirildi. IBM Zurich Research Lab, Saumerstr. 4, 8803 Ruschlikon, İsviçre. 18 Eylül 2001. tam sürüm (pdf)
  4. ^ P. Paillier ve J. Villar, Faktoring Tabanlı Şifrelemede Seçilmiş Şifreli Metin Güvenliğine Karşı Tek Yönlü İşlem Yapma, Kriptolojideki Gelişmeler - Asiakript 2006.
  5. ^ D. Brown, RSA-OAEP'i Güvenli Hale Getiren Neler Var?, IACR ePrint 2006/233.
  6. ^ Brown, Daniel R.L. (2006). "RSA-OAEP'i Güvenli Hale Getiren Neler?" (PDF). IACR Cryptology ePrint Arşivi. Alındı 2019-04-03.