diff --git a/src/test/java/sample/Sample.java b/src/test/java/sample/Sample.java index da4ec38..482eeda 100644 --- a/src/test/java/sample/Sample.java +++ b/src/test/java/sample/Sample.java @@ -1,384 +1,384 @@ -package sample; - -import com.sunyard.proto.Util; -import com.sunyard.sge.database.*; -import com.sunyard.sge.database.Consts; -import com.sunyard.sge.log.LogFactory; -import org.apache.logging.log4j.Logger; -import org.junit.Assert; - -import java.nio.ByteBuffer; -import java.util.ArrayList; -import java.util.List; - -public class Sample -{ - public static void main(String[] args) { - - // 路径要以 / 或 \\ 结尾表示目录 - SydApi.SYD_SetLogConfig("./logs/",3); - // 通常单例就够了 - SydApiBuilder builder = new SydApiBuilder( - new String[]{ "192.168.0.200"}, - new int[]{ 8889}, - 10, - 15 - ); - - // 每个工作线程中调用 - SydApi api = builder.build(); - try { - // 不建议使用了 -// api = api.SYD_Connect_Ex( -// new String[]{ "192.168.0.200" }, -// new int[]{ 8889 }, -// 10, -// 15 -// ); - - - // 短数据加密解密 - shortEndeData( api ); - - // 批量加密解密 - batchEndeData( api ); - - // 长数据加密解密 - longDataEnde( api ); - - // 短数据 MAC - shortMAC( api ); - - // 批量 MAC - batchMACData( api ); - - // 长数据 MAC - longMAC( api ); - - // 短数据 SM3 - shortSM3( api ); - - // 长数据 SM3 - longSM3( api ); - - } finally { - if ( null != api ) { - LogFactory.getLogger().debug("END"); - api.SYD_Disconnect_Ex(); - - } - } - } - - public static void longDataEnde(SydApi api){ - - // 密钥索引 - int keyIdx = 0; - // 测试数据 - byte[] data = new byte[16 * 3 + 8]; - // 每包大小 - int pack = 16; - - // 测试数据 > 每包大小需要分包 - - // 密文数据 - ByteBuffer enDataBuff = ByteBuffer.allocate( data.length + 16 ); - - // 分包加密 - { - int n = data.length / pack; - int remainder = data.length % pack; - if ( remainder > 0 ) { - n += 1; - } else { - remainder = pack; - } - - for ( int i = 0 ; i < n ; i ++ ) { - byte[] buff = new byte[ pack ]; - - // 首包 - if ( 0 == i ) { - System.arraycopy( data, i * pack, buff, 0, pack ); - byte[] recv = api.SYD_SM4_LongData( keyIdx , buff, Consts.PkgNumHead, Consts.ECB_ENC); - enDataBuff.put( recv ); - continue; - } - - // 尾包 - if ( i == (n-1) ){ - buff = new byte[ remainder ]; - System.arraycopy( data, i * pack, buff, 0, remainder ); - byte[] recv = api.SYD_SM4_LongData( keyIdx , buff, Consts.PkgNumTail, Consts.ECB_ENC); - enDataBuff.put( recv ); - continue; - } - - // 中间包 - System.arraycopy( data, i * pack, buff, 0, pack ); - byte[] recv = api.SYD_SM4_LongData( keyIdx , buff, Consts.PkgNumMiddle, Consts.ECB_ENC); - enDataBuff.put( recv ); - - } - - } - - byte[] enData = new byte[ enDataBuff.position() ]; - System.arraycopy( enDataBuff.array(), 0, enData, 0, enData.length ); - - - // 分包解密 - // 密文数据 - ByteBuffer deDataBuff = ByteBuffer.allocate( data.length + 16 ); - { - int n = enData.length / pack; - int remainder = enData.length % pack; - if ( remainder > 0 ) { - n += 1; - } else { - remainder = pack; - } - - for ( int i = 0 ; i < n ; i ++ ) { - byte[] buff = new byte[ pack ]; - - // 首包 - if ( 0 == i ) { - System.arraycopy( enData, i * pack, buff, 0, pack ); - byte[] recv = api.SYD_SM4_LongData( keyIdx , buff, Consts.PkgNumHead, Consts.ECB_DEC); - deDataBuff.put( recv ); - continue; - } - - // 尾包 - if ( i == (n-1) ){ - buff = new byte[ remainder ]; - System.arraycopy( enData, i * pack, buff, 0, remainder ); - byte[] recv = api.SYD_SM4_LongData( keyIdx , buff, Consts.PkgNumTail, Consts.ECB_DEC); - deDataBuff.put( recv ); - continue; - } - - // 中间包 - System.arraycopy( enData, i * pack, buff, 0, pack ); - byte[] recv = api.SYD_SM4_LongData( keyIdx , buff, Consts.PkgNumMiddle, Consts.ECB_DEC); - deDataBuff.put( recv ); - - } - } - - byte[] deData = new byte[ deDataBuff.position() ]; - System.arraycopy( deDataBuff.array(), 0, deData, 0, deData.length ); - // 断言解密后和原文相同 - Assert.assertArrayEquals( deData, data ); - } - - - public static void longMAC(SydApi api){ - - // 密钥索引 - int keyIdx = 0; - // 测试数据 - byte[] data = new byte[16 * 3 + 8]; - // 每包大小 - int pack = 16; - - // 测试数据 > 每包大小需要分包 - - LongDataReturn recv = null; - // 分包 MAC - { - int n = data.length / pack; - int remainder = data.length % pack; - if ( remainder > 0 ) { - n += 1; - } else { - remainder = pack; - } - - for ( int i = 0 ; i < n ; i ++ ) { - byte[] buff = new byte[ pack ]; - - // 首包 - if ( 0 == i ) { - System.arraycopy( data, i * pack, buff, 0, pack ); - recv = api.SYD_SM4Mac_LongData( keyIdx , buff, Consts.PkgNumHead, null); - continue; - } - - // 尾包 - if ( i == (n-1) ){ - // 尾包大小可能不同 - buff = new byte[ remainder ]; - System.arraycopy( data, i * pack, buff, 0, remainder ); - recv = api.SYD_SM4Mac_LongData( keyIdx , buff, Consts.PkgNumTail, recv.getProcData() ); - continue; - } - - // 中间包 - System.arraycopy( data, i * pack, buff, 0, pack ); - recv = api.SYD_SM4Mac_LongData( keyIdx , buff, Consts.PkgNumMiddle, recv.getProcData() ); - } - } - - String mac = recv.getData(); - - // 分包校验 MAC - LongDataReturn check = null; - ByteBuffer deDataBuff = ByteBuffer.allocate( data.length + 16 ); - { - int n = data.length / pack; - int remainder = data.length % pack; - if ( remainder > 0 ) { - n += 1; - } else { - remainder = pack; - } - - for ( int i = 0 ; i < n ; i ++ ) { - byte[] buff = new byte[ pack ]; - - // 首包 - if ( 0 == i ) { - System.arraycopy( data, i * pack, buff, 0, pack ); - check = api.SYD_SM4Mac_LongData( keyIdx , buff, Consts.PkgNumHead, null, mac); - continue; - } - - // 尾包 - if ( i == (n-1) ){ - // 尾包大小可能不同 - buff = new byte[ remainder ]; - System.arraycopy( data, i * pack, buff, 0, remainder ); - check = api.SYD_SM4Mac_LongData( keyIdx , buff, Consts.PkgNumTail, check.getProcData() , mac); - continue; - } - - // 中间包 - System.arraycopy( data, i * pack, buff, 0, pack ); - check = api.SYD_SM4Mac_LongData( keyIdx , buff, Consts.PkgNumMiddle, check.getProcData() , mac); - - } - } - - // 断言 MAC 校验通过 - Assert.assertTrue( check.getData() ); - } - - public static void shortSM3(SydApi api){ - // 测试数据 - byte[] data = new byte[16]; - byte[] macData = api.SYD_SM3_Hash_ShortData( data ); - Assert.assertEquals( macData , Util.hexString2Bytes("106E34A2B8C7BB13156CFDD0D91379DCC47543DCF9787C68AE5EB582620AE6E8")); - } - - - public static void longSM3(SydApi api){ - - // 密钥索引 - int keyIdx = 0; - // 测试数据 - byte[] data = new byte[16 * 3 + 8]; - // 每包大小 - int pack = 16; - - // 测试数据 > 每包大小需要分包 - - LongDataReturn recv = null; - // 分包 MAC - { - int n = data.length / pack; - int remainder = data.length % pack; - if ( remainder > 0 ) { - n += 1; - } else { - remainder = pack; - } - - for ( int i = 0 ; i < n ; i ++ ) { - byte[] buff = new byte[ pack ]; - - // 首包 - if ( 0 == i ) { - System.arraycopy( data, i * pack, buff, 0, pack ); - recv = api.SYD_SM3_Hash_LongData( buff, Consts.PkgNumHead, null); - continue; - } - - // 尾包 - if ( i == (n-1) ){ - // 尾包大小可能不同 - buff = new byte[ remainder ]; - System.arraycopy( data, i * pack, buff, 0, remainder ); - recv = api.SYD_SM3_Hash_LongData( buff, Consts.PkgNumTail, recv.getProcData() ); - continue; - } - - // 中间包 - System.arraycopy( data, i * pack, buff, 0, pack ); - recv = api.SYD_SM3_Hash_LongData( buff, Consts.PkgNumMiddle, recv.getProcData() ); - } - } - - String mac = recv.getData(); - - // 断言 - Assert.assertEquals( mac, "87B81AF2B2B22CBDF268E211D012D604892D3C948FF298D61D6C942EEE847F86"); - } - - public static void shortMAC(SydApi api){ - // 密钥索引 - int keyIdx = 0; - // 测试数据 - byte[] data = new byte[16]; - byte[] macData = api.SYD_SM4Mac_ShortData( keyIdx , data ); - boolean ret = api.SYD_SM4Mac_ShortData( keyIdx , data, macData ); - Assert.assertTrue( ret ); - } - - public static void batchMACData(SydApi api){ - // 密钥索引 - int[] keyIdx = new int[]{ 0, 1, 2 }; - // 测试数据 - List data = new ArrayList<>(); - data.add( new byte[8] ); - data.add( new byte[16] ); - data.add( new byte[1024] ); - - List macs = api.SYD_SM4Mac_BatchData( keyIdx , data); - boolean[] checks = api.SYD_SM4Mac_BatchData( keyIdx , data, macs ); - - for ( int i = 0 ; i < data.size() ; i++ ) { - Assert.assertTrue( checks[i] ); - } - } - - - public static void shortEndeData(SydApi api){ - // 密钥索引 - int keyIdx = 0; - // 测试数据 - byte[] data = new byte[16]; - byte[] encData = api.SYD_SM4_ShortData( keyIdx , data, Consts.ECB_ENC ); - byte[] orgData = api.SYD_SM4_ShortData( keyIdx , encData, Consts.ECB_DEC ); - Assert.assertArrayEquals( orgData, data ); - } - - public static void batchEndeData(SydApi api){ - // 密钥索引 - int[] keyIdx = new int[]{ 0, 1, 2 }; - // 测试数据 - List data = new ArrayList<>(); - data.add( new byte[8] ); - data.add( new byte[16] ); - data.add( new byte[1024] ); - - List encData = api.SYD_SM4_BatchData( keyIdx , data, Consts.ECB_ENC ); - List orgData = api.SYD_SM4_BatchData( keyIdx , encData, Consts.ECB_DEC ); - - for ( int i = 0 ; i < data.size() ; i++ ) { - Assert.assertArrayEquals( orgData.get( i ), data.get( i ) ); - } - - } -} +//package sample; +// +//import com.sunyard.proto.Util; +//import com.sunyard.sge.database.*; +//import com.sunyard.sge.database.Consts; +//import com.sunyard.sge.log.LogFactory; +//import org.apache.logging.log4j.Logger; +//import org.junit.Assert; +// +//import java.nio.ByteBuffer; +//import java.util.ArrayList; +//import java.util.List; +// +//public class Sample +//{ +// public static void main(String[] args) { +// +// // 路径要以 / 或 \\ 结尾表示目录 +// SydApi.SYD_SetLogConfig("./logs/",3); +// // 通常单例就够了 +// SydApiBuilder builder = new SydApiBuilder( +// new String[]{ "192.168.0.200"}, +// new int[]{ 8889}, +// 10, +// 15 +// ); +// +// // 每个工作线程中调用 +// SydApi api = builder.build(); +// try { +// // 不建议使用了 +//// api = api.SYD_Connect_Ex( +//// new String[]{ "192.168.0.200" }, +//// new int[]{ 8889 }, +//// 10, +//// 15 +//// ); +// +// +// // 短数据加密解密 +// shortEndeData( api ); +// +// // 批量加密解密 +// batchEndeData( api ); +// +// // 长数据加密解密 +// longDataEnde( api ); +// +// // 短数据 MAC +// shortMAC( api ); +// +// // 批量 MAC +// batchMACData( api ); +// +// // 长数据 MAC +// longMAC( api ); +// +// // 短数据 SM3 +// shortSM3( api ); +// +// // 长数据 SM3 +// longSM3( api ); +// +// } finally { +// if ( null != api ) { +// LogFactory.getLogger().debug("END"); +// api.SYD_Disconnect_Ex(); +// +// } +// } +// } +// +// public static void longDataEnde(SydApi api){ +// +// // 密钥索引 +// int keyIdx = 0; +// // 测试数据 +// byte[] data = new byte[16 * 3 + 8]; +// // 每包大小 +// int pack = 16; +// +// // 测试数据 > 每包大小需要分包 +// +// // 密文数据 +// ByteBuffer enDataBuff = ByteBuffer.allocate( data.length + 16 ); +// +// // 分包加密 +// { +// int n = data.length / pack; +// int remainder = data.length % pack; +// if ( remainder > 0 ) { +// n += 1; +// } else { +// remainder = pack; +// } +// +// for ( int i = 0 ; i < n ; i ++ ) { +// byte[] buff = new byte[ pack ]; +// +// // 首包 +// if ( 0 == i ) { +// System.arraycopy( data, i * pack, buff, 0, pack ); +// byte[] recv = api.SYD_SM4_LongData( keyIdx , buff, Consts.PkgNumHead, Consts.ECB_ENC); +// enDataBuff.put( recv ); +// continue; +// } +// +// // 尾包 +// if ( i == (n-1) ){ +// buff = new byte[ remainder ]; +// System.arraycopy( data, i * pack, buff, 0, remainder ); +// byte[] recv = api.SYD_SM4_LongData( keyIdx , buff, Consts.PkgNumTail, Consts.ECB_ENC); +// enDataBuff.put( recv ); +// continue; +// } +// +// // 中间包 +// System.arraycopy( data, i * pack, buff, 0, pack ); +// byte[] recv = api.SYD_SM4_LongData( keyIdx , buff, Consts.PkgNumMiddle, Consts.ECB_ENC); +// enDataBuff.put( recv ); +// +// } +// +// } +// +// byte[] enData = new byte[ enDataBuff.position() ]; +// System.arraycopy( enDataBuff.array(), 0, enData, 0, enData.length ); +// +// +// // 分包解密 +// // 密文数据 +// ByteBuffer deDataBuff = ByteBuffer.allocate( data.length + 16 ); +// { +// int n = enData.length / pack; +// int remainder = enData.length % pack; +// if ( remainder > 0 ) { +// n += 1; +// } else { +// remainder = pack; +// } +// +// for ( int i = 0 ; i < n ; i ++ ) { +// byte[] buff = new byte[ pack ]; +// +// // 首包 +// if ( 0 == i ) { +// System.arraycopy( enData, i * pack, buff, 0, pack ); +// byte[] recv = api.SYD_SM4_LongData( keyIdx , buff, Consts.PkgNumHead, Consts.ECB_DEC); +// deDataBuff.put( recv ); +// continue; +// } +// +// // 尾包 +// if ( i == (n-1) ){ +// buff = new byte[ remainder ]; +// System.arraycopy( enData, i * pack, buff, 0, remainder ); +// byte[] recv = api.SYD_SM4_LongData( keyIdx , buff, Consts.PkgNumTail, Consts.ECB_DEC); +// deDataBuff.put( recv ); +// continue; +// } +// +// // 中间包 +// System.arraycopy( enData, i * pack, buff, 0, pack ); +// byte[] recv = api.SYD_SM4_LongData( keyIdx , buff, Consts.PkgNumMiddle, Consts.ECB_DEC); +// deDataBuff.put( recv ); +// +// } +// } +// +// byte[] deData = new byte[ deDataBuff.position() ]; +// System.arraycopy( deDataBuff.array(), 0, deData, 0, deData.length ); +// // 断言解密后和原文相同 +// Assert.assertArrayEquals( deData, data ); +// } +// +// +// public static void longMAC(SydApi api){ +// +// // 密钥索引 +// int keyIdx = 0; +// // 测试数据 +// byte[] data = new byte[16 * 3 + 8]; +// // 每包大小 +// int pack = 16; +// +// // 测试数据 > 每包大小需要分包 +// +// LongDataReturn recv = null; +// // 分包 MAC +// { +// int n = data.length / pack; +// int remainder = data.length % pack; +// if ( remainder > 0 ) { +// n += 1; +// } else { +// remainder = pack; +// } +// +// for ( int i = 0 ; i < n ; i ++ ) { +// byte[] buff = new byte[ pack ]; +// +// // 首包 +// if ( 0 == i ) { +// System.arraycopy( data, i * pack, buff, 0, pack ); +// recv = api.SYD_SM4Mac_LongData( keyIdx , buff, Consts.PkgNumHead, null); +// continue; +// } +// +// // 尾包 +// if ( i == (n-1) ){ +// // 尾包大小可能不同 +// buff = new byte[ remainder ]; +// System.arraycopy( data, i * pack, buff, 0, remainder ); +// recv = api.SYD_SM4Mac_LongData( keyIdx , buff, Consts.PkgNumTail, recv.getProcData() ); +// continue; +// } +// +// // 中间包 +// System.arraycopy( data, i * pack, buff, 0, pack ); +// recv = api.SYD_SM4Mac_LongData( keyIdx , buff, Consts.PkgNumMiddle, recv.getProcData() ); +// } +// } +// +// String mac = recv.getData(); +// +// // 分包校验 MAC +// LongDataReturn check = null; +// ByteBuffer deDataBuff = ByteBuffer.allocate( data.length + 16 ); +// { +// int n = data.length / pack; +// int remainder = data.length % pack; +// if ( remainder > 0 ) { +// n += 1; +// } else { +// remainder = pack; +// } +// +// for ( int i = 0 ; i < n ; i ++ ) { +// byte[] buff = new byte[ pack ]; +// +// // 首包 +// if ( 0 == i ) { +// System.arraycopy( data, i * pack, buff, 0, pack ); +// check = api.SYD_SM4Mac_LongData( keyIdx , buff, Consts.PkgNumHead, null, mac); +// continue; +// } +// +// // 尾包 +// if ( i == (n-1) ){ +// // 尾包大小可能不同 +// buff = new byte[ remainder ]; +// System.arraycopy( data, i * pack, buff, 0, remainder ); +// check = api.SYD_SM4Mac_LongData( keyIdx , buff, Consts.PkgNumTail, check.getProcData() , mac); +// continue; +// } +// +// // 中间包 +// System.arraycopy( data, i * pack, buff, 0, pack ); +// check = api.SYD_SM4Mac_LongData( keyIdx , buff, Consts.PkgNumMiddle, check.getProcData() , mac); +// +// } +// } +// +// // 断言 MAC 校验通过 +// Assert.assertTrue( check.getData() ); +// } +// +// public static void shortSM3(SydApi api){ +// // 测试数据 +// byte[] data = new byte[16]; +// byte[] macData = api.SYD_SM3_Hash_ShortData( data ); +// Assert.assertEquals( macData , Util.hexString2Bytes("106E34A2B8C7BB13156CFDD0D91379DCC47543DCF9787C68AE5EB582620AE6E8")); +// } +// +// +// public static void longSM3(SydApi api){ +// +// // 密钥索引 +// int keyIdx = 0; +// // 测试数据 +// byte[] data = new byte[16 * 3 + 8]; +// // 每包大小 +// int pack = 16; +// +// // 测试数据 > 每包大小需要分包 +// +// LongDataReturn recv = null; +// // 分包 MAC +// { +// int n = data.length / pack; +// int remainder = data.length % pack; +// if ( remainder > 0 ) { +// n += 1; +// } else { +// remainder = pack; +// } +// +// for ( int i = 0 ; i < n ; i ++ ) { +// byte[] buff = new byte[ pack ]; +// +// // 首包 +// if ( 0 == i ) { +// System.arraycopy( data, i * pack, buff, 0, pack ); +// recv = api.SYD_SM3_Hash_LongData( buff, Consts.PkgNumHead, null); +// continue; +// } +// +// // 尾包 +// if ( i == (n-1) ){ +// // 尾包大小可能不同 +// buff = new byte[ remainder ]; +// System.arraycopy( data, i * pack, buff, 0, remainder ); +// recv = api.SYD_SM3_Hash_LongData( buff, Consts.PkgNumTail, recv.getProcData() ); +// continue; +// } +// +// // 中间包 +// System.arraycopy( data, i * pack, buff, 0, pack ); +// recv = api.SYD_SM3_Hash_LongData( buff, Consts.PkgNumMiddle, recv.getProcData() ); +// } +// } +// +// String mac = recv.getData(); +// +// // 断言 +// Assert.assertEquals( mac, "87B81AF2B2B22CBDF268E211D012D604892D3C948FF298D61D6C942EEE847F86"); +// } +// +// public static void shortMAC(SydApi api){ +// // 密钥索引 +// int keyIdx = 0; +// // 测试数据 +// byte[] data = new byte[16]; +// byte[] macData = api.SYD_SM4Mac_ShortData( keyIdx , data ); +// boolean ret = api.SYD_SM4Mac_ShortData( keyIdx , data, macData ); +// Assert.assertTrue( ret ); +// } +// +// public static void batchMACData(SydApi api){ +// // 密钥索引 +// int[] keyIdx = new int[]{ 0, 1, 2 }; +// // 测试数据 +// List data = new ArrayList<>(); +// data.add( new byte[8] ); +// data.add( new byte[16] ); +// data.add( new byte[1024] ); +// +// List macs = api.SYD_SM4Mac_BatchData( keyIdx , data); +// boolean[] checks = api.SYD_SM4Mac_BatchData( keyIdx , data, macs ); +// +// for ( int i = 0 ; i < data.size() ; i++ ) { +// Assert.assertTrue( checks[i] ); +// } +// } +// +// +// public static void shortEndeData(SydApi api){ +// // 密钥索引 +// int keyIdx = 0; +// // 测试数据 +// byte[] data = new byte[16]; +// byte[] encData = api.SYD_SM4_ShortData( keyIdx , data, Consts.ECB_ENC ); +// byte[] orgData = api.SYD_SM4_ShortData( keyIdx , encData, Consts.ECB_DEC ); +// Assert.assertArrayEquals( orgData, data ); +// } +// +// public static void batchEndeData(SydApi api){ +// // 密钥索引 +// int[] keyIdx = new int[]{ 0, 1, 2 }; +// // 测试数据 +// List data = new ArrayList<>(); +// data.add( new byte[8] ); +// data.add( new byte[16] ); +// data.add( new byte[1024] ); +// +// List encData = api.SYD_SM4_BatchData( keyIdx , data, Consts.ECB_ENC ); +// List orgData = api.SYD_SM4_BatchData( keyIdx , encData, Consts.ECB_DEC ); +// +// for ( int i = 0 ; i < data.size() ; i++ ) { +// Assert.assertArrayEquals( orgData.get( i ), data.get( i ) ); +// } +// +// } +//} diff --git a/src/test/java/test/FuncTest.java b/src/test/java/test/FuncTest.java index b3e0ca5..fa5021a 100644 --- a/src/test/java/test/FuncTest.java +++ b/src/test/java/test/FuncTest.java @@ -99,7 +99,7 @@ public class FuncTest { public void sm3LongFunc() { System.out.println("-------- SM3长数据功能测试开始 --------"); -SydApi api = connect(); + SydApi api = connect(); ISM3 sm3 = api.initSM3(); byte[] data = new byte[4064]; @@ -173,7 +173,7 @@ SydApi api = connect(); public void sm4LongFunc() { System.out.println("-------- SM4长数据加解密功能测试开始 --------"); -SydApi api = connect(); + SydApi api = connect(); boolean ret = LongDataTest.case1(api); if ( ! ret ){ System.out.println("-------- SM4长数据加解密功能测试失败 --------\n"); @@ -280,7 +280,7 @@ SydApi api = connect(); public void sm4BatchFunc() { System.out.println("-------- SM4批量数据加解密功能测试开始 --------"); -SydApi api = connect(); + SydApi api = connect(); List data = new ArrayList<>(); data.add(new byte[1024]); @@ -312,7 +312,7 @@ SydApi api = connect(); public void sm4macBatchFunc() { System.out.println("-------- SM4MAC批量数据功能测试开始 --------"); -SydApi api = connect(); + SydApi api = connect(); List data = new ArrayList<>(); data.add(new byte[1024]); diff --git a/src/test/java/test/LogTest.java b/src/test/java/test/LogTest.java deleted file mode 100644 index e637be6..0000000 --- a/src/test/java/test/LogTest.java +++ /dev/null @@ -1,39 +0,0 @@ -package test; - -import org.apache.logging.log4j.Logger; -import org.junit.Test; - - -public class LogTest { - - @Test - public void case1() throws InterruptedException { - int max = 10000; - int nThread = 10; - Thread[] threads = new Thread[nThread]; - for (int i = 0; i < nThread; i++) { - threads[i] = new Thread(new Runnable() { - @Override - public void run() { - for (int i = 0; i < max; i++) { - } - } - }); - threads[i].start(); - } - - for (Thread t : threads) { - try { - t.join(); - } catch (InterruptedException e) { - e.printStackTrace(); - } - } - - Thread.sleep(10000 ); - } - - - - -} diff --git a/src/test/java/test/LongDataTest.java b/src/test/java/test/LongDataTest.java index 774080b..55e0cd3 100644 --- a/src/test/java/test/LongDataTest.java +++ b/src/test/java/test/LongDataTest.java @@ -34,7 +34,7 @@ public class LongDataTest { @Test public void sm3_case0() { ISM3 sm3 = api.initSM3(); - String mac = sm3.digest(); + String mac = Util.bytes2HexString(sm3.digest()); Assert.assertEquals("1AB21D8355CFA17F8E61194831E81A8F22BEC8C728FEFB747ED035EB5082AA2B", mac); } @@ -42,7 +42,7 @@ public class LongDataTest { public void sm3_case1() { ISM3 sm3 = api.initSM3(); sm3.update(null); - String mac = sm3.digest(); + String mac = Util.bytes2HexString(sm3.digest()); Assert.assertEquals("1AB21D8355CFA17F8E61194831E81A8F22BEC8C728FEFB747ED035EB5082AA2B", mac); } @@ -50,7 +50,7 @@ public class LongDataTest { public void sm3_case2() { ISM3 sm3 = api.initSM3(); sm3.update(Util.hexString2Bytes("1234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678")); - String mac = sm3.digest(); + String mac = Util.bytes2HexString(sm3.digest()); Assert.assertEquals("9431C865C84B02C8A7C503F53A6D6C3C66704F8F713D124610314E31B19937F7", mac); } @@ -59,7 +59,7 @@ public class LongDataTest { ISM3 sm3 = api.initSM3(); sm3.update(Util.hexString2Bytes("1234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678")); sm3.update(Util.hexString2Bytes("1234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678123456781234567812345678")); - String mac = sm3.digest(); + String mac = Util.bytes2HexString(sm3.digest()); Assert.assertEquals("2A217F11AD8D113EDCFED070A217DB9328FD00BFF31BA0843E04375C9F0C5B6A", mac); } @@ -73,46 +73,17 @@ public class LongDataTest { sm3.update(data); } - String mac = sm3.digest(); + String mac = Util.bytes2HexString(sm3.digest()); } @Test public void sm3_case5() { ISM3 sm3 = api.initSM3(); - String mac = sm3.digest(); + String mac = Util.bytes2HexString(sm3.digest()); Assert.assertEquals("1AB21D8355CFA17F8E61194831E81A8F22BEC8C728FEFB747ED035EB5082AA2B", mac); } - @Test - public void sm4mac_case1() { - ISM4Mac sydApiMac = api.initSM4Mac(0); - sydApiMac.update(null); - String mac = sydApiMac.digest(); -// Assert.assertEquals("FF49F76AD3A71651FE1A8A9F0D2A689E", mac); - } - - @Test - public void sm4mac_case2() { - ISM4Mac sydApiMac = api.initSM4Mac(0); - String mac = sydApiMac.digest(); -// Assert.assertEquals("FF49F76AD3A71651FE1A8A9F0D2A689E", mac); - } - - @Test - public void sm4mac_case3() { - ISM4Mac sydApiMac = api.initSM4Mac(0); - - - for (int i = 0; i < 10; i++) { -// int lucky = new Random().nextInt(4065); - byte[] data = new byte[66]; - sydApiMac.update(data); - } - - String mac = (String) sydApiMac.digest(); - - } @Test