soul_programmer_swh——灵魂程序员的博客

博冠而约取,厚积而薄发

Java实现国密算法SM2,SM3,SM4,并且实现ECB和CBC模式

代码中实现了电码本ECB模式和密文分组连接CBC模式,SM3.java和SM4.java为算法实现类,utils的都是根据实现类写的工具,可以根据需要调用杂凑算法SM3的杂凑功能获得杂凑值。SM4.java中sm4_crypt_ecb(SM4_Context ctx, byte[] input) ...

2018-05-19 17:34:00

阅读数:6671

评论数:3

SM4算法设计原理

SM4分组密码算法描述:SM4分组密码算法是一个迭代分组密码算法,由加解密算法和密钥扩展算法组成。SM4分组密码算法采用非平衡Feistel结构,分组长度为128b密钥长度为128b。加密算法与密钥扩展算法均采用非线性迭代结构。加密运算和解密运算的算法结构相同,解密运算的轮密钥的使用顺序与加密运算...

2018-05-10 10:28:44

阅读数:1745

评论数:0

SM3算法设计原理

 SM3密码杂凑算法的描述SM3密码杂凑算法采用Merkle-Damgard结构,消息分组长度为512b,摘要长度256b。压缩函数状态256b,共64步操作步骤。SM3密码杂凑算法的初始值:SM3密码杂凑算法的初始值共256b,由8个32b串联构成,具体值如下:IV=7380166f  4914...

2018-05-10 10:27:20

阅读数:1423

评论数:0

Tomcat中文乱码问题的原理和解决方法(全面、详细)

原文地址:https://www.aliyun.com/jiaocheng/1157753.html 一、Java中文问题的由来  Java的内核和class文件是基于unicode的,这使Java程序具有良好的跨平台性,但也带来了一些中文乱码问题的麻烦。原因主要有两方面,Java和JSP文件本...

2019-01-16 18:04:30

阅读数:19

评论数:0

CATALINA_BASE与CATALINA_HOME的区别

到底CATALINA_HOME和CATALINA_BASE有什么区别呢, 之前因为都是小打小闹的在服务器上安装一个tomcat就得了,然后根据前人的配置, 将CATALINA_HOME和CATALINA_BASE两个值设为了tomcat的目录(其实此处描述很不精确), 今天无意间看到了公司的安装文...

2019-01-16 17:43:17

阅读数:7

评论数:0

Intellij IDEA——图标参考(图标代表的含义)

官网地址:https://www.jetbrains.com/help/idea/symbols.html Common Icon Description Class Abst...

2019-01-16 11:07:31

阅读数:10

评论数:0

Intellij IDEA——Git相关功能(简介)

        一般来说,我个人喜欢通过IDEA中集成的插件去使用相关功能,这里附上IDEA关于Git的相关功能说明。         先给出git先关选项截图,然后就各个选项进行解释说明: Branches...:新建分支,切换分支; Tag...:添加标签; Merge Chang...

2019-01-11 17:56:10

阅读数:22

评论数:0

PostgreSQL底层对查询类语句的处理

查询类语句的处理         postgresql对查询类语句的优化过程,除了语法分析过程和词法分析过程以外还需进行: 1、将原始语法树转换为查询语法树; 2、以查询语法树为基础对其进行逻辑优化; 3、对查询语句进行物理优化; 4、查询计划创建等过程。   具体流程介绍    ...

2019-01-10 22:15:58

阅读数:10

评论数:0

RocketMQ 发送/接受消息

新建Java项目,添加RocketMQ Client的依赖。 <dependency> <groupId>com.alibaba.rocketmq&l...

2019-01-09 22:08:04

阅读数:11

评论数:0

Lombok注解

Lombok的作用:         本人认为lombok的作用就是减少编码中的重复编码,简化编码,开发过程中通过注解就可以代替Get()、Set()方法的书写,虽然这两种方法可以一键生成,体现不出编码简化的效果,从log、synchronized等对应的注解来看,简化编码的效果显而易见。在lo...

