Tag Info

New answers tagged


The documentation says it's OpenSSL, not PBKDF2: When you use a CipherParams object in a string context, it's automatically converted to a string according to a format strategy. The default is an OpenSSL-compatible format This can be verified in the source code. The implementation of the OpenSSL KDF is in evpkdf.js. The key derivation function is ...


I assume you are invoking it like this: CryptoJS.AES.encrypt("Message", "Secret Passphrase"); As of 3.1.2 the default key derivation function is OpenSSLKdf as configured here and implemented here and here.


Some points towards an answer: Why HMAC-SHA3? HMAC and its security proofs have been devised for Merkle-Damgård hashes, and SHA3 is not one. HMAC-SHA256 would be fine (Updated per comment: the Keccak submission does endorse its use with HMAC, using a block size parameters of 576 (resp. 832, 1088, 1152) bits for the hash with output of 512 (resp 384, 256, ...


The way the iterations work is that it roughly increases your security (in bits) by $\log_2(iterations)$. So you would still need $\frac{\log{2}}{\log{97}}\cdot (256 - \log_2(10000)) \approx 37$ characters in your password to have 256-bits of security. Think of it this way, if you have $2^{256}$ possible keys, that is an astronomically large number. Much ...

Top 50 recent answers are included