Akış şifresi,

Kriptografide bir akış şifresi, düz metin bitlerinin bir exclusive-or (xor) işlemi kullanılarak sözde rastgele bir şifre bit akışı (anahtar akışı) ile birleştirildiği bir simetrik anahtar şifresidir. Bir akış şifresinde düz metin basamakları birer birer şifrelenir ve ardışık basamakların dönüşümü şifreleme durumu sırasında değişir. Her bir basamağın şifrelenmesi mevcut duruma bağlı olduğu için alternatif bir isim durum şifrelemesidir. Pratikte, rakamlar tipik olarak tek bitler veya baytlardır.

Akış şifreleri, simetrik şifrelemeye blok şifrelerden farklı bir yaklaşımı temsil eder. Blok şifreler sabit uzunluktaki büyük bloklar üzerinde çalışır. Akış şifreleri tipik olarak blok şifrelerden daha yüksek bir hızda çalışır ve daha düşük donanım gereksinimlerine sahiptir. Ancak, akış şifreleri yanlış kullanıldığında ciddi güvenlik sorunlarına yol açabilir; örneğin, özellikle aynı başlangıç durumu asla iki kez kullanılmamalıdır.

Bir akış şifresi, 128 bit anahtar gibi çok daha küçük ve daha kullanışlı bir şifreleme anahtarı kullanır. Bu anahtara dayanarak, tek seferlik ped şifreleme algoritmasına benzer bir şekilde düz metin rakamlarıyla birleştirilebilen sözde rastgele bir anahtar dizisi oluşturur. Bununla birlikte, anahtar dizisi sözde rastgele olduğundan ve gerçekten rastgele olmadığından, tek seferlik ped ile ilişkili güvenlik uygulanamaz ve bir akış şifresinin tamamen güvensiz olması oldukça mümkündür.

Cep telefonu konuşmalarını şifrelemek için kullanılan LFSR tabanlı bir akış şifresi olan A5/1'deki anahtar dizisi üretecinin çalışması.Zoom
Cep telefonu konuşmalarını şifrelemek için kullanılan LFSR tabanlı bir akış şifresi olan A5/1'deki anahtar dizisi üretecinin çalışması.

Akış şifresi türleri

Bir akış şifresi, dahili bir duruma dayalı olarak anahtar dizisinin ardışık öğelerini üretir. Bu durum iki şekilde güncellenir:

  1. Durum düz metin veya şifreli metin mesajlarından bağımsız olarak değişiyorsa, şifre eşzamanlı bir akış şifresi olarak sınıflandırılır.
  2. Durum, şifreli metin basamaklarının önceki değişikliklerine göre güncelleniyorsa, şifre kendi kendini senkronize eden akış şifreleri olarak sınıflandırılır.

Senkron akış şifreleri

Eşzamanlı bir akış şifresinde, düz metin ve şifreli metin mesajlarından bağımsız olarak bir sözde rastgele rakam akışı oluşturulur ve daha sonra düz metinle (şifrelemek için) veya şifreli metinle (şifreyi çözmek için) birleştirilir. En yaygın biçimde, ikili rakamlar (bitler) kullanılır ve anahtar dizisi özel veya işlemi (XOR) kullanılarak düz metinle birleştirilir. Buna ikili eklemeli akış şifresi denir.

Eşzamanlı bir akış şifresinde, şifre çözmenin başarılı olması için gönderici ve alıcının eşzamanlı olması gerekir. İletim sırasında mesaja rakamlar eklenir ya da çıkarılırsa senkronizasyon kaybolur. Senkronizasyonu yeniden sağlamak için, doğru şifre çözmeyi elde etmek üzere çeşitli ofsetler sistematik olarak denenebilir. Bir başka yaklaşım da şifre metnini çıktının düzenli noktalarında işaretleyicilerle işaretlemektir.

Bununla birlikte, bir rakam eklenmek veya kaybolmak yerine iletim sırasında bozulursa, düz metindeki yalnızca tek bir rakam etkilenir ve hata mesajın diğer bölümlerine yayılmaz. Bu özellik iletim hata oranı yüksek olduğunda kullanışlıdır; ancak hatanın başka mekanizmalar olmadan tespit edilme olasılığını azaltır. Ayrıca, bu özellik nedeniyle, eşzamanlı akış şifreleri aktif saldırılara karşı çok hassastır - eğer bir saldırgan şifreli metindeki bir rakamı değiştirebilirse, karşılık gelen düz metin bitinde öngörülebilir değişiklikler yapabilir; örneğin, şifreli metindeki bir bitin çevrilmesi, aynı bitin düz metinde çevrilmesine (Toggled) neden olur.

