Zasada Kerckhoffsa – jedna z podstawowych zasad współczesnejkryptografii, sformułowana w XIX wieku przez holenderskiego kryptologaAugusta Kerckhoffsa. Zasada ta mówi, żesystem kryptograficzny powinien być bezpieczny nawet wtedy, gdy wszystkie szczegóły jego działania – opróczklucza – są znane.
Zasadę Kerckhoffsa spełniają praktycznie wszystkie współcześnie stosowane algorytmy szyfrujące (RSA,AES i inne), których specyfikacje są w pełni jawne. Algorytmy te są uważane za dobrze zbadane i bezpieczne. Bezpieczeństwo zaszyfrowanej wiadomości zależy tylko od bezpieczeństwa klucza szyfrującego (zakładając, że intruz nie ma technicznych możliwości złamania szyfrumetodą brute force).
Utajnienie szczegółówalgorytmu szyfrującego może znacząco utrudnić jegokryptoanalizę, ale tylko wówczas, gdy algorytm jest wykorzystywany w ściśle ograniczonym środowisku, które uniemożliwi łatwe ujawnienie algorytmu. Na przykład większość szyfrów stosowanych na świecie do ochrony informacji na szczeblu rządowym to algorytmy niejawne (np. polski szyfrNASZ).
Z drugiej strony większość niejawnych algorytmów, które wprowadzano na rynek w celach komercyjnych i na skalę masową, stosunkowo szybko została ujawniona i złamana (np. szyfrDVD-CSS).