LuÜt∞nφ jednoduchΘ transpozice - ·plnß tabulka (metodika)
Jednoduchß transpozice je jedna ze zßkladnφch metod Üifrovßnφ. Po jednoduchΘ zßm∞n∞ se tak seznßmφme s druh²m nejd∙le₧it∞jÜφm systΘmem. Troufßm si tvrdit, ₧e v∞tÜina Üifrov²ch systΘm∙ vychßzφ prßv∞ z t∞chto dvou postup∙. Ostatn∞ v₧dy¥ prvky typu SHIFT apod. v blokov²ch Üifrßch jsou vlastn∞ jen transpozicφ jednotliv²ch bit∙. Vra¥me se vÜak k tomuto systΘmu. Transpozice je "p°eskupenφ" otev°enΘho textu podle n∞jak²ch pravidel - tato pravidla se naz²vajφ klφΦem. V²sledn² Üifrov² text zachovßvß frekvenci hlßsek p°φsluÜnΘho jazyka. Zp°etrhßny jsou pouze bigramovΘ vazby a tφm je ukryt v²znam p∙vodnφho textu. V takovΘmto textu se tedy nevyskytujφ dlouhß opakovßnφ, je zachovßna frekvence hlßsek p°φsluÜnΘho jazyka, neodpovφdajφ bigramovΘ frekvence, nelze provΘst d∞lbu na samohlßsky a souhlßsky. Pom∞r samohlßsek a souhlßsek je v textu zachovßn a je p°ibli₧n∞ v pom∞ru 40 : 60. Tento systΘm se pou₧φval jeÜt∞ za druhΘ sv∞tovΘ vßlky a v n∞kter²ch mΘn∞ vysp∞l²ch stßtech i v celkem nedßvnΘ dob∞. Pou₧φvala se vÜak urΦitß modifikace, kterß velice znesnad≥uje luÜt∞nφ - tzv. dvojitß ne·plnß transpozice. Text je nejprve vepsßn do tabulky urΦitΘho rozm∞ru, zde jsou podle prvΘho klφΦe sloupce rozhßzeny a dßle je text p°eveden do tabulky o jin²ch rozm∞rech, kterß nenφ ovÜem v poslednφm °ßdku zcela vypln∞na (!) a op∞t jsou sloupce podle druhΘho klφΦe p°eskupeny. V p°φpad∞, ₧e rozm∞ry tabulek (poΦet sloupc∙) jsou 30 a vφce, je ke zp∞tnΘ transformaci nutnΘ pou₧φt slo₧it∞jÜφ postupy, kde se ji₧ bez poΦφtaΦ∙ neobejdeme a v n∞kter²ch p°φpadech m∙₧e b²t tento systΘm (nap°. ve spojenφ s jednoduchou zßm∞nou) celkem pou₧itelnou Üifrou urΦenou nap°. pro nßhradnφ spojenφ, kdy nelze z n∞jakΘho d∙vodu pou₧φt kvalitnφ specißlnφ Üifrßtor.
Vra¥me se k jednoduchΘ transpozici vyu₧φvajφcφ ·plnou tabulku. Zφskßme Üifrov² text rozepsan² jako obvykle do p∞timφstn²ch skupin. Po°φdφme frekvenci a zjistφme, ₧e odpovφdß frekvenci jazyka. Nejsou zde velkß opakovßnφ a jsou zde skupiny samohlßsek a souhlßsek. Toto by mohlo naznaΦovat, ₧e se jednß o transpozici. V p°φpad∞, ₧e se jednß o jednoduchou transpozici s ·plnou tabulkou, postupujeme takto:
UrΦenφ rozm∞ru tabulky
SpoΦteme dΘlku ÜifrovΘho textu a sna₧φme se urΦit pravd∞podobn² rozm∞r tabulky. Ten zjistφme tak, ₧e dΘlku ÜifrovΘho textu rozlo₧φme na souΦin prvoΦφsel a z nich kombinujeme pravd∞podobnou velikost tabulky. Mßme-li nap°. Üifrov² text dΘlky 120, pak jsou mo₧nΘ nßsledujφcφ velikosti tabulek :
120= 2*2*2*3*5
Tabulky :
poΦet sloupc∙ * poΦet °ßdk∙
mßlo pravd∞podobnΘ (bylo by p°φliÜ lehkΘ k °eÜenφ) : 1*120, 2*60 , 3*40, 4*30, 6*20
slo₧itΘ : 120*1, 60* 2 ,
tabulky : 8*15, 15*8, 12*10, 10*12, 20*6, 30*4, 40*3
èifrov² text se vepφÜe do "podez°el²ch" tabulek. Poznamenejme, ₧e text se vepisuje po sloupcφch (!), viz. p°φklad na konci textu.
D°φve, ne₧ p°ejdeme k vlastnφmu luÜt∞nφ, m∙₧eme si do znaΦnΘ mφry ov∞°it, zda nßmi zvolenß tabulka je sprßvnß. Zjistφme to na pom∞ru souhlßsek a samohlßsek v jednotliv²ch °ßdcφch tabulky. I zde by m∞l b²t p°ibli₧n∞ zachovßn pom∞r samohlßsky : souhlßsky - 40 : 60. Kterß z tabulek spl≥uje tento pom∞r pro v∞tÜinu sv²ch °ßdk∙, ta je nejpravd∞podobn∞jÜφ tabulkou a zde zaΦneme s pokusem o vyluÜt∞nφ p∙vodnφho textu.
LuÜt∞nφ
SamotnΘ luÜt∞nφ nenφ nijak slo₧itΘ. Ti z vßs, kte°φ luÜtφ tzv. liÜtovky v r∙zn²ch Φasopisech, tento postup ji₧ prakticky znajφ. Pokud nemßme k dispozici vhodn² program a jsme p°φliÜ pohodlnφ si jej napsat, nezb²vß ne₧ sloupce tabulky rozst°φhat a p°eskupovat tak, abychom se sna₧ili zohlednit bigramovΘ Φetnosti (nap°. PR, ST) a samohlßskovΘ a souhlßskovΘ vazby, a to ve vÜech °ßdcφch najednou. Postupn∞ tedy k sob∞ p°iklßdßme vhodnΘ sloupky, a₧ dostaneme celΘ bloky otev°enΘho text (Φte se po °ßdcφch). Bloky pak jen p°eskupφme a mßme hledan² v²sledek.
VÜe si prakticky jeÜt∞ zopakujeme na nßsledujφcφm cviΦnΘm p°φklad∞.
CviΦn² Üifrov² p°φklad na jednoduchou transpozici - ·plnß tabulka
OTSEC NCNUX ATONO TOUTO KXUJU AILBX UVPTD HSEOL KYREN EPSUK ZELID RZPAU (60 znak∙)
UrΦenφ velikosti tabulky
ne : 1*60 , 2*30, 3*20, 4*15,
mo₧nΘ tabulky : 15*4, 20*3, 10*6, 6*10
Prozradφm, ₧e tento text byl ·mysln∞ volen tak, aby ani pom∞r samohlßsky: souhlßsky nedal zcela jednoznaΦnou odpov∞∩ na rozm∞r tabulky, v praxi ovÜem takovΘto p°φklady v∞tÜinou nenastßvajφ, tento p°φklad m∞l pouze komplikovat samotnΘ luÜt∞nφ ₧ßk∙m, kter²m jsem p°φklad p°edlo₧il a necht∞l jsem, aby jednoduÜe zjistili velikost sprßvnΘ tabulky. Sledujte, jak se Üifrov² text plnφ do tabulky. ZaΦßteΦnφk∙m n∞kdy toto Φinφ potφ₧e a zapisujφ jej omylem do °ßdk∙ mφsto do sloupc∙.
rozm∞r 20*3
oΦekßvan² pom∞r 8/12
OECXOTTXULUTSLREUEDP 8/12
TCNANOOUABVDEKEPKLRA 8/12
SNUTOUKJIXPHOYNSZIZU 8/12
rozm∞r 15*4
oΦekßvan² pom∞r 6 / 9
OCUOOKUBPSKNULZ 6/9
TNXNUXAXTEYEKIP 6/9
SCAOTUIUDORPZDA 7/8
ENTTOJLVHLESERU 5/10
rozm∞r 10*6
oΦekßvan² pom∞r 4/6
OCOTUUSRUD 5/5
TNNOAVEEKR 4/6
SUOKIPONZZ 4/6
EXTXLTLEEP 3/7
CAOUBDKPLA 4/6
NTUJXHYSIU 4/6
ukßzka 6*10
oΦekßvan² pom∞r 2,4 / 3,6
OAKUKZ 3/3
TTXVYE 2/4
SOUPRL 2/4
ENJTEI 3/3
COUDND 2/4
NTAHER 2/4
COISPZ 2/4
NULESP 2/4
UTBOUA 4/2
XOXLKU 2/4
Nejpravd∞podobn∞jÜφmi tabulkami jsou rozm∞ry 20*3 a 6*10, nßsledujφ rozm∞ry 10*6 a nejh∙°e z testu vyÜel rozm∞r 15*4.
Sprßvn² rozm∞r je 6*10. Vzhledem k malΘmu poΦtu sloupc∙ ji₧ nenφ problΘm je sprßvn∞ se°adit a dostaneme p°φsluÜn² otev°en² text :
UKAZKO
VYTEXT
PROLUS
TENIJE
DNODUC
HETRAN
SPOZIC
ESUPLN
OUTABU
LKOUXX
Tak₧e hledan²m textem je :
UKAZKOVY TEXT PRO LUSTENI JEDNODUCHE TRANSPOZICE S UPLNOU TABULKOU XX
KlφΦem je pak postup jak p°eskupit sloupce otev°enΘho text na sloupce ÜifrovΘho textu.
Na p°φklad∞ si m∙₧eme vÜimnout, ₧e p°i zßpisu do tabulky byl dopln∞n text tak, aby zcela vyplnil i poslednφ °ßdek pomocφ XX. Pro r∙znΘ u₧ivatele, kterΘ systΘm pou₧φvajφ m∙₧e b²t dopln∞nφ tabulky na ·plnou tabulku charakteristickΘ. Text by m∞l b²t dopln∞n nßhodn∞, ale Φasto se pou₧φvß n∞jak² ustßlen² zp∙sob, kter² kryptoanalytikovi (pokud jej zjistφ) pomßhß v luÜt∞nφ. Nap°. se pou₧φvß dopl≥ovßnφ pomocφ X nebo pφsmena abecedy nebo se doplnφ podpis apod. VÜechna tato dopln∞nφ jsou Üpatnß a mohou vΘst ke snadnΘ kompromitaci systΘmu (urΦenφ velikosti tabulky a umφst∞nφ n∞kter²ch sloupk∙). Znalost takov²chto maliΦkostφ usnadnφ chßpßnφ podstatn∞ slo₧it∞jÜφch problΘm∙ se kter²mi se v kryptologii m∙₧eme setkat. P°ipome≥me v tΘto souvislosti analogii s nevhodn²m dopl≥ovßnφm dat pro Üifrovßnφ symetrick²ch klφΦ∙ podle normy PKCS#1, v 1.5 .
Nynφ ji₧ m∙₧eme vyhlßsit sout∞₧nφ ·lohu III.kola
┌lohou t°etφho kola je vyluÜt∞nφ p°ilo₧enΘho ÜifrovΘho textu. Jednß se o jednoduchou transpozici - pou₧ita byla ·plnß tabulka. Rozm∞r tabulky musφte urΦit. Text je v ΦeÜtin∞, v mezinßrodnφ abeced∞ = 26 znak∙ A-Z (bez hßΦk∙ a Φßrek) a bez mezer, je rozd∞len do skupin po 5-ti znacφch. Prozradφm, ₧e se jednß se o text, kter² se vyskytl na strßnkßch naÜeho e-zinu.
SIFROVY TEXT
IRJYE VDIPI AVIVZ NTUKM EORZN EOTYE KKLPI TTNNC EIPAE COSMN EOPRL KEPEP LAPTE NNEDO SOTNK ENOPT LBOAO TROVR OEEIN REEEK UTSHX EOORM YIJAJ PZOED DEDOD UCSTS ONZOA IKSCU JPPES NISBV FEIIK AEUVU EJOOO DNMKS EORKB YMOAU ELPNO DKOOO JUNST ZIUOU EEJVG EEDZA ACEDM KKEEI RNETV
Zaslßnφ celΘho textu 10 bod∙.
Losovßnφ III.kola bude 8.12.2000 (18.00 hod).