SPIS GENEROWANIE I PRZECHOWYWANIE KLUCZY

Bezpieczeństwo algorytmu spoczywa na kluczu, więc proces generowania kluczy musi być kryptograficznie mocny. W przypadku algorytmów symetrycznych generowanie kluczy może być zrealizowane za pomocą rzucania monetą, lub kostką. Znacznie trudniejsze jest generowanie kluczy w algorytmach asymetrycznych - klucze są tu dużo dłuższe i zazwyczaj wygenerować trzeba dużo więcej bitów losowych niż się ostatecznie znajdzie w kluczu. Ponadto, zwykle potrzebujemy wiele takich kluczy. Tym samym klucze te muszą być wygenerowane elektronicznie przez generator ciągów losowych lub pseudolosowych. Długość klucza zależy od tego w jakim celu ma być użyty, im dłuższy tym ciężej go złamać.

Bardzo ważne jest to aby klucze powstawały i były przechowywane w bezpiecznych miejscach. Istnieje kilka możliwości pozwalających na spełnienie tego warunku:

  • klucz powinien powstawać na komputerze odciętym od sieci a użytkownik musi mieć pełne zaufanie co do zainstalowanego na nim software'u,
  • klucz prywatny powinien być generowany przez przeznaczony do tego celu hardware (urządzenie kryptograficzne),
  • klucz może być wygenerowany na specjalnym serwerze sieciowym. W tym przypadku komunikacja pomiędzy serwerem i użytkownikiem musi być specjalnie zabezpieczona (m.in. przez podpis cyfrowy serwera i szyfrowanie kluczami publicznymi użytkownika i serwera).

Klucz główny może być przechowywany przy pomocy urządzenia kryptograficznego, SmartCard lub zapamiętany przez użytkownika. Można go też podzielić na kilka części i przechowywać każdą z nich w inny sposób. Ponieważ jednak w praktyce jest konieczne korzystanie z dużej liczby kluczy jednocześnie, nie jest możliwe zabezpieczenie ich w żaden z tych sposobów. W tej sytuacji najprostszym sposobem przechowywania kluczy jest wykorzystanie master key i zaszyfrowanie za jego pomocą pozostałych kluczy. W zaszyfrowanej postaci klucze te mogą być bez obaw przechowywane na dysku. Musimy zachować ostrożność jedynie w przypadku korzystania z takich kluczy. Najbezpieczniej jest wtedy skorzystać z urządzenia kryptograficznego. W celu zaszyfrowania tekstu przy pomocy tak zabezpieczonego klucza K postępujemy następująco [21]:

  1. Przesyłamy kryptogram klucza K do urządzenia kryptograficznego.
  2. Za pomocą master key odczytujemy klucz K z jego kryptogramu.
  3. Porcjami wczytujemy do urządzenia kryptograficznego tekst jawny, który ma być zaszyfrowany za pomocą K. Jest on szyfrowany wewnątrz urządzenia za pomocą klucza K i znów porcjami wysłany na zewnątrz.
  4. Na koniec K należy wymazać z wewnętrznej pamięci urządzenia kryptograficznego.

Należy pamiętać ze utrata klucza jest poważnym problemem, gdyż w takim przypadku niedostępne stają się dane zaszyfrowane tym kluczem [21].



Strona główna  |  O mnie