have you looked at the 'Office Open XML Part 4 - Markup Language
Reference_final' document. I looked up the tag, and in that section is
information to answer all of your questions, but ill go over them real
quick.
how is hash calculated: You define the specific algorithm used by the generating application in the attribute named 'cryptAlgorithmSid'
(Cryptographic Hashing Algorithm). There is a table in the reference documnet that has mappings from a given int value to the algorithm used for example cryptAlgorithmSid=4 means that it uses the SHA-1 algorithm.
Salt: 'saltData' is the attribute that lets you define what salt gets added to the user provided password before hashing.
"Specifies the salt which was prepended to the
user-supplied password before it was hashed using the hashing algorithm defined
by the preceding attribute values to generate the hashData
attribute, and which shall also be prepended to the user-supplied password
before attempting to generate a hash value for comparison. "(from reference doc)
spin count: "Specifies the number of times the hashing
function shall be iteratively run (using each iteration's result as the input
for the next iteration) when attempting to compare a user-supplied password
with the value stored in the hashData
attribute" (from reference doc)
there is a link to the reference documents on the ooxmldeveloper homepage.