]>
Commit | Line | Data |
---|---|---|
1 | scrypt encrypted data format | |
2 | ---------------------------- | |
3 | ||
4 | offset length | |
5 | 0 6 "scrypt" | |
6 | 6 1 scrypt data file version number (== 0) | |
7 | 7 1 log2(N) (must be between 1 and 63 inclusive) | |
8 | 8 4 r (big-endian integer; must satisfy r * p < 2^30) | |
9 | 12 4 p (big-endian integer; must satisfy r * p < 2^30) | |
10 | 16 32 salt | |
11 | 48 16 first 16 bytes of SHA256(bytes 0 .. 47) | |
12 | 64 32 HMAC-SHA256(bytes 0 .. 63) | |
13 | 96 X data xor AES256-CTR key stream generated with nonce == 0 | |
14 | 96+X 32 HMAC-SHA256(bytes 0 .. 96 + (X - 1)) | |
15 | ||
16 | AES256-CTR is computed with a 256-bit AES key key_enc, and HMAC-SHA256 is | |
17 | computed with a 256-bit key key_hmac, where | |
18 | scrypt(password, salt, N, r, p, 64) == [key_enc][key_hmac] |