我最近发现对与通信有关的加密和安全性更感兴趣。
在我的研究中,我发现了网站https://keybase.io/。它似乎是公钥的存储,但显然不止于此。
那么 Keybase.io 到底是什么,它是如何工作的/我如何使用它?
我最近发现对与通信有关的加密和安全性更感兴趣。
在我的研究中,我发现了网站https://keybase.io/。它似乎是公钥的存储,但显然不止于此。
那么 Keybase.io 到底是什么,它是如何工作的/我如何使用它?
Keybase.io 提供了一个目录服务,允许在其他本身不支持 PGP 且其帐户类型在 PGP 上不被识别为 UID 的服务上查找帐户的公钥。
例如,如果我想知道某个 Twitter 帐户的 PGP 密钥,我可以询问 keybase 目录,它会返回一个文本记录,其中包含一个短语,表明这是一个密钥绑定、一个 Twitter 句柄和一个密钥 ID,如以及指向包含此数据签名的推文的链接。
这类似于将 UID 附加到 PGP 密钥的方式 - 主密钥签署特殊格式的消息,其中包含要绑定到密钥的 UID。主要区别在于绑定存储在密钥的外部(因为 Twitter 处理 UID 没有标准),并且签名存储在 Twitter 内部以验证 Twitter 帐户的所有者确实是密钥持有者(其中正常的 UID 由其他人签名)。
这样,我可以通过加密通道向 Twitter 用户发送消息,尽管没有集成到 Twitter 服务本身。
因为它们允许最多 10.000 个字符的直接消息,所以通过 Twitter 发送 PGP 加密消息当然是可能的。
不过,这仅适用于向“帐户所有者”发送消息,因为没有进行进一步的验证。理论上,它可以通过 Twitter 本身更改推文进行攻击,使其与攻击者的密钥匹配,尽管推文中包含的签名是公开的,因此它可以被第三方存档并因此检测到操纵。
Github 和 Keybase 处理的其他服务也是如此。