有没有办法在bashscript中直接使用pinentry-tty?例如作为'read‘的更安全的替代。我在想这样的事情:
local pass=$(pinentry-tty);这允许我输入几行代码,但不会将任何内容保存到变量。
发布于 2016-07-16 20:42:53
不同的pinentry实现很难按照您想要的方式进行调用。它遵循一个简单的协议,这也支持配置提示和打印错误消息的多种可能性。一个示例会话,其中GETPIN是在STDIN上发出的命令,foo是用户输入的密码,它与STDOUT上的其他状态消息一起返回
$ pinentry
OK Pleased to meet you
GETPIN
D foo
OK除了also available online之外,完整的文档都包含在pinentry's source tarball中。
发布于 2021-02-23 21:28:39
虽然这并不适用于所有的pinentry实现,但您可以尝试调用它,如下所示:
password=$(echo -e "SETPROMPT Please enter your password:\nGETPIN\n" | \
pinentry | \
sed -nr '0,/^D (.+)/s//\1/p')在我的Arch机器上,这适用于pinentry-gnome3、pinentry-gtk-2和pinentry-qt,但不适用于pinentry-curses或pinentry-tty
https://stackoverflow.com/questions/38410670
复制相似问题