Kendi kendini senkronize eden akış şifreleri

Kendini senkronize eden akış şifreleri, anahtar dizisini hesaplamak için önceki N şifreli metin basamağının bir kısmını kullanan başka bir tekniktir. Bu tür şemalar asenkron akış şifreleri veya şifreli metin otomatik anahtarı (CTAK) olarak da bilinir. Kendi kendine senkronizasyon fikri 1946'da patentlenmiştir ve alıcının N şifre metni basamağı aldıktan sonra otomatik olarak anahtar dizisi oluşturucu ile senkronize olması avantajına sahiptir, bu da basamakların düşmesi veya mesaj akışına eklenmesi durumunda kurtarmayı kolaylaştırır. Tek basamaklı hataların etkisi sınırlıdır ve yalnızca N düz metin basamağına kadar etkiler. Kendi kendini senkronize eden akış şifrelerine aktif saldırılar gerçekleştirmek senkronize benzerlerine göre biraz daha zordur.

Kendi kendini senkronize eden bir akış şifresinin bir örneği, şifre geri besleme modundaki (CFB) bir blok şifredir.

Doğrusal geri beslemeli kaydırmalı yazmaç tabanlı akış şifreleri

İkili akış şifreleri genellikle doğrusal geri beslemeli kaydırma kaydedicileri (LFSR'ler) kullanılarak oluşturulur çünkü donanımda kolayca uygulanabilir ve matematiksel olarak hızlı bir şekilde analiz edilebilirler. Ancak, sadece LFSR kullanımı iyi bir güvenlik sağlamak için yeterli değildir. LFSR'lerin güvenliğini artırmak için çeşitli şemalar tasarlanmıştır.

Doğrusal olmayan birleştirme fonksiyonları

LFSR'ler doğası gereği doğrusal olduğundan, doğrusallığı ortadan kaldırmak için bir teknik, bir kombinasyon üreteci oluşturmak için bir grup paralel LFSR'nin çıkışlarını doğrusal olmayan bir Boole işlevine beslemektir. Böyle bir birleştirme fonksiyonunun çeşitli özellikleri, örneğin korelasyon saldırılarından kaçınmak amacıyla, sonuç şemasının güvenliğini sağlamak için önemlidir.

Saat kontrollü jeneratörler

Normalde LFSR'ler düzenli olarak adımlanır. Doğrusal olmayan bir teknik, ikinci bir LFSR'nin çıkışı tarafından kontrol edilen LFSR'nin düzensiz olarak saatlenmesini sağlamaktır. Bu tür üreteçler arasında dur-kalk üreteci, alternatif adım üreteci ve daralan üreteç yer alır.

Dur-kalk üreteci (Beth ve Piper, 1984) iki LFSR'den oluşmaktadır. Bir LFSR, ikinci bir LFSR'nin çıktısı "1" ise saatlenir, aksi takdirde bir önceki çıktısını tekrarlar. Bu çıktı daha sonra (bazı versiyonlarda) düzenli bir hızda saatlenen üçüncü bir LFSR'nin çıktısı ile birleştirilir.

Küçültme jeneratörü farklı bir teknik kullanır. Her ikisi de aşağıdaki şekilde düzenli olarak saatlenen iki LFSR kullanılır:

  1. İlk LFSR'nin çıkışı "1" ise, ikinci LFSR'nin çıkışı üretecin çıkışı olur.
  2. İlk LFSR'nin çıkışı "0" ise, ikincisinin çıkışı atılır ve üreteç tarafından hiçbir bit çıkışı yapılmaz.

Bu teknik, çıkışın hızı ikinci jeneratörün durumuna bağlı bir şekilde değişken olduğundan, ikinci jeneratör üzerindeki zamanlama saldırılarından muzdariptir. Bu durum çıkışın tamponlanmasıyla iyileştirilebilir.

Filtre üreteci

Bir LFSR'nin güvenliğini artırmaya yönelik bir başka yaklaşım da tek bir LFSR'nin tüm durumunu doğrusal olmayan bir filtreleme işlevine aktarmaktır.

Diğer tasarımlar

Doğrusal bir tahrik cihazı yerine doğrusal olmayan bir güncelleme fonksiyonu kullanılabilir. Örneğin, Klimov ve Shamir n bitlik kelimeler üzerinde tek bir döngüye sahip üçgen fonksiyonlar (T-Fonksiyonları) önermiştir.

Güvenlik

Güvenli olması için anahtar akışının periyodunun (akış kendini tekrar etmeden önce çıkan rakam sayısı) yeterince büyük olması gerekir. Eğer dizi tekrarlanırsa, üst üste binen şifre metinleri birbirlerine karşı "derinlemesine" hizalanabilir ve bu yöntemler kullanılarak oluşturulan şifre metinlerinden düz metnin çıkarılmasına izin veren teknikler vardır.

Kullanım

Akış şifreleri genellikle güvenli kablosuz bağlantılarda olduğu gibi düz metnin bilinmeyen uzunlukta miktarlarda geldiği uygulamalarda kullanılır. Bu tür bir uygulamada bir blok şifre kullanılacak olsaydı, blok şifreler blok boyutlarından daha kısa bloklar üzerinde doğrudan çalışamayacağından, tasarımcının ya iletim verimliliğini ya da uygulama karmaşıklığını seçmesi gerekirdi. Örneğin, 128 bitlik bir blok şifre ayrı 32 bitlik düz metin patlamaları alırsa, iletilen verinin dörtte üçünün dolguya ihtiyacı olur. Blok şifreler dolgudan kaçınmak için şifreli metin çalma veya artık blok sonlandırma modunda kullanılmalıdır, akış şifreleri ise iletilen en küçük birim (genellikle bayt) üzerinde çalışarak bu sorunu ortadan kaldırır.

Askeri kriptografide akış şifrelerinin bir diğer avantajı da şifre akışının sıkı güvenlik önlemlerine tabi olan bir şifreleme cihazı tarafından üretilebilmesi ve daha sonra işlevlerinin bir parçası olarak xor işlemini gerçekleştirecek olan diğer cihazlara, örneğin bir radyo setine beslenebilmesidir. Diğer cihaz daha az güvenli ortamlarda kullanılmak üzere tasarlanabilir.

RC4 yazılımda en yaygın kullanılan akış şifresidir; diğerleri şunlardır: A5/1, A5/2, Chameleon, FISH, Helix, ISAAC, MUGI, Panama, Phelix, Pike, SEAL, SOBER, SOBER-128 ve WAKE.

RC4 en yaygın kullanılan akış şifresi tasarımlarından biridir.Zoom
RC4 en yaygın kullanılan akış şifresi tasarımlarından biridir.

Akış Şifrelerinin Karşılaştırılması

StreamCipher

OluşturulmaTarihi

Hız
(döngü/byte)

(bit)

Saldırı

Etkili
Anahtar Uzunluğu

Başlangıç vektörü

InternalState

En İyi Bilinen

HesaplamalıKarmaşıklık

A5/1

1989

Ses (W phone)

54

114

64

Aktif KPA VEYA
KPA Zaman-Bellek Ödünleşimi

~2 saniye OR2 39.91

A5/2

1989

Ses (W phone)

54

114

64?

Aktif

4,6 milisaniye

BALIK

1993

Oldukça Hızlı (W soft)

Çok büyük

?

?

Bilinen düz metin saldırısı

2 11

Tahıl

2004 Öncesi

Hızlı

80

64

160

Anahtar Türetme

2 43

HC-256

2004 Öncesi

4 (W P4)

256

256

65536

?

?

ISAAC

1996

2.375 (W64-bit) -4
.6875
(W32-bit)

8-8288usually
40-256

N/A

8288

(2006) Birinci turZayıf-İç-Devlet-Türevlendirme

4,67×101240 (2001)

MUGI

1998-2002

?

128

128

1216

N/A (2002)

~2 82

PANAMA

1998

2

256

128?

1216?

Hash Collisions (2001)

2 82

Phelix

2004 Öncesi

8'e kadar (W x86)

256 + 128 bit Nonce

128?

?

Diferansiyel (2006)

2 37

Pike

1994

0,9 x BALIK (W soft)

Çok büyük

?

?

N/A (2004)

N/A (2004)

Py

2004 Öncesi

2.6

8-2048?
Genellikle 40-256?

64

8320

Kriptanalitik Teori (2006)

2 75

Tavşan

2003-Şubat

3,7(WP3 )-9,7(WARM7 )

128

64

512

N/A (2006)

N/A (2006)

RC4

1987

Etkileyici

8-2048genellikle
40-256

8

2064

Shamir İlk-Bayt Anahtar Türetme VEYA KPA

213 VEYA 2 33

Salsa20

2004 Öncesi

4,24 (WG4 ) -11,
84
(W P4)

128 + 64 bit Nonce

512

512 + 384 (anahtar+IV+indeks)

Diferansiyel (2005)

N/A (2005)

Çığlık

2002

4 - 5 (W soft)

128 + 128 bitlik bir Nonce

32?

64 bit yuvarlama işlevi

?

?

MÜHÜR

1997

Çok Hızlı (W32-bit)

?

32?

?

?

?

KAR

2003 Öncesi

Çok İyi (W32-bit)

128 VEYA 256

32

?

?

?

SOBER-128

2003

?

128'e kadar

?

?

Mesaj Forge

2 −6

SOSEMANUK

2004 Öncesi

Çok İyi (W32-bit)

128

128

?

?

?

Trivium

2004 Öncesi

4 (Wx86 ) - 8 (W LG)

80

80

288

Kaba kuvvet saldırısı (2006)

2 135

Turing

2000-2003

5,5 (W x86)

?

160

?

?

?

YELEK

2005

42 (WASIC ) -64 (W FPGA)

Değişkengenellikle
80-256

Değişkengenellikle
80-256

256 - 800

N/A (2006)

N/A (2006)

UYAN

1993

Hızlı

?

?

8192

CPA & CCA

Savunmasız

StreamCipher

OluşturulmaTarihi

Hız
(döngü/byte)

(bit)

Saldırı

Etkili
Anahtar Uzunluğu

Başlangıç vektörü

InternalState

En İyi Bilinen

HesaplamalıKarmaşıklık

İlgili sayfalar

  • eSTREAM

Sorular ve Yanıtlar

S: Akış şifresi nedir?


C: Bir akış şifresi, düz metin bitlerinin bir exclusive-or (xor) işlemi kullanılarak sözde rastgele bir şifre bit akışı (anahtar akışı) ile birleştirildiği bir simetrik anahtar şifresidir.

S: Blok şifrelerden farkı nedir?


C: Akış şifreleri tipik olarak blok şifrelerden daha yüksek hızda çalışır ve daha düşük donanım gereksinimlerine sahiptir. Blok şifreler sabit uzunluktaki büyük bloklar üzerinde çalışırken, akış şifreleri basamakları birer birer şifreler ve ardışık basamakların dönüşümü şifreleme durumu sırasında değişir.

S: Ne tür anahtarlar kullanır?


C: Akış şifreleri çok daha küçük ve kullanışlı kriptografik anahtarlar kullanır, örneğin 128 bit anahtarlar.

S: Anahtar dizisini nasıl oluşturur?


C: Anahtar dizisi, tek seferlik ped şifreleme algoritmasına benzer bir şekilde, kullanılan kriptografik anahtara dayalı olarak oluşturulur. Ancak, anahtar dizisi sözde rastgele olduğundan ve gerçekten rastgele olmadığından, tek seferlik ped ile ilişkili güvenlik uygulanamaz.

S: Neden aynı başlangıç durumunu asla iki kez kullanmamalısınız?


C: Aynı başlangıç durumunun iki kez kullanılması, saldırganların kriptografik anahtarınızı bilmeden veya ona erişmeden verilerin şifresini çözmesini kolaylaştıracağından ciddi güvenlik sorunlarına yol açabilir.

S: Akış şifrelerinin kullanımıyla ilgili herhangi bir risk var mıdır?


C: Evet, yanlış kullanılırsa veya uygun önlemler alınmazsa, akış şifrelerinin kullanılmasıyla ilgili riskler vardır, çünkü doğru şekilde kullanılmazlarsa tamamen güvensiz olabilirler.

AlegsaOnline.com - 2020 / 2023 - License CC3