Podręcznik
5. Szyfry i kryptografia
5.13. Uwagi końcowe
Realizacja systemów kryptograficznych: Systemy kryptograficzne można realizować programowo, sprzętowo lub w sposób mieszany czyli częściowo sprzętowo częściowo programowo. Na ogół uważa się, że im więcej specjalizowanego sprzętu , tym system jest bezpieczniejszy. Współczesne profesjonalne systemy kryptograficzne są z reguły realizowane sprzętowo, wewnątrz specjalizowanych układów szyfrujących. Są to na ogół układy scalone typu ASIC (Application Specific Integrated Circuit) lub układy typu PLD (Programmable Logic Design) . Zaszycie algorytmu kryptograficznego w układzie scalonym typu ASIC lub PLD nie stanowi współcześnie większego problemu.
Realizując systemy kryptograficzne trzeba zwracać uwagę na zastrzeżenia eksportowe i patenty np. szyfr z kluczem publicznym RSA jest opatentowany w obu wersjach podstawowej i uogólnionej.
Probabilistyczne systemy kryptograficzne: Jak uwzględnić losowość w szyfrowaniu. W pewnych algorytmach kryptograficznych takich jak np. algorytm z kluczem publicznym ElGamela (z uwagi na losowość „wmontowaną” w algorytm), ustalonej jednostce tekstu jawnego mogą odpowiadać różne szyfrogramy. Tak więc jeśli G jest zbiorem skończonym lub przeliczalnym a (G,2G , P) przestrzenią probabilistyczną, to blokowe przekształcenie szyfrujące definiujemy jako f :V1l1 G V2 l2 dodając warunek, że
f (, g) :V1l1 V2 l2 jest funkcją różnowartościową
Informacja o wybranym w losowy sposób g G albo nie jest istotna przy deszyfrowaniu (alternatywnie np. możemy ustalonej jednostce tekstu przyporządkowywać różne szyfrogramy) albo jest zawarta w samym szyfrogramie, wbudowana w szyfrogram (tak jest np. w systemie kryptograficznym ElGamala).
Ogólnie rzecz biorąc funkcja E z definicji systemu kryptograficznego może być funkcją E : M K H C , gdzie H jest dowolnym skończonym zbiorem a (H ,2H , P) jest pewną przestrzenią probabilistyczną.
Istota rzeczy: Fakt losowej zmienności kryptogramu dla tej samej wiadomości jawnej bez wątpienia utrudnia kryptoanalizę.