201208170433 yd9zq
explained decrypted filler
seed 709
From the post to its content
As posted (encrypted)
44A26C1FDD1441C5 8B297B27B334751A 43A72E7996B69F1B C37F18816D306FF1 99D6AD660673A9A4 C75D5239EEE703C8 9018890E94F58817 106639F0ED41ECFF E5B97ECC3F33221A A443906B3F97AF5F B3C80CBE3AF41D27 97498FF31BE77B7B BA85F4E27109763D F5FD7C1F15AC3D0D B04A614F3C0F8842 64B31AB9FDB557D9 33CB3E8FE8E952DC E3428E9656252112 C795D06BED3E7B87 CFD08D8A9D7180E9 0E0980E1F69A106B B415590EBAE9DDEF 1859C8B9BB50A85C 0C8DB64340CD59E0 E6A3A0D07EE9F0FD 6FF2F0906E6E8980 F543FC0009100B1C C3C3D3C975EBA5A4 583D9067440A102B FF802C3D0ABD6739 DCCEDE5F7498EB95 8EAAC001D567E801 F3F94CE16EEAB2BC 80A198A94E19E720 4E2B41B009E1C453 FF8F8CB7CCB5AE6A 3C0BE079D5A9A4AE B2223B656C22F106 89890A2D4FABDF43 F1700CEE28197A7E 8E5C462022FDF235 B36E846203A10C0B 6321B3F252FA0ECF 209151D027D99678 ED8217C7E1972B91 E5F46FBC7176C7A4 60E7D32C05E43646 3CB682AE82F6107B 70A22A4E010846D7 AD7A2A11764A0D16 8B9F3D4DCF1FD7EA 170BCDA7D32B1216 D09899E8A5688188 889B45FBE2815C81 316CCC2416BFEBE5 6C92282D141E8ED6 039E72658810C6C0 2D3B6F0FF02019EA ADE68A1A202A0DEF C653C124A7D00BA1 AAC42D4D5C6A6135 56E95AB5ABF17536 3E52FD1A3ED92DA7 54F9A67D41367915 5D99EABE990C104E 82800265B41D5A46 73279D944CEA7BD1 472F455F4D96D3E4 2C32A8F32984A1B5 4F2181E97179ACD7 6B8B352F874BED7A 396607B3C1230E0D 10D9BCB5BC435C96
- Read the ciphertext. Strip whitespace: 1,168 hex characters = 584 bytes = 73 8-byte 3DES blocks.
- Derive the key. Password =
A858DE45F56D9BC9201208170433(name+title). Key = MD5(password) =5c84e139519997763ac9529d85ead4b9, used as a two-key 3DES key. - Decrypt. 3DES-EDE2 in ECB mode, then strip the PKCS7 padding. The plaintext is 18 GUIDs as hex (shown below).
Decrypted: GUID list
1 bb96c341-3de2-134c-93c7-b53b3e2dff27 2 bce7044b-b7b3-7971-a00a-2b12689df437 3 0cbed226-1655-3462-a3d0-c1d6fec91aa9 4 d551a4d4-f3e1-8e8b-a475-256bb7d8fdce 5 2c40f8a2-349b-2b07-b27f-a464789c687c 6 22d63cfa-fd2d-1046-9c03-5ab5c6214ed8 7 f23cc8bb-be72-5fec-885c-6bdfa1e053eb 8 bbeca3fc-7736-1215-be08-4bd8bbe3c9d2 9 82fb0156-1e55-6179-b5d3-002e79293db1 10 d46ada2e-1b7b-6941-8dcc-5eee360f0579 11 583dd225-a14b-5ca5-99a3-2cc46549c5eb 12 9f7745ea-c890-807f-acaa-9b40e02fd968 13 f200f736-1de2-037d-8925-92bc2e27a3ff 14 755ac4ab-819e-292c-b4f9-332076eec0ae 15 ba854e8c-1f8c-2ce2-9922-4ef23e65a3fe 16 6e496ce2-7a75-75f2-9c6e-dfb18016ef4e 17 2ec711f7-815a-883f-ab2f-9b04ac204479 18 1a4fbd77-7a77-5928-add7-8a2a5828be6c
Explanation
- Explain the mask digits. The version nibble (13th hex digit) of each GUID, read in order, gives
173821516658022785. Exactly this sequence comes out ofnew Random(709).Next(9): the per-post millisecond seed of the mask generator. The other 30 hex digits of each GUID areGuid.NewGuid()output and carry no message. - Explain the count. This post is draw 13 of Run 25 (seed 158,297,437):
new Random(158297437), Next(8,64) per post. The RNG predicts N = 18; the post has N = 18 ✓. The seed is the machine's uptime in ms when the app started (boot 2012-08-15 10:14–10:24). - Conclusion. Filler. The content is fully explained by the two RNGs.