현재 NodeJS를 사용하여 데이터를 암호화하려고합니다. createCipher
이 recommended이 아닌 Node API 문서를 읽었습니다.Nodejs createCipher 대 createCipheriv
crypto.createCipher()의 구현이 다이제스트 MD5 설정 알고리즘 반복 하나, 어떤 염과 OpenSSL이 기능을 사용 EVP_BytesToKey 키를 도출한다. 소금이 부족하면 사전 공격 같은 암호로 항상 동일한 키를 만듭니다. 낮은 반복 개수 및 비 암호 해시 알고리즘을 사용하면 암호 을 매우 빠르게 테스트 할 수 있습니다. 대신 의 PBKDF2 사용은 OpenSSL의 권고 라인에서
개발자가 키와 자신의 사용 crypto.pbkdf2에 IV ()과를 도출하는 것이 좋습니다 EVP_BytesToKey Cipher에 객체를 생성하는 crypto.createCipheriv() 를 사용하는 .
아직 createCipher
은 데이터를 안전하게 암호화 할 수있는 확실하고 안전한 방법입니까? 이 메소드는 사용되지 않는 것으로 간주해야합니까? 잘 알고있는 공격자가 잠재적으로 데이터를 해독 할 수 있습니까?
createCipheriv
을 사용하는 솔루션은 항상 보다 더 좋습니까?
다른 세부 정보 나 권장 사항은 높이 평가됩니다.
왜 것이 바람직하다? – andrsnn
iv - https://en.wikipedia.org/wiki/Initialization_vector를 나타냅니다. – IvanM