SM4 加密算法_des加密算法流程

SM4 加密算法_des加密算法流程SM4加密算法密码算法中常用的一些数据单位:位/比特/bit:指一个二进制位。字节/byte:1字节=8位[公式]字/word:1字=4字节=32位[公式]SM4是一种分组密码算法,其分组长度为128位(即16字节,4字),密钥长度也为128位(即16字节,4字)。其加解密过程采用了32轮迭代机制(与DES、AES类似),每一轮需要一个轮密钥(与DES、AES类似)。加密过程分为两步,由32次轮迭代和1次反序变换组成。SM4的解密过程与加密过程完全相同,也包括32轮迭代和一次反序变换。只

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

SM4加密算法

密码算法中常用的一些数据单位:
位/比特/bit:指一个二进制位。
字节/byte:1字节=8[公式]/word:1=4字节=32[公式]

SM4是一种分组密码算法,其分组长度为128位(即16字节,4字),密钥长度也为128位(即16字节,4字)。其加解密过程采用了32轮迭代机制(与DES、AES类似),每一轮需要一个轮密钥(与DES、AES类似)。
加密过程分为两步,由32次轮迭代和1次反序变换组成。
SM4的解密过程与加密过程完全相同,也包括32轮迭代和一次反序变换。只是在轮迭代的时候,需要将轮密钥逆序使用。

  • pom文件:
<dependency>
    <groupId>cn.hutool</groupId>
    <artifactId>hutool-all</artifactId>
    <version>5.7.20</version>
</dependency>
<dependency>
    <groupId>org.bouncycastle</groupId>
    <artifactId>bcprov-jdk15to18</artifactId>
    <version>1.69</version>
</dependency>
  • 代码块
@Test
void contextLoads() { 
   
    String content="123456";
    SM4 sm4 = SmUtil.sm4();
    String encryptHex = sm4.encryptHex(content);
    String decryptStr = sm4.decryptStr(encryptHex, CharsetUtil.CHARSET_UTF_8);
    System.out.println(encryptHex+"======="+decryptStr);
}
  • 结果:
    在这里插入图片描述
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/185469.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • vb.net 教程 12-4 msHtml 3

    版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。相比之前学习的HtmlDocument类和HtmlElement类,mshtml还提供了网页元素更详细的分类,比如IHTMLScriptElement:脚本元素IHTMLStyleSheet:样式表IHTMLFormElement:表单元素等等这些不同的元素分类有着自己的…

    2022年4月8日
    43
  • JS跳转代码_js中跳转页面路径

    JS跳转代码_js中跳转页面路径一、常规的JS页面跳转代码1、在原来的窗体中直接跳转用2、在新窗体中打开页面用:3、JS页面跳转参数的注解参数解释:第2种:第3种:第4种:第5种:三、页面停留指定时间再跳转(如3秒)四、根据访客来源跳转的JS代码1、JS判断来路代码此段代码主要用于百度谷歌点击进入跳转,直接打开网站不跳转:2、JS直接跳转代码3、ASP跳转代码判断来路<%  ifinstr(Request.ServerVariables(“http_referer”),“www

    2022年8月13日
    5
  • 解决ccSvcHst.exe CPU占用超50%的问题,及其缘由

    解决ccSvcHst.exe CPU占用超50%的问题,及其缘由

    2021年11月16日
    78
  • js的匿名函数_匿名函数

    js的匿名函数_匿名函数1.函数的声明与函数表达式区别1.1函数的声明如下方法add就是函数声明的代码结构:functionadd(x,y){alert(x+y)}add(1,2)//弹窗显示:3关于函数声明,它最重要的一个特征就是函数声明提升,意思是执行代码之前先读取函数声明。不管函数声明写在前面,还是后面,都会出现函数声明的提升。如下代码可以正确执行:add(1,2…

    2022年10月4日
    4
  • konga–添加service和rouce详细步骤

    konga–添加service和rouce详细步骤注意 先有 service 后 才能创建 rouce 可以有多个 包括删除顺序先删除 route 再删除 service 次序问题 1 添加 service 是抽象层面的服务 他可以直接映射到一个物理服务 host 指向 ip port 也可以指向一个 upstream 来做到负载均衡 通俗说 这个 service 就是后台访问接口配置 属性 描述 name 必填 服务

    2025年11月4日
    4
  • Kali Linux安装pip

    https://pip.pypa.io/en/stable/installing/

    2022年4月6日
    60

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号