Funny looking line noise

Jan 13, 2011 14:58

So this Ukrainian dude I follow on Twitter posted a link to this diplomatic cable from Kyrgyzstan, which has all kinds of goofy looking line noise in it. In fact, even the file name is jacked up -- it should be BISHKEK, not BISHIEK, which makes me think of some town in the frozen steppes whose sole export is yaoi manga.

Just for grins, I redacted the first three paragraphs as best I could (some names are really mangled, so I left them that way) and noticed a funny pattern in the offsets of the variant characters: most of them are powers of 2.

The tinfoil-hat explanation is that this pattern is some kind of steganography. I think it's more likely that it was some kind of copying or transmission error, though I'm not sure what sort of error would exhibit this kind of patterned data corruption. The distribution of borked characters by offset in the string looks fairly random, but then again I haven't graphed it or anything. Anyone got any clever ideas?

First, here's my redacted text as a Python string.

After making sure it lined up with the string as I'd cut and pasted it from the cable, I ran the following bit of Python over them:

for i in range(0, len(redacted)):
if ord(original[i]) != ord(redacted[i]):
print str(i), ':', str(ord(redacted[i]) - ord(original[i]))

And here's what came out. The number before the colon is the offset in the string, indexed from 0; the number after the colon is the difference in ASCII value between the redacted string (i.e., my best guess as to what was intended) and the cable we got. For instance, the ASCII value of 'u' is 117 and the ASCII value of '5' is 53; the difference between them is 64. A negative value just means that the "fixed" value comes later in the ASCII table than the value that appeared in the cable.

17 : 64
19 : 32
20 : 64
31 : 64
35 : 64
45 : 32
46 : 66
49 : 32
95 : 8
108 : 4
123 : 2
127 : 8
131 : 4
135 : 8
149 : 4
150 : 8
155 : -32
156 : 4
168 : 8
172 : -23
177 : 64
181 : 64
184 : 32
185 : 64
199 : 64
203 : 64
208 : 4
209 : 32
217 : 32
218 : 2
222 : 8
233 : 12
234 : 32
235 : 64
238 : 49
239 : -6
247 : 4
250 : 4
253 : 64
257 : 64
260 : 64
281 : 32
282 : 64
284 : 8
307 : 64
308 : 4
309 : 8
314 : 32
315 : 64
326 : 11
328 : 12
329 : 60
333 : 64
342 : 12
344 : 64
350 : 64
354 : 64
361 : 64
364 : 32
365 : 64
368 : 64
371 : 32
372 : 64
386 : 32
394 : 64
399 : 4
402 : 4
410 : 12
414 : 32
417 : 32
420 : 8
421 : 32
422 : 64
429 : -33
439 : 32
440 : 64
445 : 8
447 : 4
454 : 64
456 : 8
463 : 12
465 : 36
466 : 4
470 : 4
474 : 8
479 : 35
484 : 8
489 : 64
492 : 32
494 : 8
498 : 8
500 : 64
508 : 8
510 : 32
511 : 64
523 : 8
527 : 16
534 : 8
540 : 4
549 : 32
550 : 64
565 : 2
568 : 64
579 : 8
615 : 8
636 : 32
655 : 64
659 : 64
661 : 8
666 : 32
670 : 64
675 : 4
676 : 32
685 : 2
689 : 8
705 : 2
711 : 32
740 : 64
744 : 64
749 : 4
752 : 4
757 : 64
758 : 4
767 : 32
771 : 32
772 : 64
778 : 32
782 : 64
786 : 72
800 : 64
801 : 4
815 : 2
824 : 64
831 : 64
835 : 64
840 : 4
842 : 64
844 : 16
846 : 2
852 : 32
854 : 4
867 : 64
872 : 12
874 : 64
881 : -33
892 : 4
894 : 32
896 : 8
898 : 64
909 : 6
923 : 64
928 : 4
933 : 64
934 : 4
937 : 64
940 : 32
951 : 64
953 : -49
957 : 8
959 : 2
961 : 32
962 : 64
966 : 4
970 : 4
972 : 32
973 : 64
983 : 32
990 : 64
1003 : -30
1018 : 64
1021 : 64
1026 : 4
1028 : 64
1031 : 64
1033 : 4
1037 : 8
1042 : 64
1048 : 32
1049 : 64
1050 : 4
1051 : 8
1054 : 4
1056 : 32
1060 : 2
1061 : 4
1062 : 32
1063 : 64
1069 : 64
1071 : 8
1074 : 4
1083 : 64
1096 : 8
1104 : 32
1105 : 64
1107 : 32
1108 : 64
1113 : 12
1118 : 32
1120 : 4
1135 : 64
1143 : 2
1155 : 8
1164 : 64
1165 : 12
1168 : 8
1169 : 8
1170 : 32
1181 : 4
1198 : 32
1202 : 64
1207 : 4
1208 : 32
1223 : 64
1226 : 32
1227 : 64
1229 : 8
1241 : 64
1242 : 12
1244 : 64
1245 : 64
1248 : 64
1255 : 32
1258 : 64
1262 : 2
1263 : 8
1265 : 64
1269 : 6
1283 : 64
1285 : 8
1286 : 32
1287 : 64
1288 : 8
1297 : 36
1298 : 4
1313 : 8
1321 : 32
1322 : 64
1329 : 2
1336 : 4
1359 : 8
1378 : 32
1385 : 32
1395 : 64
1396 : 2
1402 : 32
1406 : 64
1414 : 4
1420 : 32
1421 : 2
1429 : 32
1438 : 64
1442 : 64
1453 : 68
1456 : 64
1460 : 4
1461 : 12
1464 : 8
1469 : 32
1473 : 64
1475 : 8
1488 : -2
1489 : 8
1491 : -1

math, swiss army python, puzzles

Previous post Next post
Up