GnuPG의 배치 프롬프트에서 파일로 콘텐츠를 암호화하는 방법은 무엇입니까?

GnuPG의 배치 프롬프트에서 파일로 콘텐츠를 암호화하는 방법은 무엇입니까?

아래 명령을 사용하여 문자열을 파일로 암호화하고 있지만 "gpg --encrypt need input"이라는 오류 메시지와 함께 항상 실패합니다.

gpg.exe --batch --passphrase-fd 0 --armor --sign --recipient [email protected] --homedir "c:\gnupg" --encrypt 1 > "test.gpg"

어떤 아이디어가 있나요?

답변1

GnuPG는 항상 파일이나 STDIN으로부터의 입력을 기대합니다. 문자열을 STDIN에 전달하려면 ECHOWindows 시스템 또는 echoUnix 시스템에서 사용하고 다음으로 파이프하십시오 gpg.

ECHO 1 | gpg [other options] --encrypt
echo 1 | gpg [other options] --encrypt

파일 설명자 0(STDIN)에서 암호 문구를 이미 예상하고 있으므로 다음 중 하나를 수행해야 합니다.

  • 다른 위치에서 서명할 암호 및 데이터를 제공하세요.
  • 개행 문자로 구분된 두 문자열 모두에 파이프를 추가합니다. 유닉스 시스템에서는 sh/를 사용하면 쉽지만 ( )bashecho -e "passphrase\ndata" | gpg --sign --encryptWindows에서는 다소 해킹적인 솔루션이 필요합니다.(저는 Windows 명령 프롬프트에 익숙하지 않지만 단일 ECHO명령으로 솔루션 중 하나를 선택해야 할 것입니다.)

관련 정보