Encryption

[OpenSSL] File 암호화 및 복호화 (대칭키/encryption password)

yeonx 2023. 10. 5. 13:40
728x90

대칭키

대칭키 생성

먼저 대칭키를 생성한다. 

openssl rand -base64 32 > yeonheekey.txt
32바이트 (256비트)의 무작위 키를 생성하고 "yeonheekey.txt" 파일에 저장.
이 키는 암호화와 복호화에 사용됨

 

파일 암호화

암호화하려는 파일과 생성한 대칭키를 사용하여 파일을 암호화.

openssl enc -aes-256-cbc -salt -in original.txt -out encrypted.txt -pass file:yeonheekey.txt
  • -aes-256-cbc : AES 알고리즘을 사용하여 256비트 대칭 암호화를 수행
  • -salt : 암호화에 솔트를 사용하여 보안을 강화
  • -in original.txt : 암호화할 원본 파일
  • -out encrypted.txt : 암호화된 결과를 저장할 파일
  • -pass file:yeonheekey.txt : 암호화에 사용할 대칭 키 파일을 지정

 

파일 복호화

암호화된 파일을 복호화하려면 다음 명령어를 사용한다.

openssl enc -d -aes-256-cbc -in encrypted.txt -out decrypted.txt -pass file:yeonheekey.txt
  • -d : 복호화 모드로 작동
  • -aes-256-cbc : 이전과 동일한 AES 알고리즘 및 모드를 사용
  • -in encrypted.txt : 복호화할 파일
  • -out decrypted.txt : 복호화된 결과를 저장할 파일
  • -pass.file:yeonheekey.txt : 복호화에 사용할 대칭키 파일을 지정

 

encryption password

파일 암호화

openssl des -salt -in original2.txt -out encrypted2.txt
  • orginal2.txt : 암호화하고자 하는 원본파일
  • encrypted2.txt : 암호화된 파일

위 명령어를 입력하면 다음과 같이  encryption password을 입력하도록 나옴

enter des-cbc encryption password:
Verifying – enter des-cbc encryption password:

입력한 패스워드는 복호화시 필요

파일 복호화

openssl des -d -salt -in encrypted2.txt -out decrypted2.txt

위 명령어를 입력 후, 다음과 같은 창에 패스워드 입력

enter des-cbc decryption password:

 

 

참고 : https://sangchul.kr/entry/%EB%A6%AC%EB%88%85%EC%8A%A4-OpenSSL%EB%A1%9C-%ED%8C%8C%EC%9D%BC%EC%9D%84-%EC%95%94%ED%98%B8%ED%99%94%EB%B3%B5%ED%98%B8%ED%99%94%ED%95%98%EA%B8%B0

http://idchowto.com/openssl%EC%9D%84-%EC%9D%B4%EC%9A%A9%ED%95%9C-%ED%8C%8C%EC%9D%BC-%EC%95%94%ED%98%B8%ED%99%94%EB%B3%B5%ED%98%B8%ED%99%94/

'Encryption' 카테고리의 다른 글

[Linux] LD_LIBRARY_PATH  (1) 2023.10.06
[GCC] Static/Shared Library 생성 및 사용  (1) 2023.10.06
Static Library와 Dynamic Library  (1) 2023.10.06
Hash와 Salt  (1) 2023.10.05
해쉬 알고리즘(Hash Algorithm)  (1) 2023.10.05