201206261051 vn16h
explained decrypted filler
seed 433
From the post to its content
As posted (encrypted)
5D9AFBDDF48708D1 9ED8E6096A0AA568 C39FEF0B96D19AE4 469DE9ECDD2CA1FD AFDF6F5FB9343BD7 AD70CBBF58CE9FAF 005D918247C24B32 8DA3AAF7DE93D520 97ABCA71C444C019 B90A67A35A798696 A79E363F678D4889 785A29E0C5507BF3 D553135680AA5BDF C6AD9A915E60AA17 7D05477A79A9DDC9 A28C4514E4C13346 CE18C92B19299A9C 98E835F66532033E CBC6B56108449ED9 02FA2B3CB646E09A FFBB7EDFA14CEF1B 9EAD0933A46651B3 D08E7967D51ABD09 D51E770CDC0B7765 3CFCCE3E44BD85E4 5F848D74B043BAFF FDE8479D129DADB1 BA302A3615322110 391F2B83E69220C4 DC456B3C5BE89C38 33F84D846014962F F42082E580C07ADC FEF4E44522414F77 31B4DCC7FB13A546 F5FFE7F51A1D339B 9C37844579499346 749674744A2C958A 9CCECF3ED70055BE 65F8C38F954C8468 A5CF8678384491F0 9B9858C012F1B76B BFD1B051B420F3BE B5F7A79D0A6B11FC A8446F38DBF3CB9C 3CF69F59124F839C 9EDD55EA8C450937 C800872C96613F8C 315D08ECF3CE880C F1916AD5CDEE15E9 15B0093B19A9FC9D 708E783F2BB2FB34 E27BC6C5E75AFA7E 9BDADDBD0BE826F6 928A734C9E590C1D F2C251F68C556D7B AD666F653B09F9FD 30DEF5C6B4E2FDF9 284BE542BA1FF2F7 7D442130473DA0A9 30765CCBFBE4D9B2 7C55186FF99B3980 0463315FE35B40A6 4C991E9E7332C5C3 8CA9746C8BF5964A 977054521DC67CBA AC5EE43D16B6CC68 FBC5A9B42AB69CA6 87F68BD7CCE17326 D492C68ED1BF7481 71686AF2F1E5292E 1C8FD80FD2821C63 D5FBA18B67E593B2 5DACFFBA8FF64DBD
- Read the ciphertext. Strip whitespace: 1,168 hex characters = 584 bytes = 73 8-byte 3DES blocks.
- Derive the key. Password =
A858DE45F56D9BC9(name). Key = MD5(password) =34a14a42e98ff96095af56604e290cae, 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 d49854f9-867e-801c-963f-fbdf350f6f56 2 19a6f10a-68cd-7f04-9b9d-f0ed32d31bba 3 1a37efee-e668-3432-a198-5c414635872e 4 d8605281-3d23-8756-ad6e-a6c1847b341e 5 cdcd8fc6-1c85-625c-a7ea-0d5c74e5ef79 6 46abf5f8-bd71-85c0-8e24-48b8733f9c56 7 41d40bca-195d-8708-a5c1-23fbe05a3d49 8 32e8e43b-b503-6a79-b2f7-3207f3d049d5 9 5b251789-ed70-42c4-977a-4cbabd0bb5a9 10 94d8ee29-766c-827f-a03b-b7fcf849da10 11 e9e17c17-5d5c-2945-a44d-31e004ea95c9 12 29eaade4-34b2-491a-a4b9-d1455bbf29e7 13 a5ae7572-c78d-2904-ba23-664573b4d1f9 14 91d104a8-5d8b-6b93-adb5-5c5f4973428f 15 be180dda-4f26-0cee-a5ff-4bb58adb9b24 16 117b9957-8b15-4000-8a0a-ef57e3087dca 17 64f3c939-d8ed-7f59-ade7-288abd74e406 18 e0714b60-30a9-49a7-93ad-85537f109e55
Explanation
- Explain the mask digits. The version nibble (13th hex digit) of each GUID, read in order, gives
873868864824260474. Exactly this sequence comes out ofnew Random(433).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 6 of Run 3 (seed 1,063,142,882):
new Random(1063142882), Next(8,24) 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-06-14 10:25–10:26). - Conclusion. Filler. The content is fully explained by the two RNGs.