Szyfr strumieniowy: Różnice pomiędzy wersjami
[wersja nieprzejrzana] | [wersja nieprzejrzana] |
+ de: en: |
poprawione linki na przekierowania: Szyfr symetryczny na Kryptografia symetryczna |
||
Linia 1: | Linia 1: | ||
'''Szyfr strumieniowy''' (''stream cipher'') to [[szyfr symetryczny]], który koduje generując potencjalnie nieskończony strumień szyfrujący (''keystream''), i XOR-ując go z wiadomością: |
'''Szyfr strumieniowy''' (''stream cipher'') to [[Kryptografia symetryczna|szyfr symetryczny]], który koduje generując potencjalnie nieskończony strumień szyfrujący (''keystream''), i XOR-ując go z wiadomością: |
||
:<math>C_i = S_i \oplus M_i</math> |
:<math>C_i = S_i \oplus M_i</math> |
||
Wersja z 06:58, 5 wrz 2005
Szyfr strumieniowy (stream cipher) to szyfr symetryczny, który koduje generując potencjalnie nieskończony strumień szyfrujący (keystream), i XOR-ując go z wiadomością:
Odszyfrowywanie zakodowanej wiadomości odbywa się w identyczny sposób – generujemy strumień szyfrujący, i XOR-ujemy go z szyfrogramem:
Istnieją szyfry strumieniowe oparte na generatorach liczb pseudolosowych – jeśli generator jest kryptograficznie silny, to seed generatora może służyć jako klucz, a generowany strumień pseudolosowych liczb jako strumień szyfrujący. Blum Blum Shub jest przykładem generatora, dla którego (co rzadkie w kryptografii) istnieje dowód, że złamanie go jest co najmniej równie trudne jak rozbicie liczby stanowiącej klucz na czynniki.
Szyframi strumieniowymi są też tryby CFB, OFB i CTR szyfrów blokowych. Generują one z samego klucza i z wektora inicjalizującego (nie korzystając z danych) strumień szyfrujący, po czym XOR-ują go z danymi.