Post quantum

Post quantum a Apokalypsa kryptografie?

Zamyšlení nad možnostmi ochrany před touto hrozbou

Popis problematiky

Kryptokalypsa je údajně médii upravený výraz pro „apokalypsu kryptografie“. Musíme to upřesnit podle podstaty problému. Jedná se nástup kvantových počítačů, které by měly snadno faktorizovat veškeré v současnosti používané šifrování ať už symetrické, nebo asymetrické. Zdroje lze dohledat na internetu, ale raději se vyhněte všem článkům kde se objevuje v nějaké podobě „kryptoměna“.

Články s obsahem výrazu kryptoměny se většinou samotné podstaty problému netýkají. Tím se může zdát, že problém se týká pouze kryptoměn. Tak to není. Problém se týká veškerého šifrování. Tedy bankovních účtů, platebních karet, státních a korporátních tajemství osobní korespondence a všeho co vás jen napadne. Očekávají se masivní útoky hekrů a už dnes se musíme chránit ačkoliv prozatím fyzicky nejsou kvantové počítače schopné rozbíjet binární kryptografii.

Platí pravidlo Andyho Clarka „Každý podnik na planetě potřebuje kryptografickou agilitu.“ Viz: Quantum apocalypse. Konkrétně se jedná o potřebu „dopředného utajení“, protože dnes se shromažďují šifrované texty s tím že se budou dešifrovat až bude k dispozici potřebný výpočetní výkon. Zajímavá je nejen dnes aktuální utajovaná komunikace, ale i historická tajemství.

Informativní odkazy na problematiku:

Wikipedia Post quantum cryptography

Blog 05-cryptographic-quantum-apocalypse

Blog 06-quantum-resistant-cryptography

Mappingignorance.org

www.cnet.com science

Tuxcare.com blog

www.darkreading.com

www.mach37.com

Detailnější vysvětlení důležitých pojmů:

Detailnější vysvětlení vyžaduje opravdu formát tabulkového procesoru. Toto nalzenete v dále uvedeném odkazu. Basics of combinatorics onF16.xlsx

Poznámka: Sešit xslx je přeložen do angličtiny, kterou neovládám, ale použil jsem rekurízvní překlady pomocí Google a doufám, že obsah bude pochopitelný pro průměrného uživatele. Obsah sešitu je pod jinou licencí, nežli tento text a text tématicky navazující na jiných stránkách tohoto webu. Licence je uvedena na úvodním listu sešitu xslx.

Toto téma je ve vývoji

Mám připraveno mnoho detailních popisů různých aspektů tohoto tématu, ale musím je většinou přeložit, protože půjde vždy o soubory xslx. Navíc musím upravit tyto stránky tak aby obsahovaly kontaktní formulář, protože práce budu poskytovat jen na základě jednotlivých žádostí. Tyto budou vybaveny nutnou identifikací, kterou zaručí bankovní spojení. Žádosti budou v nějaké míře zpoplatněny. Osobně nejsem příznivcem placeného obsahu, ale neexistuje lepší ověření identity. Práce navíc obsahují možné způsoby ochrany proti prolomení šifer kvantovými stroji. Pokud budou úspěšné – mají svou cenu zejména pro finanční instituce, které si zdarma nic nezaslouží.

Také je pro mne důležité, abych v případě požadavku vydal kontaktní údaje oprávněným organizacím EU a ČR, popřípdě jiným mezinárodním organizacím. Proto formulář bude obsahovat prohlášení žadatele jaký účel ho vede k žádosti.

Hlavní okruhy tématu

Problematika klíčů

Odborníci se celkem shodují v tom, že nejdůležitější je v budoucnu stejně jako dnes a v minulosti utajení šifrovacích klíčů a jejich případný přenos sítí. V tomto případě se jedná také o steganografii.

