WriteProtection.CryptographicAlgorithmSid Property

Definition

Cryptographic Hashing Algorithm

Represents the following attribute in the schema: w:cryptAlgorithmSid

C#
[DocumentFormat.OpenXml.SchemaAttr(23, "cryptAlgorithmSid")]
public DocumentFormat.OpenXml.Int32Value CryptographicAlgorithmSid { get; set; }
C#
public DocumentFormat.OpenXml.Int32Value CryptographicAlgorithmSid { get; set; }
C#
[DocumentFormat.OpenXml.SchemaAttr(23, "cryptAlgorithmSid")]
public DocumentFormat.OpenXml.Int32Value? CryptographicAlgorithmSid { get; set; }
C#
[DocumentFormat.OpenXml.SchemaAttr("w:cryptAlgorithmSid")]
public DocumentFormat.OpenXml.Int32Value? CryptographicAlgorithmSid { get; set; }
C#
public DocumentFormat.OpenXml.Int32Value? CryptographicAlgorithmSid { get; set; }

Property Value

Returns Int32Value.

Attributes

Remarks

The following information from the ECMA International Standard ECMA-376 can be useful when working with this class.

Specifies the specific cryptographic hashing algorithm which shall be used along with the salt attribute and user-supplied password in order to compute a hash value for comparison.

The possible values for this attribute shall be interpreted as follows:

Value Algorithm
1 MD2
2 MD4
3 MD5
4 SHA-1
5 MAC
6 RIPEMD
7 RIPEMD-160
8 Undefined. Shall not be used.
9 HMAC
10 Undefined. Shall not be used.
11 Undefined. Shall not be used.
12 SHA-256
13 SHA-384
14 SHA-512
Any other value Undefined. Shall not be used.

Consider a WordprocessingML document with the following information stored in one of its protection elements:

<w:… w:cryptAlgorithmClass="hash"   
  w:cryptAlgorithmType="typeAny"   
  w:cryptAlgorithmSid="1"  
  w:hash="9oN7nWkCAyEZib1RomSJTjmPpCY=" />  

The cryptAlgorithmSid attribute value of 1 specifies that the SHA-1 hashing algorithm shall be used to generate a hash from the user-defined password.

The possible values for this attribute are defined by the ST_DecimalNumber simple type.

Applies to

Product Versions
DocumentFormat.OpenXml 2.7.1, 2.7.2, 2.8.0, 2.8.1, 2.9.0, 2.9.1, 2.10.0, 2.10.1, 2.11.0, 2.11.1, 2.11.2, 2.11.3, 2.12.0, 2.12.1, 2.12.2, 2.12.3, 2.13.0, 2.13.1, 2.14.0, 2.15.0, 2.16.0, 2.17.1, 2.18.0, 2.19.0, 2.20.0, 3.0.0, 3.0.1