• 密码学 数字签名


    消息鉴别的缺陷

    消息鉴别保证了数据完整性,消息不被第三方侵犯,但是不保证双方之间的欺骗。如果A发送认证消息给B,可能会存在多种争议:
    B伪造一个不同的消息,声称是A发的
    A否认发过这个消息,B无法证明A确实发了消息。

    比如股票交易亏损的抵赖等等。

    数字签名

    签名者无法否认。
    接受者可以校验签名,任何其他人无法伪造签名。
    有争议时第三方可验证。
    对签名的作者,日期和时间提供验证。

    因此签名提供了有别于鉴定的功能,抗抵赖。

    签名方案的攻击模型

    唯秘钥攻击:攻击者有公钥,即验证函数
    已知消息攻击:攻击者有A过去签名的一系列消息和签名
    选择消息攻击:攻击者可以要求A对一系列消息签名

    签名方案的攻击目的

    完全破译:攻击者掌握了私钥,可以任意制造A的签名
    选择性伪造:攻击者有一定概率可以对另一个消息做出有效签名。
    存在性伪造:攻击者至少能为一个A未签名过的消息做出有效签名。

    数字签名设计

    1.依赖被签名信息
    2.依赖某些对发送者唯一的信息,以抗抵赖
    3.相对容易生成
    4.相对容易验证和识别
    5.伪造签名计算不可行,包括根据签名伪造信息,或根据信息伪造签名
    6.存储器中存储一个签名是可行的

    数字签名分类

    验证方式分类:直接数字签名,仲裁数字签名
    计算能力分类:无条件安全,计算上安全
    可签名次数分类:一次性,多次性
    其他特殊性质

    直接数字签名

    签名依赖发送者的密钥,发送者要抵赖时可以宣称自己的私钥丢失或者失窃,从而被他人伪造签名。
    改进:将已暴露的私钥交给授权中心,行政手段…

    仲裁数字签名

    引入仲裁者,所有签名信息交由仲裁者测试,关键在于仲裁者。参与者必须信任仲裁者系统的正常工作。

    签名和加密

    签名提供真实性,加密提供保密性。
    可以先签名后加密
    先加密后签名的方式存在安全隐患,容易导致已知明文攻击。

    RSA签名

    在这里插入图片描述

    schnorr数字签名

    基于离散对数
    全局公钥{p,q,a}
    p是素数,1024位整数,q是(p-1)的素因子,160位,选择a使得 a q ≡ 1 m o d p a^q\equiv1 modp aq1modp
    用户私钥{s}
    s是随机整数,0 用户公钥{v}
    v = a − s m o d p v=a^{-s}modp v=asmodp
    在这里插入图片描述

    DSS签名方案

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • 相关阅读:
    内网穿透frp简单安装
    手把手教你编写性能测试用例
    踩坑——Doris,Can‘t get Kerberos realm, cause by: Can‘t get Kerberos realm
    java spring运行原理
    云化XR和沉浸式全息交互技术的探索与思考
    idea查看UML类图
    概率DP—练习
    Rabin-Karp 字符串哈希算法总结
    华为云CodeArts IDE for Java安装使用教程
    AlexNet重点介绍和源码测试
  • 原文地址:https://blog.csdn.net/qq_36993218/article/details/127952963