Čtvrt století standardizace v oblasti kryptografie

Standardizace šifrovacích algoritmů od přelomu tisíciletí

Díky výrazné změně politické situace v devadesátých letech přestala být kryptografie doménou špiónů a vývoj technologií umožnil využití těchto přístupů v oblasti vědy a obchodu. Pro usnadnění tak bylo nutné zajistit odpovídající standardizaci. Tento článek se snaží o sumarizaci standardizačních aktivit.

Standardizační aktivity v oblasti kryptografie

V průběhu konce dvacátého a začátku jednadvacátého století se objevilo několik standardizačních soutěží, které mělo dopad na kryptografii a její implementaci. Ať se jedná o algoritmy DES (který vznikl podstatně dříve) a AES, hash funkce SHA-1, SHA-2, SHA-3, nebo v současnosti Post Quantum Cryptography či LightWeight Cryptography. Vše jsou reakce průmyslu a obchodu s cílem zajistit důvěrnost, neporušenost, důvěryhodnost a pravost komunikace.
V oblasti standardizace byly z dob studené války vedoucí dvě země, jednalo se o západní blok, představovaný USA a jeho spojenci, oproti nim pak stál východní blok a jeho satelity. Zpočátku se jednalo o algoritmy určené pro vojenskou komunikaci a státní tajemství. Po zklidnění mezinárodních vztahů došlo k využití těchto nástrojů v obchodě, průmyslu a službách. Bohužel, v současnosti značné množství organizací přehlíží lekce z této doby. Přesněji, důvěrnost nezajišťuje integritu ani autenticitu zprávy. Stejně tak se v oblasti IT zapomíná na Kerckhoffova pravidla. Jedno z nich už přes 150 let tvrdí: "Kryptografie musí být bezpečná a snadno použitelná, nesmí vyžadovat zvýšenou intelektuální zátěž".

USA

V oblasti kryptografie má standardizace ve Spojených státech dlouhou tradici. Příkladem je slavná "Duhová série" knih o bezpečnosti (rainbow series) ze kterých se následně vyvinuly Common Criteria. Velké množství těchto pravidel vzniklo v armádě a bylo během let zveřejněno např. institutem NIST, případně došlo k jejich standardizaci a začali se na federální úrovni označovat zkratkou FIPS.
Standardizační institut spolupracuje s NSA, která zajišťuje bezpečnost komunikací vládní organizace. Bohužel ne vždy je spolupráce s touto organizací vnímána kladně. V historii došlo k několika problémům, díky kterým je vztah k NSA přinejmenším ambivalentní (ECB mód, DES a 3DES, Dual EC_DRBG, Simon&Speck) a některé postupy lze označit termínem kleptografie. Na druhou stranu pro rozvoj bezpečnosti a kryptografie přes všechny uvedené neduhy NSA udělala obrovský kus práce.

DES (Digital Encryption Standard, USA)

Jedním z prvních standardů byl algoritmus DES (FIPS 146), který byl vyvinut ve společnosti IBM. Za vývojem tohoto algoritmu stál Horst Feistel, který vyvíjel původní algoritmus Lucifer již v průběhu druhé poloviny šedesátých let. Začátkem roku 1970 se rozhodlo o jeho publikaci a protože se přibližně v té době objevil požadavek na šifrovací standard, IBM a NSA navázaly úzkou spolupráci. Díky této spolupráci se algoritmus dále vyvíjel ale došlo i k výrazné vlastností algoritmu. Výsledkem byl algoritmus DES, který byl následně v roce 1977 standardizován. Později byl z důvodu přiliš krátkého klíče implementován ještě algoritmus 3DES. Ten využíval několika průchodů skrze algoritmus DES, pokaždé s jiným klíčem. Díky tomu došlo k jakémusi prodloužení klíčového materiálu buď formou tří šifrování a tří klíčů, nebo dvou klíčů a módu EDE (šifrování-dešifrování-šifrování). V roce 2004 byl algoritmus DES prohlášen za zastaralý, okolo roku 2017 byly obecně všechny 64b algoritmy označeny za překonané z důvodu útoku Sweet32. Od 1. ledna 2024 se nesmí ani DES ani 3DES již nadále používat.

SHA (SHA0, SHA 1, Secure Hash Algorithm, USA)

V tomto případě se nejednalo o soutěž, algoritmus SHA (SHA-0 / FIPS 180) byl navržen v letech 1992 organizací NSA a v roce 1993 standardizován. Vzhledem k nalezeným zranitelnostem došlo k modifikacím uvedeného algoritmu a v roce 1994 organizace NSA navrhla jeho nástupce SHA1 (FIPS 180-1 a později i FIPS 180-2). Ten byl o rok později standardizován. V obou případech byla použita architektura Merkle–Damgård. Algoritmus má omezení délky vstupu a hash neobsahuje informaci o této délce, proto je možné zaútočit pomocí prodlužování hashovaného textu.

AES (Advanced Encryption Standard, USA)

Na základě výrazného komunitního rozvoje a kritiky kryptografických algoritmů poskytovaných NSA došlo poprvé k veřejné soutěži o nový standard nazvaný AES (FIPS 197). Co bylo příčinou tohoto zadání je patrně na dlouhou diskusi, každopádně se jednalo o vynikající tah. Došlo k soupeření kryptologů téměř z celého světa, soutěž byla prakticky zdarma, standard byl propagován už samotnou soutěží. Zároveň se účinně eliminovalo podezření na případná zadní vrátka, protože je velice náročné takové věci podsunout do existujících algoritmů. Zároveň se jednalo o první americkou standardizační soutěž, kterou kdy vyhrál neameričan (Joan Daemen a Vincent Rijmen). Organizace NIST vydala v roce 2017 ekonomickou analýzu dopadů a možný ekonomický dopad algoritmu se odhaduje okolo 250 triliónů USD. Seznam soutěžících je v této tabulce:

AlgoritmusRound 1FinalistéVítěz
CAST-256ano--
CRYPTONano--
DEALano--
DFCano--
E2ano--
FROGano--
HPCano--
LOKI97ano--
MAGENTAano--
MARSanoano-
RC6anoano-
RijndaelanoanoAES
SAFER+ano--
Serpentanoano-
Twofishanoano-

SHA-2 (Secure Hash Algorithm, USA)

