把下面这段公钥存到一个文件中,比如 /tmp/ThatPerson.txt
。注意「-----BEGIN PUBLIC KEY-----」和「-----END PUBLIC KEY-----」也要一同保存到文件里。
-----BEGIN PUBLIC KEY-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC34UeKXRLMkZc0MPRkizTn3Ert
CAUq2wHlIIPtAtISDNYBr/R9lGD9WCqvuweWq0jSeRVgP25s+BsLuK/PNSpJqvnR
J4OJLlcKlsL06Ao8PIR8npgY4/Aump/6+1JJUQq9SlCfA3WUjc3dY1dkVySHZbl6
YIbgCvTptDcWP35H6QIDAQAB
-----END PUBLIC KEY-----
在 macOS 或 Linux 的命令行中用 OpenSSL 加密你的消息:
echo "只想让你知道" | openssl pkeyutl -encrypt -inkey /tmp/ThatPerson.txt -pubin | base64
你会得到类似如下的一段输出:
rqh9y1BWSWhwIJ+MZXfNMbobTfuwp++DbbWvbHL03ZeECOfVN2UOZn+k+CloktPu3FixK3nsJ3NB
3j8wgektGxTETnq/mRg8Yl6LcuW2ajV+BRWMmSE2EXvFH7WfYwUyn3MNQwi6dB4NQGU1kV3PS0Ds
njHazyQislkL9f3E9K8=
你可以在任意一个我发的帖子下复制粘贴上面一步得到的输出,我会收到通知并看到。
![]() |
1
Rocketer 152 天前 via iPhone
你可以做个 v2 客户端,自动这一过程
|
![]() |
2
icegaze 152 天前 via Android
挺不错的,
但是公钥的(可信)分发是个头疼的事儿。 也就是,如何防止公钥伪造 /篡改、如何证明你是你这个问题。 |
![]() |
4
icegaze 152 天前 via Android
|
![]() |
5
gowl OP 我把我的公匙也放到了个人会员页面,只要网站不出问题就不会改变: https://v2ex.com/member/gowl
|
![]() |
6
cxh116 152 天前 via Android
这场景可以了解下 GPG 。
|
![]() |
7
gowl OP 考虑过 GPG ,但觉得 OpenSSL 要比 GPG 更常见,所以选择了 OpenSSL 。
|
![]() |
8
gowl OP 在安全性上没有区别,还能尽可能减少别人的麻烦。
|
![]() |
10
cat9life 152 天前
这个有点意思。希望那个大佬可以搞成 v2 插件
|
12
me221 152 天前
GPG 为啥不常见.
commit 签名不就要用吗, 包管理器下载有时候也要拉 gpg 公钥啊 |
![]() |
16
retanoj 152 天前
搞个浏览器插件是不是更方便一些?
|
![]() |
17
zhchyu999 152 天前
啥原理啊,能科普下么
|
20
edis0n0 152 天前
建议 @Livid 只允许在 /go/chamber 中发布加密内容,否则大段加密内容出现在正常帖子回复中会严重影响阅读体验
|
![]() |
22
Livid MOD 在上面那种方案里,公钥就是钱包地址。
|
![]() |
23
icegaze 151 天前 via Android
@goodryb
RSA 是要别人用 A 的公钥加密,所以只有 A 才能解密看到…我说的意思是,无法证明公示的公钥就是 A 的,如果没有可信平台 /渠道 公示 A 的公钥,人们以为给 A 发送了加密信息,其实是发给了 B…… 嗯,也许 B 就是伪装成 A 的一个中间人……^_^ |
26
troilus 150 天前
|
![]() |
28
testcaoy7 143 天前
l7JtaJDXdCjZghPUo6lpiIHB8SvulOo6Ak+l+3tWIFUCrav24JPc1si3X6a0pu+JBGgVK84Whv9B
dwsXn3paUKcd2wO9R3xVQhpfC+0xz58qv1z3EThyW02DEv5Aqr3pScUbkdVjkTiu1eiPVbYd+JN9 kjxUvqWndQfttltjr8Y= |