Z pohledu ochrany je dnes nejdůležitější kryptografická agilita, což je vlastně souhrn různých organizačních opatření. Problematika klíčů je zase nejdůležitějším technickým problémem. Tyto aspekty budou aktuální vždy v budoucnu a jsou důležitější nežli vlastní šifrovací algoritmy.

Problematikou klíčů se budeme zabývat celkem obšírně, ale nejprve musím vysvětlit mnoho záležitostí a zejména pojmů, které jsou nejspíš známé málo, nebo vůbec. Samozřejmě musím začít známými aspekty, na které často nahlížím velmi „subjektivním“ způsobem.

Snadné šifrování

Za nejsnadnější způsob šifrování považuji operace s hexadecimální soustavou. Jde o substituci hexadecimálních znaků pomocí faktoriálu čísla 16. Je potřeba si uvědomit, každý znak některé osmibitové zdrojové abecedy (Například ASCII, nebo UNICODE8 a podobně) je dán dvěma hexadecimálními znaky z toho vyplývá, že 256 znaků je kódováno variacemi s opakováním druhé třídy z celku 16 (16^2).

V podstatě žádná sebevíc sofistikovaná šifrovací metoda tuto skutečnost nemůže nepřekročit. Důvodem je skutečnost, že po zašifrování zdrojového textu, následně dešifrování musí být dešifrovaný text roven textu zdrojovému. Přestože se nám může zdát takový přístup jako snadný a z pohledu možnosti prolomení málo bezpečný tak opak je pravdou.

Technicky můžeme vyjádřit, že 16! = 20922789888000 řádků, nebo lépe „orbit“. To je z pohledu možnosti použití hrubé síly v budoucnosti relativně málo zejména proto, že mnoho řádků poskytne částečně správné řešení.

V tomto případě máme možnost použít zašifrování každého znaku jiným řádkem faktoriálu. To už je obdoba Vernamovy šifry, která je považována z principu za nerozluštitelnou. Je to jen o algoritmech nad faktoriálem čísla 16.

Problém bezpečného sdílení klíče (spíše klíčů) na veřejné síti, sestává z mnoha možností včetně dvou, nebo více symetrických klíčů, pseudo-asymetrického šifrování, popřípadě nepřímého asymetrického šifrování spočívajícího na klasickém součinu dvou prvočísel a mnoha jiných metodách.

Období „Post quantum“

Přestože vývoj kvantových počítačů se zatím jen slibně vyvíjí. Doba kdy budou kvantové počítače dostupné široké veřejnosti za přijatelnou cenu jsou dost vzdálené. Do té doby se budou také vyvíjet binární technologie a pokud z trhů zmizí potom taková doba je opravdu daleko. Je dost možné, že binární výpočetní technologie nikdy zcela nevymizí.

Setkáme s termíny jako qbit(ový), ternární a nebo trinární systém. Myslím si že logičtější je ekvivalentní názvosloví. Tedy naproti binárnímu systému je trinární systém, takže bity proti tritům. Obě verze mají ekvivalenci plynoucí z matematicky definovaných soustav. Pojem qbit pochází ze spojení „quantum bit“ což se týká technologické (nikoliv matematické) podstaty.

Je to jenom konvence, ale matematickou podstatu názvů můžeme podpořit ještě základy pro dvojkové a trojkové systémy. Zabývají se tím jistě různé týmy vědců a matematiků, ale já mám názor který říká, že základem binárního zápisu je hexadecimální soustava v podobě 24 bitů a podobně základem trinárních zápisů bude 34 tritů – tedy soustava se základem 81. V relaci kódování znaků je to rozdíl mezi čtverci 16^2 = 256 znaků a 81^2 = 6561 znaků.

Mám k tomu také praktický důvod. Hexadecimální soustava využívá 16 znaků ze sady 7 bitů. Z tohoto rozsahu lze pohodlně určit 81 znaků pro trinární konvenci (tisknutelné znaky). Tím se dosáhne určitá kompatibilita obou systémů. I binární systémy pak mohou pracovat se systémem 81 prvků. SW konverze tak nebude nutná.