Opět se nejednalo o soutěž, algoritmus SHA2 byl navržen v letech 1999-2001 organizací NSA a v roce 2002 standardizován. V té době ještě nebyly výsledky soutěže algoritmu AES a probíhaly stále snahy vyhodnotit dopad a bezpečnost, proto byl patrně zvolen klasický postup. Stejně jako v případě SHA-1 se i v tomto případě jednalo o architekturu Merkle–Damgård. Návrh rozvíjel původní konstrukci SHA-1, rozšířil délku výstupu ze 160b na 256/384/512b, snažil se vypořádat s chybami původního návrhu a byl publikován pod názvem SHA2 (FIPS 180-2). Bohužel zde zůstala omezení maximální velikosti vstupu, nebo chybějící vliv délky vstupního textu na výstupní hash.

SHA-3 (Secure Hash Algorithm, USA)

Na základě úspěchu soutěže AES a hledání nové konstrukce hash funkce byla vypsána soutěž o nový hashovací standard. Existující veze SHA1/SHA2 měly některá omezení, na které bylo v komunitě poukazováno. Z uvedených důvodů byla opět vypsána mezinárodní soutěž, probíhající od roku 2009 do roku 2012. V roce 2014 došlo k uveřejnění nového standardu. Výsledkem byla hash funkce postavená na nové architektuře, označované jako Sponge function.
Jak si představit tuto "houbovou" funkci? Základem je vstupní paměť. Ta obsahuje část, označovanou jako zásobník, do druhé se vkládají vstupující texty. Nad vstupní pamětí se provádějí XOF (eXpendable Output Function) operace, které kombinují obsah paměti. Pokud si to představíme na modelu klasické mycí houby a nádoby s vodou, vždy když houbu namočíme do vody, naplníme ji vodou - vstupním textem. Její stlačení provede XOF a zahodí část dat, část vždy zůstane uvnitř. Poté, co houbou přeneseme všechnu vodu (data) z nádoby, můžeme ji pořádně vyždímat a to nám poskytně výstupní hash.
Výhercem této soutěže se tak stal algoritmus KECCAK, nadále označovaný jako SHA-3 (FIPS 202). Mimo této architektury došlo k tvorbě dalších zajímavých přístupů, jednou z nich byla konstrukce HAIFA, používaná např. v algoritmu Blake/Blake2/Blake3. Dále, jednalo se o druhou soutěž, kterou vyhrál neamerický tým. Shodou okolností se jednalo o stejný tým výherců jako u soutěže AES.

AlgoritmusSubmissionRound 1Round 2FinalistéVítězStatus
Abacusano---Stažen
ARIRANGano---Zamítnut
AURORAano---Zlomen
BLAKEanoanoano-Zamítnut
Blenderano---Zlomen
Blue Midnight Wishanoano--Zamítnut
Booleano---Stažen
CRUNCHano---Zamítnut
CubeHashanoano--Zamítnut
DCHano---Stažen
Dynamic SHAano---Zlomen
Dynamic SHA2ano---Zlomen
ECOHano---Zlomen
Edon-Rano---Zlomen
ECHOanoano--Zamítnut
EnRUPTano---Zlomen
ESSENCEano---Zlomen
FSBano---Zamítnut
Fugueanoano--Zamítnut
Grøstlanoanoano-Zamítnut
Hamsianoano-Zamítnut
HASH 2Xnot accepted----Removed
Cheetahano---Zlomen
CHIanoZamítnut
JHanoanoano-Zamítnut
KeccakanoanoanoSHA-3Standard
Khichidi-1ano---Stažen
LANEano---Zamítnut
Lesamntaano---Zamítnut
Luffaanoano--Zamítnut
LUXano---Zlomen
Maracanot accepted----Removed
MCSSHA-3ano---Zlomen
MD6ano---Zamítnut
MeshHashano---Stažen
NaSHAano---Zlomen
NKS 2Dnot accepted----Removed
Ponicnot accepted----Removed
SANDstormano---Zamítnut
Sarmalano---Zamítnut
Sgàilano---Zlomen
Shabalanoano--Zamítnut
SHAMATAano---Stažen
SHAvite-3anoano--Zamítnut
SIMDanoano--Zamítnut
Skeinanoanoano-Zamítnut
Spectral Hashano---Zlomen
StreamHashano---Stažen
SWIFFTXano---Zamítnut
Tangleano---Stažen
TIB3ano---Zamítnut
Twisterano---Zlomen
Vortexano---Zlomen
WaMMano---Stažen
Waterfallano---Stažen
ZK-Cryptnot accepted----Removed

LWC (LightWeight Cryptography, USA)

Soutěž v oblasti lehké kryptografie pokrývala specifické požadavky na šifrovací algoritmy, určené pro systémy s omezenými zdroji. Pod tímto termínem se skrývá nízký výkon nebo malé schopnosti procesoru, malá paměť, nedostatečné vstupy náhodnosti nebo chybějící kryptoakcelerátory. Může se jednat o internet věcí, průmyslové systémy, platební či přístupové karty atd. I tato zařízení potřebují zajistit akceptovatelným způsobem ochranu komunikace, ale dostupné zdroje na standardní algoritmy nemusí stačit. Z uvedeného důvodu došlo v roce 2018 k vypsání této soutěže a v roce 2023 došlo k zveřejnění výherců. V současnosti je uveřejněn draft pro nový standard. Výhercem této soutěže se stal algoritmus ASCON (NIST SP 800-232), který poskytuje odpovídající ochranu i pro zařízení s takto omezenými schopnostmi. Zajímavostí je, že tento algoritmus byl zároveň výhercem evropské soutěže CAESAR (viz. dále)

