删除控制台输出

This commit is contained in:
zhoubin 2022-01-10 17:54:07 +08:00
parent c4b16a7628
commit 0a4c8fcf0b
14 changed files with 57 additions and 52 deletions

View File

@ -130,7 +130,7 @@
<script>function lmkLen() { <script>function lmkLen() {
if( $final.data.lmkHead.eqStr("Y") || $final.data.lmkHead.eqStr("T") ){ if( $final.data.lmkHead.eqStr("Y") || $final.data.lmkHead.eqStr("T") ){
return 48 return 48
}else if( $final.data.lmkHead.eqStr("X") || $final.data.lmkHead.eqStr("U") ){ }else if( $final.data.lmkHead.eqStr("X") || $final.data.lmkHead.eqStr("U") || $final.data.lmkHead.eqStr("S") ){
return 32 return 32
} }
return 15 return 15
@ -139,7 +139,7 @@
function zmkLen() { function zmkLen() {
if( $final.data.lmkHead.eqStr("Y") || $final.data.lmkHead.eqStr("T") ){ if( $final.data.lmkHead.eqStr("Y") || $final.data.lmkHead.eqStr("T") ){
return 48 return 48
}else if( $final.data.lmkHead.eqStr("X") || $final.data.lmkHead.eqStr("U") ){ }else if( $final.data.lmkHead.eqStr("X") || $final.data.lmkHead.eqStr("U") || $final.data.lmkHead.eqStr("S") ){
return 32 return 32
} }
return 15 return 15

View File

@ -108,7 +108,7 @@
if( $final.data.keyHead.eqStr("Y") || $final.data.keyHead.eqStr("T") ){ if( $final.data.keyHead.eqStr("Y") || $final.data.keyHead.eqStr("T") ){
return 48 return 48
}else if( $final.data.keyHead.eqStr("X") || $final.data.keyHead.eqStr("U") ){ }else if( $final.data.keyHead.eqStr("X") || $final.data.keyHead.eqStr("U") || $final.data.keyHead.eqStr("S") ){
return 32 return 32
} }
return 15 return 15

View File

@ -120,7 +120,7 @@
if( $final.data.lmkHead.eqStr("Y") || $final.data.lmkHead.eqStr("T") ){ if( $final.data.lmkHead.eqStr("Y") || $final.data.lmkHead.eqStr("T") ){
return 48 return 48
}else if( $final.data.lmkHead.eqStr("X") || $final.data.lmkHead.eqStr("U") ){ }else if( $final.data.lmkHead.eqStr("X") || $final.data.lmkHead.eqStr("U") || $final.data.keyHead.eqStr("S") ){
return 32 return 32
} }
return 15 return 15

View File

@ -98,7 +98,7 @@
function lmkLen() { function lmkLen() {
if( $final.data.lmkHead.eqStr("Y") || $final.data.lmkHead.eqStr("T") ){ if( $final.data.lmkHead.eqStr("Y") || $final.data.lmkHead.eqStr("T") ){
return 48 return 48
}else if( $final.data.lmkHead.eqStr("X") || $final.data.lmkHead.eqStr("U") ){ }else if( $final.data.lmkHead.eqStr("X") || $final.data.lmkHead.eqStr("U") || $final.data.keyHead.eqStr("S") ){
return 32 return 32
} }
return 15 return 15

View File

@ -121,7 +121,7 @@
if( $final.data.keyHead.eqStr("Y") || $final.data.keyHead.eqStr("T") ){ if( $final.data.keyHead.eqStr("Y") || $final.data.keyHead.eqStr("T") ){
return 48 return 48
}else if( $final.data.keyHead.eqStr("X") || $final.data.keyHead.eqStr("U") ){ }else if( $final.data.keyHead.eqStr("X") || $final.data.keyHead.eqStr("U") || $final.data.keyHead.eqStr("S") ){
return 32 return 32
} }
return 15 return 15

View File

@ -88,7 +88,7 @@
function keyLen() { function keyLen() {
if( $final.data.keyHead.eqStr("Y") || $final.data.keyHead.eqStr("T") ){ if( $final.data.keyHead.eqStr("Y") || $final.data.keyHead.eqStr("T") ){
return 48 return 48
}else if( $final.data.keyHead.eqStr("X") || $final.data.keyHead.eqStr("U") ){ }else if( $final.data.keyHead.eqStr("X") || $final.data.keyHead.eqStr("U") || $final.data.keyHead.eqStr("S") ){
return 32 return 32
}else{ }else{
return 16 return 16

View File

@ -113,7 +113,7 @@
if( $final.data.keyHead.eqStr("Y") || $final.data.keyHead.eqStr("T") ){ if( $final.data.keyHead.eqStr("Y") || $final.data.keyHead.eqStr("T") ){
return 48 return 48
}else if( $final.data.keyHead.eqStr("X") || $final.data.keyHead.eqStr("U") ){ }else if( $final.data.keyHead.eqStr("X") || $final.data.keyHead.eqStr("U") || $final.data.keyHead.eqStr("S") ){
return 32 return 32
} }
return 15 return 15

Binary file not shown.

View File

@ -4,7 +4,7 @@
<groupId>com.sunyard</groupId> <groupId>com.sunyard</groupId>
<artifactId>sydapi4j</artifactId> <artifactId>sydapi4j</artifactId>
<version>1.0.201809191421</version> <version>1.0.202201101633</version>
<packaging>jar</packaging> <packaging>jar</packaging>
<name>sydapi4j</name> <name>sydapi4j</name>

View File

@ -127,9 +127,10 @@ interface SydASYMApi {
* 输入的sm2密文结构为C1C2C3格式 * 输入的sm2密文结构为C1C2C3格式
* @param userId 使用者的 ID最大长度为 16 位数字右对齐 * @param userId 使用者的 ID最大长度为 16 位数字右对齐
* @param enData 加密的数据base64 编码 * @param enData 加密的数据base64 编码
* @param keyType 密钥类型0签名证书, 1:加密证书
* @return 明文数据 * @return 明文数据
*/ */
byte[] SM2DecryptOrder(String userId, String enData); byte[] SM2DecryptOrder(String userId, String enData, int keyType);
/** /**
* 用指定的 RSA 私钥对指定的密文数据进行加密 * 用指定的 RSA 私钥对指定的密文数据进行加密

View File

@ -4150,10 +4150,11 @@ public class SydApi4j implements SydApi {
* 输入的sm2密文结构为C1C2C3格式 * 输入的sm2密文结构为C1C2C3格式
* @param userId 使用者的 ID最大长度为 16 位数字右对齐 * @param userId 使用者的 ID最大长度为 16 位数字右对齐
* @param enData 加密的数据base64 编码 * @param enData 加密的数据base64 编码
* @param keyType 密钥类型0签名证书, 1:加密证书
* @return 明文数据 * @return 明文数据
*/ */
@Override @Override
public byte[] SM2DecryptOrder(String userId, String enData) { public byte[] SM2DecryptOrder(String userId, String enData, int keyType) {
//ProtocolRender render = pset.getProtocolReqRender("78"); //ProtocolRender render = pset.getProtocolReqRender("78");
Proto78 proto = new Proto78(); Proto78 proto = new Proto78();
@ -4167,7 +4168,7 @@ public class SydApi4j implements SydApi {
packet.put("header", sn.getSn().array()); packet.put("header", sn.getSn().array());
data.put("AlgorithmKey$option", 1); data.put("AlgorithmKey$option", 1);
data.put("infoData", pOrgData); data.put("infoData", pOrgData);
data.put("privateKeyTag", SYMUtil.genPrivateKeyMark(userId, SYMUtil.KT_ENCRYPT, "00000001")); data.put("privateKeyTag", SYMUtil.genPrivateKeyMark(userId, 0 == keyType ? "000" : "001", "00000001"));
// 渲染发送 // 渲染发送
ByteBuffer bb = proto.rend(packet); ByteBuffer bb = proto.rend(packet);
synchronized (this) { synchronized (this) {

View File

@ -27,7 +27,7 @@ public class ABCNorthBranch {
String SM2PrivateKey = null; String SM2PrivateKey = null;
// SM4密钥索引 // SM4密钥索引
String SM4PrivateKeyTag = "333333333333333300A00000001"; String SM4PrivateKeyTag = "000000000000000100011111111";
// SM4密钥 // SM4密钥
String SM4Key = null; String SM4Key = null;
@ -35,7 +35,7 @@ public class ABCNorthBranch {
@Before @Before
public void before() { public void before() {
System.setProperty("com.sunyard.sydapi4j.debug", "true"); System.setProperty("com.sunyard.sydapi4j.debug", "true");
api = (SydApi4j) new SydApi4j().connect("192.168.1.7", 8889, null, 5000); api = (SydApi4j) new SydApi4j().connect("61.164.40.82", 8889, null, 5000);
SM2PublicKey = api.SM2GetPublicKeyC(SM2PrivateKeyTag); SM2PublicKey = api.SM2GetPublicKeyC(SM2PrivateKeyTag);
SM2PrivateKey = api.SM2GetPrivateKeyC(SM2PrivateKeyTag); SM2PrivateKey = api.SM2GetPrivateKeyC(SM2PrivateKeyTag);

View File

@ -695,43 +695,45 @@ public class TestAllMethods {
String msg = "1111111111111111111111"; String msg = "1111111111111111111111";
/** /**
* 对称密钥产生 * 对称密钥产生
* @param keyType 密钥类型 * @param keyType 密钥类型
* @param solution 密钥方案LMK 密钥长度/LMK下加密密钥的方案 * @param solution 密钥方案LMK 密钥长度/LMK下加密密钥的方案
* @return RetWrap 包含 * @return RetWrap 包含
* lmkKey LMK LMK加密密钥 * lmkKey LMK LMK加密密钥
* keyCheck 密钥校验值 * keyCheck 密钥校验值
* *
*/ */
RetWrap retWrap = api.genSymmetricKey("000", 'X'); RetWrap retWrap = api.genSymmetricKey("000", 'S');
byte[] lmkKey = (byte[]) retWrap.get("lmkKey"); byte[] lmkKey = (byte[]) retWrap.get("lmkKey");
String key = new String(lmkKey); String key = new String(lmkKey);
/** System.out.println("对称密钥:" + key);
* 用输入的会话密钥对指定报文数据进行加密处理
*
* @param nAlg  算法标识.,0x00:3DES0x01:SM4
* @param seesionKey  本地LMK 加密的会话密钥HEX 格式
* @param pINdata  要加密的报文明文必须是 8 或16 的倍数
* @return 输出的报文密文, 长度为报文明文 + 16
*/
byte[] bytes = api.SYMEncryptDataCBC(1, key, msg.getBytes());
System.out.println("输出为: " + com.sunyard.proto.Util.bytes2HexString(bytes)); /**
* 用输入的会话密钥对指定报文数据进行加密处理
*
* @param nAlg  算法标识.,0x00:3DES0x01:SM4
* @param seesionKey  本地LMK 加密的会话密钥HEX 格式
* @param pINdata  要加密的报文明文必须是 8 或16 的倍数
* @return 输出的报文密文, 长度为报文明文 + 16
*/
byte[] bytes = api.SYMEncryptDataCBC(1, key, msg.getBytes());
/** System.out.println("输出为: " + com.sunyard.proto.Util.bytes2HexString(bytes));
* 用输入的会话密钥对指定报文数据进行解密处理
* /**
* @param nAlg  算法标识.,0x00:3DES0x01:SM4 * 用输入的会话密钥对指定报文数据进行解密处理
* @param seesionKey 本地LMK 加密的会话密钥HEX 格式 *
* @param pINdata 要解密的报文密文长度必须是8 或16 的倍数 * @param nAlg  算法标识.,0x00:3DES0x01:SM4
* @return 输出的报文明文 * @param seesionKey 本地LMK 加密的会话密钥HEX 格式
*/ * @param pINdata 要解密的报文密文长度必须是8 或16 的倍数
byte[] bytes1 = api.SYMDecryptDataCBC(1, key, bytes); * @return 输出的报文明文
System.out.println("明文:" + new String(bytes1)); */
byte[] bytes1 = api.SYMDecryptDataCBC(1, key, bytes);
System.out.println("明文:" + new String(bytes1));
} }
@Test @Test
@ -1725,7 +1727,7 @@ public class TestAllMethods {
System.out.println("加密后的数据: " + s); System.out.println("加密后的数据: " + s);
byte[] bytes = api.SM2DecryptOrder(certId, s); byte[] bytes = api.SM2DecryptOrder(certId, s, SydApi.FOR_ENCRYPT);
System.out.println("decData:" + new String(bytes)); System.out.println("decData:" + new String(bytes));
} }

View File

@ -169,7 +169,7 @@ public class TestGSYH {
"qudmZGsIQUivZDt3/73dGojVjj5L76OcJICIAHu0G242uYPY2B8zMkGw7kQ1C1xgRipEmlC1GWwMCz0"; "qudmZGsIQUivZDt3/73dGojVjj5L76OcJICIAHu0G242uYPY2B8zMkGw7kQ1C1xgRipEmlC1GWwMCz0";
/** /**
* 从签名中获取证书并上载到加密机 * 验签并从签名中获取证书并上载到加密机
* @param orgData 待签名的原始数据 * @param orgData 待签名的原始数据
* @param sign 签名数据 * @param sign 签名数据
* @return 证书信息包含公钥字段 * @return 证书信息包含公钥字段
@ -200,12 +200,12 @@ public class TestGSYH {
// 测试通过 // 测试通过
// 78 // 78
@Test @Test
public void testSM2DecryptOrder() { public void testSM2DecryptOrder2() {
String userId = "1111111111111151"; String userId = "8015";
String orgData = "FfffffffffffffFfffffffffffffffff"; String orgData = "FfffffffffffffFfffffffffffffffff";
// 通过用户id获取公钥 // 通过用户id获取公钥
String publicKey = api.SM2GetPublicKeyC(userId, SydApi.FOR_ENCRYPT); String publicKey = api.SM2GetPublicKeyC(userId, SydApi.FOR_SIGN);
/** /**
* 用指定的 SM2 公钥对指定的密文数据进行加密 * 用指定的 SM2 公钥对指定的密文数据进行加密
@ -223,9 +223,10 @@ public class TestGSYH {
* 输入的sm2密文结构为C1C2C3格式 * 输入的sm2密文结构为C1C2C3格式
* @param userId 使用者的 ID最大长度为 16 位数字右对齐 * @param userId 使用者的 ID最大长度为 16 位数字右对齐
* @param enData 加密的数据base64 编码 * @param enData 加密的数据base64 编码
* @param keyType 密钥类型0签名证书, 1:加密证书
* @return 明文数据 * @return 明文数据
*/ */
byte[] bytes = api.SM2DecryptOrder(userId, s); byte[] bytes = api.SM2DecryptOrder(userId, s, SydApi.FOR_SIGN);
System.out.println("decData:" + new String(bytes)); System.out.println("decData:" + new String(bytes));
} }