201309060659 1ltw50
explained decrypted filler
seed 547
From the post to its content
As posted (encrypted)
CED938569B68B58C BB4CB58D402F7B78 BE1248E5EC037E9A F14904C964BADF6E 5708D65DA14E2FBE 8F22D2CA77981AFB EB838ECFDA35F8DB B05540518E345806 3F47DC88D937BD16 EFE3FFC013C7DAED 3467211466647F18 B89DB2BB5EFD2C73 C0CF41BBB5288FF1 657CFF1FD774F570 E0D2F93EB3241965 224A42F10DEFCCF1 BDA9C32BFE13DF5F DDA36A46B25CF4E0 822E5684DB4E383F 9C2AB645195AA48B 71E4D6906B39F29B 3C2E4D6F4881FC65 D5C31F1688F11A93 5C9EEB4933CEE127 D6DA5DD3186BBE39 51F4F1CA5BF47C21 ACAB0CBA5B57DBF8 F37C30D6B70341DB 9F25A6FB7FE86F3B 7EB55CC740DA1227 F36D0494C76090D9 EA6C008CA9232FFA 7654EB56F38505B1
- Read the ciphertext. Strip whitespace: 528 hex characters = 264 bytes = 33 8-byte 3DES blocks.
- Derive the key. Password =
A858DE45F56D9BC9201309060659(name+title). Key = MD5(password) =5e9b7a902ea0707d316be7258804d35a, used as a two-key 3DES key. - Decrypt. 3DES-EDE2 in ECB mode, then strip the PKCS7 padding. The plaintext is 8 GUIDs as hex (shown below).
Decrypted: GUID list
1 e7f01087-cbbe-4802-8654-7f3d1d04cd78 2 f658ea4d-2c08-25cb-b5d8-65291425cc08 3 b4b03ad2-5879-1e93-8306-69e5e1a3f183 4 50d3ddbc-95d8-24e3-88d8-92282bfb889b 5 a841e3a5-5c40-1b69-9904-aaedcde4e16b 6 edba7da3-d20b-58cd-9c85-defbd646163e 7 da723731-8dbf-85b6-ada7-4c899a49f487 8 79a04dc0-189e-76d6-a049-54df1656a8f0
Explanation
- Explain the mask digits. The version nibble (13th hex digit) of each GUID, read in order, gives
42121587. Exactly this sequence comes out ofnew Random(547).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 50 of Run 52 (seed 1,430,705,843):
new Random(1430705843), 4·Next(1,12) per post. The RNG predicts N = 8; the post has N = 8 ✓. The seed is the machine's uptime in ms when the app started (boot 2013-08-14 07:34–10:34). - Conclusion. Filler. The content is fully explained by the two RNGs.