Xml 是什么阻止我在东西上添加自己的签名?

Xml 是什么阻止我在东西上添加自己的签名?,xml,digital-signature,xml-signature,xml-dsig,Xml,Digital Signature,Xml Signature,Xml Dsig,我对数字签名的理解中缺少了一些东西,希望有人能帮我澄清一下 数字签名是为了验证某件东西没有被修改,而是来自某个人 假设我不知何故截获了一个带有签名的xml文件。我把签名撕下来,然后对文件做一些编辑。然后我为这个文件生成一个新的签名,并将它发送给它的接收者。他们检查了参考资料,是的,它检查出来了。文件没有被篡改。但事实是,只有签名也被篡改了。这肯定是不可能的,那么,我在这个谜题中遗漏了什么巨大的一块呢?如果收件人愿意接受任何人签名的文件,那么你的方法就行了。但是签名通常与其他一些标识数据一起使用,

我对数字签名的理解中缺少了一些东西,希望有人能帮我澄清一下

数字签名是为了验证某件东西没有被修改,而是来自某个人


假设我不知何故截获了一个带有签名的xml文件。我把签名撕下来,然后对文件做一些编辑。然后我为这个文件生成一个新的签名,并将它发送给它的接收者。他们检查了参考资料,是的,它检查出来了。文件没有被篡改。但事实是,只有签名也被篡改了。这肯定是不可能的,那么,我在这个谜题中遗漏了什么巨大的一块呢?

如果收件人愿意接受任何人签名的文件,那么你的方法就行了。但是签名通常与其他一些标识数据一起使用,这使得替换签名变得毫无意义

当用户将签名报告发送到税务局时,报告包含他的姓名,签名必须包含他的姓名。这个签名证明约翰·多伊亲自授权或撰写了这份报告。如果您替换签名,它将包含您的姓名,报告的收件人将比较报告中的姓名和签名,并拒绝该文档


另一个例子是服务器的SSL身份验证。服务器提供包含服务器的域名或IP地址的签名证书(过程更复杂,我省略了这里的细节)。客户端将证书中的数据与其连接的地址进行比较,并决定是否可以信任服务器

谢谢你的回复。在第一种情况下,签名中的所有信息不是也一样吗?组织机构、姓名等,所以我会用所有相同的信息进行认证。在第二种情况下,好吧,你让我到了那里。@evenprime你可以用数据中包含的信息生成证书,但是你不能让接收者信任它(除非你自己是全球公认的证书颁发机构)。请阅读有关证书链的详细信息。谢谢eugene。这是我丢失的那块。如果它是一个自签名证书,我认为这仍然是可能的。如果它是一个自签名证书,接收方通常不会信任它,除非接收方事先明确地将该自签名证书添加到受信任证书列表中。