3.3 DRMEncryptedDataSpace Stream

This section provides an example of a stream (1) in the \0x06DataSpaces\DataSpaceInfo storage (section 2.2.2) that contains a DataSpaceDefinition structure (section 2.1.7).

 00000000:  08 00 00 00 01 00 00 00  2A 00 00 00 44 00 52 00
 00000010:  4D 00 45 00 6E 00 63 00  72 00 79 00 70 00 74 00
 00000020:  65 00 64 00 54 00 72 00  61 00 63 00 73 00 66 00
 00000030:  6F 00 72 00 6D 00 00 00


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

HeaderLength

TransformReferenceCount

TransformReferences

...

HeaderLength (4 bytes): 0x00000008 specifies the number of bytes in the DataSpaceDefinition before the TransformReferences field.

TransformReferenceCount (4 bytes): 0x00000001 specifies the number of items in the TransformReferences array.

TransformReferences (variable): "DRMEncryptedTransform" specifies the transform associated with this DataSpaceDefinition structure. This string is contained in a UNICODE-LP-P4 structure (section 2.1.2); therefore, the first 4 bytes of the structure contain 0x0000002A, which specifies the length, in bytes, of the string. The string is not null-terminated; however, the structure is padded with 2 bytes to ensure that its length is a multiple of 4 bytes. "DRMEncryptedTransform" matches the name of the transform storage contained in the \0x06DataSpaces\TransformInfo storage (section 2.2.3).