CCM (kryptografia)

Z Wikipedii, wolnej encyklopedii
CCM
Rodzaj algorytmu

Szyfr blokowy

Autorzy

Russ Housley, Doug Whiting, Niels Ferguson

Wielkość bloku wejściowego

128 bitów

CCM – (ang. Counter with CBC-MAC) tryb pracy dla kryptograficznych szyfrów blokowych. Jest to uwierzytelniony algorytm szyfrowania zaprojektowany w celu zapewnienia uwierzytelniania i poufności. Tryb CCM jest zdefiniowany tylko dla szyfrów blokowych o długości 128 bitów.

Szyfrowanie i uwierzytelnianie[edytuj | edytuj kod]

Jak sama nazwa wskazuje, tryb CCM łączy licznikową metodę szyfrowania z dobrze znanym trybem uwierzytelniania CBC-MAC. Kluczowym elementem jest to, że ten sam klucz szyfrowania może być stosowany dla obu tych metod, pod warunkiem, że wartości licznika używane w szyfrowaniu nie kolidują z wektorem inicjującym używanym w procesie uwierzytelniania. Istnieje dowód bezpieczeństwa dla tej kombinacji, oparty na zabezpieczeniach podstawowych szyfru blokowego. Dowód odnosi się ponadto do generalizacji CCM dla każdej wielkości szyfru blokowego oraz dla każdej wielkości kryptograficznie silnej pseudolosowej funkcji.

Tryb CCM został zaprojektowany przez Russa Housleya, Douga Whitinga i Nielsa Fergusona. Podczas gdy tryb CCM był projektowany, Russ Housley był zatrudniony w RSA Laboratories.

Pomniejsza odmiana trybu CCM, zwana CCM*, jest stosowana w standardzie ZigBee. CCM* obejmuje wszystkie funkcje CCM i dodatkowo oferuje opcje zajmujące się jedynie szyfrowaniem i integralnością.

Wydajność[edytuj | edytuj kod]

CCM wymaga dwóch operacji szyfrowania blokowego na każdy blok szyfrowania i uwierzytelniania wiadomości i jednej operacji szyfrowania blokowego na każdy blok połączonych i uwierzytelnionych danych.

Patenty[edytuj | edytuj kod]

Kamieniem milowym dla rozwoju trybu CCM było włączenie trybu OCB do standardu IEEE 802.11i. Powstał sprzeciw dotyczący włączenia trybu OCB, ponieważ długo oczekiwano na rozpatrzenie wniosku patentowego na algorytm. Włączenie opatentowanego algorytmu oznaczało znaczne komplikacje licencyjne dla twórcy implementacji tego standardu.

Podczas gdy włączenie trybu OCB było kwestionowane ze względu na zagadnienia własności intelektualnej, uzgodniono, że uproszczenie zapewnione przez uwierzytelniony system szyfrowania jest pożądane. Dlatego też Housley opracował tryb CCM jako potencjalną alternatywę, która nie została obciążona patentami.

Pomimo że tryb CCM jest mniej wydajny niż tryb OCB, wolne od patentów rozwiązanie było lepsze niż skomplikowany w kwestii licencjonowania patent. Dlatego tryb CCM zaczął stawać się obowiązkowym elementem standardu IEEE 802.11i, a tryb OCB został zdegradowany do statusu opcjonalnego komponentu.

Przypisy[edytuj | edytuj kod]

Linki zewnętrzne[edytuj | edytuj kod]