누군가 openssl이나 이와 유사한 것으로 나를 도울 수 있는지 궁금합니다. Solaris 상자에서는 일반적으로 다음을 수행합니다.
decrypt -a aes -k my.key -i mypasswd.aes.cr > /tmp/tmp.file
그런 다음 tmp 파일에서 일부 비밀번호를 수정한 다음 다시 암호화합니다.
encrypt -a aes -k my.key -i /tmp/tmp.file -o mypasswd.aes.cr
하지만 Linux에는 Solaris 명령이 없습니다. 그렇다면 Linux에서 동일한 파일을 사용하여 동일한 작업을 수행할 수 있는 방법이 있습니까? openssl을 사용해 보았는데 옵션과 매개변수가 많은 것 같습니다. 다음 명령과 같이 그 중 일부를 시도했습니다.
bash-4.2$ openssl aes-128-cbc -d -pass file:my.key -in mypasswd.aes.cr -out /tmp/tmp.file
bad magic number
bash-4.2$
어떤 옵션을 사용해야 할지 모르겠어요. 너무 많아요!
참고: mypasswd.aes.cr은 기본 aes 128비트 암호화를 기반으로 하는 것 같습니다.
미리 감사드립니다!
답변1
액세스 권한이 있으면 openssl
사용할 수 있습니다.SSL enc
옵션 열기파일을 암호화/해독합니다.
예를 들어:
$ openssl enc -bf -a -in data.txt -out data.enc
enter bf-cbc encryption password:
Verifying - enter bf-cbc encryption password:
암호화는 Blowfish CBC를 사용하여 수행되며 data.txt
암호화된 데이터는 Base-64 인코딩 형식으로 저장됩니다.data.enc
다음 옵션으로 키 파일을 사용할 수 있습니다 -kfile
.
$ openssl enc -aes128 -a -in data.txt -out data.enc -kfile my.key
암호화된 데이터는 Solaris encrypt
/ 명령과 decrypt
호환될 수도 있고 호환되지 않을 수도 있습니다 . 호환성을 테스트해야 합니다.
당신은 들어갈 수 있습니다
$ openssl enc ciphers
OpenSSL 버전에서 지원하는 암호 목록을 가져옵니다.
키 파일을 보호하는 데이터와 함께 저장하는 것은 그다지 안전하지 않습니다.