zoukankan      html  css  js  c++  java
  • Java文件签名与验证

    数字签名与验证只需要用户输入三个参数:

    • Ø         原文件
    • Ø         签名信息文件
    • Ø         用户名

    签名过程:

    1. 1.         首先从用户名对应的用户注册文件中读取用户信息和私钥,对原文件产生报文摘要,再对摘要进行签名。原文件的报文摘要、对报文摘要的签名都存入签名信息文件。
    2. 2.         接收三个输入参数:原文件路径、签名信息文件路径和用户名
    3. 3.         从用户注册文件中读取用户信息和私钥
    4. 4.         对原文件产生报文摘要、把摘要用对象输出流写入签名信息文件
    5. 5.         生成随机源
    6. 6.         生成签名对象,用私有密钥和随机源初始化签名对象
    7. 7.         将原文件的报文摘要输入签名对象
    8. 8.         对原文件的报文摘要进行签名,将签名信息用对象输出流写入签名信息文件

    验证签名过程:

    根据签名过程的逆过程对签名信息对比认证,顺序不能颠倒。

    依次从签名信息文件中读取的对象是:原文件的报文摘要,对原文件报文摘要的签名,

    1. 1.         接收三个输入参数:原文件路径、签名信息文件路径和用户名
    2. 2.         从用户注册文件中读取用户信息和公钥
    3. 3.         从签名信息文件中,读取原文摘要和数字签名
    4. 4.         产生原文件报文摘要,并与从签名信息文件中读取到的摘要进行对比
    5. 5.         生成签名对象,用公有密钥验证签名信息
  • 相关阅读:
    mysql book网盘
    mysql数据库测试库下载
    TEMP
    测试
    吴炳锡
    ACMUG
    mysql select语句执行顺序
    mysql mha高可用架构的安装
    执行计划解读 简朝阳 (Sky Jian) and 那蓝蓝海
    mysql字符串比较
  • 原文地址:https://www.cnblogs.com/heartstage/p/3442547.html
Copyright © 2011-2022 走看看