201209241258 10dkrk
explained decrypted filler
3DES(name+title) ECB, 19 GUIDs, seed 128
From the post to its content
As posted (encrypted)
77B5128B56D9A0CF E4AB16BD4796B241 530D0E5255CC1CA4 8A5297449EE399F7 F4EB44343838B2E0 95326FDA1E07CE24 7D873428A75C8391 7224B9E013320BAC A17A552614EAA08F 7AF0CFB567BD01D5 B71C0A8DA1ADE456 2EE084D0823679F9 AC2D0D68BA0C2284 38A1C9E647DADDA7 FACF6453E0B50B5E EEFE48E8DC77E7FB D10B07316CF66467 D226A53E44C74647 4A1DAB118EFFCFEC A7A2BFB4A60DB0B1 E2E5E596A2A93C1A 26D0D0497F1F9112 4C91FF402B427D6B 3376F58CB01DE086 027E6037D2B69838 B950D475A8A25A1E 41D646A96B267F99 3D42DD7658DDAB9F 685003C46D645605 8623FC7AA3FA0DB0 F225956797E0E57B 243E8A618542DF55 1F49F5A71DBCD211 287C691660F57F60 2978B47014AA445E B428230B1C1A78D9 5459BDCDA2BC465F 2F3150A5FB31A7F5 2D30BD0FF449BB51 B4B8007F76EF1625 51255FBB790B5BD9 436CAD7F6FF9AAE2 7C32B1C964C623A6 DAF1862EED388A6C 64537A360C04870F 2A0DD051523FE2CC 6374106D3CF61ACD BA99D222178F748A 7217A3B3C0937A4A 414BF761A606A055 95D782E059A98576 6D1D12706AEB2F1E A27A3C14BA7BDE67 53B9792AF3922EBC D20D9FF4128CD4A5 BB3BD972C620B5B2 AD90043C61BEB6B8 A3E55E986B0D7D52 7E4399BEC581E2E9 94369F19A0176C17 E797A6C9ABEEF986 BF9B4342EAB54DB4 50297463C60EA109 548AB762DBCC0A6C 4EFC112AA87B0EDD 7BBF83329E35F23C 7C59AE2C0633C5B8 AD69CB2994B58957 E297D467B5A93BFC 6B6D4AC91EEC1C46 5272EAF4B7DCA067 F38636A226F23BD4 5FAD7D3D827E9598 BC727199E267F66C 74D1469D205D90AA 799C46C637744ECF A5D5FF902CE37FF8
- Read the ciphertext. Strip whitespace: 1,232 hex characters = 616 bytes = 77 8-byte 3DES blocks.
- Derive the key. Password =
A858DE45F56D9BC9201209241258(name+title). Key = MD5(password) =0286b6edec14e56f9d159f701994335a, 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 42770b10-0700-5ecb-9fec-e835361c5813 2 dfff71b1-6cf3-30d0-9eda-927c07ec154b 3 04b70347-977c-261c-a228-6ee255f023c9 4 583ea1e4-1d6b-7ba2-aa61-17e496fef713 5 b3d106ad-0a3a-8b1e-8a43-40bea7831e81 6 29f28436-3c96-3561-b8e7-c379ce1f578c 7 a9d45fac-c0f2-2ab3-8bdb-293154bb6719 8 0bb97d67-1161-589a-97fb-0239a03bce58 9 5ac89c1d-5f8e-7c7b-9b0f-361401f58e9c 10 32e11747-0c8c-49b9-b161-60636ed85168 11 74d483f2-ea11-58f8-af6e-ab44d0ff4b34 12 0a3656cd-5284-3ea8-aef2-32de333efd04 13 908e7fd2-e7d5-58af-a2ee-50039db8d242 14 6e750a7e-add3-0f08-be3e-d3ab1dcc7f3f 15 9c0549d5-d60c-5588-9f6b-e50f604210fa 16 0cf0cbe9-00b7-8469-ad2d-57bc76142d79 17 ee007b84-4709-6b05-8018-51360a4d04a5 18 c8a22e60-0d51-3dcc-ae56-990e2efa3e9e 19 4a1a85a0-4dc0-19b9-bdf6-176dd721fb05
Explanation
- Explain the mask digits. The version nibble (13th hex digit) of each GUID, read in order, gives
5327832574535058631. Exactly this sequence comes out ofnew Random(128).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 194 of Run 34 (seed 83,105,000):
new Random(83105000), 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:23–10:24). - Conclusion. Filler. The content is fully explained by the two RNGs.