• 大小: 0M
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-06-02
  • 语言: Java
  • 标签: 其他  

资源简介

SMS4国密封装接口直接可用(java).zip

资源截图

代码片段和文件信息

package com.softsec.ssm.util;
import java.io.ByteArrayInputStream;  
import java.io.ByteArrayOutputStream;  
  
public class SMS4{  
    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

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件       12468  2018-05-07 15:38  SMS4国密封装接口直接可用(java)\SMS4.java
     文件         311  2018-05-07 15:38  SMS4国密封装接口直接可用(java)\SMS4Context.java
     文件        3845  2018-07-20 14:22  SMS4国密封装接口直接可用(java)\SMS4Utils.java
     目录           0  2018-08-07 16:32  SMS4国密封装接口直接可用(java)\

评论

共有 条评论