User Tools

Site Tools


netmdocm

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
netmdocm [2010/06/08 06:28] – add info to netmd(0) megadiscmannetmdocm [2011/01/16 14:33] nopsled
Line 166: Line 166:
 ASN.1 Sequence with a data structure that is setup and manipulated by functions called through DICT 187 (these functions are in DICT 188). ASN.1 Sequence with a data structure that is setup and manipulated by functions called through DICT 187 (these functions are in DICT 188).
  
-30 80 +  30 80 
-      02 02 03E9 +        02 02 03E9 
-      04 14 43EA428F71EE7B665D10752E85AB16E5A50C6249 ; MAC +        04 14 43EA428F71EE7B665D10752E85AB16E5A50C6249 ; MAC 
-      04 14 638163B82C4E31810FBEE01B2E7FC25B879586E3 ; Enc(CKEY) ? Offset 0x1E according to Jan (// key is at offset 0x1E! (OMGDecrypter.cpp) +        04 14 638163B82C4E31810FBEE01B2E7FC25B879586E3 ; Enc(CKEY) ? Offset 0x1E according to Jan (// key is at offset 0x1E! (OMGDecrypter.cpp) 
- +        30 80 02 01 6B ; 17 (some time stamp) 
-      30 80 02 01 6B ; 17 (some time stamp) +              02 04 48C2298F 
-            02 04 48C2298F +              02 01 07 ; 7 == creation time of structure 
-            02 01 07 ; 7 == creation time of structure +              02 04 48C2298F 
-            02 04 48C2298F +              02 01 6D ; 109 
-            02 01 6D ; 109 +              02 01 00 
-            02 01 00 +              02 01 65 ; 101 
-            02 01 65 ; 101 +              04 14 C04B513EDE54342D709D0CB8621E646FDDCB345E 
-            04 14 C04B513EDE54342D709D0CB8621E646FDDCB345E +              02 01 00 ; 0 == scrambled form of the maclist id == SalOmgId 
-            02 01 00 ; 0 == scrambled form of the maclist id == SalOmgId +              04 14 010F50000004000000EFF3C3244C602635178457 
-            04 14 010F50000004000000EFF3C3244C602635178457 +              02 01 68 ; 104 
-            02 01 68 ; 104 +              02 02 1FD7 
-            02 02 1FD7 +              02 01 06 ; 6 == source name 
-            02 01 06 ; 6 == source name +              04 15 72617720636F6E74656E7420696D706F7274696E67 
-            04 15 72617720636F6E74656E7420696D706F7274696E67 +                     r a w   c o n t e n t   i m p o r t i n g 
-                   r a w   c o n t e n t   i m p o r t i n g +              02 01 67 ; 103 == flags? 
-            02 01 67 ; 103 == flags? +              02 01 02 
-            02 01 02 +              02 01 01 ; 1 == max checkout? 
-            02 01 01 ; 1 == max checkout? +              02 01 03 
-            02 01 03 +              02 01 08 ; 8 == checkout count? 
-            02 01 08 ; 8 == checkout count? +              02 01 03 
-            02 01 03 +              02 01 05 ; 5 == flags (1|2|4) 
-            02 01 05 ; 5 == flags (1|2|4) +              02 01 04 
-            02 01 04 +              0000 ; End array 
-            0000 ; End array +        30 80 0000 ; Empty array 
-      30 80 0000 ; Empty array +        0000 ; End array
-      0000 ; End array+
  
 ===== maclist1.dat ===== ===== maclist1.dat =====
Line 906: Line 905:
 ===== maclist(1) ===== ===== maclist(1) =====
  
-/* +XOR the SalOmgId with a constant keyexpand that to a symmetric key and apply to the SHA-1 hash of MACLIST.  Compare the result with param3 and return 1 if they are equal.  In other wordsparam3 is a complicated hash of the MACLIST.
-Procedure prototype: +
- maclist(01) +
- +
-Input: +
- +
-SalNonConstPointer const &, +
-SalPointer const &, +
-SalOmgId const &, +
-long, +
-SalExtrinsicsProg const & +
- +
-Output: +
- +
-long +
- +
-*/+
  
 ===== Sample input: ===== ===== Sample input: =====
Line 948: Line 931:
 } ; } ;
  
- 
-XOR the SalOmgId with a constant key, expand that to a symmetric key and apply to the SHA-1 hash of MACLIST.  Compare the result with param3 and return 1 if they are equal.  In other words, param3 is a complicated hash of the MACLIST. 
  
 ===== maclist(8) ===== ===== maclist(8) =====
Line 1541: Line 1522:
 </code> </code>
  
-===== maclist.ocm  ===== 
- 
-// maclist(1) 
-// 
-// work in progress 
- 
-<code> 
- 
-int  
-maclist_0x01(blob_t SalOmgId, blob_t maclist2dat, blob_t OmgIcvCache) 
-{ 
-  static blob_t pad[16] = {0x20, 0xBE, 0xDE, 0x72, 0xA3, 0xB8, 0x62, 0x60,  
-                           0x71, 0x44, 0x3A, 0x33, 0xE9, 0xAC, 0x69, 0xCE}; 
-  static SHA1state, hash_maclist, hash_maclist_salomgid, xor_SalOmgId; 
- 
-  SHA1state             = BCX_19_InitSHA1(); 
-  BCX_1A_SHA1AddData(maclist, 0, SHA1state); 
-  hash_maclist         = BCX_1B_SHA1Finish(SHA1state); 
- 
-  xor_SalOmgId          = BCX_06_XorBlobs(SalOmgId, pad); 
-  hash_maclist_salomgid = salenc_sha1(SalOmgId_xor, hash_maclist); 
- 
-  hash_maclist == hash_xorSalOmgId? TRUE: FALSE   
-} 
  
-</code>  
netmdocm.txt · Last modified: 2024/05/21 14:50 by nopsled

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki