Kasper Dupont wrote:
>
> Morten Dahl wrote:
> >
> >
http://mortendahl.dk/_diverse/test.tc
> >
> > Knock yourself out..
>
> Det gav ikke lige det resultat jeg havde forventet.
Det er bare mig, der ikke kan huske, hvordan mit
eget program til at XORe data sammen virker.
Den var der allerede i første hug. Først lad os
se på sektor 36 i containeren:
dd if=test.tc skip=36 count=1 |hexdump -Cv
1+0 records in
1+0 records out
00000000 0c 4a 23 37 f3 54 11 12 6e 22 b5 82 12 e5 1f 63 |.J#7óT..n"µ..å.c|
00000010 94 bf 45 d1 e1 cc f0 8b 25 b6 09 d1 05 54 d1 b2 |.¿EÑáÌð.%¶.Ñ.TѲ|
00000020 84 5c 36 17 f4 a3 ac e6 f9 01 f9 3e 54 9e 3d 48 |.\6.ô£¬æù.ù>T.=H|
00000030 1d b2 1e ae 15 be 6b b7 0c 9d 0e 4f a0 e5 ce 67 |.².®.¾k·...O åÎg|
00000040 49 73 d7 bf 41 aa ed ae 2f 47 55 ec a2 42 0b 03 |Is׿Aªí®/GUì¢B..|
00000050 07 7d 43 52 32 f9 3c e7 ff 98 c7 ac cf 20 fc ea |.}CR2ù<çÿ.Ç¬Ï üê|
00000060 9f 20 1a f2 17 65 a5 84 f2 b4 f5 a0 33 f7 1f 3c |. .ò.e¥.ò´õ 3÷.<|
00000070 38 b1 3e 8d 2b 60 29 9e ea 70 eb b3 96 b4 6c 46 |8±>.+`).êpë³.´lF|
00000080 cd 0e 02 74 33 1a d5 71 12 75 14 95 d2 02 55 83 |Í..t3.Õq.u..Ò.U.|
00000090 9e e0 bf 68 f6 96 12 8c 64 ee 3c 91 1b 7b 90 5d |.à¿hö...dî<..{.]|
000000a0 c8 e0 71 b9 47 87 ec 99 7f f9 0b c9 b0 19 c4 fe |Èàq¹G.ì..ù.É°.Äþ|
000000b0 47 bb bc 1c 1e 70 5b 2c 44 8a fd 08 72 54 37 f8 |G»¼..p[,D.ý.rT7ø|
000000c0 22 48 4b 49 05 be af 3b cb ea 38 2d 05 de 91 35 |"HKI.¾¯;Ëê8-.Þ.5|
000000d0 59 52 e6 2e 13 8f 9e 8c 1d 3a 02 16 4e 93 8a 2d |YRæ......:..N..-|
000000e0 e0 32 9f cc 87 b3 a5 bd 9a 2f 41 9f 7e fa 55 40 |à2.Ì.³¥½./A.~úU@|
000000f0 a5 01 cc 5e 22 03 35 d8 cd ff e0 33 14 66 7f 71 |¥.Ì^".5ØÍÿà3.f.q|
00000100 bb 92 33 72 29 d2 75 9d 9e 35 c1 90 a8 f7 d7 dc |».3r)Òu..5Á.¨÷×Ü|
00000110 fe 06 fb df fb 3e 2c ba 95 61 e0 9a 7a 5e ee e3 |þ.ûßû>,º.aà.z^îã|
00000120 23 2e c3 3d c0 39 39 d3 e3 23 30 4e ee e5 8a a4 |#.Ã=À99Óã#0Nîå.¤|
00000130 11 05 66 87 2f bf 8a 0c a5 d6 33 b9 20 39 59 d5 |..f./¿..¥Ö3¹ 9YÕ|
00000140 d6 5f 89 90 f7 c3 7c 9b d9 17 6d 20 f1 87 fd a9 |Ö_..÷Ã|.Ù.m ñ.ý©|
00000150 f3 d8 ba 74 48 46 49 79 66 a0 5d 1b 69 c9 46 1f |óغtHFIyf ].iÉF.|
00000160 58 2d 86 11 e9 a7 65 02 25 8e 23 f9 47 d4 54 de |X-..é§e.%.#ùGÔTÞ|
00000170 72 55 92 76 50 86 fa 3a b5 4b a7 3c 4d 8b 71 54 |rU.vP.ú:µK§<M.qT|
00000180 85 c6 8a 16 34 d7 5b 27 e3 dc 33 03 c7 14 ac 51 |.Æ..4×['ãÜ3.Ç.¬Q|
00000190 cc 95 43 05 a3 2b 42 e5 0c 41 2f 15 08 13 11 f4 |Ì.C.£+Bå.A/....ô|
000001a0 1d a6 b5 18 27 2d df d8 b6 06 66 35 9c 25 ee 27 |.¦µ.'-ßض.f5.%î'|
000001b0 b4 d0 59 61 45 5a 75 91 4c fb 8b a6 12 96 cd 59 |´ÐYaEZu.Lû.¦..ÍY|
000001c0 64 20 df f1 e7 f6 71 e1 71 0d 3f 6b 5a 86 8f 72 |d ßñçöqáq.?kZ..r|
000001d0 ef 56 32 5c 90 7c 69 52 2c a0 b6 7d 50 02 fc cf |ïV2\.|iR, ¶}P.üÏ|
000001e0 3c 5e 1c 3a b4 06 85 06 ee 99 2d 29 6e 19 12 f2 |<^.:´...î.-)n..ò|
000001f0 b1 52 dc 5d de c8 2f 7f 47 b9 c3 a2 29 4f ea f9 |±RÜ]ÞÈ/.G¹Ã¢)Oêù|
00000200
Den så ret tilfældig ud, sådan som den burde. Så lad
os se på sektor 37:
dd if=test.tc skip=37 count=1 |hexdump -Cv
1+0 records in
1+0 records out
00000000 69 2d 9f 8f 96 33 ad aa 0b 45 09 3a 77 82 a3 db |i-...3ª.E.:w.£Û|
00000010 f1 d8 f9 69 84 ab 4c 33 40 d1 b5 69 60 33 6d 0a |ñØùi.«L3@ѵi`3m.|
00000020 e1 3b 8a af 91 c4 10 5e 9c 66 45 86 31 f9 81 f0 |á;.¯.Ä.^.fE.1ù.ð|
00000030 78 d5 a2 16 70 d9 d7 0f 69 fa b2 f7 c5 82 72 df |xÕ¢.pÙ×.iú²÷Å.rß|
00000040 2c 14 6b 07 24 cd 51 16 4a 20 e9 54 c7 25 b7 bb |,.k.$ÍQ.J éTÇ%·»|
00000050 62 1a ff ea 57 9e 80 5f 9a ff 7b 14 aa 47 40 52 |b.ÿêW.._.ÿ{.ªG@R|
00000060 fa 47 a6 4a 72 02 19 3c 97 d3 49 18 56 90 a3 84 |úG¦Jr..<.ÓI.V.£.|
00000070 5d d6 82 35 4e 07 95 26 8f 17 57 0b f3 d3 d0 fe |]Ö.5N..&..W.óÓÐþ|
00000080 a8 69 be cc 56 7d 69 c9 77 12 a8 2d b7 65 e9 3b |¨i¾ÌV}iÉw.¨-·eé;|
00000090 fb 87 03 d0 93 f1 ae 34 01 89 80 29 7e 1c 2c e5 |û..Ð.ñ®4...)~.,å|
000000a0 ad 87 cd 01 22 e0 50 21 1a 9e b7 71 d5 7e 78 46 |.Í."àP!..·qÕ~xF|
000000b0 22 dc 00 a4 7b 17 e7 94 21 ed 41 b0 17 33 8b 40 |"Ü.¤{.ç.!íA°.3.@|
000000c0 47 2f f7 f1 60 d9 13 83 ae 8d 84 95 60 b9 2d 8d |G/÷ñ`Ù..®...`¹-.|
000000d0 3c 35 5a 96 76 e8 22 34 78 5d be ae 2b f4 36 95 |<5Z.vè"4x]¾®+ô6.|
000000e0 85 55 23 74 e2 d4 19 05 ff 48 fd 27 1b 9d e9 f8 |.U#tâÔ..ÿHý'..éø|
000000f0 c0 66 70 e6 47 64 89 60 a8 98 5c 8b 71 01 c3 c9 |ÀfpæGd.`¨.\.q.ÃÉ|
00000100 de f5 8f ca 4c b5 c9 25 fb 52 7d 28 cd 90 6b 64 |Þõ.ÊLµÉ%ûR}(Í.kd|
00000110 9b 61 47 67 9e 59 90 02 f0 06 5c 22 1f 39 52 5b |.aGg.Y..ð.\".9R[|
00000120 46 49 7f 85 a5 5e 85 6b 86 44 8c f6 8b 82 36 1c |FI..¥^.k.D.ö..6.|
00000130 74 62 da 3f 4a d8 36 b4 c0 b1 8f 01 45 5e e5 6d |tbÚ?JØ6´À±..E^åm|
00000140 b3 38 35 28 92 a4 c0 23 bc 70 d1 98 94 e0 41 11 |³85(.¤À#¼pÑ..àA.|
00000150 96 bf 06 cc 2d 21 f5 c1 03 c7 e1 a3 0c ae fa a7 |.¿.Ì-!õÁ.Çá£.®ú§|
00000160 3d 4a 3a a9 8c c0 d9 ba 40 e9 9f 41 22 b3 e8 66 |=J:©.ÀÙº@é.A"³èf|
00000170 17 32 2e ce 35 e1 46 82 d0 2c 1b 84 28 ec cd ec |.2.Î5áF.Ð,..(ìÍì|
00000180 e0 a1 36 ae 51 b0 e7 9f 86 bb 8f bb a2 73 10 e9 |à¡6®Q°ç..».»¢s.é|
00000190 a9 f2 ff bd c6 4c fe 5d 69 26 93 ad 6d 74 ad 4c |©òÿ½ÆLþ]i&.mtL|
000001a0 78 c1 09 a0 42 4a 63 60 d3 61 da 8d f9 42 52 9f |xÁ. BJc`ÓaÚ.ùBR.|
000001b0 d1 b7 e5 d9 20 3d c9 29 29 9c 37 1e 77 f1 71 e1 |Ñ·åÙ =É)).7.wñqá|
000001c0 01 47 63 49 82 91 cd 59 14 6a 83 d3 3f e1 33 ca |.GcI..ÍY.j.Ó?á3Ê|
000001d0 8a 31 8e e4 f5 1b d5 ea 49 c7 0a c5 35 65 40 77 |.1.äõ.ÕêIÇ.Å5e@w|
000001e0 59 39 a0 82 d1 61 39 be 8b fe 91 91 0b 7e ae 4a |Y9 .Ña9¾.þ...~®J|
000001f0 d4 35 60 e5 bb af 93 c7 22 de 7f 1a 4c 28 56 41 |Ô5`廯.Ç"Þ..L(VA|
Den ser også tilfældig ud. Og ved første øjekast er
der ingen sammenhæng mellem de to. Men lad os så
prøve at XORe dem sammen:
dd if=test.tc skip=36 count=1 | ~/c/xor/xor <( dd if=test.tc skip=37 count=1 ) | hexdump -Cv
1+0 records in
1+0 records out
1+0 records in
1+0 records out
00000000 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
00000010 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
00000020 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
00000030 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
00000040 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
00000050 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
00000060 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
00000070 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
00000080 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
00000090 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
000000a0 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
000000b0 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
000000c0 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
000000d0 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
000000e0 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
000000f0 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
00000100 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
00000110 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
00000120 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
00000130 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
00000140 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
00000150 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
00000160 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
00000170 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
00000180 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
00000190 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
000001a0 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
000001b0 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
000001c0 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
000001d0 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
000001e0 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
000001f0 65 67 bc b8 65 67 bc b8 65 67 bc b8 65 67 bc b8 |eg¼¸eg¼¸eg¼¸eg¼¸|
00000200
Resultatet burde have set tilfældigt ud, men det gør
det ikke. Filen er konstrueret, så forskellen på data
i de to sektorer udligner forskellen i IV, som jeg
kunne beregne pga. de dårlige IV. Det eneste der står
tilbage er forskellen i whitening af de to sektorer.
Hvis vi tager den anden containerfil, du lavede, så
kan samme resultat findes, men denne gang i sektor 68
og 69.
Jeg har vedhæftet mit xor.c program.
Det vi har været vidne til her er en demonstration
af en svaghed i TrueCrypt. Og en tilsvarende fejl har
jeg også engang fundet i crytoloop. Der er sikkert
mange andre, som har begået den.
--
Kasper Dupont -- der bruger for meget tid på usenet.
Note to self: Don't try to allocate 256000 pages
with GFP_KERNEL on x86.