AlgoritmusRound 1Round 2Vítěz
ACEZamítnut-
ASCONASCON
Bleep64Zamítnut--
CiliPadiZamítnut--
CLAEZamítnut--
CLXZamítnut--
COMETZamítnut-
DryGASCONZamítnut-
ElephantElephant
ESTATE--
FlexAEADZamítnut--
ForkAEZamítnut-
FountainZamítnut--
GAGE and InGAGEZamítnut--
GIFT-COFBGIFT-COFB
GimliZamítnut-
Grain-128AEADGrain-128AEAD
HERN&HERONZamítnut--
HYENAZamítnut-
ISAPISAP
KNOTZamítnut-
LAEMZamítnut--
Liliput-AEZamítnut--
LimdolenZamítnut--
LOTUS-AEAD and LOCUS-AEADZamítnut-
mixFeedZamítnut-
ORANGEZamítnut-
OribatidaZamítnut-
PHOTON-Beetle--
PyjamaskZamítnut-
QameleonZamítnut--
QuartetZamítnut--
REMUSZamítnut--
RomulusRomulus
SAEAESZamítnut-
SaturninZamítnut-
Shamash&ShamashashZamítnut--
SIMPLEZamítnut--
SIV-Rijndael256Zamítnut--
SIV-TEM-PHOTONZamítnut--
SKINNY-AEAD/SKINNY-HASHZamítnut-
SNEIKZamítnut--
SPARKLE (SCHWAEMM and ESCH)SPARKLE
SPIXZamítnut-
SpoCZamítnut-
SpookZamítnut-
Subterranean 2.0Zamítnut-
SUNDAE-GIFTZamítnut-
SyconZamítnut--
Thank Goodness It’s Friday (TGIF)Zamítnut--
TinyJambuTinyJambu
TriadZamítnut--
TRIFLEZamítnut--
WAGEZamítnut-
XoodyakXoodyak
Yarará and CoralZamítnut--

PQC (Post Quantum Cryptography, USA)

Od roku 2017 běží soutěž o nové standardy pro kryptografii odolnou kvantovým počítačům. Tato soutěž se v roce 2022 rozšířila o větev označovanou jako Additional Digital Signature Scheme, V současnosti jsou k dispozici první kryptografická schémata ML-KEM (FIPS 203), ML-DSA (FIPS 204) a SHL-DSA (FIPS 205). Ve fázi návrhu je standard FN-DSA (FIPS 206). Přestože jak z hlavní tak z vedlejší větve standardizace máme velké množství algoritmů pro digitální podpis, bohužel prozatím je k dispozici pouze jediný algoritmus pro domluvu na klíčích. Hledání alternativ v této oblasti je v současnosti jedním z důležitých cílů standardizačních institucí. Více o algoritmech, které jsou součástí uvedených výběrů v samostatném článku.

Evropa

NESSIE a eSTREAM byly dvě po sobě následující soutěže, které měly z hlediska kryptografie zajímavou souvislost. Důvod je jednoduchý, soutěž eSTREAM je přímým následníkem NESSIE. Důvodem bylo selhání všech soutěžících proudových šifer v soutěži NESSIE. Mimo uvedené dvě soutěže pod patronátem ECRYPT se v Evropě pořádaly dvě další, jednalo se o komunitní soutěže PHC a soutěž CAESAR.

NESSIE (New European Schemes for Signatures, Integrity, and Encryption, Evropa)

Projekt NESSIE byl vyhlášen v roce 2000 a uzavřen v roce 2003. Inspiroval se soutěží AES a zaměřoval se na hledání nových šifrovacích algoritmů pro Evropu. V případě proudových algoritmů ale narazil na značný problém nedostatečné úrovně vývoje. Prakticky všechny proudové šifry byly v průběhu soutěže vyloučeny a na základě získaných znalostí byl následně o rok později odstartován projekt eSTREAM. Díky tomuto projektu tak došlo k výraznému pokroku na poli proudových šifer. Projekt NESSIE zároveň akceptoval v průběhu soutěže nově zvolený algoritmus AES (výsledek soutěže v USA) pro použití v Evropě, stejně jako nově zvolený algoritmus CAMELLIA (výsledek Japonské soutěže CRYPTREC).

AlgoritmusSubmissionPhase 1Phase 2Vítězné
CS-Cipher (64b)Zamítnut--
Hierocrypt-L1 (64b)Zamítnut--
IDEA (64b)anoZamítnut-
Khazad (64b)anoZamítnut-
MISTY 1 (64b)anoMISTY-1
Nimbus (64b)Zamítnut--
Anubis (128b)Zamítnut--
Camellia (128b)anoCamellia
Grand Cru (128b)Zamítnut--
Hierocrypt-3 (128b)Zamítnut--
Noekeon (128b)Zamítnut--
Q (128b)Zamítnut--
SC2000 (128b)Zamítnut--
SHACAL (160b)SHACAL-1/SHACAL-2SHACAL-2
NUSH (variable lengtg)Zamítnut--
RC6 (variable lengtg)Zamítnut--
SAFER++ (variable lengtg)anoZamítnut-
BGML (stream)BGML 1Zamítnut-
Leviatan (stream)Zamítnut--
LILI-128 (stream)Zamítnut--
SNOW (stream)SNOW 2.0Zamítnut-
SOBER-t16 (stream)anoZamítnut-
SOBER-t32 (stream)anoZamítnut-
Two-Track-MAC (MAC)anoTwo-Track-MAC
UMAC (MAC)anoUMAC
Whirlpool (hash)anoWhirlpool
ACE Encrypt (KEM)anoACE-Ecnrypt
ECIES (KEM)anoZamítnut-
EPOC (KEM)EPOC-2Zamítnut-
PSEC (KEM)PSEC-KEMPSEC-KEM
RSA-OAEP (KEM)anoRSA-KEM
ACE Sign (DSA)Zamítnut--
ECDSA (DSA)anoECDSA
ESIGN (DSA)ESIGN-DZamítnut-
FLASH (DSA)Zamítnut--
QUARTZ (DSA)anoZamítnut-
RSA-PSS (DSA)anoRSA-PSS
SFLASH (DSA)SFLASHv2/SFALSHv3SFLASH
GPS (Asymmetric ID)GPSv2.0GPS

eSTREAM (ECRYPT Stream Cipher Project)

Následníkem soutěže NESSIE byl eSTREAM. Ten zahájil svoji činnosti 2004 a výsledky byly vyhlášeny již v roce 2008. Zaměřila se čistě na vývoj a volby v oblasti proudových algoritmů. Jedním z výsledků této soutěže byla i v současnosti velmi populární rodina algoritmů SALSA (Salsa/12, Salsa20, ChaCha/12 a ChaCha/20). Na jejím základě následně vznikla i skupina hash algoritmů Blake (architektura HAIFA).

