Ejemplo en PHP
Código
<?php $salt = hex2bin("0123456789ABCDEF0123456789ABCDEF"); $secret = hash_pbkdf2("sha512","secret",$salt,200000,0,false); echo "$secret\n"; ?>
Salida:
Código:
b14e5cb8d8ab9cabd2374a6d7a3dc6c1e8c2426fea3aaee98739d39c7e98661848fa22dc08e8734790fc4f88a007bd1a6e38ee4f70c7d3823bae8b848a9cedfa
Ya intente utilizar WebCrypto API y tambien CryptoJS y ninguno produce el mismo resultado, tal vez estoy haciendo las cosas mal no lo se, pero no mas no doy con la solucion
Código
function test() { salt = hexToBytes("0123456789ABCDEF0123456789ABCDEF"); password = "secret" secret = CryptoJS.PBKDF2(CryptoJS.enc.Utf8.parse(password), CryptoJS.enc.Utf8.parse(salt), { keySize: 512 / 32, iterations: 200000, hasher: CryptoJS.algo.SHA512}); console.log(secret); }
Salida
Código:
4e334679d8a7368e0ed0d0699f164317931f4bf227c45989ed59b3ad2424bbe8b056298c0d56e08c810ce4e1ad7e34ab067ab1e9ee47a9ee69ab7ab3351ea126
Adicional a esto tengo el problema del Rendimiento en PHP originalmente tenia Un millon de Iteraciones y en PHP solo tardaba un segundo, pero estas funciones de JS tardaban mas de 2 minutos.
Saludos!