V
E
E
66
■liii
Aby zaszyfrować ciąg mx,..., mu bloków tekstu otwartego, Alicja przyjmuje
h = IV,
oraz dla 1 ^ j ^ u:
I- Ojf = Elc(Ij),
2. jako tj ciąg składający się z r początkowych bitów Oj,
3. Cj = mj © tj,
4. Ij+\ = 2rlj + Cj mod 2", a więc tworzy Ij+\, usuwając r początkowych bito* i dopisując na końcu 9.
Kryptogramem jest ciąg c\,ci,... ,cu.
Rozszyfrowywanie odbywa się w podobny sposób. Bolek przyjmuje
oraz dla 1 ^ j ^ u:
1. Oj: = Eję(Ij),
2. jako tj ciąg składający się z r początkowych bitów Oj,
3. mj — Cj © tj,
4. Ij+l = 2rIj + Cj mod 2".
Oboje, Alicja i Bolek, mogą obliczyć blok tj+l klucza, gdy tylko poznają bl#
kryptogramu. Zatem blok t\ klucza może być obliczony jednocześnie przez Alicję r ka. Alicja generuje wtedy blok cj — mx © tx kryptogramu i wysyła go Bolkowi. * czenie cx jest szybkie, gdyż wymaga tylko funkcji XOR. Następnie Alicja i Bolek" jednocześnie obliczyć blok ^ klucza itd.
Przykład 3.8.5. Bierzemy szyfr blokowy, tekst otwarty i klucz z przykładu 3.8. ustalamy długość bloków r = 3. Blokami tekstu otwartego są
mj = 100, ffl3 = 010, mĄ — 100, 015 = 101.
Bierzemy wektor początkowy
iejsza jest dh; strony transi musi być uż> i transmisji i s f trybie CFB błęd\ *oću kryptogram systemach kryp tego samego kl
± 3.4) jest bard; ny szyfru bloko’ I ■- oraz wektora p tatą klucza e, ton **nie przyjmuje d
jako tj ciąg skł;
[j+1 = Oj. ów rozszyfrow]
V © tj.
/i=/v
Tl =
1 2 2 3
3 4
4 1
IV = 1010.
Przebieg szyfrowania w trybie CFB jest pokazany w następującej tablicy.
i |
ij |
Oj |
mj |
cj | |
1 |
1010 |
0101 |
010 |
101 |
111 |
2 |
0111 |
1110 |
111 |
100 |
on |
3 |
1011 |
0111 |
011 |
010 |
001 |
4 |
1001 |
0011 |
001 |
100 |
101 |
5 |
1101 |
1011 |
101 |
101 |
000 |
bitów