PHP 스크립트의 문자열에 GPG의 텍스트 서명을 통합하려고합니다.GPG가 파일을 열지 않고 STDIN의 입력을 받아들이도록하려면 어떻게해야합니까?
$encrypted = shell_exec("echo '$text' | gpg -e -a -r [email protected] --trust-model always");
을하고 암호화 된 텍스트가 $ 암호화 된 변수에 전송되는으로, 완벽하게 작동 : 나는 GPG이 같은 문자열의 텍스트를 암호화하는 원인이 될 수 있습니다. 이것은 GNUPGHOME과 GNUPG가 올바르게 설정되었음을 증명합니다. 그러나
, 나는이와 같은 방법으로 일반 텍스트로 서명 된 메시지를 생성 할 때 :이 오류를 반환하고
$text = "googar";
$signature = exec("echo $passphrase | gpg -v --clearsign --no-tty --passphrase-fd 0 '$text' 2>&1 1> /dev/null", $output);
:
... string(51) "gpg: can't open `googar': No such file or directory"
[3]=>
string(46) "gpg: googar: clearsign failed: file open error"
}
이 오류와 함께 또는없이 반환 $ text 변수 주위의 작은 따옴표.
GPG 또는 shell_exec이 $ text를 파일을 찾는 대신 파이프로 처리하도록하려면 어떻게해야합니까?
나는 GPG 명령 행에서 변수로 암호를 전달 할 수있는 방법이 없기 때문에, (내가 아는이 방법으로는 '끔찍하게 불안을'암호를 에코 할 필요가
고맙습니다. 문제가 해결되었습니다. 내가 코드에 빠졌고, 그냥 작동합니다. 새로운 것을 배우기 위해 그 부분을 공부할 것입니다. 다시 한번 감사드립니다! – Axinar