-
GnuPG에 의한 암호화Technique/LPIC 2019. 11. 13. 15:09반응형
파일을 임호 화 하고 싶은 경우 Linux에는 GnuPG( GNU Privacy Guard )를 이용할 수 있다. GnuPG는 공개키 암호를 사용하여 파일을 암호화/복호 하거나, 전자서명을 하거나 하는 것이 가능한 오픈소스 소프트웨어이다.
GnuPG는 암호화 소프트웨어 PGP( Pretty Good Privacy )와 호환성이 있다. PGP은 미국의 규제에 의해 미국 외의 반출이 불가능했지만, 해당 사양이 IETF ( Internet Engineering Task Force )에 의해 RFC로서 정리되어 GnuPG로서 실현되었다.
키 페어의 작성과 분실 증명서의 작성
GnuPG(GPG)의 사용을 하기 위해선 gpg 커맨드를 사용한다. 처음 공개키와 비밀키 페어를 작성할 필요가 있다.
gpg --gen-key
~/. gnupg라고 하는 디렉터리가 새롭게 작성되며 그 안에 공개키의 키링 ( pubring.gpg )와 비밀키의 키링 ( secring.gg )가 작성된다.
이후 키의 분실 증명서를 작성한다. 분실 증명서란 패스플레이즈가 밖으로 공개되어 버리거나, 패스플레이즈를 잃어버렸을 경우 해당 키를 무효화 하기위해 사용한다.
gpg -o 분실증명서 파일명 --gen-revoke 메일 주소
작성된 분실 증명서 ( revoke.asc )는 안전한 장소에 보관되어 있다. 만에 하나 키가 공개되어 버렸거나 할 경우 아래와 같이 키를 무효화시킬 수 있다.
gpg --import revoke.asc
공용키를 이용한 파일의 암호화
gpg 커맨드를 사용하여 파일의 암호화보다 좀 더 간단한 것은 공용키를 사용한 암호화이다.
gpg -c service.txt
설정한 패스 플레이즈를 2회 입력하면 암호화된 파일 secret.txt.gpg가 작성된다. 해당 파일을 복호화 하기 위해선 옵션 없이 gpg 커맨드를 실행한다.
공용키를 사용한 암호화는 간단하지만, 공용키를 제삼자가 손에 넣어버리면 누구라도 복호화할 수 있다. 특정 사람만 복호가 가능하도록 하기 위해선 공개키를 사용한 암호화를 실행하는 것이다.
공개키를 사용한 파일의 암호화
공개키 암호에서는 불특정 다수에게 공개해도 되는 공개키와, 비밀로 하지 않으면 안 되는 비밀키를 페어로 사용한다. 공개키를 사용한 암호화 한 것은 페어가 되는 비밀키만이 복호화시킬 수 있도록 하는 성질이 있다. 이것은 공개키를 사용한 파일 암호화 또는 복호의 순서이다.
공개키의 export
우선 암호화된 데이터를 받아들이는 측은 통신 상대에게 공개키를 보내기 위해 공개키를 파일에 export 한다.
gpg -o 출력 파일명 -a --export 자기 자신의 메일 주소
이것으로 공개키가 pubkey 파일에 export 되기 때문에 해당 파일을 통신하는 상대에게 보낸다
공개키 import
통신 상대 (암호화 파일을 보낼 곳 )으로부터 공개키를 받았다면 우선 그것을 import 해야 한다.
gpg --import pubkey
import 된 공개키의 리스트를 보기 위해서 아래의 커맨드를 사용한다.
gpg --list-keys
받아들인 공개키가 신뢰할 수 있다면 키에 서명을 행한다. 서명을 행하지 않으면 공개키가 신뢰 하수 없는 것이 되므로 사용할 때마다 경고가 표시된다.
gpg --sign-key 자기 자신의 메일 주소
파일의 암호화
받아들인 공개키를 이용하여 비밀키의 주인만 복호화할 수 있는 암호화 파일을 작성할 수 있게 되었다.
gpg -e -a -r 보내는 곳의 메일 주소 암호화된 파일명
위와 같이 커맨드를 입력하면 암호화된 파일이 작성된다.
파일의 복호화
보내어진 파일을 비밀키를 이용하여 복호화한다.
gpg 암호화된 파일명. asc
반응형'Technique > LPIC' 카테고리의 다른 글
102 시험전 체크 리스트 (0) 2019.11.13 101 시험전 체크 리스트 (0) 2019.11.13 Open SSH (0) 2019.11.13 유저에 관한 세큐리티 관리 (0) 2019.11.11 호스트 레벨의 세큐리티 (0) 2019.11.11