当前位置: 首页 > news >正文

建瓯网站建设wzjseowordpress什么删留言

建瓯网站建设wzjseo,wordpress什么删留言,品牌高端网站,什么网站空间好CA与区块链验证本质上都是数字签名#xff0c;首先#xff0c;我们看一下什么是数字签名#xff01; 数字签名 数字签名是公钥密码学中的一种技术#xff0c;用于验证信息的完整性和发送者的身份。简而言之#xff0c;数字签名是一种确认信息来源和信息完整性的手段。它通…CA与区块链验证本质上都是数字签名首先我们看一下什么是数字签名 数字签名 数字签名是公钥密码学中的一种技术用于验证信息的完整性和发送者的身份。简而言之数字签名是一种确认信息来源和信息完整性的手段。它通常与区块链、数字证书、加密邮件等技术结合使用。 基本工作原理  核心要点信息完整性与身份认证数字签名的基本工作原理如下 消息摘要首先使用某种哈希函数如SHA-256计算原始消息或文档的摘要digest。 摘要是消息的哈希值是通过某种哈希函数如SHA-256从原始消息中产生的。哈希函数的特点是哪怕只有一点点的输入变化输出的哈希值也会发生巨大的变化。因此哈希值可以作为消息的“指纹”。 加密摘要然后使用发送者的私钥加密上一步得到的摘要。这就得到了数字签名。 发送消息及签名发送者将原始消息和数字签名一起发送给接收者。 验证签名 接收者使用发送者的公钥解密数字签名得到摘要A。接收者使用相同的哈希函数计算收到的原始消息的摘要得到摘要B。比较摘要A和摘要B。如果它们匹配这意味着消息没有被篡改。 为什么接收者能够知道发送者用的哈希函数呢 标准化协议在许多安全协议中哈希函数如SHA-256、SHA-3等已经被明确规定。因此当双方遵循同一协议时他们都知道应使用哪个哈希函数。 数字证书在使用数字证书的场景中如TLS/SSL证书中通常会包含用于签名的哈希函数的信息。当接收者收到证书时它就可以知道应使用哪个哈希函数来验证签名。 明确声明在某些情况下发送者可以在消息的某个部分明确指定使用的哈希函数。这样接收者在收到消息时就知道如何进行验证。 总之为了数字签名的有效性和安全性双方必须有一个共同的、已知的方式来确定使用哪个哈希函数。在大多数现实世界的应用中这一点已经得到了很好的处理和规定。 数字签名的关键作用 身份验证数字签名确保了交易的发送者是交易所声称的发送者。不可否认性一旦发送者签署了交易他们不能否认进行了该交易。完整性任何对已签名的交易的修改都会导致签名无效这确保了交易的完整性。 为什么数字签名是安全的它的安全性来自于私钥的秘密性和公钥密码学的数学属性。私钥是只有发送者知道的而公钥是可以公开分享的。没有私钥就不能生成一个与给定公钥匹配的有效签名这确保了只有私钥的持有者才能创建有效的签名。 中间人攻击 关于中间人攻击 中间人攻击者确实可以使用发送者的公钥来解密数字签名得到摘要A。但是攻击者不能使用公钥来创建一个新的有效签名因为创建数字签名需要发送者的私钥这是攻击者不知道的。 如果攻击者修改了消息那么摘要哈希值自然会发生变化。这意味着即使攻击者能够生成新的摘要他们还需要使用发送者的私钥加密新摘要以产生一个新的数字签名。由于攻击者没有私钥他们无法这样做。 因此接收者在验证过程中会发现摘要A从数字签名解密得到与摘要B从修改后的消息计算得到不匹配从而知道消息已被篡改。 即任何人都可以得到摘要A和摘要B但是如果没有发送者的私钥就无法生成正确的数字签名中间人用自己的私钥生成数字签名有个卵用接收者又不用中间人的公钥验证。所以中间人只能修改信息但是不能修改数字签名。 转眼中间人又把没法修改的数字签名没有私钥中间人是无法完美修改的和修改后的信息给到了接收方接收方首先通过发送者的公钥解密数字签名得到摘要A又使用哈希函数包装中间人修改后的信息得到摘要B。 因为哈希函数即使只有一点点的输入变化输出的哈希值也会发生巨大的变化所以摘要B和原本正确的、应该和摘要A的值相等的摘要B差别巨大而接收方就是看摘要AB是否相同现在变成了验证摘要AB是否相同很明显已经不同了所以接收方能快速明白 1. 经过数字签名的验证得到摘要A该信息能够通过A的公钥解密生成合理的有意义的摘要。说明该信息确实是来自于发送方验证了发送方的身份。 2. 两种过程产生的摘要信息不同说明发送过来的原始数据已经不完整不正确了有可能受到中间人的干扰。 据此我们说到数字签名和消息的验证有两个主要的步骤 验证发送者的身份这是通过数字签名完成的。只有发送者的私钥能产生一个可以由其公钥解密的数字签名。如果攻击者没有私钥他们无法为任何消息生成有效的签名。所以当接收者使用公钥成功解密了数字签名并得到了摘要A这验证了消息是从拥有私钥的发送者处发出的。 验证消息的完整性这是通过比较两个摘要来完成的。 摘要A是从数字签名解密得到的它是基于发送者发送的原始消息生成的。摘要B是接收者从他们收到的消息计算其哈希得到的。 如果攻击者修改了消息他们可以很容易地为这个修改后的消息计算出新的摘要B使用哈希函数就可以发送者也是通过哈希函数生成摘要的只不过数字签名是进一步使用私钥加密。但问题是这个摘要B不会与摘要A匹配除非攻击者同时拥有发送者的私钥并且为修改后的消息创建了新的数字签名这在实际应用中是极不可能的情况。因此接收者仍然可以检测到消息被篡改的事实。 只要有发送者的私钥中间人就可以篡改信息 理论上如果攻击者获得了发送者的私钥那么他们可以对任何消息进行签名从而伪装成该发送者。这意味着攻击者可以 生成一个篡改后的消息。使用发送者的私钥为这个篡改后的消息创建一个数字签名。将篡改后的消息和新的数字签名发送给接收者。 在这种情况下当接收者进行验证时 使用发送者的公钥接收者可以解密数字签名并获得摘要。接收者还会对篡改后的消息生成一个摘要。由于这两个摘要是匹配的接收者可能会认为这个篡改后的消息确实来自原始发送者。 因此确实如果攻击者获得了私钥他们可以篡改消息并伪造有效的数字签名从而欺骗接收者。 这就是为什么私钥的安全性非常关键为什么它必须被严格保护。在实际应用中私钥往往被存储在安全的环境中如硬件安全模块HSM或使用其他加密手段进行保护以防止未经授权的访问。 如果私钥被认为是丢失或被盗应立即撤销相应的公钥证书并生成一个新的公私钥对。这确保即使私钥落入错误的手中它也不能被用于伪造签名。 作者思考 作者学到这里的时候其实认为不需要比较摘要。原因是如果中间人有私钥那么数字签名被篡改摘要AB都可以被轻松修改成新的值并且相等比较摘要也比较不出来如果中间人没有私钥他就不能生成一个合法的签名解密后的结果也将是无意义的也不用通过比较摘要得出结论。 是不是看上去很有道理其实作者并没有理清第二种情况上面的想法是错误的 作者搞错了 “中间人没有私钥” 的情况实际上没有私钥中间人未必不能生成正确的签名他可以完全不修改签名啊请读者明确一点发送者传递的是原始信息和数字签名如果对于数字签名中间人一点都不改但他修改了原始信息这时倘若没有摘要比较那么接收者的行为会是什么样呢下面我们综合比较讲解一下 中间人没有私钥但尝试篡改消息 传递虚假消息与正确的签名这种情况下虽然签名是对原始消息的正确签名但由于消息已被篡改所以当接收者对篡改后的消息计算哈希得到新的摘要并与签名解密得到的摘要进行比较时会发现它们不匹配。因此接收者可以确定消息已被篡改。如果不比较摘要接收者可能会认为这是一个有效的、未被篡改的消息这是不安全的。 如果只依赖数字签名的解密那么在这种情况下接收者可能会误以为消息是有效的。因为实际上传递的签名中不包含所有的信息只有摘要。签名正确不意味着你额外传递的原始信息正确除非将原始信息叶转换成摘要和签名转换的摘要对比才能验证原始信息正确所以这种情况下摘要比较是必要的。 传递虚假消息与错误的签名这种情况下由于签名是错误的当接收者尝试用公钥解密它时解密后的结果将不是有效的摘要格式。即使解密操作可以完成得到的结果与任何有效的摘要都不会匹配。此外当接收者对篡改后的消息计算哈希得到新的摘要并与签名解密得到的摘要进行比较时会发现它们不匹配。因此接收者会知道消息已被篡改。 当接收者使用公钥对错误的签名进行解密时得到的结果确实不会是一个有效的摘要这时就已经能够确定消息或签名被篡改了。因此确实没有必要再进行摘要比较。 中间人有私钥这是一种非常罕见的情况因为私钥应当被妥善保管不应落入他人之手。但如果这确实发生了那么中间人确实可以伪造任何消息并为其创建有效的签名。这种情况下数字签名和摘要验证的确都会失效。这也是为什么私钥的安全性是如此重要的原因。 “消息正确、签名错误”的情况通常不会发生。 比较摘要的意义了解 系统的健壮性摘要比较提供了一个另外的安全层。这在系统设计中是一个常见的原则即不完全依赖一个安全机制数字签名而是使用多重机制。这可以抵御未知的攻击和缺陷。 误操作或传输错误在数字签名有效的情况下消息在传输过程中可能会受到损坏如因网络问题、存储问题等。通过比较摘要可以验证消息的完整性。 旧的或延迟的消息攻击者可能会重放旧的消息。虽然这些消息的数字签名是有效的但它们可能不再是最新或者相关的。通过比较摘要可以检查消息是否是最新的。 确认发送者的真实意图比如攻击者可能会截获一个有效的、签名过的消息然后将它发送给另一个不相关的接收者。尽管数字签名是有效的但消息可能不是发送者打算发送给这个特定接收者的。通过比较摘要可以确保消息是发送者打算发送的。 未来证明摘要比较也为未来可能出现的新的攻击或漏洞提供了保护。尽管现有的签名算法可能是安全的但未来可能会发现它的弱点。摘要的存在和验证提供了一个额外的安全层使得对消息的完整性和来源的验证更加严格。 现在我们对误操作或传输错误进行学习 误操作或传输错误 发送过程 Alice想向Bob发送一个简单的消息Hello。Alice首先对这个消息进行哈希得到一个摘要例如为了简化假设摘要只是消息的第一个字母摘要 H。Alice使用她的私钥对摘要进行加密得到数字签名。然后Alice将消息Hello 和数字签名一起发送给Bob。 传输过程中的错误 在传输过程中由于网络故障、软件错误或其他原因消息的某个部分被误改。假设由于这种错误Bob收到的消息变成了Hellp而不是原始的Hello。 Bob的验证过程 Bob首先使用Alice的公钥解密数字签名得到摘要A这个摘要是H。然后Bob对他收到的消息Hellp进行哈希得到一个摘要B这个摘要是P因为我们假设摘要只是消息的最后一个字母。Bob比较摘要A和摘要B发现它们不匹配H不等于P。 因此Bob知道他收到的消息已经在传输过程中被更改或损坏了。 如果Bob只解密数字签名他会得到一个摘要。这个摘要是原始消息的摘要但由于消息已经被修改这个摘要不能与当前消息匹配。如果Bob没有使用哈希函数再次对收到的消息进行哈希他将无法知道消息已经被修改。只有当他使用哈希函数对收到的消息进行哈希并将其与解密的摘要进行比较时他才会发现摘要不匹配。 此外也请大家明确一点 当接收到的消息出现错误或与数字签名不匹配时这种不匹配可能是由于多种原因引起的 中间人攻击恶意的第三方可能已经修改了消息内容试图篡改或伪造消息。消息传输错误在数据传输过程中由于网络问题或其他因素消息可能出现了误差。这可能是由于噪声、数据包丢失或数据包顺序错乱等原因引起的。软件或硬件故障发送或接收消息的设备可能出现了故障导致消息被误改。 当数字签名验证失败时我们只知道消息与原始签名不匹配但我们不能确定是上述哪种情况导致的不匹配。因此数字签名机制确实不能单独确定消息的不匹配是由于哪种原因引起的。 这也是为什么在实际的安全通信中我们不仅依赖数字签名还会使用其他机制如错误检测和纠正代码、时间戳、证书、双向认证等以提高消息的完整性、认证性和非否认性。 总而言之数字签名只能确认消息与原始签名是否匹配。如果不匹配数字签名不能告诉我们为什么不匹配是由于中间人攻击、传输错误、还是其他原因。所以虽然数字签名提供了数据完整性和身份验证但在实际应用中为了增强安全性通常还需要结合其他安全措施和机制。 如何防止中间人篡改数字签名 关于防止中间人攻击和消息篡改以下是一些方法 使用安全的通信协议例如使用TLS/SSL来加密传输中的数据。这确保了数据的机密性和完整性并验证了双方的身份。 数字证书和CA证书颁发机构数字证书包含公钥及其所有者的信息并由受信任的第三方即CA签名。接收者可以验证数字证书的有效性来确定公钥的真实性和合法性从而避免中间人攻击。 时间戳和过期时间为消息或签名添加时间戳可以防止重放攻击确保消息在特定的时间窗口内是有效的。 使用多重签名在某些情况下一个操作可能需要多方的批准。通过要求多个数字签名可以增加系统的安全性。 数字签名在区块链中的应用 数字签名在区块链技术中起到了核心的作用特别是在确保交易的完整性和不可否认性方面。在区块链中不是保存上一个区块的公钥而是保存上一个区块的哈希值。下面将详细解释区块链中的数字签名机制 数字签名的基本原理: 当某人想在区块链上发送一个交易时他们首先创建一个交易的描述这通常包括发送者的地址、接收者的地址、金额等信息。发送者使用他们的私钥对这个交易描述进行签名生成数字签名。交易包括交易描述和数字签名被发送到网络并由网络中的其他参与者例如比特币中的矿工验证。 交易的验证: 网络中的验证者使用发送者的公钥来验证数字签名。如果签名验证通过这意味着交易确实来自声称的发送者并且没有被篡改。另外验证者还会检查发送者是否拥有足够的资金来完成交易。 区块的创建: 一旦交易被验证它会被放入待打包的交易池。矿工或验证者将这些交易打包成一个新的区块。新区块包含了这些交易的信息以及前一个区块的哈希值而不是公钥。这种链接方式确保了所有区块的连续性和不可更改性。 区块的添加: 新创建的区块会被添加到区块链上成为链的一部分。一旦区块被添加到链上其中的交易就被认为是已确认的并且难以更改。因为要更改一个区块中的信息你不仅需要更改那个区块还需要更改它之后的所有区块这在计算上是非常困难的。 数字签名确保了区块链上的每个交易的真实性和完整性。同时通过将每个新区块链接到前一个区块的哈希值确保了区块链的不可更改性和安全性。 总之数字签名和哈希函数都是区块链安全性的基石。数字签名确保交易的真实性而哈希函数通过连续链接每个区块来确保整个链的不可更改性。 数字签名在信息安全证书中的作用 信息安全的证书尤其是X.509证书是在许多安全应用中使用的包括SSL/TLS、电子邮件加密和身份验证。这些证书为公钥加密提供了一个框架允许实体证明自己的数字身份确保数据的完整性和机密性。 以下是关于X.509证书的详细介绍 X.509证书的结构 版本号表示证书的版本。序列号证书的唯一标识符。签名算法标识用于签名证书的算法。颁发者签发证书的证书颁发机构(CA)的名称。有效期证书的有效开始日期和结束日期。主题证书持有者的名称。公钥信息持有者的公钥及其相关信息。扩展可选关于证书的其他信息。数字签名由CA的私钥生成的签名。 证书的颁发 当实体可以是个人、组织或设备需要证书时它会生成一个公钥和私钥对然后创建一个证书签名请求Certificate Signing Request, CSR这个请求通常包括公钥、实体的名称例如网站的域名和其他相关信息这个CSR会发送给CA。CA验证实体的身份信息然后生成一个证书将实体的公钥和其他信息利用哈希函数通常是SHA256计算得到的摘要打包进去并使用CA的私钥签名。这个数字签名会与原始的公钥和其他信息一起被打包成一个X.509证书然后返回给请求的实体。实体现在有了一个由CA签发的证书并可以用它证明自己的身份。 证书的验证 当某个实体例如一个网站向另一个实体例如一个浏览器呈现其证书时接收者可以使用CA的公钥来验证证书的签名。验证过程如下; 验证证书的实体浏览器会使用CA的公钥解密证书中的数字签名得到摘要。同时浏览器会对证书中的公钥和其他信息生成一个新的摘要。如果这两个摘要匹配证书就被认为是有效的这意味着它确实是由CA签发的并且没有被篡改。也就是说验证证书就是数字签名验证数据完整性的过程。数字签名验证中对原始信息计算得到摘要在证书验证中原始信息包括实体网站的公钥和其他信息。如果签名验证成功这证明证书是由受信任的CA签发的因此接收者可以信任证书中的公钥。 证书的有效期和算法更新 证书有一个有效期通常为一年或几年。这是为了安全考虑确保即使私钥被泄露它也不会被长时间地滥用。随着时间的推移加密算法可能会因为数学进展或计算能力的增强而变得不安全。当这发生时证书需要使用新的、更安全的算法重新颁发。这就是证书需要定期更新以及为什么证书的内容如签名算法可能会改变的原因。 CA层次结构 CA证书颁发机构层次结构是一个分层的体系用于在安全和可信任的方式中管理和颁发数字证书。在这种层次结构中各级的CA具有不同的角色和责任它们彼此之间存在信任关系。以下是关于CA层次结构的详细解释 根CARoot CA 根CA位于CA层次结构的最顶部。它是最受信任的实体因为它为整个证书信任链提供基础。根CA自签名其证书意味着它的证书不是由其他CA签发的。根证书通常具有很长的有效期例如10年或20年。当浏览器或操作系统预装了一个根证书意味着它们信任该根CA及其签发的所有下级证书。 中间CAIntermediate CA 中间CA位于根CA和最终实体如网站或个人之间。中间CA的证书是由上一级CA可能是另一个中间CA或根CA签发的。使用中间CA可以提供更多的灵活性和安全性。例如如果中间CA的私钥被泄露只需要吊销该CA的证书而不需要吊销整个层次结构的证书。中间CA也可以用于组织内部的分部门或分功能管理或者用于特定的业务或地理区域。 最终实体CAEnd-entity CA或叶证书Leaf Certificates 这些是实际被用于服务器、客户端或个人的证书。它们是由中间CA或根CA签发的。这些证书具有相对较短的有效期例如1年或2年。 在实际应用中当我们访问一个使用SSL/TLS的网站时网站不仅会提供自身的证书而且还会提供一个证书链。这个链从根证书开始通过一个或多个中间证书最终到达网站的证书。您的浏览器或操作系统会验证这个证书链确保每个证书都是由其上级签发的并且检查证书是否被吊销或过期。CA层次结构提供了一种分层的方法来管理和验证数字证书。这种结构使得数字证书系统既有灵活性又有安全性。 信任链Trust Chain 当客户端例如一个浏览器接收到证书链时它会尝试构建一个从受信任的根证书到服务器证书的路径。这就是信任链。为了验证这个链客户端首先检查第一个证书服务器证书是否是由第二个证书中间CA签发的然后检查第二个证书是否是由第三个证书签发的以此类推直到达到一个预先知道和信任的根证书。如果客户端可以成功地验证这个链那么它就会信任服务器证书。 对于客户端来说它接收到的是一个证书链但它试图建立的是一个信任链。简而言之证书链是服务器提供给客户端的而信任链是客户端基于这个证书链和它本地受信任的根证书存储来建立的。
http://www.w-s-a.com/news/840448/

