Atak z wybranym szyfrogramem
Atak typu chosen-ciphertext attack (CCA) jest modelem ataku dla kryptoanalizy, w którym kryptoanalityk zbiera informacje, przynajmniej częściowo, poprzez wybór szyfrogramu i uzyskanie jego deszyfracji pod nieznanym kluczem.
Gdy kryptosystem jest podatny na atak typu chosen-ciphertext, implementatorzy muszą uważać, aby uniknąć sytuacji, w których atakujący mógłby być w stanie odszyfrować wybrane szyfrogramy (tj. uniknąć dostarczenia schematu deszyfrowania). Może to być trudniejsze niż się wydaje, ponieważ nawet częściowo wybrane szyfrogramy mogą pozwolić na subtelne ataki. Dodatkowo, niektóre kryptosystemy (takie jak RSA) używają tego samego mechanizmu do podpisywania wiadomości i do ich odszyfrowywania. Pozwala to na ataki, gdy haszowanie nie jest stosowane do wiadomości, która ma być podpisana. Lepszym podejściem jest użycie kryptosystemu, który jest sprawdzalnie bezpieczny w przypadku ataku na wybrany szyfrogram, w tym (między innymi) RSA-OAEP, Cramer-Shoup i wiele form uwierzytelnionego szyfrowania symetrycznego.
Odmiany ataków typu "chosen-ciphertext
Ataki typu wybrany-szyfrogram, podobnie jak inne ataki, mogą być adaptacyjne lub nieadaptacyjne. W ataku nieadaptacyjnym, atakujący wybiera szyfrogram lub szyfrogramy do odszyfrowania z wyprzedzeniem i nie używa otrzymanych w ten sposób tekstów jawnych do informowania o swoim wyborze kolejnych szyfrogramów. W adaptacyjnym ataku z wybranym szyfrogramem, atakujący dokonuje wyboru szyfrogramu adaptacyjnie, to znaczy w zależności od wyniku wcześniejszych deszyfracji.
Ataki w porze lunchu
Szczególną odmianą ataku typu "chosen-ciphertext" jest atak typu "lunchtime" lub "midnight", w którym atakujący może wykonywać adaptacyjne zapytania typu "chosen-ciphertext", ale tylko do pewnego momentu, po którym musi wykazać się zwiększoną zdolnością do zaatakowania systemu. Termin "atak w porze lunchu" odnosi się do idei, że komputer użytkownika, z możliwością odszyfrowania, jest dostępny dla atakującego, podczas gdy użytkownik jest na lunchu. Ta forma ataku była pierwszą powszechnie omawianą: oczywiście, jeśli atakujący ma możliwość wykonywania adaptacyjnie wybranych zapytań do szyfrogramu, żadna zaszyfrowana wiadomość nie będzie bezpieczna, przynajmniej dopóki ta możliwość nie zostanie odebrana. Atak ten jest czasami nazywany "nieadaptacyjnym atakiem na wybrane szyfrogramy"; tutaj, "nieadaptacyjny" odnosi się do faktu, że atakujący nie może dostosować swoich zapytań w odpowiedzi na wyzwanie, które jest podawane po wygaśnięciu zdolności do wykonywania wybranych zapytań szyfrogramowych.
Wiele ataków typu "chosen-ciphertext" o praktycznym znaczeniu to ataki typu "lunchtime", w tym na przykład taki, w którym Daniel Bleichenbacher z Bell Laboratories zademonstrował praktyczny atak na systemy wykorzystujące PKCS#1; wynaleziony i opublikowany przez RSA Security.
Adaptacyjny atak z użyciem wybranego szyfrującego tekstu
(Pełny) adaptacyjny atak na szyfrogramy jest atakiem, w którym szyfrogramy mogą być wybierane adaptacyjnie przed i po podaniu atakującemu szyfrogramu wyzwania, z JEDNYM warunkiem, że szyfrogram wyzwania nie może być odpytywany. Jest to silniejsze pojęcie ataku niż atak w porze lunchu i jest powszechnie nazywane atakiem CCA2, w porównaniu do ataku CCA1 (w porze lunchu). Niewiele praktycznych ataków ma taką formę. Model ten jest raczej ważny ze względu na jego zastosowanie w dowodach bezpieczeństwa przeciwko atakom typu chosen-ciphertext. Dowód, że ataki w tym modelu są niemożliwe implikuje, że żaden praktyczny atak na wybrany szyfrogram nie może być przeprowadzony.
Do kryptosystemów, których bezpieczeństwo przed atakami typu adaptive chosen-ciphertext zostało potwierdzone, należą system Cramer-Shoup i RSA-OAEP.
Powiązane strony
- Atak tylko na szyfrogram
- Atak z wykorzystaniem wybranych podszeptów
- Atak typu "znany tekst" (ang. known-plaintext attack)
Pytania i odpowiedzi
P: Co to jest atak typu chosen-ciphertext?
O: Atak na wybrany szyfrogram (CCA) to model ataku na kryptoanalizę, w którym kryptoanalityk zdobywa informacje, przynajmniej częściowo, wybierając szyfrogram i uzyskując jego odszyfrowanie pod nieznanym kluczem.
P: Dlaczego implementatorzy muszą uważać, aby uniknąć sytuacji, w których atakujący mogliby odszyfrować wybrane szyfrogramy?
O: Gdy kryptosystem jest podatny na atak typu chosen-ciphertext, implementatorzy muszą uważać, aby uniknąć sytuacji, w których atakujący mogą być w stanie odszyfrować wybrane szyfrogramy (tj. unikać dostarczania schematu deszyfrowania), ponieważ nawet częściowo wybrane szyfrogramy mogą umożliwić subtelne ataki.
P: Które kryptosystemy są podatne na ataki, gdy na podpisywanej wiadomości nie stosuje się haszowania?
O: Niektóre kryptosystemy (takie jak RSA) wykorzystują ten sam mechanizm do podpisywania wiadomości i do ich odszyfrowywania. To pozwala na ataki, gdy hashowanie nie jest stosowane w podpisywanej wiadomości.
P: Jakie jest lepsze podejście, aby uniknąć ataków w modelu ataku na wybrany szyfrogram?
O: Lepszym podejściem jest użycie kryptosystemu, który jest w sposób udowodniony bezpieczny przy ataku typu chosen-ciphertext, w tym (między innymi) RSA-OAEP, Cramer-Shoup i wiele form uwierzytelnionego szyfrowania symetrycznego.
P: Co oznacza skrót RSA-OAEP?
O: RSA-OAEP oznacza RSA Optimal Asymmetric Encryption Padding.
P: Jaka jest jedna z konsekwencji podatności kryptosystemu na atak typu chosen-ciphertext?
O: Jedną z konsekwencji tego, że kryptosystem jest podatny na atak typu chosen-ciphertext jest to, że implementatorzy muszą uważać, aby uniknąć sytuacji, w których atakujący mogliby odszyfrować wybrane szyfrogramy (tzn. unikać dostarczania schematu deszyfrowania).
P: Na jakie ataki mogą pozwolić częściowo wybrane szyfrogramy?
O: Częściowo wybrane szyfrogramy mogą pozwolić na subtelne ataki.