From RFC 4880 [1]:
Octet 0: 0x03
Octet 1: hash algorithm
Octets 2-9: 8-octet salt value
Octet 10: count, a one-octet, coded value
[1]: http://tools.ietf.org/search/rfc4880#section-3.7.1.3
offset += 1
self['string-to-key-salt'] = data[offset: offset + 8]
offset += 8
+ elif self['string-to-key-type'] == 'iterated and salted':
+ self['string-to-key-hash-algorithm'] = self._hash_algorithms[
+ data[offset]]
+ offset += 1
+ self['string-to-key-salt'] = data[offset: offset + 8]
+ offset += 8
+ self['string-to-key-coded-count'] = data[offset]
+ offset += 1
else:
raise NotImplementedError(
'string-to-key type {}'.format(self['string-to-key-type']))