非对称加密和解密假设我使用公私钥从这个站点的算法加密和解密数据:PublicKeyRSAEncryptioninC#.NETonCodeProject现在,让我们说某人使用我的公钥用另一种算法加密他的数据并将其发送给我。使用不同的算法(例如网站上的算法),我能否使用我的私钥解密信息?或者这是不可能的,因为算法不同?我的观点是,假设使用了正确的密钥,如果使用不同的加密算法,最终结果是否总是相同?是否有一些标准的方法来加密信息,以便它可以在不同的机器上解密,也许是不同的编程语言?一些讨论,但这是我回答问题的谦虚尝试:使用不同的算法(如网站上的算法),我可以使用我的私钥解密消息吗?或者这是不可能的,因为算法不同?您绝对无法解密数据。通常,您需要算法和密钥的精确匹配。但是,可能有什么不同:用于加密/解密的平台、操作系统、硬件、语言或程序。这是因为该算法充当具有明确定义的规范的公共合约,只要所有公共API呈现相同的结果,实现就可以不同。我的观点是,假设使用了正确的密钥,如果使用不同的加密算法,最终结果是否总是相同?这些几乎每次都会有不同的结果(情况几乎就是这样,我只是不知道任何这样的算法)。您需要将算法和所需的密钥完全匹配。是否有一些标准的方法来加密信息,以便它可以在不同的机器上解密,也许是不同的编程语言?例如,RSA是否可以保护您的私钥安全并共享您的公钥。这就是HTTPS首先要做的。每个拥有公钥的人都可以解密用私钥加密的数据。或者,您可以使用AES,一种使用单个密钥进行加密/解密的对称算法。这是HTTPS的第二个功能。鉴于您只在受信任的各方之间共享密钥,双方都可以加密和解密(但没有人可以,因为他们没有密钥)。以上就是《C#学习教程:非对称加密与解密》的全部内容。如果对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右边联系管理员删除。如需转载请注明出处:
