일부 중요한 파일을 자동으로 암호화하여 공개하고 싶지 않은 GitHub 공개 저장소에 푸시하는 스크립트를 만들고 싶습니다(하지만 전체 프로젝트와 함께 보관하고 싶습니다).
해결책으로 GPG를 사용하여 암호화하기로 결정했습니다. 문제는 명령에 CLI 인수로 전달된 비밀번호를 사용하여 특정 파일을 암호화하는 방법에 대한 단서를 찾을 수 없다는 것입니다 gpg -c
.
이 작업을 수행하는 방법을 아는 사람이 있나요?
답변1
배치 모드에서는 다음 옵션 중 하나를 사용하십시오 --passphrase-...
.
--passphrase-fd
주어진 파일 설명자에서 비밀번호를 읽습니다.echo mysuperpassphrase | gpg --batch -c --passphrase-fd 0 file
--passphrase-file
주어진 파일에서 비밀번호 읽기echo mysuperpassphrase > passphrase gpg --batch -c --passphrase-file passphrase file
--passphrase
주어진 문자열을 사용gpg --batch -c --passphrase mysuperpassphrase file
이것들은 모두 암호화를 사용합니다 file
(to file.gpg
) mysuperpassphrase
.
GPG 2.1 이상의 경우 PIN 입력 모드를 "루프백"으로 설정해야 합니다.
gpg --batch -c --pinentry-mode loopback --passphrase-file passphrase file
등.
-d
대신 을 사용하고 -c
출력을 리디렉션하는 방식 으로 비슷한 방식으로 암호 해독을 수행할 수 있습니다 .
gpg --batch -d --passphrase-file passphrase file.gpg > file
등.