2019-01-09 14:51:35

阅读数:26

评论数:0

MyBatis 配置

XML 映射配置文件 MyBatis 的配置文件包含了影响 MyBatis 行为甚深的设置(settings)和属性(properties)信息。文档的顶层结构如下: configuration 配置 properties 属性 settings 设置 typeAliases 类型命...

2019-01-08 13:17:04

阅读数:17

评论数:0

MyBatis 动态 SQL

动态 SQL MyBatis 的强大特性之一便是它的动态 SQL 能力。如果你有使用 JDBC 或其他类似框架的经验,你就能体会到根据不同条件拼接 SQL 字符串有多么痛苦。拼接的时候要确保不能忘了必要的空格,还要注意省掉列名列表最后的逗号。利用动态 SQL 这一特性可以彻底摆脱这种痛苦。 通...

2019-01-08 13:06:39

阅读数:21

评论数:0

MyBatis Statement Builders

Statement Builders Request For Translation This section is outdated in the Chinese version. Please refer to the English manual. Any help with the C...

2019-01-08 11:30:09

阅读数:18

评论数:0

MyBatis Mapper XML 文件

Mapper XML 文件 MyBatis 的真正强大在于它的映射语句,也是它的魔力所在。由于它的异常强大,映射器的 XML 文件就显得相对简单。如果拿它跟具有相同功能的 JDBC 代码进行对比,你会立即发现省掉了将近 95% 的代码。MyBatis 就是针对 SQL 构建的,并且比普通的方法做...

2019-01-08 11:07:28

阅读数:52

评论数:0

MyBatis Logging

Logging   Mybatis内置的日志工厂提供日志功能,具体的日志实现有以下几种方式: SLF4J Apache Commons Logging Log4j 2 Log4j JDK logging 具体选择哪个日志实现由MyBatis的内置日志工厂确定。它会使用最先找到的(按上...

2019-01-08 10:42:46

阅读数:17

评论数:0

MyBatis Java API

Java API 既然你已经知道如何配置 MyBatis 和创建映射文件,你就已经准备好来提升技能了。 MyBatis 的 Java API 就是你收获你所做的努力的地方。正如你即将看到的,和 JDBC 相比, MyBatis 很大程度简化了你的代码而且保持简洁,很容易理解和维护。MyBatis...

2019-01-08 10:39:01

阅读数:16

评论数:0

Redis安装,win+linux

windows: github路径:https://github.com/dmajkic/redis/downloads 1、下载后解压: 2、选择使用32位或64位,我选择64位的,先下图路径下的“redis-server.exe”启动服务(不要关闭),然后运行“redis-cli.e...

2019-01-07 11:18:40

阅读数:26

评论数:0

Java多线程编程核心技术之方法join的使用

使用场景                 在很多情况下,主线程创建并启动子线程,如果子线程中要进行大量的耗时运算,主线程往往将早于子线程结束之前结束,这时,如果主线程向等待子线程执行完成后再结束,就需要用到join()方法了。         join()的作用是等待线程对象销毁。     ...

2019-01-04 22:08:13

阅读数:21

评论数:1

Java多线程编程核心技术之原子类

使用原子类进行i++操作         除了在i++操作时使用synchronized关键字实现同步外,还可以使用AtomicInteger原子类进行实现。         原子操作是不能分割的整体,没有其他线程能够中断或检查正在原子操作中的变量。一个原子类型(atomic)就是一个原子操作...

2019-01-04 21:24:33

阅读数:12

评论数:0

Java多线程编程核心技术之volatile关键字

volatile与死循环                 在64bit的JVM上以“-server”服务器模式运行java线程类代码时,为了保证在该模式下保障线程运行的效率,线程会一直在私有堆栈中取值,而volatile关键字的作用是强制从公共堆栈中取得变量值,这样就能有效的解决死循环状态。 ...

2019-01-03 22:05:14

阅读数:17

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