201210070224 112uho
explained decrypted filler
3DES(name+title) ECB, 19 GUIDs, seed 840
From the post to its content
As posted (encrypted)
3355CD150433613D DD9FF4BB96E6589A B1A257BBE80ECD84 D341DA64C85C8BDD 795B88CD76B0B301 056F002B98DDF5D9 288844136504629D 4A2ADF069F631B7D 833CD1115D553937 98BE1364B4DA6D2E 335E23BD5421BF71 33B1CC8B7B9EC2A8 50B550C49497F664 13AA1E791D5A72FB 07CAC86242BDF0DA DCC5B7698D6E268A EC92A44475579157 6D4D74F918A17A48 7DD1D91C3264B8FF FD351A3DED71A1E5 FC62DA5F32EB4B57 CFD451FA1235C48B E5680156B7E7B11A 02D2E90E287D0BC6 32FA8F6A5BA4302D FAF084152B64FF93 29FE9D5C7812B4E1 908C0F67477A5979 F7EE0B4D794E886C 73DF8C9264002E9E 8C53E7674ED65CA2 A0C0A1FDF83FC311 CE713BE2485293D8 E14DBDAA99EDA9B3 67C96C9CDCFA5B9F B37D6E748D4E073E 6EC6F7F24F61CACC 783B669F71D5B0EE 2AF3DB4049E38BEF 42C450EB2CA30F16 8F8F607000E9DC76 18344571EAD55BAA 5C1C12BEE1277254 073E90833090DB80 4891B2318FDCE7CB B3952798C73DE3F0 8B68C48A71EFCD00 4BAF09B1F0E7FF18 91F1D406FB5F39EA E2CC76E91023D3F4 28AFEE60A069E75A 7D2309BB201B534A D5154AE478A45D58 EE4E4E5B8AEC89B1 B1C8A18811C2E2F4 D4D173864002DD1A 8259FB32AD0718F2 739644C3FFD17A2E 86708D206B3C656E 8CFE53E15E930147 80B23FFDEE4E6179 6B966E3DE4031727 62C5FEC85DF8D556 CA4DED0745B44EFC 59BC7402E5B765B9 4D01B2828523CC6B 1B7909F8FEB7F917 9C7D72A270A707AA 50D060CC4CBF78DB 82408EF67FF0B97E 6DE0E6921E5C7678 11C2BB846E7F4F4B 4D9B845C0F2E20B1 AFA0221BE1137543 660B211D149C3B65 3B8A9C3A99715797 A32646833289F18E
- Read the ciphertext. Strip whitespace: 1,232 hex characters = 616 bytes = 77 8-byte 3DES blocks.
- Derive the key. Password =
A858DE45F56D9BC9201210070224(name+title). Key = MD5(password) =0588e7a4fa37983aaf8058379f68f766, used as a two-key 3DES key. - Decrypt. 3DES-EDE2 in ECB mode, then strip the PKCS7 padding. The plaintext is 19 GUIDs as hex (shown below).
Decrypted: GUID list
1 16ec7a20-f7b5-5b18-bea6-e3f43695e71e 2 a164f2e0-2fb8-2e2a-a156-00e636312d37 3 cfe607ec-d1b4-8208-b012-a9475e3907f5 4 18a61442-2abf-7311-a6ff-81960fdc4a33 5 0bdefd23-d9b1-4755-ab10-b13ba56a2d79 6 c41c8f39-9f3c-5e4e-a646-3e6dec06d61b 7 dd08cdea-d347-21d1-9492-a5a12e442fd2 8 f576931a-1812-70ed-a04e-01540d7e9990 9 371881a8-a26a-810c-94a0-7aae79ec11e9 10 eb4869e2-4e22-0aec-be5b-c39a6bf85acf 11 54ce261e-676a-1105-8398-3225da555271 12 55ab3598-e09b-2143-a372-bb99d36eccbe 13 f2311124-bcbb-0ee6-b04f-ff4d2df85c44 14 3717947f-67ed-475f-b8c8-f840220b716a 15 19a1d2a3-b8d8-81d8-bbfc-b9c4aae980e0 16 a7f164dd-dcff-5f34-811c-bb019734522d 17 35a37515-5970-83da-8fcb-bcddadf8a72e 18 f3dea49a-a09f-7cfe-9e67-e031fb34b8ff 19 717c5aa6-29b5-323e-b42b-f0471a4173e6
Explanation
- Explain the mask digits. The version nibble (13th hex digit) of each GUID, read in order, gives
5287452780120485873. Exactly this sequence comes out ofnew Random(840).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 355 of Run 35 (seed 854,622,578):
new Random(854622578), Next(8,64) per post. The RNG predicts N = 19; the post has N = 19 ✓. The seed is the machine's uptime in ms when the app started (boot 2012-09-22 10:16–10:36). - Conclusion. Filler. The content is fully explained by the two RNGs.