There is not information about the encoding of passwords in the specification in this section. Although, it is most likely supposed to be Unicode encoding, but no details are available about this so for example the byte ordering is not defined.
The exact encoding detail and byte ordering should be available for entering the password and calculating the hash.
Part 4, Section 3.2.29
te
Proposed Disposition of DIS 29500 Comment IR-0048 (Modified: 2008-01-04) Agreed; any such assumptions should be explicitly stated in the text. The following changes will be made: Part 4, §3.2.29, page 1,916, revisionsPassword attribute, paragraph 1: Specifies the hash of the password required for unlocking revisions in this workbook. The hash is generated from an 8-bit wide character. The input string shall be in UTF-16 format, and these 16-bit Unicode characters must be converted down to 8 bits before the hash is computed, using the following logic: Part 4, §3.2.29, page 1,921, revisionsPassword attribute, paragraph 2 (after the first code block): The resulting value is hashed using the algorithm defined below. This step assumes that all words are unsigned, the word size is two bytes, and that bit-level shift-left/shift-right operations shift in the direction of the highest-order and lowest-order bit, respectively. [Example: 0x61 SHR 1 is 0xC2, as 01100001 shifted one position in the direction of its highest-order bit is 11000010. end example] Similar Comments: CL-0198 , CO-0144 , DE-0092 , FR-0342 , GB-0293 , GR-0077 , PT-0094 , US-0139 , VE-0055
