Dekódolás 1.
2006-07-09 6:55
A Diag kezére került egy elektronikus üzenet, de sajnos, még dekódolatlan formátumban. Azonban nagy, hosszú és fáradságos munkával rájöttünk a kódolás gondolatmenetére. Segíts, hogy minél több részt megfejtsünk az üzenetből!
Nehéz, beküldte:
t69mwd*, szerkesztő: t69mwd
A Diag kezére került egy elektronikus üzenet, de sajnos, még dekódolatlan formátumban. Azonban nagy, hosszú és fáradságos munkával rájöttünk a kódolás gondolatmenetére. Segíts, hogy minél több részt megfejtsünk az üzenetből!
Tudjuk, hogy a kódolt magyar szövegből először eltüntették az írásjeleket, az ékezeteket, majd a szóközöket. Az angol ABC-ben nem szereplő betűket (cs, dzs, ty, ..) több karakterre (pl c és s, d, z és s, t és y) bontották és minden egyes betűnek saját kódja lett, és minden betűkód csak egyesekből és nullákból áll. Tudomásunkra jutott az is, hogy egyetlen betűkód sem volt folytatása semelyik másik betűkódnak. (Azaz pl. a 10100 és a 101001 egyszerre nem szerepelhet a kódban).
Egy szöveg és annak kódolása:
Bajban derül ki, hogy ki az igaz barát. (bajbanderulkihogykiazigazbarat)
0001111110100000111100110110011010011101111100101110101100011101011011110100111010111000001010111111000000011111001111110110
Ahol a=111; b=0001; ; d=10110; e=0110; f=110000; g=10111; h=110001; i=010; j=110100; k=0111; l=11001; m=1000; n=001; o=110101; ; r=1001; ; t=110110; u=110111; ; y=1010; z=0000.
A feladat a következő: Egy szövegből, és annak kódjából rá kell jönni a szövegben szereplő egyes betűk kódjára, majd ezen információ birtokában megfejteni az ismeretlen szöveget.
Az ismert szöveg két mondatból áll, és e két mondatnak a kódját is külön megadjuk. Ezzel együtt viszont az ismeretlen szöveg is két mondatos, aminek pedig csak a kódját ismerjük, de betűkódok megegyeznek az ismert szöveg betűkódjaival. Azaz, ha az eredeti szöveg kódjában megtaláljuk a betűhatárokat, és így megfejtjük a betűkódokat, akkor az ismeretlen szövegre is fényt deríthetünk.
Ha az ismert szövegben egy betű nem található meg, és ezért nincs kódja, akkor az a kódolt szövegben kódolatlanul jelenik meg (lásd példa).
Mivel tudjuk, hogy egyik betűkód sem folytatása a másiknak, így ha a titkosító kódban megtaláljuk a betűkódhatárokat, akkor a megfejtőkódból könnyen és egyértelműen megkapható a kódolt szöveg.
Segítségként az ismert szövegből az első dekódolást elvégeztük, és még a betűkódhatárokat is feltüntettük az átláthatóság kedvéért.
Az ismert szöveg:
Bajban derül ki, hogy ki az igaz barát.
Nem mind arany, ami fénylik.
Az ismert szöveg titkosító kódja:
0001|111|110100|0001|111|001|10110|0110|1001|110111|11001|0111|010|110001|110101|10111|1010|0111|010|111|0000|010|10111|111|0000|0001|111|1001|111|110110
001|0110|1000|1000|010|001|10110|111|1001|111|001|1010|111|1000|010|110000|0110|001|1010|11001|010|0111
A „B” szöveg megfejtő kódja:
0110|10111|1010|s|0000|0110|1001|110001|110101|p|p|1000|111|s|0111|110101|1001|0111|110101|p|p
0111|110101|c|0111|111|0000|111|110110|001|0110|11001|0111|110111|11001|001|010|001|c|s|10111|1010|110101|0000|0110|11001|0110|1000
Ebből a „B” szöveg megfejtése:
Egyszer hopp, máskor kopp.
Kockázat nélkül nincs győzelem
A „B” szöveg titkosító kódja:
00111001000010101011001111101101000111110111011011000110100100111111001001111101110
01001111000010000110110001111110100100110000101111111000100111010110011100010101100100000111011001100000111011
A „C” szöveg megfejtő kódja:
0101101010001010110101110001010110101111110100100111011b00111000101011111110001101010001101100011001000111001000001111111010010011101100111110d001110111000110101
j0111000v001110011011001111110111110110111111111001010000111111111111000011001001d00110100001111011010111010000110010011010
Mi a C kódolt szöveg 2 mondata kódolatlanul, ékezetekkel és írásjelekkel kiegészítve?