201210031801 10we1w
explained decrypted filler
3DES(name+title) ECB, 18 GUIDs, seed 621
From the post to its content
As posted (encrypted)
B395CDCC5BA2DBE8 5007FC00BABFE74B 058C26ECB43C5393 3FC11054EE140104 5EF727B12C5611F1 525B3D6FD6E09D13 8A9B1B0C56247E4D F3511A84DAEF8C7D 74EF98BC83C0808B B4531C0FF9F7DE19 B96443B589041104 C9BC3FD1C6FD4160 763785B2CC16E0C0 7043C2FDDD0D2321 6EC6334C70E2D52A 2C1A681AFB0A1B52 ED0EF58883479DCC 59E7D98CC36BA673 7ED360C33F5C2249 B083BFA1D74BCA9C 1D867CA56EFD77F7 39F2972FBBDA46D3 3FA1C549B5C087D3 8160D90ECA7E0555 23BC881588305B5B 9EFDC3F531964991 B83138D91084A9CE 1D0BD9300E5500F2 10C5D4CB5C644CA0 7B50FBD2D9EA69CD 476A7FEB3CD9E0DC 2AA0053935C93D2A 94AB31436A161E30 EB6107AD23811F4D DCAB170A4D66A0B5 AA17E29B98B8F7D0 4F6CCE5E84E91284 8C0353087387636A 381172862CF50F33 06351553A379437E 9ED2873E65644876 C7F5B3579B96B3BF AD7DCE4C81A86CFA 226196F230443E72 75E192035110AF68 CA732E93F76863C4 C646A194B635FF2B F80B9925B4B43D7C 24F1F84D42FD09A3 7786EAD97BF9727A 7F6D64446AB03C1B F2C259BAA5A1FFC1 4F40FC0B9F04A8E5 1D2212CAB799F222 8CCAFACF4D1BCD24 AE9A25F36F3BB7E5 0FB202263B31615D 5E6538EC0908103C F5E857B6EFE4B9A8 79CFE98BD6D10AD2 87C22422F5A79113 45DE1639309471EB 75B7E4ECF3448756 8D317882B34BB449 F59BD1EA26578611 8A5A46F9B8C55E46 615A26D354A12A5F 4F00582666D41114 EC277688373B6265 DFFC5107CE234EF8 3728FF165F26449E DBDB9C347209054D 7CF5C7FC47615741
- Read the ciphertext. Strip whitespace: 1,168 hex characters = 584 bytes = 73 8-byte 3DES blocks.
- Derive the key. Password =
A858DE45F56D9BC9201210031801(name+title). Key = MD5(password) =2cfba1951366214b43e65f2acef3b0f2, 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 93571166-94f0-1c05-a70f-1a9dd83122c0 2 ac58f6d2-cd82-05c7-adce-a443d1557f87 3 5bbcb074-e002-7940-875c-720ebcaf9c49 4 ed0ee08a-a56a-0922-89eb-53e4b1e606a4 5 65cfce32-a098-552c-a404-ac48dc05136b 6 c20da25b-b7a0-2116-858a-af5d94b62e26 7 cd67956d-59ae-10d1-a94e-1018a0361e25 8 c9b8ad0c-9330-8adc-9010-8bc209bcdf0f 9 db3a2a49-6156-7b24-81f8-e2a85f4c8c63 10 d9612109-aa16-2651-b119-f4e1bb452646 11 e3f37769-8488-7bc0-a92f-6ef36057fc3b 12 0df00685-d842-20f6-9723-1ea5c16c42b7 13 f400c24f-852d-4be7-9383-a9962bd5c237 14 494b36a7-cdef-4b11-aca4-595b0275fb32 15 2d3c8ad3-8509-5539-9c09-9eb7f849e1ef 16 45bc9a88-f67b-7bf8-9152-0fac46e11be6 17 353a6a3d-5fd2-8cbd-8940-93873bd5764f 18 26d10b3d-75f8-071c-a578-561528a51d0b
Explanation
- Explain the mask digits. The version nibble (13th hex digit) of each GUID, read in order, gives
107052187272445780. Exactly this sequence comes out ofnew Random(621).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 114 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.