1.3.4 Visual Basic for Applications Digital Signature
The Visual Basic for Applications (VBA) digital signature structure (section 2.3.2) is contained in a wrapping structure that is specific to the mechanism the file format uses to store the signature.
In the formats described in [MS-XLS] and [MS-PPT], the signature structure is stored in the Document Summary Information OLE property set (section 2.3.3.2.2.1) as a VT_BLOB TypedPropertyValue property. The following diagram illustrates the relative structures for this storage mechanism.
Figure 5: VBA digital signature storage as OLE property set property
In the format described in [MS-DOC], the signature structure is stored in the StwUser string table ([MS-DOC] section 2.9.298) as the value of Unicode string variables named "Sign" or "SigAgile". The following diagram illustrates the relative structures for this storage mechanism.
Figure 6: VBA digital signature storage as [MS-DOC] string table variable
The signature structure consists of information about the digital signature, as well as the signature (section 2.3.2.4) itself, and a serialized certificate store (section 2.3.2.5.5). The following diagram illustrates this structure.
Figure 7: DigSigInfoSerialized structure