AlgoritmusSubmissionRound 1Round 2FinalistiVítězství
ABC v3 (supersedes: ABC v1)Zamítnut--
Achterbahn-80 (also Achterbahn-128)Zamítnut--
CryptMT v3 (supersedes: CryptMT v1, Fubuki)Zamítnut-
DECIM v2 (supersedes: DECIM v1)Zamítnut-
DICING P2 (supersedes: DICING P1)Zamítnut--
DragonZamítnut-
Edon-80Zamítnut-
F-FCSR-HWidthraw----
F-FCSR-H (also F-FCSR-16; supersedes: F-FCSR)Zamítnut-
FrogbitZamítnut---
Grain v1 (supersedes: Grain v0)HardwareHardware
HC-128 (also HC-256)SoftwareSoftware
Hermes8Zamítnut--
LEXZamítnut-
MAGZamítnut---
MICKEY 2.0 (also MICKEY-128 v2)HardwareHardware
Mir-1Zamítnut---
MOUSTIQUE (supersedes: MOSQUITO)Zamítnut-
NLS v2 (supersedes: NLS v1)Zamítnut-
PhelixZamítnut--
Polar Bear v2 (supersedes: Polar Bear v1)Zamítnut--
POMARANCH v3 (supersedes: POMARANCH v1)Zamítnut-
PyZamítnut--
RabbitSoftwareSoftware
Salsa20/12 (also Salsa20/8, Salsa20)SoftwareSoftware
SFINKSZamítnut---
SOSEMANUKSoftwareSoftware
SSSZamítnut---
TRBDK3 YAEAZamítnut---
TriviumHardwareHardware
TSC-4 (supersedes: TSC-3)Zamítnut--
VEST P2 (supersedes: VEST P1)Zamítnut--
WG P2 (supersedes: WG P1)Zamítnut--
YambZamítnut---
ZK-Crypt P2 (supersedes: ZK-Crypt P1)Zamítnut--

PHC (Password Hashing Competition, Evropa)

Pro účely ověřování hesel se původně používala oddělená databáze s údaji v otevřené formě, následně se začal používat algoritmus DES pro symetrické šifrování. V té době zároveň vznikl crypt interface, jeho první použití je datováno do roku 1974. Použití hash funkcí pro jednosměrné ověřování byla záležitost osmdesátých let a devadesátých let. Jejich jednosměrnost byla výhodou oproti symetrickým šifrám. Bohužel s jejich použitím se zároveň objevily i útoky, které směřovaly jak na hash funce, tak na způsob jejich užití. Zpočátku se jednalo o využití pro hash funkcí pro tvorbu duhových tabulek (Rainbow table). V takovém případě dojde k předpočítání a díky tomu tak k výměně výpočetního času za diskový prostor, tím se výrazně urychlí útok. Naštěstí je využití duhových tabulek omezeno na úzké rozmezí možných vstupů a je možné se mu relativně snadno bránit použitím soli (parametr, generovaný pro každé jednotlivé heslo samostatně). Bohužel, hash funkce nejsou dokonalé a bylo potřeba přijít s dalšími metodami ochrany, které posunou útočníka mimo oblast rentability útoku. Prvním krokem byly složené hash funkce (HMAC), následně PBKDF2 nad hash funkcemi a nakonec se začala hledat speciální třída pomalých hash funkcí.
Speciální třída pomalých hash funkcí je schopná se bránit tvorbě duhových tabulek a má zvýšené nároky na paměť a procesor. Díky tomu se zvyšují náklady na útok za hranici, kterou útočník akceptuje. V roce 2013 došlo k vyhlášení soutěže PHC, která byla uzavřena o dva roky později. Cílem bylo zajistit standardizaci, nakonec ze spolupráce s autoritami sešlo. Přesto byl nalezen a obecně akceptován výherce, další byly algoritmy byly označeny za extrémně slibné. Celý přehled je v následujícím seznamu:

NázevSubmissionRound 1Round 2Finalisté
AntCryptZamítnut--
Argon and Argon2Vítěz
battcryptZamítnut-
CatenaZvláštní ocenění
CatfishNot accepted---
CentrifugeZamítnut--
EARWORMZamítnut--
GambitZamítnut--
LanareaZamítnut--
Lyra2Zvláštní ocenění
M3lcryptNot accepted---
MakwaZvláštní ocenění
MCS_PHSZamítnut--
Omega CryptZamítnut--
ParallelZamítnut-
PolyPassHashZamítnut--
POMELOZamítnut-
PufferfishZamítnut-
RIGZamítnut--
SchvrchZamítnut--
TortugaZamítnut--
TwoCatsZamítnut--
YarnZamítnut--
yescryptZvláštní ocenění

CAESAR (Competition for Authenticated Encryption: Security, Applicability, and Robustness, Evropa)

V roce 2012 byla oznámena a o rok později otevřena soutěž o nové algoritmy schopné zajistit autentizované šifrování. Vývoj v té oblasti ukázal na některé slabiny spojené s AE (Autenticated Encryption) a AEAD (Authenticated Encryption with Associated Data). To znamená šifrování, u kterého je možné prokázat nejenom důvěrnost, ale i autenticitu, tedy kdo tato data šifroval. Uvedená soutěž byla ukončena v roce 2019, ale její výsledky nedošly naplnění ve formě standardu. Soutež samotná je obtížně čitelná. Přesto výherce této soutěže zároveň vyhrál i soutěž NIST LWC. Seznam projektu CAESAR je uveden zde:

AlgoritmusSubmissionRound 1Round 2Round 3Round 4Round 5Finalisté
++AE1st round-----
ACORN2. místo / použití č.1
AEGIS-128------
AEGIS-128L1. místo / použití č.2
AEGIS-2561. místo / použití č.2
AES-CMCC1st round-----
AES-COBRAStažen-----
AES-COPACOLM2. místo / použití č.3
AES-CPFB1st round-----
AES-OTR---AES-OTR--
AEZ---AEZ--
Artemia1st round-----
ASCON1. místo / použití č.1
Avalanche1st round-----
CalicoStažen-----
CBA1st round-----
CBEAMStažen-----
CLOC and SILC---CLOC and SILC--
DEOXYS-I---DEOXYS-II1. místo / použití č.3
ElmDCOLM2. místo / použití č.3
Enchilada1st round-----
FASERStažen-----
HKCStažen-----
HS1-SIV--HS1-SIV---
ICEPOLE--ICEPOLE---
iFEED1st round-----
iSCREAM1st round-----
JAMBU---JAMBU--
Joltik--Joltik---
Julius1st round-----
Ketje---Ketje--
Keyak---Keyak--
KIASU1st round-----
LAC1st round-----
MarbleStažen-----
McMamboStažen-----
Minalpher--Minalpher---
MORUS2. místo / použití č.2
NORX---NORX
OCN
OMD--OMD---
PAEQ--PAEQ---
PAESStažen-----
PANDAStažen-----
POET--POET---
POLAWIS1st round-----
PRIMATEs--PRIMATEs---
Prøst1st round-----
Raviyoyla1st round-----
Sablier1st round-----
SCREAM--SCREAM---
SHELL--SHELL---
STRIBOB--STRIBOB---
Tiaoxin---Tiaoxin--
TriviA-ck--TriviA-ck---
Wheesht1st round-----
YAES1st round-----
Π-Cipher--Π-Cipher---

Japonsko

Japonsko má vlastní strukturu standardizace. Pro výběr využívá komisi CRYPTREC, která přihlíží i ke standardům dalších zemí.

CRYPTREC (Cryptography Research and Evaluation Committees, Japonsko)

Jedná se o je japonskou komisi, která prováděla vyhodnocování mechanismů poprvé v roce 2003. Uvedená aktivita se se opakovala i v letech 2013 a 2023 (zdá se, že vždy po 10 letech). Výsledky hodnocení jednotlivých šifrových algoritmů jsou publikovány a vytváří závazná pravidla pro japonský trh. Algoritmus Camellia (jeden z výherců) je navíc mezinárodně akceptován a částečně akcelerovatelný pomocí AES-NI instrukcí. Celý seznam je zde:

2003 2013 2023
Digitální podpis DSA DSA DSA
ECDSA ECDSA ECDSA
RSASSA-PKCS1v1.5 RSASSA-PKCS1v1.5 RSASSA-PKCS1v1.5
RSA-PSS RSA-PSS RSA-PSS
Výměna klíčů RSA-OAEP RSA-OAEP RSA-OAEP
RSAES-PKCS1-V1.5
Domluva na klíčích DH DH DH
ECDH ECDH ECDH
PSEC-KEM
Blokové šifry 64b CIPHERUNICORN-E
Hierocrypt-L1
MISTY1
3-key Triple DES 3-key Triple DES 3-key Triple DES
Blokové šifry 128b AES AES AES
Camellia Camellia Camellia
CIPHERUNICORN-A
Hierocrypt-3
SC2000
Módy blokových šifer CBC CBC
CFB CFB
CTR CTR
OFB OFB
AEAD módy CCM CCM
GCM GCM
Proudové šifry MUGI Kcipher-2 Kcipher-2
MULTI-S01
128-bit RC4
Zajištění integrity CMAC CMAC
HMAC HMAC
Ověření identity ISO/IEC 9798-2 ISO/IEC 9798-2
ISO/IEC 9798-3 ISO/IEC 9798-3
Hash RIPEMD-160
SHA-1
SHA-256 SHA-256 SHA-256
SHA-384 SHA-384 SHA-384
SHA-512 SHA-512 SHA-512
PRNG/CSPRNG ANSI X9.42-2001 Annex C.1 based on SHA1
FIPS 186-2 Appendix 3.1 based on SHA1
FIPS 186-2 revised Appendix 3.1 based on SHA1

Jižní Korea

Standardizace v Jižní Korei se vydala jinou cestou. Tato země se snaží propagovat svoje technologie pomocí produktů vyráběných na jejím trhu, zároveň podporuje obecně přijaté standardy. Z uvedeného důvodu produkty jejich firem podporují i národní algoritmy ARIA (spolupráce bezpečnostních složek a akademického prostředí) a SEED (bezpečnostní složky). Oba uvedené algoritmy jsou součástí např. SSL/TLS. Mimo uvedených algoritmů v tuto chvíli běží standardizace KpQC pro kryptografii odolnou kvantovým počítačům, která je vedená předními světovými odborníky.

KpqC competition (Korea Post Quantum Cryptography competition, Jižní Korea)

Jedná se o probíhající soutěž s cílem vybrat odpovídající algoritmy pro kryptografii odolnou kvantovým počítačům. Více o algoritmech, které jsou součástí uvedených výběrů v článku

Rusko

Ruská federace ještě z dob Svazu Sovětských Socialistických Republik udržuje standardy GOST (государственный стандарт / gosudarstvennyi standard). Jedná se o sadu standardů původně odpovídajícím požadavkům Sovětského svazu a do jisté míry i členů skupiny RVHP, v současnosti spíše Euroasijském výboru pro standardizaci (EASC - Euro-Asian Council for Standardization, Metrology and Certification), který působí v rámci Společenství nezávislých států (CIS - Commonwealth of Independent States) a EAEU (Euro-Asian Economic Union). V tuto chvíli zde existují standardy, ale není mi nic známo o soutěžích v této oblasti. I zde jsou akceptované algoritmy jako je AES a další. Zajímavostí v této oblasti je algoritmus Magma, který je vrstevníkem algoritmu DES.

StandardÚčelNázev
GOST 34.10–2018DSA
GOST 34.11–2018HashStreebog
GOST 34.12–2018Blokové šifryMagma, Kuznyechik
GOST 34.13–2018Módy operací blokových šiferECB, CTR, OFB, CBC, CFB, MAC (CMAC/OMAC)

Indie

Indie má v plánu vcelku rozsáhlý program věnující se kryptografii, ale bohužel jsem nebyl schopen najít žádné informace týkající se konkrétních soutěží, pokud probíhají. Roadmapa je k nahlédnutí zde.

Čína

Algoritmy rodiny ShāngMì byly navrženy a vyvinuty v centru pro zajištění bezpečné komunikace na Čínské akademií věd (CAS – Chinese Academy of Science, Data Assurance & Communication Security Center) a Kryptografickým testovacím centrem (Commercial Cryptography Testing Center, National Cryptography Administration). Cílem bylo navrhnout odpovídající metody ochrany zabezpečení komunikace s autentizace pro sítě využívající SSL/TLS a WiFi sítě, kde obavou byla možná zadní vrátka v existujících technologiích. Alespoň část těchto algoritmů byla přibližně v letech 2006 odtajněna a v roce 2016 se staly národními standardy.
Do uvedeného seznamu jsem přidal dva algoritmy, které zde nepatří. Jedná se o algoritmy ZUC, používaný v sítích 3G/4G/5G a standardizovaný 3GPP, dále pak algoritmus SSFF3. Rodina ShāngMì spolu s těmito algoritmy je tak v tuto chvíli používaná v širokém rozsahu aplikací, od WiFi, TLS, přes přístupové karty, komunikace s GPS Beidou, mobilní sítě a možná i v dalších, speciálních aplikacích.

Název Typ algoritmuDetaily Standardy
SM1/SCB2 Blokový blok=128b, klíč=128b
SM2 ECC křivka 256b, ekvivalent NIST P256 GM/T 0003, GB/T 32918, RFC 8998
SM3 Hash Výstup 256b, ekvivalent SHA256 GM/T 000č, GB/T 32905, RFC 8998
SM4 Blokový blok=128b, klíč=128b, ekvivalent AESGM/T 0002, GB/T 32907, RFC 8998
SM7 Blokový blok=64b, klíč=128b
SM9 ECC křivka 256b, ekvivalent NIST P256 ISO/IEC 11770-3, ISO/IEC 14888-3, ISO/IEC 18033-5,
IEEE 1363.3, GM/T 0044-2016, RFC 6508
ZUC/Zu Chongzhi Blokový šířka klíče 128b GM/T 0001-2016, 3GPP 35.222
SSFF3 Blokový

CACR PQC standardization (China Association for Cryptography Research: Post Quantum Cryptography standardization) a CACR cryptography standardization (China Association for Cryptography Research: Cryptography standardization)

V lednu 2020 došlo k publikaci čínských standardů věnujících se kryptografii odolné kvantovým počítačům. Zároveň byly publikovány i nové symetrické algoritmy. Uvedený materiál popisuje jak symetrické, tak kvantovým počítačům odolné algoritmy. Více o algoritmech odolných kvantovým počítačům, které jsou součástí uvedeného výběru je možné najít v článku.


CACR cryptography standardization (China Association for Cryptography Research: Cryptography standardization)

Čína se snaží projevit svoji nezávislost i v této oblasti. V nedávné době jsem narazil na informaci, že Rusko by mělo mít zájem na tomto vývoji spolupracovat, ale informací je málo a pro mne jsou obtížně čitelné. Více informací o soutěži lze najít na:
CACR cryptography standardization


Výherci: uBlock, Ballet, FESH, ANT, TANGRAM, RAINDROP, NBC, FBC, SMBA, SPRING

AlgoritmusVýsledek
ANTZvolen
BalletZvolen
BTWVyřazen
CFEVyřazen
CSEVyřazen
FBCZvolen
FESHZvolen
FluxVyřazen
JieAnVyřazen
NBCZvolen
PilotVyřazen
QVyřazen
RaindropZvolen
SMBAZvolen
SPRINGZvolen
SWANVyřazen
TANGRAMZvolen
TASS1Vyřazen
TASS2Vyřazen
TULIPVyřazen
TYBVyřazen
uBlockZvolen

Reference:

  1. DES: Data Encryption Standard (FIPS-46)
    Zdroj: https://www.nist.gov/
  2. TDES: Triple Data Encryption Standard (FIPS-46-3)
    Zdroj: https://www.nist.gov/
  3. NIST to Withdraw Special Publication 800-67 Revision 2
    Zdroj: https://www.nist.gov/
  4. SHA/SHA-0 - Secure Hash Function (FIPS-180)
    Zdroj: https://www.nist.gov/
  5. SHA-1 - Secure Hash Function (FIPS-180-1)
    Zdroj: https://www.nist.gov/
  6. SHA-2 - Secure Hash Function (FIPS-180-2)
    Zdroj: https://www.nist.gov/
  7. AES Competition
    Zdroj: https://www.nist.gov/
  8. AES: Advanced Encryption Standard (FIPS-197)
    Zdroj: https://www.nist.gov/
  9. The Economic Impacts of the Advanced Encryption Standard, 1996-2017
    Zdroj: https://www.nist.gov/
  10. SHA-2 - Secure Hash Function (FIPS-180-4)
    Zdroj: https://www.nist.gov/
  11. SHA-3 - Secure Hash Function (FIPS-202)
    Zdroj: https://www.nist.gov/
  12. LWC: Lightweight Cryptography
    Zdroj: https://www.nist.gov/
  13. PQC: PostQuantum Cryptography
    Zdroj: https://www.nist.gov/
  14. NESSIE: New European Schemes for Signatures, Integrity, and Encryption
    Zdroj: http://www.cosic.esat.kuleuven.be/
  15. eSTREAM: ECRYPT Stream Cipher Project
    Zdroj: http://www.ecrypt.eu.org/stream/
  16. PHC: Password Hashing Competition
    Zdroj: https://www.password-hashing.net/
  17. CAESAR: Competition for Authenticated Encryption: Security, Applicability, and Robustness
    Zdroj: https://competitions.cr.yp.to/
  18. RTTG: Russian GOST database
    Zdroj: https://www.russiangost.com/
  19. Cryptography Roadmap of India
    Zdroj: https://www.meity.gov.in/
  20. Korea Post-Quantum Cryptography competition
    Zdroj: https://kpqc.or.kr/
  21. CACR cryptography standardization
    Zdroj: https://www.cacrnet.org.cn/
  22. CQCR PQC standardization
    Zdroj: https://www.cacrnet.org.cn/
  23. CRYPTREC: Cryptography Research and Evaluation Committees
    Zdroj: https://www.cryptrec.go.jp/en/

Autor článku:

Jan Dušátko
Jan Dušátko

Jan Dušátko se počítačům a počítačové bezpečnosti věnuje již skoro čtvrt století. V oblasti kryptografie spolupracoval s předními odborníky např. s Vlastimilem Klímou, či Tomášem Rosou. V tuto chvíli pracuje jako bezpečnostní konzultant, jeho hlavní náplní jsou témata související s kryptografií, bezpečností, e-mailovou komunikací a linuxovými systémy.

1. Úvodní ustanovení

1.1. Tyto všeobecné obchodní podmínky jsou, není-li ve smlouvě písemně dohodnuto jinak, nedílnou součástí všech smluv týkajících školení, pořádaných nebo poskytovaných školitelem, Jan Dušátko, IČ 434 797 66, DIČ 7208253041, se sídlem Pod Harfou 938/58, Praha 9, zapsané u Úřadu městské části Praha 9 (dále jen „školitel“).
1.2. Smluvními stranami ve všeobecných obchodních podmínkách jsou míněni školitel a objednatel, kdy objednatel může být zároveň zprostředkovatelem smluvního vztahu.
1.3. Záležitosti, které nejsou upravené těmito obchodními podmínkami, se řeší podle Občanského zákoníků, tj. zákon č. 89/2012 Sb.

2. Vznik smlouvy přihlášením ke kurzu

2.1. Přihláškou se rozumí jednostranný úkon objednatele adresovaný školiteli prostřednictvím datové schránky s identifikací euxesuf, e-mailu na adresu register@cryptosession.cz nebo register@cryptosession.info, internetových stránek cryptosession.cz, cryptosession.info nebo kontaktním telefonem +420 602 427 840.
2.2. Odesláním přihlášky objednatel souhlasí s těmito všeobecnými podmínkami a prohlašuje, že se s nimi seznámil.
2.3. Přihláška se považuje za přijatou momentem potvrzení (stadnardně do 2 pracovních dní) školitelem nebo zprostředkovatelem. Toto potvrzení je zasláno do datové schránky nebo na kontaktní e-mail.
2.4. Standardní doba pro přihlášení je nejpozději 14 pracovních dní před konáním vzdělávací akce, pokud není uvedeno jinak. V případě fyzické nepodnikající osoby musí být objednávka alespoň 28 pracovních dní před konáním vzdělávací akce.
2.5. Na jednu přihláškou lze přihlásit i více než jednoho účastníka.
2.6. Pokud je více než 10 účastníků od jednoho objednatele, je možné se domluvit na školení v místě sídla zprostředkovatele nebo objednatele.
2.7. Přihlášky jsou přijímány a zpracovávány v pořadí, v jakém došly poskytovateli. Poskytovatel neprodleně informuje objednatele o všech skutečnostech. Těmi se míní naplnění kapacity, příliš nízký počet účastníků, nebo jiný závažný důvod, jako je nemoc lektora nebo zásah vyšší moci. Objednateli bude v tomto případě nabídnut nový termín, případně účast na jiné vzdělávací akci. V případě, že objednatel nebude s přesunutím či účastí na jiné nabídnuté vzdělávací akci souhlasit, poskytovatel mu vrátí účastnický poplatek. Nedostatečný účastníků je oznámen objednateli alespoň 14 dní před začátkem plánovaného termínu.
2.8. Smlouva mezi poskytovatelem a objednatelem vzniká odesláním potvrzení poskytovatelem objednateli.
2.9. Smlouvu lze změnit nebo zrušit pouze za splnění zákonných předpokladů a pouze písemně.

3. Zánik smlouvy zrušením přihlášky

3.1. Přihláška může být objednatelem zrušena pomocí e-mailu, nebo pomocí datové schránky.
3.2. Zákazník má právo stornovat svoji přihlášku na kurz 14 dní před konáním kurzu bez jakýchkoliv poplatků. Pokud se jedná o kratší dobu, dochází k následné změně. V intervalu 7-13 dní je účtován administrativní poplatek 10%, storno účasti v kratším intervalu než 7 dní pak poplatek 25%. V případě storna přihlášky nebo objednávky ze strany zákazníka je nabízena možnost účasti zákazníka v náhradním termínu bez dalšího poplatku. Právo na zrušení přihlášky zaniká realizací objednaného školení.
3.3. Při zrušení přihlášky školitelem náleží objednateli plná náhrada za neuskutečněnou akci.
3.4. Objednatel má právo žádat náhradní termín nebo náhradní školení. V takovém případě bude objednatel informován o všech otevřených kurzech. Náhradní termín si nelze vymáhat ani vynucovat, závisí na aktuální dostupnosti kurzu. Pokud má náhradní školení nižší cenu, objednatel doplatí rozdíl. Pokud má náhradní školení nižší cenu, školitel vrátí rozdíl cen školení objednateli.

4. Cena a platební podmínky

4.1. Odesláním přihlášky objednatel akceptuje smluvní cenu (dále jen účastnický poplatek) uvedenou u daného kurzu.
4.2. V případě více účastníků přihlášených jednou přihláškou je možná sleva.
4.3. Účastnický poplatek musí být uhrazen na bankovní účet společnosti vedený u Komerční banky č. 78-7768770207/0100. Při platbě je nutné uvést variabilní symbol, který je uveden na faktuře, odeslané objednateli školitelem.
4.4. Účastnický poplatek zahrnuje náklady poskytovatele včetně školicích materiálů. Poskytovatel je plátce DPH.
4.5. Účastnický poplatek je objednatel povinen uhradit do 14 pracovních dní od přijetí faktury, pokud nebylo samostatnou smlouvou uvedeno jinak.
4.6. Pokud se přihlášená osoba neúčastní školení a nedošlo k jiné domluvě, je její neúčast považována za storno příhlášku v intervalu kratším než 7 dní, tj. školiteli náleží odměna ve výši 25% z ceny kurzu. Přeplatek je vrácen do 14 dní na platební účet odesílatele, ze kterého byly prostředky odeslány. Platba na jiné číslo účtu není možná.
4.7. Nejdéle do 5 pracovních dní od začátku školení bude školitelem vystavena faktura, která bude dle dohody odeslána e-mailem nebo datovou schránkou.

5. Podmínky školení

5.1. Školitel je povinnen informovat objednatele 14 dní dopředu o místě a času školení, včetně termínu zahájení a ukončení denního programu.
5.2. Pokud objednatel není studentem kurzu, je povinnen zajistit distribuci těchto informací koncovým účastníkům. Za nesplnění těchto podmínek školitel nenese odpovědnost.
5.2. Standardně školení probíhá v čase od 9:00 do 17:00 na předem určeném místě.
5.3. Školitel může být dle aktuálních podmínek k dispozici od 8:00 do 9:00 a následně od 17:00 do 18:00 pro dotazy účastníků.
5.4. Na konci školení je koncovým uživatelům předán certifikát o absolovování.
5.5. Na konci školení koncoví uživatelé vyhodnocují přístup lektora a mají se vyjádřit k ohodnocení jeho prezentace, způsobu přednesení a ohodnotit významn poskytnutých informací.

6. Reklamace

