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
Last revisionBoth sides next revision
netmdocm [2011/01/15 13:12] nopslednetmdocm [2011/01/16 14:43] nopsled
Line 937: Line 937:
  
 In other words, this extracts the 0-extension of a MACLIST and an encrypted hash of that. In other words, this extracts the 0-extension of a MACLIST and an encrypted hash of that.
 +
 +See pcmaclist(6)
  
 /* /*
Line 1474: Line 1476:
  
  
-===== netmd.ocm Decompiled ===== 
-<code> 
- 
-Dict[0xf9] = {0x63, 0x81, 0x63, 0xB8, 0x2C, 0x4E, 0x31,  
-              0x81, 0x0F, 0xBE, 0xE0, 0x1B, 0x2E, 0x7F,  
-              0xC2, 0x5B, 0x87, 0x95, 0x86, 0xE3}; 
- 
- 
-// CIPHERTEXT must be a serialized and encrypted blob (see dev_0xd8/dev_0xd9). 
-// The PLAINTEXT is appended to that blob and the serialized and encrypted result is returned. 
-blob_t 
-netmd_0x07 (blob_t key, blob_t some_plaintext, blob_t some_ciphertext) 
-{ 
-  static blob_t pad[16] = { 0x33, 0x4a, 0x18, 0x94, 0xc1, 0xf3, 0x83, 0xf6, 
-                            0xd3, 0xeb, 0x6a, 0xc2, 0xad, 0x13, 0x07, 0xca }; 
-  blob_t data = dev_0xd8 (some_ciphertext, XOR (key, pad)); 
-  data = CONCAT (data, some_plaintext); 
-  return dev_0xd9 (data, XOR (key, pad)); 
-} 
-</code> 
- 
-===== icv.ocm Decompiled ===== 
- 
-<code> 
- 
-// 
-// Generate a SalOmgId 
-// 
-//   Example: 30 80 0410010F5000000400000000006E2B2A75BA 00 00 
-//    
-//   <OMG Directory>\OMGKEY\omg_id..dat 
-// 
-// Note: When OpenMG is used (trough the UI) for the first time this value is generated,  
-//       by calling the salwrap function getSalOmgId. 
-// 
-//                   const unsigned __int8 *__cdecl getSalOmgId() 
-// 
-blob_t icv(07) 
-{ 
- blob_t SalIdPRNG  = BCX_1C_GetPRNGBytes(5); 
- static blob_t PrefixSalOmgId[8] = {0x01,0x0F,0x50,0x00,0x00,0x04,0x00,0x00};  
- data = BCX_01_Concat(PrefixSalOmgId, SalIdPRNG); 
- Push 1 
- Pack_To_Array 
- Create_Array 
-} 
-</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: 2011/01/16 17:59 by nopsled

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki