Klucz sesji to jednorazowy klucz symetryczny używany do szyfrowania wszystkich wiadomości w jednej sesji komunikacyjnej. Ściśle powiązanym terminem jest klucz szyfrowania ruchu lub TEK, który odnosi się do dowolnego klucza symetrycznego używanego do szyfrowania wiadomości o ruchu. Zazwyczaj TEK jest często zmieniany, w niektórych systemach codziennie, a w innych dla każdej wiadomości.
Klucze sesyjne wprowadzają złożoność do kryptosystemu. Pomagają one jednak również w rozwiązywaniu niektórych rzeczywistych problemów, dlatego też są one wykorzystywane. Istnieją dwa podstawowe powody korzystania z kluczy sesyjnych:
- Po pierwsze, kilka ataków kryptoanalitycznych staje się łatwiejsze, ponieważ dostępnych jest więcej szyfrogramów zaszyfrowanych konkretnym kluczem. Dzięki ograniczeniu liczby wiadomości zaszyfrowanych jednym kluczem ataki te są trudniejsze.
- Po drugie, wiele innych, skądinąd dobrych algorytmów szyfrujących wymaga, aby klucze były bezpiecznie dystrybuowane przed zastosowaniem szyfrowania. Wszystkie symetryczne tajne algorytmy klucza mają tę niepożądaną właściwość. Istnieją inne algorytmy, które nie wymagają bezpiecznej dystrybucji tajnych kluczy, ale są zbyt powolne, aby były praktyczne do szyfrowania długich wiadomości (patrz Kryptografia klucza publicznego). Użycie jednego z tych "asymetrycznych" algorytmów do dystrybucji zaszyfrowanego tajnego klucza dla innego, szybszego, symetrycznego algorytmu klucza, może znacznie poprawić ogólną wydajność.
Jak wszystkie klucze kryptograficzne, klucze sesji muszą być tak dobrane, aby były nieprzewidywalne przez napastnika. W zwykłym przypadku oznacza to, że muszą być one wybierane losowo. Nieprawidłowy wybór kluczy sesyjnych (lub jakiegokolwiek klucza) jest główną wadą każdego kryptosystemu.