deniz.in

Piyasalar

Hava durumu

Hava durumu yükleniyor

· kaynak Hacker News – Front Page (hnrss.org)

RC2'nin uzun süredir açıklanamayan π tabloları, üç haneli Fisher–Yates karıştırmasıyla tam olarak yeniden üretildi

Bir araştırma notu, RC2'nin açıklanamayan iki 256 baytlık tablosunun da, π'nin ondalık basamaklarını üçer üçer kullanan bir Fisher–Yates karıştırmasıyla tam olarak yeniden oluşturulabildiğini gösteriyor; böylece ilk kez 1996'da ortaya atılan bir soru yanıtlanmış oluyor.

RC2'nin uzun süredir açıklanamayan π tabloları, üç haneli Fisher–Yates karıştırmasıyla tam olarak yeniden üretildi

30 yıllık bir kriptografi sorusu yanıtlandı

1980'lerin sonunda Ron Rivest tarafından tasarlanan RC2 blok şifresinin kalbindeki 256 sabit sayı artık sıfırdan yeniden üretilebiliyor. Hacker News'in ana sayfasında yer bulan Khalid Hamadeh imzalı bir kriptografi araştırma notu, şifrenin yayımlanmış iki tablosunun da rastgelelik kaynağı olarak π'nin ondalık basamaklarını kullanan bir Fisher–Yates karıştırmasıyla tam olarak yeniden üretildiğini gösteriyor: her çekim tam olarak üç basamak tüketiyor ve sonucu çarpıtacak çekimler eleniyor.

RC2'nin tanımı olan RFC 2268, anahtar çizelgesi tablosu PITABLE'ı "π'nin basamaklarına dayanır" diye tarif ediyor ancak türetme yöntemini hiç açıklamıyor; aynı belgede daha sonra basılan ve 1 ile 255 bit arasındaki etkili anahtar uzunluklarını RC2-CBC ile ve PKCS #5'te kullanılan RC2Version parametresine eşleyen ikinci permütasyona dair hiçbir köken bilgisi verilmiyor. Nota göre PITABLE, karıştırmanın π'nin baştaki 3'ünden başlayarak çalıştırılmasıyla elde ediliyor; ikinci tablo ise aynı işlemin dört basamak sonra başlatılmasıyla oluşuyor. İkisi de 256 konumun tamamında eşleşiyor.

Tablonun kökeni neden önemliydi

Her RC2 uygulaması 0'dan 255'e kadar sayıların aynı karıştırılmış sıralamasını taşıyor. Böyle bir sabit tablo, tam olarak bir şifre tasarımcısının bir zafiyet saklayabileceği yerdir; kriptografcılar bu yüzden böyle sabitleri π gibi herkese açık bir değerden türetmeyi ve yöntemi yayımlamayı tercih eder ki herkes denetleyebilsin. Bu sözde "kollarım boşta" sayıları ancak türetme yöntemi açıkta olduğunda güvence verir.

RC2 sabitini adlandırmış ama yöntemini vermemişti. Şifrenin kodu 1996'da sızdığında, RC2'nin sahibi olan RSA Data Security'de görevli bir mühendis, tablonun gerçekten π'den gelip gelmediğinin nasıl anlaşılacağını herkesin önünde sordu. Nota göre kapsamlı bir arama daha önce yayımlanmış bir yanıt bulamadı ve LibTomCrypt dahil bazı uygulamalar hâlâ sızan koddaki, tablonun "büyük olasılıkla pi'den bir şekilde türetildiği" yorumunu taşıyor.

Karıştırma nasıl çalışıyor

