Cryptography (SSL Pining)设备上的公钥CA如何检查服务器';证书
我的设备上的CA如何检查数字签名是真是假?。如果黑客获得了我的数字签名,他们能否将我的数字签名与自己的公钥结合起来,并将证书发送给客户端?如果是这样,客户端如何知道证书不是来自正确的服务器 结论:我想知道从服务器检查数字签名的方法。他们如何从服务器使用CA的公钥检查数字签名 谢谢您的回答。自第一次回答后,我进一步更新了此内容,以增加更多细节和清晰度 证书颁发机构(CA)和证书的背景Cryptography (SSL Pining)设备上的公钥CA如何检查服务器';证书,cryptography,ssl-certificate,Cryptography,Ssl Certificate,我的设备上的CA如何检查数字签名是真是假?。如果黑客获得了我的数字签名,他们能否将我的数字签名与自己的公钥结合起来,并将证书发送给客户端?如果是这样,客户端如何知道证书不是来自正确的服务器 结论:我想知道从服务器检查数字签名的方法。他们如何从服务器使用CA的公钥检查数字签名 谢谢您的回答。自第一次回答后,我进一步更新了此内容,以增加更多细节和清晰度 证书颁发机构(CA)和证书的背景 证书颁发机构或CA为个人或企业实体颁发证书。CA形成了一个层次结构,其中在顶部有根CA 攻击者无法篡改证书,因为证
- 使用哈希函数计算消息(签名所有者希望发送给另一方)的哈希
- 使用私钥加密哈希
使用Java
keytool
实用程序,任何人都可以创建自签名签名。但是,除非收件人在其设备信任存储中添加证书,否则这些证书或签名将不会在任何地方受到信任。因此,消息的哈希计算是在客户端进行的,那么什么消息呢?以及散列是如何创建的?我的意思是计算消息方法的散列如何与设备上的CA相关。我知道服务器端发送数字签名并使用公钥获取散列,客户端如何获取另一个散列进行比较?我的意思是,客户端在他们的设备上有散列,所以我们知道的散列是信任CA,对吗?@LLawliet-在回答中补充了进一步的澄清。希望它现在能澄清这些疑问。哈希由一个数学函数计算,该函数将发送者想要发送的消息作为输入,并输出一个固定长度的字符串。然后对散列进行加密并发送,以便攻击者无法更改散列、重新计算散列并发送给收件人。因此,散列本身只提供不可否认性和完整性。这张照片里没有CA。当客户机/收件人想要验证发件人是否真的是其声称的实体时,CA就会出现。谢谢澄清我,但我搞混了收件人何时收到用于计算哈希以比较发件人哈希的消息?Integrity@LLawliet,不知道我是否理解你的疑问。假设我有一个由全球受信任的CA颁发给我的数字签名。我可以签署一个pdf文档并将其发送给您。因此,您现在有了消息,即文档。在Adobe Re中打开文档时