6.1. Pokud je účastník hrubě nespokojen s průběhem kurzu, je školitel o této informaci vyrozuměn.
6.2. Důvody nespokojenosti jsou ten samý den zapsány do protokolu ve dvou kopiích. Jedna je předána objednateli a jednu má školitel.
6.3. Vyjádření k reklamaci bude podáno e-mailem do dvou týdnů. Následně do jednoho týdne bude domluven způsob řešení.
6.4. Nespokojenost zákazníka může být důvodem k rozvázání další spolupráce, nebo finanční kompenzaci až do výše ceny školení po odečtení nákladů.

7. Autorská práva k poskytnutým materiálům

7.1. Školicí materiály poskytnuté školitelem v rámci konání školení splňují znaky autorského díla dle zákona č. 121/2000 Sb.
7.2. Žádný ze školicích materiálů ani jeho část nesmí být bez předchozího písemného souhlasu školitele jakýmkoli způsobem dále zpracovávána, rozmnožována, rozšiřována nebo využívána k dalším prezentacím nebo školením.

8. Zodpovědnost

8.1. Školitel nepřebírá odpovědnost za nedostatky ve službách kterékoliv třetí strany, kterou využívá při školeních.
8.2. Školitel nepřebírá odpovědnost za zranění, škody a ztráty, vzniklé účastníkům vzdělávacích akcí, nebo které byly účastníky způsobeny. Takové náklady, způsobené uvedenými okolnostmi, ponese výhradně účastník vzdělávací akce.

9. Platnost podmínek

9.1 Tyto všeobecné obchodní podmínky jsou platné a účinné od 1. října 2024.

Informace o sběru a zpravování osobních údajů

Zpracovatel Jan Dušátko (dále jen „Správce“), dle nařízení Evropského parlamentu a Rady (EU) č. 2016/679 o ochraně fyzických osob v souvislosti se zpracováním osobních údajů a o volném pohybu těchto údajů a o zrušení směrnice 95/46/ES (obecné nařízení o ochraně osobních údajů, dále jen „Nařízení“) zpracovává osobní údaje. Dále jsou rozepsané jednotlivé osobní údaje, které jsou součástí zpracování při konkrétních aktivitách u této webové prezentace a v rámci obchodního styku.
Přestože je sběr dat všudypřítomný, provoz tohoto webu si zakládá na právu na soukromí každého uživatele. Z uvedeného důvodu sběr informací o uživatelích probíhá v naprosto nezbytné míře a to jen v případě, kdy se uživatel rozhodne kontaktovat provozovatele. Jakýkoliv další sběr a zpracování dat považujeme za neetický.

Informace o záznamech přístupu na webovou prezentaci

Tento web nesbírá žádné cookies. Stránka nepoužívá ani žádné analytické scripty třetích stran (sociální sítě, cloud provideři). Z těchto důvodů je také nabízena volba pro zobrazení mapy formou odkazu, kde primárním zdrojem je OpenStreet a alternativy pak často používané Mapy společnosti Seznam, a.s., případně Google Maps společnosti Google LLC Inc. Využití jakéhokoliv z těchto zdrojů je zcela na libovůli uživatelů těchto stránek. Správce nenese odpovědnost za sběr dat realizovaný těmito společnostmi, neposkytuje jim data o uživatelích a na sběru dat nespolupracuje.
Logování přístupů probíhá pouze na úrovni systému, důvodem je identifikace případných technických nebo bezpečnostních problémů. Dalšími důvody jsou přehledové statistiky přístupů. V této oblasti se nesbírají ani nesledují žádné konkrétní údaje a všechny záznamy o přístupech jsou po třech měsících mazány.

Informace o kontaktování provozovatele stránek

Formulář pro kontaktování provozovatele stránek (správce) obsahuje následující osobní údaje: jméno, příjmení, e-mail. Tyto údaje jsou určeny jen a pouze pro tuto komunikaci, odpovídající oslovení uživatele a jsou udržovány po dobu nezbytnou k naplnění účelu, maximálně pak po dobu jednoho roku, pokud si uživatel neurčí jinak.

Informace o objednávkovém formuláři

Pro případ zájmu o objednávku formulář obsahuje více údajů, tj. jméno, příjmení, e-mail a kontaktní údaje na organizaci. Tyto údaje jsou určeny jen a pouze pro tuto komunikaci, odpovídající oslovení uživatele a jsou udržovány po dobu jednoho roku, pokud si uživatel neurčí jinak. V případě, kdy na základě této objednávky dojde k uzavření obchodního vztahu, budou nadále správcem udržovány pouze informace vyžadované českými zákony na základě obchodních vztahů (název a adresa společnosti, číslo bankovního účtu, typ kurzu a jeho cena).

Informace o dokumentu o absolovování kurzu

V rámci kurzu je vydán zpracovatelem dokument o absolovování kurzu. Tento dokument obsahuje následující údaje: jméno a příjmení studenta, název a datum absolovování kurzu a jméno zaměstnavatele. Uvedené informace se následně používají pro tvorbu lineárního stromu hashí (nemodifikovatelný záznam). Tato databáze obsahuje pouze informace o poskytnutých jménech a názvech společností, které mohou a a nemusí odpovídat realitě a je udržován zpracovatelem pro případné opětovné vystavení nebo ověření vydání dokumentu.

Práva subjektu osobních údajů

Zákazník nebo návštěvník tohoto webu má možnost požádat o informace o zpracování osobních údajů, právo požadovat přístup k osobním údajům, případně právo požádat o opravu nebo výmaz veškerých dat, které by o něm byly vedeny. V případě výmazu tento požadavek není možné splnit pouze pokud se nejedná o data nezbytně nutná v rámci obchodního styku. Zákazník nebo návštěvník webu má dále právo na vysvětlení týkající se zpracování jeho osobních údajů, pokud tento zjistí nebo se domnívá, že zpracování je prováděno v rozporu s ochranou jeho soukromého a osobního života nebo v rozporu s platnými právními předpisy a právo požadovat odstranění takto vzniklého stavu a zajištění nápravy.
Zákazník/návštěvník tohoto webu dále může požadovat omezení zpracování nebo vznést námitku proti zpracování údajů a má právo kdykoliv písemně svůj souhlas se zpracováním osobních údajů odvolat, aniž by tím byla dotčena zákonnost jejich zpracování předcházející takovému odvolání. Pro tyto účel slouží kontaktní e-mail adresa support@cryptosession.cz
Zákazník/návštěvník má právo podat stížnost proti zpracování osobních údajů u dozorového úřadu, kterým je Úřad pro ochranu osobních údajů.