Yapı, 0'dan 255'e kadar sayıları bir iskambil destesi gibi ele alıyor. İkinci karttan sonuncuya kadar her kart, kendisiyle ya da daha önceki herhangi bir konumdan seçilen bir kartla takas ediliyor — ders kitabındaki Fisher–Yates karıştırması. Rastgelelik π'nin ondalık basamaklarından geliyor; her seferinde üç basamak okunarak 0 ile 999 arasında bir sayı oluşturuluyor ve seçilen konum, bu sayının kullanılabilir yer sayısına bölünmesinden kalanı oluyor. Yer sayısı 1.000'e tam bölünmediğinde aralığın üstüne denk gelen çekimler atılıyor ve üç yeni basamak okunuyor; böylece her sonucun olasılığı eşit kalıyor.

Karıştırmanın tamamı π'nin 828 basamağını tüketiyor ve 21 çekimi eliyor; bunların ikisi, Feynman noktası olarak bilinen π'nin 762. ondalık basamağında başlayan altı tane 9'luk dizilimde gerçekleşiyor. İkinci tablo da benzer şekilde 828 basamak kullanıyor ve 21 çekim atıyor.

Neden kimse daha önce bulamadı

Rivest 2014'te, MD2 özet fonksiyonunun kendi π tablosunu aynı karıştırmayla kurduğunu doğrulamıştı — ancak MD2 her çekim için yalnızca gereken sayıda basamak okuyor: en fazla on seçenek varken bir, yüze kadar iki, ötesinde üç basamak. Not, MD2'nin kuralının RC2'ye birebir uygulanmasının 256 konumdan yalnızca 1'ini eşleştirdiğini, yani şanstan iyi sonuç vermediğini gösteriyor; dolayısıyla akla ilk gelen çapraz denetim herhangi bir bağlantıdan uzaklaşırdı. Gereken tek değişiklik, her seferinde üç basamak okumak.

Denetimler ve yakın kaçmalar

Not, yaklaşık 100.000 aday yöntem üzerinde yürütülen bir aramayı anlatıyor — dört basamak kaynağı, sayı çekmenin yedi yolu, altı karıştırma düzeni, 300 başlangıç noktası ve tablonun kendisiyle tersi — ve bunlardan tam bir tanesi 256 konumun tamamını eşleştirdi: en basit kural. Yakın varyantlar şans düzeyine düşüyor: eleme adımı kaldırıldığında yalnızca 29 konum eşleşiyor, bir basamak sonra başlandığında bir tanesi, karıştırma e'nin basamaklarıyla çalıştırıldığında hiçbiri eşleşmiyor. Sonuç daha sonra iki bağımsız uygulamayla yeniden üretildi: biri RFC artı kuralın tek paragraflık bir tanımından yazıldı, öteki kendi π hesaplamasını ve RFC'nin yeni bir kopyasını kullandı.

Not ayrıca, 17 Ekim 2026'da PITABLE'ın nasıl üretildiğu sorusuna Google'ın AI Overview'inin, yayımlanmış tablonun d9 78 f9 ile başladığı yerde 24 3f 6a ile başlayan bir örnek veren onaltılık bir şemayı tarif ettiğini de kaydediyor.

Neden önemli

Bulgunun RC2'nin güvenliğiyle bir ilgisi yok — not bu konuda açık. Değeri, özgün tanımın eksik bıraktığı bir tartışmayı tamamlamasında: herkese açık, doğrulanabilir bir türetme sayesinde herkes iki tabloyu da π'den yeniden kurabiliyor ve içlerinde bir zafiyeti gizlemek için elle seçilmiş hiçbir şey olmadığını doğrulayabiliyor. Yazar kesinlik konusunda dikkatli; Rivest'ın kurala nasıl ulaştığı hiçbir yerde belgelenmediği için bunu "büyük olasılıkla özgün yöntem" olarak nitelendiriyor. Yan etki olarak bu olay, bir sabiti adlandırıp yöntemi yayımlamamanın yeterli olmadığının — ve kendinden emin bir AI özetinin bir tabloyu bayt bayt denetlemenin yerini tutamayacağının derli toplu bir kanıtı.

  • #cryptography
  • #security
  • #rc2
  • #algorithms
  • #fisher-yates

İlgili yazılar