资源简介
公司要求用sm4进行加密解密,对国密算法sm4的java实现,附带详细实例和SM4分组密码算法.pdf。希望能帮助到有同样需求的你。
代码片段和文件信息
package com.security.cipher.sm;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
public class SM4
{
public static final int SM4_ENCRYPT = 1;
public static final int SM4_DECRYPT = 0;
private long GET_ULONG_BE(byte[] b int i)
{
long n = (long)(b[i] & 0xff) << 24 | (long)((b[i + 1] & 0xff) << 16) | (long)((b[i + 2] & 0xff) << 8) | (long)(b[i + 3] & 0xff) & 0xffffffffL;
return n;
}
private void PUT_ULONG_BE(long n byte[] b int i)
{
b[i] = (byte)(int)(0xFF & n >> 24);
b[i + 1] = (byte)(int)(0xFF & n >> 16);
b[i + 2] = (byte)(int)(0xFF & n >> 8);
b[i + 3] = (byte)(int)(0xFF & n);
}
private long SHL(long x int n)
{
return (x & 0xFFFFFFFF) << n;
}
private long ROTL(long x int n)
{
return SHL(x n) | x >> (32 - n);
}
private void SWAP(long[] sk int i)
{
long t = sk[i];
sk[i] = sk[(31 - i)];
sk[(31 - i)] = t;
}
public static final byte[] SboxTable = { (byte) 0xd6 (byte) 0x90 (byte) 0xe9 (byte) 0xfe
(byte) 0xcc (byte) 0xe1 0x3d (byte) 0xb7 0x16 (byte) 0xb6
0x14 (byte) 0xc2 0x28 (byte) 0xfb 0x2c 0x05 0x2b 0x67
(byte) 0x9a 0x76 0x2a (byte) 0xbe 0x04 (byte) 0xc3
(byte) 0xaa 0x44 0x13 0x26 0x49 (byte) 0x86 0x06
(byte) 0x99 (byte) 0x9c 0x42 0x50 (byte) 0xf4 (byte) 0x91
(byte) 0xef (byte) 0x98 0x7a 0x33 0x54 0x0b 0x43
(byte) 0xed (byte) 0xcf (byte) 0xac 0x62 (byte) 0xe4
(byte) 0xb3 0x1c (byte) 0xa9 (byte) 0xc9 0x08 (byte) 0xe8
(byte) 0x95 (byte) 0x80 (byte) 0xdf (byte) 0x94 (byte) 0xfa
0x75 (byte) 0x8f 0x3f (byte) 0xa6 0x47 0x07 (byte) 0xa7
(byte) 0xfc (byte) 0xf3 0x73 0x17 (byte) 0xba (byte) 0x83
0x59 0x3c 0x19 (byte) 0xe6 (byte) 0x85 0x4f (byte) 0xa8
0x68 0x6b (byte) 0x81 (byte) 0xb2 0x71 0x64 (byte) 0xda
(byte) 0x8b (byte) 0xf8 (byte) 0xeb 0x0f 0x4b 0x70 0x56
(byte) 0x9d 0x35 0x1e 0x24 0x0e 0x5e 0x63 0x58 (byte) 0xd1
(byte) 0xa2 0x25 0x22 0x7c 0x3b 0x01 0x21 0x78 (byte) 0x87
(byte) 0xd4 0x00 0x46 0x57 (byte) 0x9f (byte) 0xd3 0x27
0x52 0x4c 0x36 0x02 (byte) 0xe7 (byte) 0xa0 (byte) 0xc4
(byte) 0xc8 (byte) 0x9e (byte) 0xea (byte) 0xbf (byte) 0x8a
(byte) 0xd2 0x40 (byte) 0xc7 0x38 (byte) 0xb5 (byte) 0xa3
(byte) 0xf7 (byte) 0xf2 (byte) 0xce (byte) 0xf9 0x61 0x15
(byte) 0xa1 (byte) 0xe0 (byte) 0xae 0x5d (byte) 0xa4
(byte) 0x9b 0x34 0x1a 0x55 (byte) 0xad (byte) 0x93 0x32
0x30 (byte) 0xf5 (byte) 0x8c (byte) 0xb1 (byte) 0xe3 0x1d
(byte) 0xf6 (byte) 0xe2 0x2e (byte) 0x82 0x66 (byte) 0xca
0x60 (byte) 0xc0 0x29 0x23 (byte) 0xab 0x0d 0x53 0x4e 0x6f
(byte) 0xd5 (byte) 0xdb 0x37 0x45 (byte) 0xde (byte) 0xfd
(byte) 0x8e 0x2f 0x03 (byte) 0xff 0x6a 0x72 0x6d 0x6c 0x5b
0x51 (byte) 0x8d 0x1b (byte) 0xaf (byte) 0x92 (byte) 0xbb
(byte) 0xdd (byte) 0xbc
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 9784 2016-09-24 10:05 国密算法sm4的java实现\com\security\cipher\sm\SM4.java
文件 4296 2016-09-24 10:05 国密算法sm4的java实现\com\security\cipher\sm\SM4Utils.java
文件 245 2016-09-24 10:05 国密算法sm4的java实现\com\security\cipher\sm\SM4_Context.java
文件 17401 2016-09-24 10:05 国密算法sm4的java实现\com\security\cipher\sm\Util.java
文件 205357 2016-01-07 13:04 国密算法sm4的java实现\SM4分组密码算法.pdf
目录 0 2018-10-17 15:44 国密算法sm4的java实现\com\security\cipher\sm
目录 0 2016-09-24 10:06 国密算法sm4的java实现\com\security\cipher
目录 0 2016-09-24 10:06 国密算法sm4的java实现\com\security
目录 0 2016-09-24 10:06 国密算法sm4的java实现\com
目录 0 2018-10-17 15:40 国密算法sm4的java实现
----------- --------- ---------- ----- ----
237083 10
相关资源
- java国密算法SM4加密.zip
- Delphi 版 SM3 SM4 加密实现代码
- 大宝CA版本的国密算法DoubleCA-JCE实现,
- SM2 SM3 SM4国密算法JAVA与JS实现版本
- SM2SM3SM4 java实现271956
- 国密SM2、SM3、SM4源代码
- sm2-sm4国密算法工具包及工具类245790
- SM2&SM3;&SM4;国密算法Java实现含详细测试
- SM2&SM3&SM4国密算法Java实现含详细测试
- java SM2的签名验签加密解密系列算法
- java写的SM4国标密码加密系统
- [SM2_SM3_SM4]国密加解密算法java实现源码
- SM4加密C#类
- sqlcipher-android3.5.9(更改加密算法位
- SM2&SM3&SM4国密算法Java实现含详细测试
- java实现国密算法SM2SM3SM4算法
- SM4国密加密解密JAVA代码实现.zip
- Android SM2、SM3、SM4 算法支持 Service P
- java调用Gmssl国密接口
- 国密SM3算法实现源代码只适合JAVA
- java国密算法实现
- DoubleCA版本的国密算法JCE(Java Crypto
- JAVA国密算法pnc,sm2,sm3,sm4,jar包直
- 国密算法SM4加解密算法JAVA
- SM4java实现
- 真正国密SM2SM3SM4的前后台配套js和ja
- js+java实现国密算法SM2
- 国密算法SM3_SM4.zip
- SM4加密解密工具和SM4.jar互加密解密
- java SM4加密demo
评论
共有 条评论