椭圆曲线在SM2加解密中的应用(三)

这篇具有很好参考价值的文章主要介绍了椭圆曲线在SM2加解密中的应用(三)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、SM2加密运算

椭圆曲线在SM2加解密中的应用(三),算法,学习

1.1加密原始数据

SM2加密运算首先是用户A对数据加密,用户A拥有原始数据

  • 椭圆曲线系统参数
  • 长度为klen比特的消息M
  • 公钥Pb

椭圆曲线系统参数,已经在 椭圆曲线参数(二)中详细介绍;M就是需要加密消息,长度为klen;

1.1.1 公钥Pb的计算方式

公钥Pb=dBG,其中dB是私钥,是256bit的随机数(1<d<n,d为整数),n、G都为椭圆曲线参数。

1.2 SM2加密步骤

  • 选取一个随机数k,计算C1=kG,k此时为用户A的临时私钥,是为了和解密用户B进行密钥交换。(解密用户B拿到C1,会进行s=dB C1=dB k G)
  • 判断 S=hPb结果是否为无穷远点, 该步骤的意义是如果S 的结果不是无穷远点,后续步骤 kPb 就不可能是无穷远点。具体的详细证明见G点的选择
  • kPb=k dB G,密钥交换,后续的密钥派生和异或操作,就是将用户A的临时密钥k和用户B的密钥dB 对消息进行加密。
  • 最后的hash操作是防止在信息传递的过程中,数据被篡改。
  • C1 将自己的临时密钥k传递给解密用户B
  • C2 就是把自己临时密钥k的解密用户B的dB和消息一起加密起来,传递给解密用户B
  • C3 就是防止C1,C2在传递到解密用户B的过程中信息被篡改。

二、SM2解密运算

2.1解密拥有的数据

  • 椭圆曲线系统参数
  • 加密用户A传递过来的信息C1,C2,C3
  • 解密用户B的私钥dB

2.2解密步骤

  • dB C1就是密钥交换,要将C2中的消息解密出来,必须要有加密用户A的临时密钥k和机密用户B的私钥dB。
  • 密钥派生和异或操作就是将C2中的消息解密出来
  • 哈希运算就是确定在信息的传递过程中,没有人篡改数据

椭圆曲线在SM2加解密中的应用(三),算法,学习文章来源地址https://www.toymoban.com/news/detail-717537.html

到了这里,关于椭圆曲线在SM2加解密中的应用(三)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 椭圆曲线密码(SM2)

    1. 公钥生成 ① Alice首先构造一条椭圆曲线E,在曲线上选择一点G作为生成元,并求G的阶为n,要求n必须为质数。此时构成了一个循环群G. ② Alice选择一个私钥k (k n),生成公钥 Q = kG ③ Alice将公钥组E、Q、G发送给Bob 2. 加密过程 ① Bob收到信息后,将明文编码为M,M为曲线上一点,

    2024年02月17日
    浏览(31)
  • SM2国密算法加解密

    接口安全设计原则的一个点就是数据不能明文传输,除了https这个必须的请求外,接口数据加密也是一个重要的方式,下面介绍一下SM2国密算法加解密的使用方式。 这里我就针对目前前后端分离架构的方式来简单介绍一下如何正确使用 SM2 算法对数据进行加解密,介绍分为后

    2024年02月11日
    浏览(29)
  • 基于hutool 封装国密sm2,sm4 加解密算法

    基于hutool 封装国密sm2,sm4 加解密算法 1. 加入依赖包 2. 编码

    2024年02月13日
    浏览(33)
  • 国密SM2算法(JS加密,C#、Java解密)

    常见的渗透测试会将网站登录时密码使用明文传输视为风险。推荐使用国密算法或者RSA算法对密码进行加密传输。 RSA加密(JS加密,C#、Java解密)请参考《RSA对称加密(JS加密,C#、Java解密)》​​​​​​ 本文描述国密SM2算法的实现。 一、工作原理 前端js使用公钥进行加密

    2024年02月02日
    浏览(38)
  • 国密算法SM2/3/4简单比较,以及基于Java的SM4(ECB模式,CBC模式)对称加解密实现

    常用的国密算法包含SM2,SM3,SM4。以下针对每个算法使用场景进行说明以比较其差异 SM2:非对称加密算法,可以替代RSA 数字签名,SM2为非对称加密,加解密使用一对私钥和公钥,只有签名发行者拥有私钥,可用于加密,其他需要验证解密或验签者使用公钥进行。如果使用公

    2024年04月13日
    浏览(28)
  • 国密算法概述、及算法的集成应用(sm2、sm3、sm4)

    由于项目的需求,需要集成国密加解密,于是对国密又温故知新了一遍。同时整理了一下国密的一些算法。 本文主要从国密相关算法的简介、应用系统的集成、工具类的封装等方面入手,对国密进行深入的学习。 为了保障商用密码的安全性,国家密码局制定了一系列密码标

    2024年02月14日
    浏览(35)
  • sCrypt 合约中的椭圆曲线算法:第二部分

    我们在脚本中实现了椭圆曲线 (EC) 算法。在之前的实现中,我们进行链下计算并在脚本中验证结果。我们这里直接用脚本计算。 基于EC的应用非常多,特别是在密码学领域,如数字签名、加密、承诺方案等。作为具体示例,我们重新实现了 ECDSA 签名验证,允许使用任意消息验

    2024年01月16日
    浏览(35)
  • 国密算法SM2的优势、原理和应用场景

    在数字化时代,信息安全成为关注的焦点。密码算法是信息安全的核心,而国密算法SM2是一种国产密码算法,已经广泛应用于电子认证、电子签名、数据加密等领域。本文将深入介绍SM2算法的优势、原理和应用场景,并探讨如何利用FuncGPT(慧函数)生成的SM2库构建安全的应用

    2024年02月10日
    浏览(20)
  • 【vue+sm2】前端使用国密sm2,加解密

    1.第一步就是安装依赖 2.导入sm2 3.先定义私钥或者公钥,私钥是解密,公钥是加密 4.设置加密模式 5.解密的使用全码 6.加密的实现全码

    2024年02月16日
    浏览(34)
  • C# SM2加解密

            随着密码技术和计算机技术的发展,目前常用的1024位RSA算法面临严重的安全威胁,我们国家密码管理部门经过研究,决定采用SM2椭圆曲线算法替换RSA算法。         SM2算法和RSA算法都是公钥密码算法,SM2算法是一种更先进安全的算法,在我们国家商用密码体系中被

    2024年02月07日
    浏览(23)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包