1
2
如果你问我认为你在问什么,你就是在解决这样一个问题: 你加密了一些数据。你把它发送给客户,希望他们能够解密它,但是你做到了。 不 希望他们能够加密任何东西,因为这样他们就可以说服 其他 他们是你的客户。 就这么近吗?你能告诉我们你在解决什么问题吗? 对于线程上的其他人来说,这听起来很明显,OP想要一个只解密的密钥,而不是通常的只加密的公钥。 编辑:注释是正确的,因为私钥不能用于加密,但是在给定私钥的情况下生成公钥并不那么困难。如果您拥有私钥,那么实际上可以同时拥有这两个密钥。 编辑2:op,你应该看看 digital signatures . 您可以签署一条消息(使用私钥),然后用公钥确认签名,我认为这正是您要求的。 |
2
1
要解码数据,您需要 或 私钥。取决于它是如何编码的。 坚持标准模式,小心点 从未 分发您的私钥。 从你的评论(到各种答案),你只需要签署(你的数据散列)。用每个人都能拥有的密钥加密数据是没有用的。 签名有标准的功能和模式。 |
3
1
我认为您需要使用私钥进行解密,使用公钥进行加密。 接收者(解密者)将其公钥发送给发送者(加密者)。所以每个人都可以发送信息,只有接收者才能阅读。这就是你需要的? 如果需要确保邮件来自某个发件人,则需要使用自己的私钥添加签名。接收者可以使用发送者公钥来验证这一点。 |
4
0
如果您希望确保私钥持有者不能加密某些内容,从而使结果与公钥持有者发送的消息不可区分,那么您可以简单地对数据进行双重包装。 只需要两对钥匙。 A端获取密钥对1的私钥和密钥对2的公钥。 B端获取密钥对1的公钥和密钥对2的私钥。 B端首先用密钥对1的公钥进行加密,然后用密钥对2的私钥进行加密,发送自己的消息。 A端使用密钥对2的公钥和密钥对1的私钥(按此顺序)对结果进行解密。 A端可以生成密钥对1的公钥,但不能生成密钥对2的私钥,因此A端不能生成有效消息。 相反的方向是相反的。 反面:如果你有一个中心人(或服务器),每个人(或计算机)都在与之通信,那么每个人都需要自己的私钥,并且他们需要与他们通信的中心人(或服务器)共享相应的公钥。 |
Robert King · Unity C#语法问题-转换位置 1 年前 |
JBryanB · 如何从基本抽象类访问类属性 1 年前 |
law · 检查答案按钮的输入字符串格式不正确 2 年前 |
i_sniff_ket · 在unity之外使用unity类 2 年前 |