4 월에 명령을 사용하여 파일을 암호화했습니다.
openssl enc -aes-256-cbc -salt -pass file:<passwordfile> < infile > outfil
이제 암호를 해독하고 싶습니다
openssl enc -d -aes-256-cbc -salt -pass file:<passwordfile> -in outfil -out infile2
그러나 나는 나쁜 마법 번호를 얻는다.
어제 동일한 매개 변수로 암호화 된 파일은 ok를 해독합니다.
무슨 일이 있었나요? 어쨌든이 보관 된 파일을 검색 할 수 있습니까?
답변
OpenSSL <= 1.0.2로 암호화하고 OpenSSL 1.1.0으로 복호화하는 경우 다음과 같습니다.
https://www.openssl.org/docs/faq.html#USER3
비밀번호에서 키를 생성하는 데 사용 된 기본 해시는 1.0.2와 1.1.0 사이에서 변경되었습니다. -md md5
암호 해독 명령을 추가 하십시오.
답변
아래 명령은 나에게 고통을 주었다.
openssl aes-256-cbc -d -in hotmama.tar.bz2.enc -out hotmama.tar.bz2
enter aes-256-cbc decryption password:
bad magic number
그리고 아래 명령은 그것을 해결하고 나에게 즐거움을 주었다.
openssl aes-256-cbc -md md5 -in hotmama.tar.bz2.enc -out hotmama.tar.bz2
enter aes-256-cbc encryption password:
Verifying - enter aes-256-cbc encryption password:
답변
이 오류의 일반적인 원인은 비밀번호에서 OpenSSL에 의해 계산 된 키가 잘못 되었기 때문에 데이터를 암호화 한 키와 동일하지 않기 때문입니다.
원래 오류와 다른 상황에서이 오류가 표시 될 수있는 한 가지 이유는 OpenSSL 이외의 다른 도구 (예 : Java 암호화 및 SSL을 사용한 암호 해독)를 사용하여 암호화하는 경우입니다.
Java 솔루션은 /programming/22610761/aes-simple-encrypt-in-java-decrypt-with-openssl/55884564#55884564