ad "Nejde o žádnou chybu či problém celého jejich konceptu" - ale v reálním světě jde o chybu konceptu.Normální smrtelník si nebude číst (nebo sám psát) kód generující klíče. A jak se ukazuje, nikdo moc nekontroluje ani kód široce používaný.
BTW když jsem kdysi přemýšlel jak by šel nejlépe prolomit systém klíčů, tak zajistit nějak omezení množiny, ze které se klíče vybírají, se nabízí jako jedna z možností. (A teď existují k aktuálnímu případy slabého generátoru klíčů nějaké konspirační teorie, že to byl záměr ať už od konkrétního programátora nebo od tajných služeb?)
Další chybou konceptu je to, že ačkoliv je faktorizace obecně NP problém, případně ještě složitější, tak faktorizace konkrétního čísla může mít složitost jinou. Jinými slovy, fakt, že faktorizace 2048 bitového čísla zabere tisíce let, neznamená, že metoda hrubé síly nerozlouskne jeden z tisíce klíčů do minuty.
Ve chvíli, kdy po světě budou běhat stovky milionů veřejných klíčů, tady mohou běhat tisíce snadnou lousknutelných klíčů. Nikdo sílu konkrétního klíče neověřuje, protože to dost dobře ani nejde. Těch algoritmů je plno a hlavním faktorem je tam náhoda. Doporučuji skripta na Paralelní architektury a zamyslet se nad tím, proč třebas algoritmus na hledání nejdelší cesty v konrétním grafu trvá na jednom procesoru 2 hodiny, na dvou trvá 18 minut, na třech 5 sekund a na čtyřech zase 18 minut. Pro ty, co to nechtějí studovat: hrubá síla zkouší všechny kombinace. Ta správná může být ta úplně poslední, ale také ta úplně první. Pokud zapojím N procesorů, tak si rozdělí prostor. A zrovna u 3 procesorů se může stát, že ten druhý nebo třetí začne louskat právě těsně před tím správným klíčem, takže ho za chvilku najde. Je to o náhodě. Jaká je šance, že zrovna vy s vaším klíčem jste si vylosovali peška, kterého AWS najde do minuty?