相关文章:

  • 做外贸要自己建网站吗有效的网络营销方式
  • 精通网站开发书籍做网站获取手机号码
  • 论坛做视频网站有哪些济南新站seo外包
  • 哪类型网站容易做冷水滩做微网站
  • 搭建企业网站流程保定徐水网站建设
  • 建设单位到江川区住房和城乡建设局网站伦敦 wordpress 设计
  • 响应式网站的服务麦德龙网站建设目标
  • 做国外单的网站叫什么海南省海口市网站建设
  • 杭州响应式网站案例wordpress5.2.2
  • 网站建设运营维护合同wordpress资源搜索插件
  • 国外网站流量查询东莞网站建设教程
  • 餐饮类网站建设达到的作用东莞工程建设交易中心网
  • 网站设计 知识产权湖北网站建设xiduyun
  • 猫咪网站模版下载中国风 古典 红色 网站源代码
  • 个人网站备案模板制作网站首页
  • 潍坊正规建设网站网站建设设计作业
  • 推荐一下网站谢谢辽宁住房城乡建设部官方网站
  • 网站文件大小英选 网站开发
  • 济南建网站哪家好wordpress编辑器排行
  • 在福州做搬家网站多少钱画册设计网站有哪些
  • 如何让别人浏览我做的网站哪些方法可以建设网站
  • 网站建设与管理网络推广的优点
  • 美食网站的设计与制作做网站的电销话术
  • 中国档案网站建设现状研究陕西建设厅执业资格注册中心网站
  • 网站建设的内容管理怎么用ps切片在dw里做网站
  • 建设婚恋网站用什么搭建涿州网站开发
  • 做知识内容的网站与app哈尔滨哪里有做网站的
  • 青岛企业网站建站模板百度网站建设推广
  • 做360网站中保存的图片存在哪里个人建立网站要多少钱
  • 网站安装部署无锡做网站的公司