• 【密码学篇】数字签名基础知识(无保密性)


    【密码算法篇】数字签名基础知识(无保密性)

    数字签名主要用于确认数据的完整性、签名者身份的真实性和签名行为的不可否认性等。—【蘇小沐】

    1.数字签名定义

    数字签名(Digital Signature或Digitally Signed,公钥数字签名)是附加在数据单元上的一些数据,或是对数据单元所作的密码变换。这种数据或变换允许数据单元的接收者用以确认数据单元的来源和数据单元的完整性并保护数据,防止被人(例如接收者)进行伪造。

    2.数字签名原理

    数字签名是指用户用"自己的密钥"对"原始数据的哈希摘要(Hash Digest)"进行加密所得的数据。主要用于确认数据的完整性、签名者身份的真实性和签名行为的不可否认性等。

    数字签名技术大多基于哈希摘要和非对称密钥加密体制来实现。为提升效率和安全性,一般先使用密码杂凑算法对原始消息进行杂凑运算,再对得到的消息摘要进行数字签名。

    数字签名说明
    私钥签名,加密过程数字签名技术是将"原文通过特定Hash函数得到的摘要信息"用"发送者的私钥加密"所得的数据,然后与原文一起传送给接收者。
    公钥验签,解密过程接收者用"发送者的公钥"解密被加密的摘要信息,然后用Hash函数对收到的原文产生一个摘要信息,与解密的摘要信息对比。如果相同,则说明收到的信息是完整的,在"传输过程中"没有被修改,否则说明信息被修改过,因此数字签名能够验证信息的完整性。

    在这里插入图片描述

    数字签名过程
    在这里插入图片描述

    数字签名和密码技术组合运用
    在这里插入图片描述

    3.数字签名作用

    数字签名具有"防冒充/伪造(信息的真实性)、防篡改(破坏信息的完整性)、可鉴别身份、防重放、抗抵赖性"。

    数字签名作用说明
    完整性数字签名能保障消息的完整性。一次数字签名采用一个特定的哈希函数,它对不同文件产生的数字摘要的值也是不相同的。
    抗抵赖性数字签名能确定消息的不可抵赖性,因为他人假冒不了发送方的私钥签名。发送方是用自己的私钥对信息进行加密的,只有使用发送方的公钥才能解密。

    总结

    数字签名保证信息传输的完整性、发送者的身份认证、防止交易中的抵赖发生;⚠️但"数字签名不能解决加密传输",数字签名可以"加密要签名消息的杂凑值",不具备对"消息本身"进行加密。

    由于本人能力有限,纯粹做个记录,文中如有不妥和错漏之处欢迎批评指正。如果觉得本文档对您有帮助,可以点赞收藏关注!

    著作所有权归作者 蘇小沐 所有,转载请注明文章出处

    名称时间
    开始编辑日期2022 年 11 月 23 日
    最后编辑日期2022 年 11 月 23 日

    在这里插入图片描述

  • 相关阅读:
    JavaScript 从入门到熟悉
    Ubuntu Server CLI专业提示
    Linux进程概念
    js的变量赋值的问题
    深度学习在医疗保健领域的应用:从图像识别到疾病预测
    什么是原地算法?
    Delphi版设计模式
    派生属性-架构案例2020(三十七)
    [附源码]计算机毕业设计springboot疫情期间小学生作业线上管理系统
    windows安装wsl
  • 原文地址:https://blog.csdn.net/NDASH/article/details/128002397