Existují požadavky aby znakové sady obsahovaly více znaků – pokud možno složené ze všech národních alfanumerických znaků nejlépe včetně různých „speciálních znaků“ a „emotikonů“. To je možné jen do „optimálního množství“ bez ohledu na dvojkový/trojkový systém. Já například postrádám kompletní znakovou sadu pro matematiku a technické obory. Nejlepší by bylo, aby byly k dispozici například různé znaky pro pravděpodobnost, permutace, partition a například press. Bylo by hezké, když by existovaly znaky pro „Tex“ – tedy interaktivní zápis predikátů. Podobných souběhů prvního znaku názvu je celkem hodně. Problém jsou nejen základní mapy znaků pro různě velká písma, ale také jejich formátování Tučné, kurzíva, podtržení… .

Takže problém počtu znaků v určité znakové sadě způsobí určitý uživatelský diskomfort. Připomeneme si terminály s podobou klávesnice. Při tom si trinární soustava s problémem národních znakových sad neporadí o moc lépe, nežli binární soustava. Vždy se bude jednat o nějaké podmnožiny v podobě modulo z celku všech možných. Modulo by mělo být tak velké, aby pokrylo také asijská a jiná písma nejlépe i hieroglyfy a jiné znaky včetně historických systémů. Je sice možné použít „různá modula“ podle počtu národních znaků, ale to by byl problém při implementaci nového znaku. Modulo musí mít alespoň minimální počet rezervních pozic.

Při tom se nutně vyskytnou znakové sady s velkým počtem nepokrytých pozic (indexů). V podstatě se stejně bez přepínání jazyka na klávesnici neobejdeme. Klávesnice na obrazovce je také limitovaná počtem znaků a jejich velikostí. Můžeme předpokládat že terminálním vstupem bude hlasové zadání, ale to bude diskriminovat například neslyšící. Nejspíš bude univerzálně používaná „dotyková obrazovka“ – tedy forma touchpadu společně s hlasovým vstupem, ale klávesnice asi zanikne.

Post kvantová kryptografie

Uznávám sice argumentace ve prospěch kvantových počítačů, ale ta může pracovat jen se stejnou matematikou jako binární počítače. Proto jsem k „Post kvantové apokalypse“ celkem skeptický. Máme totiž dost času na zavedení technických opatření, která riziko eliminuje. Detailnější názor zde:

Faktorizace součinu prvočísel a příbuznost

Pokud zavedeme celkem primitivní substituce s ohromným počtem možných modifikací bude kvantový počítač zralý na odpis i s umělou inteligencí. Například jenom 256 znaků (tedy i indexů) lze změnit na 256! možností. Jde to celkem snadno i když se může zdát uvedený počet obrovský.

Technologie faktoriálu

Stačí si uvědomit, že faktoriál může sloužit jako forma vyjádření pořadového čísla. Každý tvar řádku (lépe orbity) odpovídá určitému pořadí „indexu“. Faktorizace tvaru na pořadí je velmi snadná i když si toto mnoho lidí neuvědomuje. Není to o moc složitější nežli zápis pořadí (velikosti čísla) libovolnou k^n nebo n^k soustavou. Problém (požadovaná obtížnost) nastane pokud zadáme jen rozdíl mezi pořadím například tvar(x) tvar(y), tvar(y) = tvar(x) + z. Počáteční tvar(x) je klíčem. Aby to nebylo „snadné“ provedeme substituci čísel na alfanumerické, nebo jen alfabetické znaky, které ovšem nejsou v relaci čísel „Charů“. Zde už asi tušíte, že je vhodnější 81! nežli 16!.

