info lsh
手动的介绍如何创建密钥对并使用密码保护私钥。该手册没有说明如何更改密码或如何解码私钥(私钥存储为password-encrypted
S 表达式)。根据手册,lsh-writekey
使用密码对私钥进行加密。但lsh-writekey
期望private-key
S 表达式与lsh-keygen
提供的类似。否则,它会输出一些内容但会解释:
$ cat ~/.lsh/identity | lsh-writekey -o test-output-file
Enter new passphrase:
Again:
lsh-writekey: spki_make_signer: Expected private-key expression.
如何获取现有私钥作为 的private-key
S 表达式lsh-writekey
,以便我可以为该私钥设置新密码?
答案1
底部有一个提示,man lsh-writekey
也有lsh-decrypt-key
。它有自己的手册页。由于某种原因,它没有在 Texinfo 手册中涵盖,并且在SEE ALSO
部分中也没有提及man lsh
。
您需要移动现有密钥或为其指定不同的输出文件,因为lsh-writekey
它拒绝覆盖现有的私钥或公钥文件。以下是更改密码的方法:
$ mv ~/.lsh/identity ~/.lsh/identity.backup
$ mv ~/.lsh/identity.pub ~/.lsh/identity.pub.backup
$ cat ~/.lsh/identity.backup | lsh-decrypt-key | lsh-writekey
您输入密钥的当前密码并继续指定新密码。