201210052223 110x0p
explained decrypted filler
3DES(name+title) ECB, 18 GUIDs, seed 894
From the post to its content
As posted (encrypted)
09E1D61706CE90C0 060E510881EBAD7B D7A36E1858B4CFAF 08199E5F2385C9C3 04A453BBCEC9D733 730C1209E344B78B 70280BFA577BA414 9059CF44C9957AFF C2E9684BABDB07FE 7A48D7C22AE1DC8F 9850709503D2E1FC 185431D15902DA28 C7BA00C09347FCCC 010D9A983665AA90 D58371912A57BFAC A3CDFD9D7593D67F 5726F748D4634C40 4396B176F1C81EBB B4BD2E4EF64573C5 EA6444DF7B0A0709 94FC0DA68FF1DB48 6007D1E85D8A916A 4D9FD693BC388CE9 2C01DEFD733E7866 071F9EFDEB6A02EA A74196124046EB2A 2B733F57883C2231 8244398EDA82C07A E8396BA4676EA74F AC44164C424E76BB 582341125C0DAFD2 BEF39142525DF48F 6D4039B01E0394C0 308616B672C7C29B 94F2F7AAE9E8413A 5C83C66C658FCDF1 38706884AEA1496E AD14793BFD714451 55B505E98F0FB5D9 4DD69689F49C020B 51C2487D6994F214 6CC78F1896C42BE8 301773B024354457 EB2A7BFEC1D81BCF 6220B1A7D22BA75D 925FBADF7ABA6DB3 CBFC70B8734B996D 67883C417B1F720C C427ED44F48AAADE B422D1AD5B762646 74AFF789F959E406 432A68DA864D54BF DFCF6FDCDBF70B99 3C2B1706FDC48D70 40E2A9FEB68439E9 632461DC3E83F3FB 61CBCABF03E2F1E1 533FF52C1065F0DE 74F071D4C5DFFE0C 5C94120F31FF769C 423BFB3CF0A394B5 1B33C24741FF7080 362577EC1DA9A07B 9435732FD530298F F1CC3C51341642D8 8E260CE744FCEC20 AD6097AC24E0CF94 DEA672FF87B78E72 51D6DA02A1ED75BF 2623E16A090FEFE9 426933EB4CB29B73 52BA6E12FC4B4FB3 2E74BF03A69DF97D
- Read the ciphertext. Strip whitespace: 1,168 hex characters = 584 bytes = 73 8-byte 3DES blocks.
- Derive the key. Password =
A858DE45F56D9BC9201210052223(name+title). Key = MD5(password) =b686405cf1e151a44b84f57650e340bd, 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 92a02ee1-5ef4-66f5-b8e1-fad9c75668ab 2 954ebf0f-1a60-1c8d-9b89-f0c27977a5f3 3 b4b4bf0e-4287-5eb9-b02d-4f23f4c0f6af 4 913128e5-86e0-34e7-a8c4-af66afaac57f 5 9133a577-776b-7149-88e2-c3e17a004d8d 6 b6d43c43-be69-7c79-939b-d9fd7e3e30f6 7 756aa288-3ed0-46ed-adac-dc886b5c2a7e 8 1a496890-faef-8cfd-b551-709605cdeb6c 9 31188d9f-35a1-5b42-95f2-493d109374e0 10 7c8553cd-db10-88b5-9c77-98fdba0b2ebd 11 5791cf1e-d2fb-8f59-9567-12e74868d67d 12 a78f8e74-4be9-3850-b8f7-7ac5a7196eb2 13 08b317e8-33f0-1d51-92bc-c767f60d449e 14 40ac0d88-0d3e-545a-b34a-2c1bb31b0456 15 e31f2998-2541-636d-b582-887426826a6c 16 017a6641-aaec-364e-bd03-a6ae202969b9 17 f12f2763-33af-5c72-8dc6-a6a3dbdb5840 18 950c7fa8-e595-2d92-8cac-5730537a1be6
Explanation
- Explain the mask digits. The version nibble (13th hex digit) of each GUID, read in order, gives
615377485883156352. Exactly this sequence comes out ofnew Random(894).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 271 of Run 35 (seed 854,622,578):
new Random(854622578), 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-09-22 10:16–10:36). - Conclusion. Filler. The content is fully explained by the two RNGs.