Při tom existuje možnost použít dva různé klíče (prakticky stejně dlouhé) podobně jako při asymetrickém šifrování (tento postup budeme nazývat pseudo-asymetrický šifrováním). Můžeme totiž použít například libovolně větší faktoriál s eliminací pozic větších nežli odpovídá zdrojovému faktoriálu. Například zadáme místo 16! faktoriál čísla 31. Vypočteme tvar konkrétního indexu 31! a z řetězce čísel odstraníme všechna čísla větší než 16. Zůstane jen originální tvar klíče 16! to je velmi snadné a technicky nenáročné.

Využitelných parametrů množin faktoriál je více. Například sloučíme faktoriály dvou prvočísel. Použijeme 17! a 23!, což vyjádříme jako 40!. Součet dvou prvočísel je stejně náročný na faktorizaci jako jejich součin, ale tady se nejedná ani o součet, ani o součin, ale útočník by si měl myslet opak. Vyjádříme nějaké indexové číslo ze všech různých v množině 40! (tedy tvar orbity faktoriálu), vypočteme tvar pozice a každé číslo zmenšíme o jedničku (protože 16=17-1). Tak získáme tvar 39 číslic, které jednotlivě zredukujeme o čísla větší, … .

Vtip je v tom, že faktoriál zadaný alfanumerickými znaky je k nerozeznání od textu zašifrovaného jinými způsoby a tato nejednoznačnost (o jakou šifru jde a kolik a jakých znaků je „n“?) znehodnotí práci velice výkonných strojů. Výsledků, které se mohou zdát správné vyjde velice mnoho. Výběr správné verze výsledku bude problém i pro AI.

Technologie PNBT

Tato technologie sestává ze zkratek PN (Partition Numerorum) a BT (Bergerovy tabulky). Může mít mnoho verzí. Například pro 256 znaků, nebo méně. Zejména je pak zajímavá pro 64 znaků, tedy pro Base64, ale může obsahovat i počet větší nežli 256 (8 bitů). Každá verze může mít jednoduchou a složitou variantu.

PN je spíše steganografickým prostředkem, ale ne nutně. BT je vždy hlavní motor šifry.

Základní verzi (betaverzi) jsem zveřejnil v roce 2016 pod názvem PNBT 0 simple 8bit (odkaz na stažení je pod názvem stránky) popis je zde Popis PNBT 0 simple 8 bit.

Slíbil jsem sice, že budu pokračovat ve vývoji, ale potom jsem si to rozmyslel a vývoj zastavil. Začal jsem se obávat, že mou práci použije někdo ke zločinu, nebo terorismu a podobně. Tato skutečnost zastavila moje další zveřejňování, ale vlastní vývoj nikoliv.

Zjednodušený princip šifer PNBT

Mějme Bergerovu tabulku pro 7 duelů BT(7). Bude vypadat nějak takto:V záhlaví obrázku tabulky je zřetelné, že každý sloupec (Round) odpovídá řazení – například 1/7, což říká, že se jedná o první kolo (sloupec) z celku 7 a obsah sloupce pod názvem je typický tím, že obsahuje dvojice čísel – mimo čísla 1. Podobně všechny ostatní sloupce. Každý různý znak má přiděleny 3 různé dvojice z celku 21 = kombinace(celku 7,třídy 2). Každá taková dvojice je variantami substitucí pro číslo (signaturu) sloupce. Šifrovat se může tak, že se znak zdrojového textu nahradí substitučními dvojicemi, které mohou být přidělovány vhodným algoritmem, aby se vyskytovaly pokud možno ve stejném počtu. Šifra potom obsahuje zdánlivě dvojnásobný počet znaků, ale je celkem odolná proti statistické analýze. Určená je zejména k archivaci na klasický papír s tím, že se může načíst pomocí rekognice v OCR.

Bergrovy tabulky umí také nejen kombinace, ale i variace dvojic – tedy 2 krát kombinace, což jsou utkání s „odvetou“, ale technicky jde jen o přehození pořadí ve dvojicích. To si představíme jako matici – čtverec 7^2:

Obrázek ukazuje jednak v levé horní části originální uspořádání a v horní pravé části vidíme substituce podle tabulky BT(7) která je výše. Spodní část obrázku ukazuje matici jako čtverec jehož souřadnicí je zeleně podbarvená přepona. Tato přepona rozděluje matici na poloviny z nichž každá obsahuje dvojice z celku 7 – proto jsou podbarveny žlutou a modrou barvou. Principem popisu chápeme vzorec:Vlastní šifrování se provádí na souřadnici pomocí faktoriálu čísla 7. Respektive u reálných šifer zamícháme souřadnici podle hesla.

V případě PNBT 8 bit máme souřadnici 256 znaků. Faktorizovat souřadnici 256! už je obtížné. Zveřejněný typ šifry operuje nad 32640 dvojicemi a každý různý znak má 128 ekvivalentních substitucí.

Ovšem princip můžeme použít i opačně. Potom z plného čtverce 256^2 můžeme načítat všechny různé dvojice znaků tak jak se v reálném zdrojovém textu vyskytují vedle sebe (nebo i jinak). Dvojice je pod souřadnicí 256 a lze ji zadávat v hexadecimálním provedení (256 = 16^2). V důsledku je zdrojový text komprimován na polovinu, protože 2 znaky souřadnice = 4 hexadecimální znaky konkrétní dvojice šifrovaných znaků. Takže šifra do souřadnic obsahuje polovinu znaků zdrojového textu.

Toto funguje dobře, ale „zamíchání“ souřadnice pomocí hesla je největší slabinou ve všech typech šifry PNBT. Při vysledování hesla lze snadno odhalit algoritmus „míchání“. Můžeme použít „jiné zamíchání“ souřadnice pro každý jeden, nebo dva znaky. Načítání všech dvojic sice zmenší šifru 2x, ale má pouze 1 unikátní souřadnici oproti načítání jednoho znaku, který má sice šifru opticky dvakrát větší, ale 128 substitucí pro každý jeden znak.

Není bez zajímavosti skutečnost, že šifrování i dešifrování probíhá rychle a je vhodné také pro proudové šifry. Tento typ šifer nemá žádná „zadní vrátka“. Ve složitější (pokročilé) formě můžeme šifrovat každý znak jinou souřadnicí což je obdoba Vernamovy šifry, nebo šifrovat kompromisně Vigenèrovým čtvercem (respektive stejnou souřadnicí) po určitých úsecích zdrojového textu.

Zjednodušený princip šifrování pomocí čtverců.

Logika variací s opakováním (n^2) platí jak pro lichá, tak pro sudá čísla stejně, ale pokud potřebujeme pracovat pouze s dvojicemi jsou bezprecedenčně nejvýhodnější čtverce prvočísel.

Existuje možnost rozkládat dvojice prvočísel například do trojic číslic = 3 dvojice ve trojici. To si ukážeme opět pomocí n(7). Ale rozklady dvojic do symetrického uspořádání umožňují také jak liché, tak některé sudé čtverce. Rozklady provádíme podle „konstruktorů“, což jsou vzory rozkladu, které načítáme většinou z externí, nebo izolované databáze.

Tento princip je určitou obdobou principu šifer PNBT. Ukážeme si rozklad podle jednoho z mnoha konstruktorů:Konstruktory mají různé vlastnosti. Například vidíme převzetí souřadnice z konstruktoru. Souřadnice má určitou variaci faktoriálu ale můžeme ji seřadit vzestupně podle základního tvaru faktoriálu. Vazby z konstruktoru jsou při tom zachovány. Souřadnici můžeme seřadit až 7! krát jinak a vazby budou vždy zachovány tak jak dává konstruktor.

Důležitou skutečností je kryptografická substituce. Například mezi každými dvěma prvky souřadnice například 1,2 existují dva průsečíky a každý obsahuje jinou reprezentovanou trojici. To čteme pro první a druhý průsečík ze směrů:

12 jako A1, tedy trojici 1,2,5

2→1 jako B7, tedy trojici 1,2,6

podobně například

14 jako A3, tedy trojici 1,4,6

4→1 jako B6, tedy trojici 1,4,7

nebo také

36 jako A6, tedy trojici 3,5,6

63 jako B1, tedy trojici 3,4,6

Trojice má obsah 3 dvojice z nichž jedna odpovídá průsečíku prvků souřadnice a tím ukazuje na dva jiné průsečíky v případě 12 = A1, tedy trojice 1,2,5 ukazuje na průsečíky 15 a 25. Podobně 2→1 = B7, tedy trojice 1,2,6 a ta ukazuje na 16 a 26.

Ukazovatele (15, 25) & (16, 26) můžeme otočit na (51, 52) & (61, 62)

Jinou vlastností je rozklad ze složených tvarů na různé páry systémů trojic. Jedná se o jiný typ konstruktoru:Složené tvary 4+3 jsou význačné tím, že obsahují všechny trojice z celku 7. Sloupec čtveřic obsahuje 4 x sloupec trojic (s obsahem všech dvojic celku 7) a můžeme ho proto rozdělit na 4 sloupce trojic (a taktéž 4 souřadnice). To však není příliš efektivní. Víme že trojic z celku 7 je stejně jako čtveřic. Zopakujeme si, že při vypsání sloupců všech trojic a čtveřic zjistíme, že sloupec čtveřic obsahuje 4 x všechny trojice. Celkem tedy plné rozklady celku 35 (trojic a čtveřic) – tedy konstruktory 4+3 obsahují všechny trojice 5x. Z toho plyne, že lze používat bez problému konstruktor 3+1+3, ale ke konstruktoru 4+3 nemáme šanci postavit takový, který by obsahoval unikátní čtveřice, protože v každém jednom rozkladu 4+3 už všechny trojice jsou.

Schéma 2 klíčů. Každý ze dvou účastníků komunikuje s druhým prostřednictví jeho opačného klíče. Účastník A píše účastníku B substitucí A→(-B) a čte zprávu od B jako substituci -A→A. Učastník B píše B→(-A) a čte –BB.Můžeme použít také jiný podobný systém sestávající ze tří systémů z nichž je jeden veřejný, a současně tajný společný. V následujícím příkladu bude veřejným klíčem C a tajným klíčem -C. Současně mohou jednotlivé páry komunikovat pomocí svých opačných klíčů – tedy bez veřejného klíče – tak jak ukazuje schéma výše.Konstruktory používáme také jako rozklady a sekundární konstrukce čtverců se základem n^2 (primárně dvojic celku n). Typy konstruktorů jsou dány z PN(n) (tedy Partition Numerorum n).

PN(7) je notoricky známé – takto bylo obecné PN původně definováno stejně tak skutečnost, že je to schéma entropie. Obsahuje 15 řádků (orbit).

7 = nevhodné pro konstruktor

6+1

5+2

5+1+1

4+3 = konstruktor 4+3 (3+4)

4+2+1

4+1+1+1

3+3+1 = konstruktor 3+1+3

3+2+2

3+2+1+1

3+1+1+1+1

2+2+2+1

2+2+1+1+1

2+1+1+1+1+1

1+1+1+1+1+1+1 = nevhodné pro konstruktor

Když umocníme 7^2 získáme čtverec 7×7, tedy n=49 a ten lze rozvinout jednoduchým algoritmem na 8 čtverců 7×7 (včetně souřadnice systému dvojic) které obsahují všechny dvojice celku 49. Je to tedy 56 řádků (sedmic), které můžeme konstruktorem sedmice snadno rozložit na různé díly, a ty potom použít například k variaci na řádku, nebo k jiným účelům.

Podobně můžeme pracovat se všemi „čtverci“ včetně čtverců lichých a sudých. Osobně preferuji práci se čtverci prvočísel protože se snadno rozvíjí do systému všech dvojic a umí zpracovat také všechna různá „n“ podobně jako Bergrův systém rozkladů (Bergrovy tabulky). To si představíme jako rozsah pokrytí mezi čtverci prvočísel. Například mezi 5^2 a 7^2 existují počty možných (n) v rozsahu mezi 7^2 – 5^2 tedy od n(26 49). Podobně mezi 11^2 – 7^2 tedy n(50 121).

Ovšem ne vždy je výhodné pracovat se čtverci prvočísel. Nejčastěji v poslední době pracuji se čtvercem čísla 4, tedy 4^2 = 16, vlastně s hexadecimální soustavou. Tento čtverec má dobrý rozklad na dvojice pomocí matic. Číslo 16 obsahuje 120 dvojic které se dají uspořádat do pěti čtverců 4×4 (20 řádků rozkladu). Algoritmus je mnohem obtížnější nežli u prvočísel ale to je vzhledem k potřebě kryptografické odolnosti vhodné.

Z pohledu budoucnosti je zajímavý čtverec 3^2, který kóduje čtverec 9^2. Samotný čtverec 3^2 je prvočíselný, ale čtverec 9^2 nikoliv a proto má odlišný algoritmus od prvočíselného. Jedná se o to, že 3^4 = 81 a je to vhodný protiklad k 2^4 = 16 – tedy jakési ekvivalenty binárních a ternárních systémů. Ukážeme si příklad úplného rozkladu devítky na trojice, kterých je 84:Jak můžeme z obrázku vyčíst úplných rozkladů je 15360. Tento počet byl získám přímo konstrukcí a pokud vím neexistuje algoritmus pro výpočet počtu všech úplných rozkladů obsahů čtverců. Dopracovat se k počtu matic v uvedeném případě není obtížné. Problémem je počet úplných variant rozkladu. Používání matic 9^2 je už sice aktuální ale k pochopení účelu a operací vyhoví lépe 4^2. K dispozici jsou systémy konstruktorů čísla 7 a 9 obsahují některé specifické vlastnosti včetně kódování čísla 8.

Princip šifrování pomocí čtverců čísla 16.

Pro popis operací se čtverci šestnáctky platí prakticky stejné možnosti popsané u sedmičky. Tedy diskrétní šifrování mezi dvěma účastníky kteří nesdílejí své klíče (+), sdílí jen své klíče (-). Klíče (+) a (-) nesestávají z převráceného pořadí dvojic (+) proti (-). Může existovat také jeden, nebo více veřejných klíčů ve variantách (+) a (-).

Ekvivalentní párování podle ukázky uvedené výše (n=7) znamená párování podle různých rozkladů systému dvojic. Už jsme si to uváděli, ale nikoliv pro šestnáctkový čtverec. Šestnáctkový čtverec obsahuje dva systémy kombinací dvojic a souřadnici, tady 16^2 = 2*combin(16,2) + 16. Systémy dvojic obsahují dvacet řádků (čtveřic) uspořádaných do pěti jednotkových matic 4×4. V ukázce sedmičky jsme měli 7 trojic na 1 systém dvojic, zde je to 20 čtveřic.

Princip šifrování na číslo.

Jedná se o rozličné postupy, které mají za účel šifru, nebo objemný klíč komprimovat na vzorec. Jedním z takových principů je komprese dvou znaků zdrojových znakových sad na zápis souřadnic čtverce – komprese na 1/2. Jiným postupem je zápis prvočísel pomocí Euler – Napierovy konstanty, nebo záměna zápisu zdrojového textu na seřazený řetězec kde je každý znak vyjádřen jako kombinace, nebo faktoriál vyjadřující opakování stejného znaku (například A = 8, B=4, C=X,,,, Z=…). Metoda záměny binárního zápisu na kombinace a podobně.

© 2025-2026 Petr Neudek

Translate »