From 24161e2ad5aea603e5d5344f6dd63ef8ab184625 Mon Sep 17 00:00:00 2001 From: cheney Date: Wed, 26 Oct 2022 17:24:39 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=88=E5=B9=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit # Conflicts: # pom.xml # src/main/java/com/sunyard/SydApiException.java # src/main/java/racal/sunyard/main/SydApi4j.java # src/test/java/com/sunyard/sydapi/test/TestAllMethods.java --- DProto/6A.xml | 2 +- doc/密码机JAVA接口说明文档V1.01 .pdf | Bin 0 -> 319212 bytes kit.json | 4 +- public.cmd | 7 + release.cmd | 3 + src/main/java/com/sunyard/SydApi.java | 4 + src/main/java/com/sunyard/inf/SydCertApi.java | 9 + .../com/sunyard/inf/cryption/SydASYMApi.java | 135 +++++++++ .../com/sunyard/inf/cryption/SydHashApi.java | 71 +++++ .../com/sunyard/inf/cryption/SydSYMApi.java | 282 ++++++++++++++++++ .../com/sunyard/inf/sva/SydAttachedSVApi.java | 181 +++++++++++ .../com/sunyard/inf/sva/SydDetachedSVApi.java | 178 +++++++++++ .../com/sunyard/inf/sva/SydNakedSVApi.java | 32 ++ .../java/com/sunyard/pool/HsmLinkInfo.java | 63 ++++ .../java/com/sunyard/pool/ObjectInPool.java | 28 ++ .../java/com/sunyard/pool/PoolConfig.java | 26 ++ .../java/com/sunyard/pool/SydApiPool.java | 84 ++++++ .../sunyard/pool/ThreadBasedConnectPool.java | 125 ++++++++ .../sunyard/proxy/ProxyInvocationHandler.java | 156 ++++++++++ .../sunyard/main/SydApiClusterBuilder.java | 42 +++ .../java/racal/sunyard/main/SydApiMuti.java | 4 + .../racal/sunyard/main/SydApiPoolBuilder.java | 35 +++ .../racal/sunyard/main/SydHashApiTest.java | 69 +++++ src/test/java/SM3Test.java | 24 ++ .../com/sunyard/sydapi/ChuanhuaDemo1.java | 45 +++ .../com/sunyard/sydapi/ChuanhuaDemo2.java | 65 ++++ .../com/sunyard/sydapi/test/Test8011.java | 32 ++ src/test/java/sample/HSMPoolLongLink.java | 51 ++++ src/test/java/sample/HSMPoolShortLink.java | 52 ++++ 29 files changed, 1806 insertions(+), 3 deletions(-) create mode 100644 doc/密码机JAVA接口说明文档V1.01 .pdf create mode 100644 public.cmd create mode 100644 release.cmd create mode 100644 src/main/java/com/sunyard/inf/cryption/SydASYMApi.java create mode 100644 src/main/java/com/sunyard/inf/cryption/SydHashApi.java create mode 100644 src/main/java/com/sunyard/inf/cryption/SydSYMApi.java create mode 100644 src/main/java/com/sunyard/inf/sva/SydAttachedSVApi.java create mode 100644 src/main/java/com/sunyard/inf/sva/SydDetachedSVApi.java create mode 100644 src/main/java/com/sunyard/inf/sva/SydNakedSVApi.java create mode 100644 src/main/java/com/sunyard/pool/HsmLinkInfo.java create mode 100644 src/main/java/com/sunyard/pool/ObjectInPool.java create mode 100644 src/main/java/com/sunyard/pool/PoolConfig.java create mode 100644 src/main/java/com/sunyard/pool/SydApiPool.java create mode 100644 src/main/java/com/sunyard/pool/ThreadBasedConnectPool.java create mode 100644 src/main/java/com/sunyard/proxy/ProxyInvocationHandler.java create mode 100644 src/main/java/racal/sunyard/main/SydApiClusterBuilder.java create mode 100644 src/main/java/racal/sunyard/main/SydApiMuti.java create mode 100644 src/main/java/racal/sunyard/main/SydApiPoolBuilder.java create mode 100644 src/main/java/racal/sunyard/main/SydHashApiTest.java create mode 100644 src/test/java/SM3Test.java create mode 100644 src/test/java/com/sunyard/sydapi/ChuanhuaDemo1.java create mode 100644 src/test/java/com/sunyard/sydapi/ChuanhuaDemo2.java create mode 100644 src/test/java/com/sunyard/sydapi/test/Test8011.java create mode 100644 src/test/java/sample/HSMPoolLongLink.java create mode 100644 src/test/java/sample/HSMPoolShortLink.java diff --git a/DProto/6A.xml b/DProto/6A.xml index 03d19e4..cc0dec8 100644 --- a/DProto/6A.xml +++ b/DProto/6A.xml @@ -220,7 +220,7 @@ } function dataLen() { - return $packet.data.orgData.length + return $packet.data.orgData.length() } diff --git a/doc/密码机JAVA接口说明文档V1.01 .pdf b/doc/密码机JAVA接口说明文档V1.01 .pdf new file mode 100644 index 0000000000000000000000000000000000000000..498d1a195f9115de6a806c87e63ab643f33eecc7 GIT binary patch literal 319212 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

GjjE@FjTbVG2?b)Gi0>#brz9&iTmub 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

~b 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 Y$bg7Q-Ki*eC#PXs_vtgt&8hYO0<&Us%>V!Z literal 0 HcmV?d00001 diff --git a/kit.json b/kit.json index b840b6d..0b59874 100644 --- a/kit.json +++ b/kit.json @@ -72,8 +72,8 @@ }, { "func": "cp", - "from": "./说明.txt", - "to": "%out_path%/说明.txt" + "from": "./˵.txt", + "to": "%out_path%/˵.txt" }, { "func": "zip", diff --git a/public.cmd b/public.cmd new file mode 100644 index 0000000..cfb0d92 --- /dev/null +++ b/public.cmd @@ -0,0 +1,7 @@ +:: 自动打包为发布格式 +:: 准备文件夹 +:: rd /s/q ./public +:: md ./public + +:: 获取版本 +node public.script/index.js \ No newline at end of file diff --git a/release.cmd b/release.cmd new file mode 100644 index 0000000..4ab9f3d --- /dev/null +++ b/release.cmd @@ -0,0 +1,3 @@ +7z a ./target/sydapi4j.jar racal.sunyard.main.version +7z a ./target/sydapi4j-sources.jar racal.sunyard.main.version +7z a ./target/sydapi4j-jar-with-dependencies.jar racal.sunyard.main.version \ No newline at end of file diff --git a/src/main/java/com/sunyard/SydApi.java b/src/main/java/com/sunyard/SydApi.java index 7acace7..257a955 100644 --- a/src/main/java/com/sunyard/SydApi.java +++ b/src/main/java/com/sunyard/SydApi.java @@ -113,4 +113,8 @@ public interface SydApi extends RetWrap getStatus(); byte[] directBytes(byte[] data); + + public Object getBindObject(); + + public void setBindObject(Object bindObject); } diff --git a/src/main/java/com/sunyard/inf/SydCertApi.java b/src/main/java/com/sunyard/inf/SydCertApi.java index dc2cacc..613d906 100644 --- a/src/main/java/com/sunyard/inf/SydCertApi.java +++ b/src/main/java/com/sunyard/inf/SydCertApi.java @@ -125,6 +125,15 @@ public interface SydCertApi { RetWrap importCert(byte[] certData, byte[] organizationId, CertUsage... us); RetWrap importCert(byte[] certData, byte[] organizationId); + + /** + * 从加密设备中删除指定 DN 的公钥证书 + * @param dn:传入的证书 + * + * @return + */ + boolean deleteCert(String dn); + /** * 从加密设备中删除指定 DN 的公钥证书 * @param dn:传入的证书 diff --git a/src/main/java/com/sunyard/inf/cryption/SydASYMApi.java b/src/main/java/com/sunyard/inf/cryption/SydASYMApi.java new file mode 100644 index 0000000..6ab1be9 --- /dev/null +++ b/src/main/java/com/sunyard/inf/cryption/SydASYMApi.java @@ -0,0 +1,135 @@ +package com.sunyard.inf.cryption; + +public interface SydASYMApi { + /** + * 非对称加解密接口 + */ + /** + * 用指定的 SM2 公钥对指定的密文数据进行加密。 + * + * @param publicKey 公钥钥串,DER 编码,HEX 格式。 + * @param pOrgData 加密的数据。 + * @return 加密的数据 base64 编码。 + */ + String SM2Encrypt( + byte[] publicKey, + byte[] pOrgData + ); + + /** + * 用指定的 SM2 公钥对指定的密文数据进行加密。 + * + * @param publicKey 公钥钥串,DER 编码,HEX 格式。 + * @param pOrgData 加密的数据。 + * @return 加密的数据 der 编码。 + */ + byte[] SYD_SM2_Encrypt(byte[] publicKey, byte[] pOrgData); + + + /** + * 用指定的 SM2 公钥对指定的密文数据进行加密。 + * 输出的sm2密文结构为C1C2C3格式 + * @param publicKey 公钥钥串,DER 编码,HEX 格式。 + * @param pOrgData 加密的数据。 + * @return 加密的数据 base64 编码。 + */ + String SM2EncryptOrder(byte[] publicKey, byte[] pOrgData); + + + /** + * 通过使用者 ID 所对应的私钥对指定的密文数据进行解密。 + * + * @param userId 使用者的 ID,最大长度为 16 位数字,右对齐。 + * @param pEnData 加密的数据,base64 编码。 + * @return 明文数据。 + */ + byte[] SM2DecryptC(String userId, String pEnData); + + /** + * 使用外部私钥解密 + * @param sk LMK下加密的私钥 + * @param enData 密文数据(base64 编码) + * @return 解密结果 + */ + byte[] SM2Decrypt(byte[] sk, String enData); + + /** + * 使用外部私钥解密 + * @param sk LMK下加密的私钥 + * @param enData 密文数据(DER 编码) + * @return 解密结果 + */ + byte[] SYD_SM2_Decrypt(byte[] sk, byte[] enData); + + /** + * 通过使用者 ID 所对应的私钥对指定的密文数据进行解密。 + * 输入的sm2密文结构为C1C2C3格式 + * @param userId 使用者的 ID,最大长度为 16 位数字,右对齐。 + * @param enData 加密的数据,base64 编码。 + * @param keyType 密钥类型,0:签名证书, 1:加密证书。 + * @return 明文数据。 + */ + byte[] SM2DecryptOrder(String userId, String enData, int keyType); + + /** + * 用指定的 RSA 私钥对指定的密文数据进行加密。 + * + * @param publicKey 私钥串,DER 编码,HEX 格式。 + * @param pOrgData 加密的数据。 + * @return 加密的数据 base64 编码。 + */ + String RSAEncrypt( + String publicKey, + byte[] pOrgData + ); + + /** + * 通过使用者 ID 所对应的私钥对指定的密文数据进行解密。 + * + * @param userId 使用者的 ID,最大长度为 16 位数字,右对齐。 + * @param pEnData 加密的数据,base64 编码。 + * @return 明文数据。 + */ + byte[] RSADecryptC( + String userId, + String pEnData + ) throws Exception; + + + /** + * 使用外部私钥解密 + * @param sk + * @param enData + * @return + */ + public byte[] RSADecrypt(String sk, String enData) throws Exception; + + + /** + * 非对称公钥加密 + * @param alg 算法标识,0 = RSA 1 = SM2 + * @param pk 公钥的 DER 编码 + * @param data 数据 + * @return 公钥加密的密文的 DER 编码(对于 RSA 算法,数据类型为 BIT). + */ + public byte[] encryptByPk(int alg, String pk, byte[] data); + + /** + * 非对称私钥解密 + * @param alg 算法标识:0 = RSA 1 = SM2 + * @param sk 私钥值,LMK下加密的私钥 + * @param data 密文数据(DER 编码) + * @return 公钥加密的密文的 DER 编码(对于 RSA 算法,数据类型为 BIT) + */ + public byte[] decryptBySk(int alg, String sk, byte[] data); + + + /** + * 非对称私钥解密 + * @param alg 算法标识:0 = RSA 1 = SM2 + * @param userId 16位机构号 + * @param data 密文数据(DER 编码) + * @return 公钥加密的密文的 DER 编码(对于 RSA 算法,数据类型为 BIT). + */ + public byte[] decryptBySkC(int alg, String userId, byte[] data); + } diff --git a/src/main/java/com/sunyard/inf/cryption/SydHashApi.java b/src/main/java/com/sunyard/inf/cryption/SydHashApi.java new file mode 100644 index 0000000..5418403 --- /dev/null +++ b/src/main/java/com/sunyard/inf/cryption/SydHashApi.java @@ -0,0 +1,71 @@ +package com.sunyard.inf.cryption; + +/** + * Hash 算法接口 + */ +public interface SydHashApi { + + /** + * 计算SM3散列值 + * @param sn 证书序号 + * @param userId 用户ID + * @param msg 原始数据,二进制的消息块 + * @return + */ +// byte[] SM3HashSNaId(String sn, String userId, byte[] msg); + + /** + * 输入对指定的原始数据和公钥,通过 SM3 算法计算数据的散列值。 + * @param publicKey 公钥的 DER 编码(可以为空) + * @param msg 原始数据,二进制的消息块 + * @param block 消息块标志 + * @param mac 上一轮 mac 值,当 mac 不是 null,长度不为 0,则直接从第二包开始。 + * @return HASH 值,32 个 Bytes. + */ + byte[] SM3Hash(String publicKey, byte[] msg, int block, byte[] mac); + + /** + * 计算SM3散列值 + * @param publicKey 公钥的 DER 编码 (03420004 开头) + * @param userId 用户ID + * @param msg 原始数据,二进制的消息块 + * @return + */ + byte[] SM3Hash(String publicKey, String userId, byte[] msg); + + /** + * 输入对指定的原始数据和公钥,通过 SM3 算法计算数据的散列值。 + * + * @param publicKey 公钥(可以为空) + * @param msg 原始数据 + * @return HASH 值,32 个 Bytes. + */ + byte[] SM3Hash(String publicKey, byte[] msg); + + + /** + * 输入对指定的原始数据 (无公钥),通过 SM3 算法计算数据的散列值。 + * + * @param msg 原始数据 + * @return HASH 值,32 个 Bytes. + */ + byte[] SM3Hash(byte[] msg); + + + public byte[] MACCalc(int alg, int keyType, int fullmode, int maclen, String key, byte[] infoData); + + /** + * mac 计算 + * @param alg 0=DES 1=3DES 2=SM4 3=AES 4=IDEA 5=SM1 6=3DES-X9.19 + * @param keyType 0-TAK 1-ZAK + * @param fullMode 0-弱填充 1 强填充 + * @param AK 密钥 + * @param infoData <=1024 + * @param macLen 1=4Byte 2=8Byte 3=16Byte(仅在SM4/AES 下有效) + * @return mac 值 hex 格式 + */ + public String MACCalc(int alg, int keyType, String AK, int fullMode, byte[] infoData, int macLen); + public void MACCheck(int alg, int keyType, String AK, int fullMode, byte[] infoData, String mac); + + public String calcPBOCMAC(int mode, int keyType, String key, byte[] data, int block, byte[] iv); +} diff --git a/src/main/java/com/sunyard/inf/cryption/SydSYMApi.java b/src/main/java/com/sunyard/inf/cryption/SydSYMApi.java new file mode 100644 index 0000000..0821488 --- /dev/null +++ b/src/main/java/com/sunyard/inf/cryption/SydSYMApi.java @@ -0,0 +1,282 @@ +package com.sunyard.inf.cryption; + +import com.sunyard.RetWrap; + +import java.io.UnsupportedEncodingException; +/** + * 对称加解密接口 + */ +public interface SydSYMApi { + + /** + * E0 指令复合接口 + * @param isEn 指定加解密,true为加密,false为解密 + * @param nAlg 密钥模式,当isEn为true时,默认为SM4加密,0为DES加密,1为AES256 加密。当isEn为false时,默认为SM4解密,0为DES解密,1为AES256解密 + * @param seesionKey 密钥 + * @param roundmod 轮模式,密钥加密模式:1=ECB,2=CBC,3=CFB,4=OFB + * @param fullMode 填充模式:0为饥饿模式,1为贪婪模式 + * @param pInData 消息数据 + * @param iv IV + * @param block 消息块号 + * @return + * iv: IV 数据域 + * msg_all: 消息数据 + */ + RetWrap SYMEnDeData(Boolean isEn, int nAlg, String seesionKey, int roundmod, int fullMode, byte[] pInData, byte[] iv, int block); + + + + /** + * 用输入的会话密钥,对指定报文数据进行加密处理。填充模式为1 + * + * @param nAlg 算法标识., 0x00:3DES,0x01:SM4。 + * @param seesionKey 本地LMK 加密的会话密钥,HEX 格式 + * @param pINdata 要加密的报文明文。必须是 8 或16 的倍数。 + * @return 输出的报文密文, 长度为报文明文 + 16 + */ + byte[] SYMEncryptData(int nAlg, String seesionKey, byte[] pINdata); + + /** + * 对指定报文数据进行SM4加密 + * @param type 密钥类型。0: ZEK,1: TEK + * @param userId 生成密钥时的机构号。 + * @param index 密钥索引 + * @param data 待加密的数据 + * @return + */ + byte[] SYMSM4EncDataByIndex(int type, String userId, String index, byte[] data); + + /** + * 用输入的会话密钥,对指定报文数据进行加密处理。 + * + * @param nAlg 算法标识.,0x00:3DES,0x01:SM4。 + * @param seesionKey 本地LMK 加密的会话密钥,HEX 格式 + * @param fullmode 填充模式:0为饥饿模式,1为贪婪模式 + * @param pINdata 要加密的报文明文。必须是 8 或16 的倍数。 + * @return 输出的报文密文, 长度为报文明文 + 16 + */ + byte[] SYMEncryptData(int nAlg, String seesionKey, int fullmode, byte[] pINdata); + + + // List SYMEncryptDecryptBatchData(int nAlg, String[] seesionKey, int fullmode, List pINdata); + + /** + * 用输入的会话密钥,对指定报文数据进行加密处理。 + * + * @param nAlg 算法标识.,0x00:3DES,0x01:SM4。 + * @param seesionKey 本地LMK 加密的会话密钥,HEX 格式 + * @param pInData 要加密的报文明文。必须是 8 或16 的倍数。 + * @return 输出的报文密文, 长度为报文明文 + 16 + */ + byte[] SYMEncryptData_nofill(int nAlg, String seesionKey, byte[] pInData); + + + /** + * 用输入的会话密钥,对指定报文数据进行解密处理。填充模式为1 + * + * @param nAlg  算法标识.0x00:3DES,0x01:SM4。 + * @param seesionKey 本地LMK 加密的会话密钥,HEX 格式 + * @param pINdata 要解密的报文密文。长度必须是8 或16 的倍数。 + * @return 输出的报文明文。 + */ + byte[] SYMDecryptData(int nAlg, String seesionKey, byte[] pINdata); + + /** + * 用输入的会话密钥,对指定报文数据进行解密处理。 + * + * @param nAlg  算法标识.,0x00:3DES,0x01:SM4。 + * @param seesionKey 本地LMK 加密的会话密钥,HEX 格式 + * @param fullmode 填充模式:0为饥饿模式,1为贪婪模式 + * @param pINdata 要解密的报文密文。长度必须是8 或16 的倍数。 + * @return 输出的报文明文。 + */ + byte[] SYMDecryptData(int nAlg, String seesionKey, int fullmode, byte[] pINdata); + + /** + * 用输入的会话密钥,对指定报文数据进行解密处理。 + * + * @param nAlg  算法标识.,0x00:3DES,0x01:SM4。 + * @param seesionKey 本地LMK 加密的会话密钥,HEX 格式 + * @param pInData 要解密的报文密文。长度必须是8 或16 的倍数。 + * @return 输出的报文明文。 + */ + byte[] SYMDecryptData_nofill(int nAlg, String seesionKey, byte[] pInData); + + /** + * 加解密数据(E1) + * @param nAlg 密钥模式,默认为SM4解密,0:DES加密,1:AES256 解密 + * @param seesionKey 密钥 + * @param inputPath 输入消息数据的文件路径 + * @param outputPath 输出消息数据的文件路径 + * @return + */ + boolean SYMDecryptDataWithFile(int nAlg, String seesionKey, String inputPath, String outputPath) throws Exception; + + /** + * 使用SM4算法进行加密,其中加密模式为CBC, + * Ⅳ使用缺省值0X 00000000000000000000000000000000, + * 补位模式为 PKCS5 PADDING 。 + * @param keyType 密钥类型 0: ZEK,1: TEK + * @param key 密钥 + * @param inType 输入消息类型 0:二进制 1:扩展十六进制 + * @param outType 输出消息类型 0:二进制 1:扩展十六进制 + * @param inFilePath 需要加密的数据文件所在的路径 + * @param outFilePath 加密后的密文数据将要保存的文件路径 + * @return 加密是否成功。false为失败,true为成功 + */ + boolean SM4EncryptFileDataCBC(int keyType, String key, int inType, int outType, String inFilePath, String outFilePath); + + /** + * 使用SM4算法进行加密,其中加密模式为CBC, + * Ⅳ使用缺省值0X 00000000000000000000000000000000, + * 补位模式为 PKCS5 PADDING 。 + * @param keyType 密钥类型 0: ZEK,1: TEK + * @param key 密钥 + * @param inType 输入消息类型 0:二进制 1:扩展十六进制 + * @param outType 输出消息类型 0:二进制 1:扩展十六进制 + * @param msg 消息数据 + * @return 输出的报文密文 + */ + byte[] SM4EncryptDataCBC(int keyType, String key, int inType, int outType, byte[] msg); + + /** + * 使用SM4算法进行解密,其中加密模式为CBC, + * Ⅳ使用缺省值0X 00000000000000000000000000000000, + * 补位模式为 PKCS5 PADDING 。 + * @param keyType 密钥类型 0: ZEK,1: TEK + * @param key 密钥 + * @param inType 输入消息类型 0:二进制 1:扩展十六进制 + * @param outType 输出消息类型 0:二进制 1:扩展十六进制 + * @param inFilePath 加密后的密文数据将要保存的文件路径 + * @param outFilePath 解密后的数据文件所在的路径 + * @return 解密是否成功。false为失败,true为成功 + */ + boolean SM4DecryptFileDataCBC(int keyType, String key, int inType, int outType, String inFilePath, String outFilePath) throws UnsupportedEncodingException; + + /** + * 使用SM4算法进行解密,其中加密模式为CBC, + * Ⅳ使用缺省值0X 00000000000000000000000000000000, + * 补位模式为 PKCS5 PADDING 。 + * @param keyType 密钥类型 0: ZEK,1: TEK + * @param key 密钥 + * @param inType 输入消息类型 0:二进制 1:扩展十六进制 + * @param outType 输出消息类型 0:二进制 1:扩展十六进制 + * @param msg 加密后的消息数据 + * @return 输出的报文明文 + */ + byte[] SM4DecryptDataCBC(int keyType, String key, int inType, int outType, byte[] msg); + + /** + * 用输入的会话密钥,对指定报文数据进行加密处理。 + * + * @param nAlg  算法标识.,0x00:3DES,0x01:SM4。 + * @param seesionKey  本地LMK 加密的会话密钥,HEX 格式 + * @param pINdata  要加密的报文明文。必须是 8 或16 的倍数。 + * @return 输出的报文密文, 长度为报文明文 + 16 + */ + byte[] SYMEncryptDataCBC(int nAlg, String seesionKey, byte[] pINdata); + + /** + * 用输入的会话密钥,对指定报文数据进行加密处理。 + * + * @param nAlg  算法标识.,0x00:3DES,0x01:SM4。 + * @param seesionKey  本地LMK 加密的会话密钥,HEX 格式 + * @param fullmode  填充模式:0为饥饿模式,1为贪婪模式 + * @param pInData  要加密的报文明文。必须是 8 或16 的倍数。 + * @return 输出的报文密文, 长度为报文明文 + 16 + */ + byte[] SYMEncryptDataCBC(int nAlg, String seesionKey, int fullmode, byte[] pInData); + + /** + * 用输入的会话密钥,对指定报文数据进行解密处理。 + * + * @param nAlg  算法标识.,0x00:3DES,0x01:SM4。 + * @param seesionKey 本地LMK 加密的会话密钥,HEX 格式 + * @param pINdata 要解密的报文密文。长度必须是8 或16 的倍数。 + * @return 输出的报文明文。 + */ + byte[] SYMDecryptDataCBC(int nAlg, String seesionKey, byte[] pINdata); + /** + * 用输入的会话密钥,对指定报文数据进行解密处理。 + * + * @param nAlg  算法标识.,0x00:3DES,0x01:SM4。 + * @param seesionKey 本地LMK 加密的会话密钥,HEX 格式 + * @param fullmode 填充模式:0为饥饿模式,1为贪婪模式 + * @param pInData 要解密的报文密文。长度必须是8 或16 的倍数。 + * @return 输出的报文明文。 + */ + byte[] SYMDecryptDataCBC(int nAlg, String seesionKey, int fullmode, byte[] pInData); + + /** + * 用输入的会话密钥,对指定报文数据进行解密处理。 + * + * @param srcKey  源秘钥.十六进制字符串。 + * @param desKey  目的秘钥.十六进制字符串。 + * @param sca  源算法SCA.Int类型。 + * @param sPin  源PIN块.十六进制字符串。 + * @param primaryAccount  主账号.十六进制字符串。 + * @return 目的Pin块。 + */ + byte[] transPinFrOneKeyToAno(String srcKey, String desKey, int sca, String sPin, String primaryAccount); + + + /** + * 用一把DEK密钥加密数据, 报文总长度不大于8192 + * + * @param alg 加密算法 + * @param DEK DEK密钥 + * @param infoData 数据 + * @param vector 初始向量数据 可选项,当加密模式为CBC,CFB或OFB时才显示此项 + * @param disperseAlg 分散算法 + * @return 密文数据 + */ + byte[] SYD_Encrypt_Data(int alg, String DEK, byte[] infoData, byte[] vector, int disperseAlg, byte[] factor); + + + /** + * 用DEK密钥解密数据, 报文总长度不大于8192 + * + * @param alg 解密算法 + * @param DEK DEK密钥 + * @param infoData 数据密文 + * @param vector 初始向量数据 可选项,当加密模式为CBC,CFB或OFB时才显示此项 + * @param disperseAlg 分散算法 + * @return 解密后的明文数据 + */ + byte[] SYD_Decrypt_Data(int alg, String DEK, byte[] infoData, byte[] vector, int disperseAlg, byte[] factor); + + + /** + * 对于给定的数据生成一个MAC + * + * @param key LMK对(16-17)下加密的TAK + * @param infoData 生成MAC的数据 + * @param IV + * @param disperseNum 指定对根密钥分散的次数(1-3次) + * @param disperseAlg 分散算法 + * @return 所计算出的MAC + */ + byte[] SYD_MAC_Data(String key, String infoData, byte[] factor, String IV, int disperseNum, int disperseAlg); + + /** + * 对称加密数据 + * @param key 索引地址,指示用户密钥存储区的27位地址 + * @param intPutData 消息数据 + * @return + * iv: IV 数据域 + * msg_all: 消息数据 + */ + public String SYMEncrytByKeyIndex( String key, String intPutData); + + /** + * 对称解密数据 + * @param key 索引地址,指示用户密钥存储区的27位地址 + * @param intPutData 消息数据 + * @return 消息数据 + */ + public String SYMDecrytByKeyIndex(String key,String intPutData); + + //通过索引读取对称秘钥 + RetWrap readKey(String index); + +} diff --git a/src/main/java/com/sunyard/inf/sva/SydAttachedSVApi.java b/src/main/java/com/sunyard/inf/sva/SydAttachedSVApi.java new file mode 100644 index 0000000..b2ded56 --- /dev/null +++ b/src/main/java/com/sunyard/inf/sva/SydAttachedSVApi.java @@ -0,0 +1,181 @@ +package com.sunyard.inf.sva; + +import com.sunyard.RetWrap; +import com.sunyard.cert.X509; +/** + * 带原文的签名验签 + */ +public interface SydAttachedSVApi { + + /** + * sm2私钥签名 + * 用户id默认为1234567812345678 + * 签名结果R/S序列串先进行der编码,再进行base64编码 + * + * @param flag 私钥标志位,当为1时第二个参数传入存储私钥的索引,当为0时第二个参数传入私钥 + * @param privateKey 当私钥标志位为1时传入存储私钥的索引,当为0时传入私钥 + * @param publicKey 公钥 + * @param orgData 要签名的信息 + * @return 签名结果 + */ + String SM2SignC(int flag, String privateKey, byte[] publicKey, byte[] orgData); + String SM2SignC(int flag, String pUserID, String privateKey, byte[] publicKey, byte[] orgData); + /** + * SM2 私钥签名 + * @param pUserID 使用者的 ID,最大长度为 16 位数字,右对齐。 + * @param certNo 证书号 + * @param nOrgDataType 原始数据类型 0 : hash 1 : 原数据 + * @param publicKey 公钥的 DER 编码 + * @param orgData 原始数据 + * @return 签名的 base64 编码 + */ + String SM2SignC( + String pUserID, + String certNo, + int nOrgDataType, + byte[] publicKey, + byte[] orgData + ); + + /** + * RSA 私钥签名 + * @param HashMark 哈希标识 指示用于哈希证书数据的哈希算法的标识。0: SHA1 1: SHA256 2: MD5。 + * @param privateKeyTag 私钥标记 指示私钥位置的标记。数字为存储私钥的索引,除了全9表示使用由命令中提供的密钥。 + * 27位的索引号:16位机构号+3位密钥类型+8位密钥索引号 + * @param nOrgDataType 原始数据类型 0 : hash 1 : 原数据 + * @param orgData 原始数据 + * @return 签名的 base64 编码 + */ + byte[] RSASignC( + String privateKeyTag, + int HashMark, + int nOrgDataType, + byte[] orgData); + + + byte[] RSASign( + String privateKey, + int HashMark, + int nOrgDataType, + byte[] orgData); + + /** + * 采用 RSA 算法,用指定的公钥对指定的原始数据进行数字签名验证。 + * @param HashMark 哈希标识 + * @param nOrgDataType 签名方式 + * @param publicKey 公钥 + * @param orgData 原始数据 + * @param sign base64 格式的签名 + * @return true 验签通过 false 验签失败 + */ + boolean RSAVerify( + int HashMark, + int nOrgDataType, + byte[] publicKey, + byte[] orgData, + byte[] sign); + + /** + * sm2验签 + * 用户id默认为1234567812345678 + * + * @param publicKey 公钥的 DER 编码 + * @param orgData 要签名的信息 + * @param base64Sign 计算的签名,签名结果R/S序列串先进行der编码,再进行base64编码后的结果 + * @return true 验签成功,false 验签失败 + */ + boolean SM2Verify(byte[] publicKey, byte[] orgData, String base64Sign); + + /** + * 采用 SM2 算法,用指定的公钥对指定的原始数据进行数字签名验证。 + * @param certNo id 用于计算SM3-HASH + * @param nOrgDataType 原始数据类型 0 : hash 1 : 原数据,用1.2.3章节限定符亦可 + * @param publicKey 公钥 + * @param orgData 原始数据 + * @param sign base64 格式的签名 + * @return true 验签通过 false 验签失败 + */ + boolean SM2Verify( + String certNo, + int nOrgDataType, + byte[] publicKey, + byte[] orgData, + String sign + ); + + + /** + * SM2 私钥签名 + * @param certNo 证书号 + * @param orgData 原始数据 + * @return 签名的 base64 编码 + */ + String SM2SignCustomized( + String certNo, + byte[] orgData + ); + + /** + * 采用 SM2 算法,用指定的公钥对指定的原始数据进行数字签名验证。 + * @param certNo 证书号 + * @param orgData 原始数据 + * @param sign base64 格式的签名 + * @return true 验签通过 false 验签失败 + */ + boolean SM2VerifyCustomized( + String certNo, + byte[] orgData, + String sign + ); + + /** + * 带公钥证书与原始数据的数字签名(遵循 PKCS#7) + * 使用指定的证书 DN,从加密设备获取对应的私钥证书,对指定的原始数据编制带公钥证书的数字签名(遵循 PKCS#7)。 + * + * @param orgData 待签名数据 + * @param sCertDN 证书DN + * @return + * 符合PKCS7标准的签名结果 + */ + String attachedSign(byte[] orgData, String sCertDN); + + /** + * 带公钥证书与原始数据的数字签名验签(遵循 PKCS#7) + * 对指定的原始数据核验其带公钥证书签名。如签名有效(含证书无效)且需返回签名者公钥证书信息时,同时返回签名者公钥证书信息。 + * + * @param sign 已签名数据 + * @return true 验签通过 false 验签失败 + */ + boolean attachedVerify(String sign); + + /** + * 带公钥证书与原始数据的数字签名验签(遵循 PKCS#7) + * 对指定的原始数据核验其带公钥证书签名。如签名有效(含证书无效)且需返回签名者公钥证书信息时,同时返回签名者公钥证书信息。 + * + * @param sign 已签名数据 + * @return 成功返回签名的原数据,失败则报错 + */ + String attachedVerifyRD(String sign); + + /** + * 带公钥证书与原始数据的数字签名验签(遵循 PKCS#7) + * 对指定的原始数据核验其带公钥证书签名。如签名有效(含证书无效)且需返回签名者公钥证书信息时,同时返回签名者公钥证书信息。 + * + * @param sign 已签名数据 + * @return + * 若发送报文返回证书信息标志位为0,则返回已签名数据, + * 若发送报文返回证书信息标志位为1,则返回CERT_INFO结构的证书数据 + */ + X509 attachedVerifyAndGetX509(String sign); + + /** + * 带公钥证书与原始数据的数字签名验签(遵循 PKCS#7) + * 对指定的原始数据核验其带公钥证书签名。如签名有效(含证书无效)且需返回签名者公钥证书信息时,同时返回签名者公钥证书信息。 + * + * @param sign 已签名数据 + * @return + * 若发送报文返回证书信息标志位为0,则返回已签名数据, + * 若发送报文返回证书信息标志位为1,则返回CERT_INFO结构的证书数据 + */ + RetWrap attachedVerifyAndGetAll(String sign); +} \ No newline at end of file diff --git a/src/main/java/com/sunyard/inf/sva/SydDetachedSVApi.java b/src/main/java/com/sunyard/inf/sva/SydDetachedSVApi.java new file mode 100644 index 0000000..b5110dd --- /dev/null +++ b/src/main/java/com/sunyard/inf/sva/SydDetachedSVApi.java @@ -0,0 +1,178 @@ +package com.sunyard.inf.sva; + +import com.sunyard.RetWrap; +import com.sunyard.cert.X509; + +/** + * 不带原文的签名验签 + */ +public interface SydDetachedSVApi { + + /** + * 对指定的原始数据核验其带公钥证书签名(PKCS#7) + * @param orgData 待签名的原始数据 + * @param sign 签名数据 + * @return 验签是否通过 + */ + public boolean SYD_DetachedVerify( + byte[] orgData, + String sign); + + + /** + * 通过指定的私钥对指定的原始数据编制带公钥证书的数字签名(遵循PKCS#7) + * @param orgData 待签名的原始数据 + * @param sCertDN 签名者证书 DN + * @return 签名数据 + */ + public String SYD_DetachedSign( + byte[] orgData, + String sCertDN + ); + + + + /** + * 通过指定的私钥对指定的原始数据编制带公钥证书的数字签名(遵循PKCS#7) + * 待签名的原始数据将在接口内部进行 sm3 ,然后做 Detach 签名 + * @param orgData 待签名的原始数据 + * @param publicKey sm3 hash 所用的公钥 + * @param sCertDN 签名者证书 DN + * @return 签名数据 + */ + public String sm3AndDetachedSign( + byte[] orgData, + String publicKey, + String sCertDN + ); + + + + /** + * 对指定的原始数据核验其带公钥证书签名(PKCS#7) + * 原始数据将在接口内部进行 sm3 ,然后做 Detach 验签 + * @param orgData 待签名的原始数据 + * @param publicKey sm3 hash 所用的公钥 + * @param sign 签名数据 + * @return 验签是否通过 + */ + public boolean sm3AndDetachedVerify( + byte[] orgData, + String publicKey, + String sign); + + /** + * 通过指定的私钥对指定的原始数据编制带公钥证书的数字签名(遵循PKCS#7) + * 待签名的原始数据将在接口内部进行不带公钥的 sm3 ,然后做 Detach 签名 + * @param orgData 待签名的原始数据 + * @param sCertDN 签名者证书 DN + * @return 签名数据 + */ + String sm3WithoutPKDetachedSign(byte[] orgData, String sCertDN); + + /** + * 对指定的原始数据核验其带公钥证书签名(PKCS#7) + * 原始数据将在接口内部进行无公钥的 sm3 ,然后做 Detach 验签 + * + * @param orgData 待签名的原始数据 + * @param sign 签名数据 + * @return 验签是否通过 + */ + boolean sm3WithoutPKDetachedVerify(byte[] orgData, String sign); + + + /** + * + * 通过指定的私钥对指定的原始数据编制带公钥证书的数字签名(遵循PKCS#7) + * 数据模式可选 DATA_HASH 或 DATA_ORIGIN + * + * @param dataType 数据模式,输入的数据为 HASH 后的数据 DATA_HASH = 0 ,输入的数据为原始数据库 DATA_ORIGIN = 1 + * @param orgData 输入的数据 + * @param sCertDN 签名者证书 DN + * @return 签名数据 + */ + public String detachedSign( + int dataType, + byte[] orgData, + String sCertDN + ); + + /** + * 带公钥证书与签名属性的数字签名(遵循 PKCS#7) + * @param dataType 数据类型:0,hash 模式,1为非hash模式 + * @param orgData 当为hash模式时,值为hash值,当为非hash模式时,值为数据 + * @param keyTag 密钥对应的索引号 + * @return 签名的 DER 编码 + */ + public byte[] detachedSign( + int dataType, + byte[] orgData, + int keyTag + ); + + /** + * 带公钥证书的PKCS#7数字签名(序列号) + * @param dataType 数据类型:0,hash 模式,1为非hash模式 + * @param orgData 当为hash模式时,值为hash值,当为非hash模式时,值为要签名的信息 + * @param certificateNo X509证书序号 + * @return 符合PKCS7标准的签名结果 + */ + public String detachedSignbysn( + int dataType, + byte[] orgData, + String certificateNo); + + + /** + * 对指定的原始数据核验其带公钥证书签名(PKCS#7) + * 数据模式可选 DATA_HASH 或 DATA_ORIGIN + * + * @param dataType 输入的数据为 HASH 后的数据 DATA_HASH = 0 ,输入的数据为原始数据库 DATA_ORIGIN = 1 + * @param orgData 待签名的原始数据 + * @param sign 签名数据 + * @return 验签是否通过 + */ + boolean detachedVerify( + int dataType, + byte[] orgData, + String sign); + + /** + * 带公钥证书与签名属性的数字签名验签(遵循 PKCS#7) + * @param dataType 数据类型:0,hash 模式,1为非hash模式 + * @param orgData 当为hash模式时,值为hash值,当为非hash模式时,值为数据 + * @param sign 已签名数据 + * @return 是否正确 + */ + boolean detachedVerify( + int dataType, + byte[] orgData, + byte[] sign); + + /** + * 对指定的原始数据核验其带公钥证书签名(PKCS#7)返回证书信息 + * 数据模式可选 DATA_HASH 或 DATA_ORIGIN + * + * @param dataType 输入的数据为 HASH 后的数据 DATA_HASH = 0 ,输入的数据为原始数据库 DATA_ORIGIN = 1 + * @param orgData 待签名的原始数据 + * @param sign 签名数据 + * @return 证书 + */ + X509 detachedVerifyAndGetX509(int dataType, + byte[] orgData, + String sign); + + /** + * 计算SM3散列值 + * @param packSn 消息块号,0=仅一块,1=第一块,2=中间块,3=最后块 + * @param userId 用户 ID,只对“消息块号”为 0、1 时有效 + * @param publicKey 公钥的 DER 编码 + * @param msg 二进制的消息块 + * @param filterData 过渡消息数据,只对“消息块号”为 2、3 时有效 + * @return + * filterData: 过渡消息数据,只对“消息块号”为 2、1 时有效 + * hash: hash + */ + RetWrap SM3Hash(int packSn, String userId, byte[] publicKey, byte[] msg, byte[] filterData); + +} diff --git a/src/main/java/com/sunyard/inf/sva/SydNakedSVApi.java b/src/main/java/com/sunyard/inf/sva/SydNakedSVApi.java new file mode 100644 index 0000000..94faad0 --- /dev/null +++ b/src/main/java/com/sunyard/inf/sva/SydNakedSVApi.java @@ -0,0 +1,32 @@ +package com.sunyard.inf.sva; + +/** + * 不经过 CA 授信 + * 直接使用公私钥对签名验签 + */ +public interface SydNakedSVApi { + /** + * 使用指定的证书 DN,从加密设备获取对应的私钥证书,对指定的原始数据编制裸签名(遵循 PKCS#1) + * @param orgData 待签名的原始数据 + * @param sCertDN 签名者证书 DN + * @return 签名数据 + */ + public byte[] SYD_NakedSign( + byte[] orgData, + String sCertDN + ); + + + /** + * 使用指定的证书 DN,对指定的原始数据编制裸验签(遵循PKCS#1) + * @param orgData 待签名的原始数据 + * @param sign 签名数据 + * @param sCertDN 签名者证书 DN + * @return 验签是否通过 + */ + public boolean SYD_NakedVerify( + byte[] orgData, + byte[] sign, + String sCertDN + ); +} \ No newline at end of file diff --git a/src/main/java/com/sunyard/pool/HsmLinkInfo.java b/src/main/java/com/sunyard/pool/HsmLinkInfo.java new file mode 100644 index 0000000..4223695 --- /dev/null +++ b/src/main/java/com/sunyard/pool/HsmLinkInfo.java @@ -0,0 +1,63 @@ +package com.sunyard.pool; + + + + +/** + * 到加密机的链接信息 + */ +public class HsmLinkInfo { + private String pcIp; + private int iPort; + private int iConnectTimeOut; + private int iDealTimeOut; + + + public HsmLinkInfo(String pcIp, int iPort, int iConnectTimeOut, int iDealTimeOut) { + this.pcIp = pcIp; + this.iPort = iPort; + this.iConnectTimeOut = iConnectTimeOut; + this.iDealTimeOut = iDealTimeOut; + } + + public static HsmLinkInfo[] mutiHsmLinkInfo(String[] pcIpList, int[] iPortList, int iConnectTimeOut, int iAllDealTimeOut) { + if (null == pcIpList && + null == iPortList && + pcIpList.length != iPortList.length) { + throw new IllegalArgumentException("入参错误"); + } + + if ( iAllDealTimeOut < pcIpList.length) { + throw new IllegalArgumentException("入参错误"); + } + + // 交易时间进行处理 + int iDealTimeOut = iAllDealTimeOut / pcIpList.length; + + + HsmLinkInfo[]hsms = new HsmLinkInfo[ pcIpList.length ]; + for ( int i = 0 ; i < pcIpList.length ; i++ ) { + hsms[ i ] = new HsmLinkInfo( pcIpList[i], iPortList[i], iConnectTimeOut, iDealTimeOut ); + } + + return hsms; + } + + + public String getPcIp() { + return pcIp; + } + + public int getiPort() { + return iPort; + } + + public int getiConnectTimeOut() { + return iConnectTimeOut; + } + + public int getiDealTimeOut() { + return iDealTimeOut; + } + +} diff --git a/src/main/java/com/sunyard/pool/ObjectInPool.java b/src/main/java/com/sunyard/pool/ObjectInPool.java new file mode 100644 index 0000000..4ab5b42 --- /dev/null +++ b/src/main/java/com/sunyard/pool/ObjectInPool.java @@ -0,0 +1,28 @@ +package com.sunyard.pool; + +public class ObjectInPool { + + private T object; + private long lasUseAt = System.currentTimeMillis(); + + public ObjectInPool(T object) { + this.object = object; + } + + public T getObjectForCheck() { + return this.object; + } + + public void updateLastUseTime(){ + this.lasUseAt = System.currentTimeMillis(); + } + + public T getObject() { + this.lasUseAt = System.currentTimeMillis(); + return this.object; + } + + public long getLasUseAt() { + return this.lasUseAt; + } +} diff --git a/src/main/java/com/sunyard/pool/PoolConfig.java b/src/main/java/com/sunyard/pool/PoolConfig.java new file mode 100644 index 0000000..4870fda --- /dev/null +++ b/src/main/java/com/sunyard/pool/PoolConfig.java @@ -0,0 +1,26 @@ +package com.sunyard.pool; + +public class PoolConfig { + + // 最大空闲时间 + private long maxIdle = 5 * 60 *1000; // 5 分钟 + + // 最大无用时间 + private long maxUseless = 30 * 60 * 1000; // 30 分钟 + + public long getMaxIdle() { + return maxIdle; + } + + public void setMaxIdle(long maxIdle) { + this.maxIdle = maxIdle; + } + + public long getMaxUseless() { + return maxUseless; + } + + public void setMaxUseless(long maxUseless) { + this.maxUseless = maxUseless; + } +} diff --git a/src/main/java/com/sunyard/pool/SydApiPool.java b/src/main/java/com/sunyard/pool/SydApiPool.java new file mode 100644 index 0000000..f4231be --- /dev/null +++ b/src/main/java/com/sunyard/pool/SydApiPool.java @@ -0,0 +1,84 @@ +package com.sunyard.pool; + +import com.sunyard.SydApi; +import com.sunyard.SydApiException; +import com.sunyard.proxy.ProxyInvocationHandler; +import racal.sunyard.main.SydApi4j; + +public class SydApiPool extends ThreadBasedConnectPool { + private HsmLinkInfo[] linkInfos; + + public SydApiPool(HsmLinkInfo[] linkInfos) { + this.linkInfos = linkInfos; + } + + protected SydApi initialValue() { + SydApi4j[] apis = new SydApi4j[this.linkInfos.length]; + boolean connected = false; + + for(int i = 0; i < apis.length; ++i) { + HsmLinkInfo info = this.linkInfos[i]; + + try { + apis[i] = (SydApi4j)(new SydApi4j()).connect(info.getPcIp(), info.getiPort(), (String)null, info.getiConnectTimeOut(), info.getiDealTimeOut()); + connected = true; + } catch (Exception var6) { + } + } + + if (!connected) { + throw new SydApiException("连接错误", -1); + } else { + ProxyInvocationHandler proxyInvocationHandler = new ProxyInvocationHandler(apis, this.linkInfos, false); + return proxyInvocationHandler.getProxy(); + } + } + + public boolean check(SydApi s) { + boolean ret = super.check(s); + if (!ret) { + return false; + } else { + ProxyInvocationHandler o = (ProxyInvocationHandler)s.getBindObject(); + + try { + SydApi4j[] hsms = o.getApis(); + boolean canUse = false; + int length = hsms.length; + + for(int i = 0; i < length; ++i) { + if (null != hsms[i]) { + try { + synchronized(hsms[i]) { + hsms[i].GenerateRandom(1); + canUse = true; + } + } catch (Exception var12) { + hsms[i] = null; + } + } else { + HsmLinkInfo[] infos = o.getApisInfos(); + HsmLinkInfo info = infos[i]; + + try { + hsms[i] = (SydApi4j)(new SydApi4j()).connect(info.getPcIp(), info.getiPort(), (String)null, info.getiConnectTimeOut(), info.getiDealTimeOut()); + canUse = true; + } catch (Exception e) { + } + } + } + + return canUse; + } catch (Exception e) { + return false; + } + } + } + + protected void free(SydApi o) { + if (null != o) { + o.disconnect(); + } + + } +} diff --git a/src/main/java/com/sunyard/pool/ThreadBasedConnectPool.java b/src/main/java/com/sunyard/pool/ThreadBasedConnectPool.java new file mode 100644 index 0000000..49ced4b --- /dev/null +++ b/src/main/java/com/sunyard/pool/ThreadBasedConnectPool.java @@ -0,0 +1,125 @@ +package com.sunyard.pool; + +import java.util.HashMap; +import java.util.Iterator; +import java.util.Map; +import java.util.concurrent.Executors; +import java.util.concurrent.ScheduledExecutorService; +import java.util.concurrent.TimeUnit; + +public class ThreadBasedConnectPool { + + // ThreadLocal + private final Map> map = new HashMap<>(); + + // 守护 + private final ScheduledExecutorService threadPool = Executors.newScheduledThreadPool(1); + + // 配置 + private PoolConfig config; + + public ThreadBasedConnectPool(PoolConfig config) { + this.config = config; + threadPool.scheduleAtFixedRate(new Runnable() { + @Override + public void run() { + // 检测和回收逻辑 + Iterator>> it = map.entrySet().iterator(); + while (it.hasNext()) { + Map.Entry> entry = it.next(); + ObjectInPool oip = entry.getValue(); + + if (System.currentTimeMillis() - oip.getLasUseAt() < config.getMaxIdle()) { + // 空闲时间不足,免检。 + continue; + } + + if (System.currentTimeMillis() - oip.getLasUseAt() > config.getMaxUseless()) { + // 长时间未使用,回收链接 + + it.remove(); + + try { + free(oip.getObject()); + } catch (Exception e) { + } + continue; + } + + boolean checkPass = false; + try { + checkPass = check(entry.getValue().getObjectForCheck()); + } catch (Exception e) { + checkPass = false; + } + finally { + } + + if ( ! checkPass) { + // 检查未通过 + it.remove(); + + try { + free(oip.getObject()); + } catch (Exception e) { + } + continue; + } + } + + } + }, config.getMaxIdle(), config.getMaxIdle(), TimeUnit.MILLISECONDS); + } + + public ThreadBasedConnectPool() { + this(new PoolConfig()); + } + + // 继承 初始化 + protected T initialValue() { + return null; + } + + + // 保活接口 + protected boolean check(T o) { + return null != o; + } + + // 释放 + protected void free(T o) { + } + + + // 获取 + public T get() { + ObjectInPool o = map.get(Thread.currentThread()); + if (null != o) { + return o.getObject(); + } + + return setInitialValue(); + } + + // 设置 + public void set(T o) { + map.put(Thread.currentThread(), new ObjectInPool<>(o)); + } + + // 清除 + public void remove() { + map.remove(Thread.currentThread()); + } + + protected void afterInit(ObjectInPool oip, T value ){ + + } + + private T setInitialValue() { + T value = initialValue(); + ObjectInPool opi = new ObjectInPool<>(value); + map.put(Thread.currentThread(), opi); + afterInit( opi , value); + return value; + } +} diff --git a/src/main/java/com/sunyard/proxy/ProxyInvocationHandler.java b/src/main/java/com/sunyard/proxy/ProxyInvocationHandler.java new file mode 100644 index 0000000..1810f04 --- /dev/null +++ b/src/main/java/com/sunyard/proxy/ProxyInvocationHandler.java @@ -0,0 +1,156 @@ +package com.sunyard.proxy; + +import com.sunyard.SydApi; +import com.sunyard.SydApiException; +import com.sunyard.pool.HsmLinkInfo; +import racal.sunyard.main.SydApi4j; +import racal.sunyard.main.SydApiMuti; + +import java.lang.reflect.InvocationHandler; +import java.lang.reflect.Method; +import java.lang.reflect.Proxy; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; + +public class ProxyInvocationHandler implements InvocationHandler { + + private static Map innerFuncs = new HashMap(); + + static { + innerFuncs.put("connect", new SydApiException("集群连接模式,不需要该连接", 0)); + } + + private SydApi4j[] apis; + private HsmLinkInfo[] apisInfos; + private boolean isShortLinkMode = true; + + + public ProxyInvocationHandler(SydApi4j[] apis) { + this.apis = apis; + } + + public ProxyInvocationHandler(SydApi4j[] apis, HsmLinkInfo[] info, boolean isShortLinkMode) { + this.apis = apis; + this.apisInfos = info; + this.isShortLinkMode = isShortLinkMode; + } + + public SydApi4j[] getApis() { + return apis; + } + + + public HsmLinkInfo[] getApisInfos() { + return apisInfos; + } + + public SydApi getProxy() { + SydApi api = (SydApi) Proxy.newProxyInstance( + SydApi4j.class.getClassLoader(), + new Class[]{SydApi.class}, + this + ); + api.setBindObject( this ); + return api; + } + + public void disconnect() { + + if (null != apis && isShortLinkMode) { + for (SydApi4j api4j : this.apis) { + try { + if (null != api4j) { + api4j.disconnect(); + } + } catch (Exception e) { + // pass + } + } + } + } + + //处理代理实例并返回结果 + @Override + public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { + SydApiException le = null; + + if ("disconnect".equals(method.getName())) { + this.disconnect(); + } + + // 屏蔽部分非业务接口 + if ("connect".equals(method.getName())) { + throw new RuntimeException("不允许使用此接口"); + } + if (innerFuncs.containsKey(method.getName())) { + innerFuncs.get(method.getName()); + } + + + if ("deleteCert".equals(method.getName()) || "SYD_Get_X509_CertInfo_HA".equals(method.getName())) { + for (SydApi4j api : apis) { + if (null == api) { + if ("deleteCert".equals(method.getName())) { + throw new SydApiException("删除失败",56307); + } else { + throw new SydApiException("导入失败",56300); + } + } + try { + + Object ret = method.invoke(api, args); + if ( ret instanceof Boolean ) { + if ( ! ( Boolean ) ret ) { + throw new RuntimeException("结果错误"); + } + } + + } catch (SydApiException e) { + if ("deleteCert".equals(method.getName())) { + throw new SydApiException("删除失败",56307); + } else { + throw new SydApiException("导入失败",56300); + } + } + } + } + + for (SydApi4j api : apis) { + if (null == api) { + continue; + } + if ( isShortLinkMode ) { + try { + + return method.invoke(api, args); + + } catch (SydApiException e) { + le = e; + if (e.getRetCode() < 0) { + continue; + } + throw e; + } + } else { + synchronized (api) { + try { + return method.invoke(api, args); + + } catch (SydApiException e) { + le = e; + if (e.getRetCode() < 0) { + continue; + } + throw e; + } + } + } + } + throw le; + } +} + + + diff --git a/src/main/java/racal/sunyard/main/SydApiClusterBuilder.java b/src/main/java/racal/sunyard/main/SydApiClusterBuilder.java new file mode 100644 index 0000000..5846664 --- /dev/null +++ b/src/main/java/racal/sunyard/main/SydApiClusterBuilder.java @@ -0,0 +1,42 @@ +package racal.sunyard.main; + +import com.sunyard.SydApi; +import com.sunyard.SydApiException; +import com.sunyard.proxy.ProxyInvocationHandler; + +public class SydApiClusterBuilder { + + public static SydApi SYD_Short_Connect_Ex(String[] pcIpList, int[] iPortList, int iConnectTimeOut, int allDealTimeOut) { + if (pcIpList.length != iPortList.length) { + throw new IllegalArgumentException("ip与端口数量不一致"); + } + SydApi4j[] apis = new SydApi4j[pcIpList.length]; + int iDealTimeOut = allDealTimeOut / pcIpList.length; + boolean connected = false; + SydApi4j sydApi4j = new SydApi4j(); + for (int i = 0; i < pcIpList.length; i++) { + try { + apis[i] = (SydApi4j) sydApi4j.connect(pcIpList[i], iPortList[i], null, iConnectTimeOut, iDealTimeOut); + connected = true; + } catch (Exception e) { + // 忽略错误 +// log.error("网络连接错误 {} {} - 忽略", pcIpList[i], iPortList[i]); + } + + } + if (!connected) { + // TODO + throw new SydApiException("连接错误", -1); + } + + +// hsms = apis; +// isShortLinkMode = true; + + + + ProxyInvocationHandler proxyInvocationHandler = new ProxyInvocationHandler(apis); + return proxyInvocationHandler.getProxy(); + } + +} diff --git a/src/main/java/racal/sunyard/main/SydApiMuti.java b/src/main/java/racal/sunyard/main/SydApiMuti.java new file mode 100644 index 0000000..dc410dc --- /dev/null +++ b/src/main/java/racal/sunyard/main/SydApiMuti.java @@ -0,0 +1,4 @@ +package racal.sunyard.main; + +public class SydApiMuti extends SydApi4j { +} diff --git a/src/main/java/racal/sunyard/main/SydApiPoolBuilder.java b/src/main/java/racal/sunyard/main/SydApiPoolBuilder.java new file mode 100644 index 0000000..d1aef18 --- /dev/null +++ b/src/main/java/racal/sunyard/main/SydApiPoolBuilder.java @@ -0,0 +1,35 @@ +package racal.sunyard.main; + +import com.sunyard.SydApi; +import com.sunyard.pool.HsmLinkInfo; +import com.sunyard.pool.SydApiPool; + +public class SydApiPoolBuilder { + private SydApiPool pool; + + public SydApiPoolBuilder(String[] pcIpList, int[] iPortList, int iConnectTimeOut, int iDealTimeOut) { + HsmLinkInfo[] linkInfo = HsmLinkInfo.mutiHsmLinkInfo(pcIpList, iPortList, iConnectTimeOut, iDealTimeOut); + this.pool = new SydApiPool(linkInfo); + this.warmUp(pcIpList, iPortList, iConnectTimeOut, iDealTimeOut); + } + + public SydApi build() { + return (SydApi)this.pool.get(); + } + + private void warmUp(String[] pcIpList, int[] iPortList, int iConnectTimeOut, int iDealTimeOut) { +// SydApi4j api = null; + SydApi api = null; + try { +// api = new SydApi4j(); + api = SydApiClusterBuilder.SYD_Short_Connect_Ex(pcIpList, iPortList, iConnectTimeOut, iDealTimeOut); + } catch (Exception e) { + } finally { + if (null != api) { + api.disconnect(); + } + + } + + } +} diff --git a/src/main/java/racal/sunyard/main/SydHashApiTest.java b/src/main/java/racal/sunyard/main/SydHashApiTest.java new file mode 100644 index 0000000..5f6d7c7 --- /dev/null +++ b/src/main/java/racal/sunyard/main/SydHashApiTest.java @@ -0,0 +1,69 @@ +package racal.sunyard.main; + +public interface SydHashApiTest { + + /** + * 计算SM3散列值 + * @param sn 证书序号 + * @param userId 用户ID + * @param msg 原始数据,二进制的消息块 + * @return + */ + byte[] SM3HashSNaId(String sn, String userId, byte[] msg); + + /** + * 输入对指定的原始数据和公钥,通过 SM3 算法计算数据的散列值。 + * @param publicKey 公钥的 DER 编码(可以为空) + * @param msg 原始数据,二进制的消息块 + * @param block 消息块标志 + * @param mac 上一轮 mac 值,当 mac 不是 null,长度不为 0,则直接从第二包开始。 + * @return HASH 值,32 个 Bytes. + */ + byte[] SM3Hash(String publicKey, byte[] msg, int block, byte[] mac); + + /** + * 计算SM3散列值 + * @param publicKey 公钥的 DER 编码 (03420004 开头) + * @param userId 用户ID + * @param msg 原始数据,二进制的消息块 + * @return + */ + byte[] SM3Hash(String publicKey, String userId, byte[] msg); + + /** + * 输入对指定的原始数据和公钥,通过 SM3 算法计算数据的散列值。 + * + * @param publicKey 公钥(可以为空) + * @param msg 原始数据 + * @return HASH 值,32 个 Bytes. + */ + byte[] SM3Hash(String publicKey, byte[] msg); + + + /** + * 输入对指定的原始数据 (无公钥),通过 SM3 算法计算数据的散列值。 + * + * @param msg 原始数据 + * @return HASH 值,32 个 Bytes. + */ + byte[] SM3Hash(byte[] msg); + + + public byte[] MACCalc(int alg, int keyType, int fullmode, int maclen, String key, byte[] infoData); + + /** + * mac 计算 + * @param alg 0=DES 1=3DES 2=SM4 3=AES 4=IDEA 5=SM1 6=3DES-X9.19 + * @param keyType 0-TAK 1-ZAK + * @param fullMode 0-弱填充 1 强填充 + * @param AK 密钥 + * @param infoData <=1024 + * @param macLen 1=4Byte 2=8Byte 3=16Byte(仅在SM4/AES 下有效) + * @return mac 值 hex 格式 + */ + public String MACCalc(int alg, int keyType, String AK, int fullMode, byte[] infoData, int macLen); + public void MACCheck(int alg, int keyType, String AK, int fullMode, byte[] infoData, String mac); + + public String calcPBOCMAC(int mode, int keyType, String key, byte[] data, int block, byte[] iv); + } + diff --git a/src/test/java/SM3Test.java b/src/test/java/SM3Test.java new file mode 100644 index 0000000..51b1352 --- /dev/null +++ b/src/test/java/SM3Test.java @@ -0,0 +1,24 @@ +import com.sunyard.SydApi; +import com.sunyard.proto.Util; +import racal.sunyard.main.SydApi4j; + +import java.nio.charset.StandardCharsets; + +public class SM3Test { + + public static void main(String[] args) { + + SydApi api = new SydApi4j().connect("192.168.0.100", 8889, null, 1000); + try { + byte[] data = api.SM3Hash("test".getBytes(StandardCharsets.UTF_8)); + System.out.println("hex=" + Util.bytes2HexString(data)); + }catch ( Exception e ) { + e.printStackTrace(); + } + + + + + } + +} diff --git a/src/test/java/com/sunyard/sydapi/ChuanhuaDemo1.java b/src/test/java/com/sunyard/sydapi/ChuanhuaDemo1.java new file mode 100644 index 0000000..3e247a3 --- /dev/null +++ b/src/test/java/com/sunyard/sydapi/ChuanhuaDemo1.java @@ -0,0 +1,45 @@ +package com.sunyard.sydapi; + +import org.junit.Test; +import racal.sunyard.main.SydApi4j; + +/** + * 传化签名验签demo + * */ +public class ChuanhuaDemo1 { + + public static void main(String[] args) { + + // 调试模式 + System.setProperty("com.sunyard.sydapi4j.debug", "true"); + + // 建立链接(单台) + SydApi4j api = (SydApi4j) new SydApi4j().connect("192.168.0.100", 8889, null, 1000); + + try { + + final String testSN1 = "1004282451"; + final String testSN2 = "1004282452"; + + byte[] testData = "1234567812345678信达雅SUNYARDsunyard".getBytes("UTF-8"); + + System.out.println("\n\n----- 用指定的证书私钥对指定的数据进行数字签名。 -----"); + String signPri = api.netSign(testSN1, testData); + System.out.print("sign : "); + System.out.println(signPri); + // 验签传原始数据 + System.out.println("\n\n----- 用指定的证书私钥对指定的数据进行数字验证。 -----"); + if (api.netVerify(testSN1, testData, signPri)) { + System.out.println("验证通过"); + } else { + System.out.println("验证失败"); + } + + }catch (Exception e){ + e.printStackTrace(); + }finally { + api.disconnect(); + } + } + +} diff --git a/src/test/java/com/sunyard/sydapi/ChuanhuaDemo2.java b/src/test/java/com/sunyard/sydapi/ChuanhuaDemo2.java new file mode 100644 index 0000000..314b29d --- /dev/null +++ b/src/test/java/com/sunyard/sydapi/ChuanhuaDemo2.java @@ -0,0 +1,65 @@ +package com.sunyard.sydapi; + +import com.sunyard.proto.Util; +import org.junit.Assert; +import racal.sunyard.main.SydApi4j; + + +/** + * 传化国密加解密demo + * */ +public class ChuanhuaDemo2 { + + /*public static void write(String file, byte[] content) { + try { + File f = new File(file); + if (!f.exists()) { + f.createNewFile(); + } + FileOutputStream fos = new FileOutputStream(f); + fos.write(content); + } catch (Exception e) { + System.out.println("写入文件 " + file + " 异常"); + } + }*/ + public static void main(String[] args){ + + // 调试模式 + System.setProperty("com.sunyard.sydapi4j.debug", "true"); + + // 建立链接(单台) +// SydApi4j api = (SydApi4j) new SydApi4j().connect("192.168.0.100", 8889, null, 1000); + SydApi4j api = (SydApi4j) new SydApi4j().connect("172.16.18.59", 8889, null, 1000); + + + try{ + +// final String testSN1 = "1004282451";//签名 +// final String testSN2 = "1004282452";//加密 + final String userId = "1747"; + + byte[] testData = "1234567812345678信达雅SUNYARDsunyard@!#$%^加密s".getBytes("GBK"); + + String pk = api.SM2GetPublicKeyC(userId, 1); + System.out.println("pk= " + pk); + + System.out.println("\n\n----- 用输入的会话密钥,对指定报文数据进行加密处理。 SM2 -----"); + String sdata = api.SM2Encrypt(Util.hexString2Bytes(pk), testData); + System.out.println("加密后的数据: " + sdata); + + System.out.println("\n\n----- 用输入的会话密钥,对指定报文数据进行解密处理。 SM2 -----"); + byte[] data = api.SM2DecryptC(userId, sdata); + Assert.assertArrayEquals(testData, data); + System.out.println("解密后的数据: " + new String(data)); +// write("./data.txt",data); + + + }catch (Exception e){ + e.printStackTrace(); + }finally { + api.disconnect(); + } + + } + +} diff --git a/src/test/java/com/sunyard/sydapi/test/Test8011.java b/src/test/java/com/sunyard/sydapi/test/Test8011.java new file mode 100644 index 0000000..49d078d --- /dev/null +++ b/src/test/java/com/sunyard/sydapi/test/Test8011.java @@ -0,0 +1,32 @@ +package com.sunyard.sydapi.test; + +import racal.sunyard.main.SydApi4j; + +public class Test8011 { + + private static final String dn = "C=CN,O=CFCA OCA1,OU=YCCA,OU=Individual-2,CN=YCCA@黄金交易所@Zhuangj@1"; + + // private static final String dn = "C=CN,O=Sunyard,OU=8001,CN=8001"; + // private static final String dn = "1004282451"; + + + public static void main(String[] args) { + + System.setProperty("com.sunyard.sydapi4j.debug", "true"); + + SydApi4j api = (SydApi4j) new SydApi4j().connect("172.16.18.59", 8889, null, 1000); + + try { + + boolean sign = api.deleteCert(dn); + System.out.println(sign); + + } catch (Exception e) { + e.printStackTrace(); + } finally { + api.disconnect(); + } + + + } +} diff --git a/src/test/java/sample/HSMPoolLongLink.java b/src/test/java/sample/HSMPoolLongLink.java new file mode 100644 index 0000000..dac017e --- /dev/null +++ b/src/test/java/sample/HSMPoolLongLink.java @@ -0,0 +1,51 @@ +package sample; + +import com.sunyard.SydApi; +import com.sunyard.proto.Util; +import org.junit.Assert; +import racal.sunyard.main.SydApiPoolBuilder; + +import java.nio.charset.StandardCharsets; + + +/** + * 集群模式 - 长连接 + */ +public class HSMPoolLongLink { + + public static void main(String[] args) { + + // 调试模式 + System.setProperty("com.sunyard.sydapi4j.debug", "true"); + + // 建立链接 + String[] pcipList = {"172.16.18.59","192.168.0.200"}; + int[] iportList = {8889,8889}; + + for (int i = 0; i < 1000; i++) { + int tmp = i; + new Thread(() -> { + SydApiPoolBuilder builder = new SydApiPoolBuilder(pcipList, iportList, 10, 1000); + SydApi api = builder.build(); + try { + for (int j = 0; j < 20; j++) { + byte[] data = api.SM3Hash("test".getBytes(StandardCharsets.UTF_8)); + System.out.println("hex=" + Util.bytes2HexString(data)); +// boolean sign = api.deleteCert("C=CN,O=CFCA OCA1,OU=YCCA,OU=Individual-2,CN=YCCA@黄金交易所@Zhuangj@1"); +// System.out.println(sign); + } + } catch (Exception e){ + e.printStackTrace(); + } + finally { + if (null != api) { + api.disconnect(); + } + } + }, i + "t").start(); + } + System.out.println(1); + } +} + + diff --git a/src/test/java/sample/HSMPoolShortLink.java b/src/test/java/sample/HSMPoolShortLink.java new file mode 100644 index 0000000..4768248 --- /dev/null +++ b/src/test/java/sample/HSMPoolShortLink.java @@ -0,0 +1,52 @@ +package sample; + +import com.sunyard.SydApi; +import com.sunyard.cert.X509; +import com.sunyard.proto.Util; +import racal.sunyard.main.SydApiClusterBuilder; + +import java.nio.charset.StandardCharsets; + + +/** + * 集群模式 - 短连接 + */ +public class HSMPoolShortLink { + + public static void main(String[] args) { + + // 调试模式 + System.setProperty("com.sunyard.sydapi4j.debug", "true"); + + // 建立链接 + String[] pcipList = {"172.16.18.59", "192.168.0.200"}; + int[] iportList = {8889, 8889}; + + + for (int i = 0; i < 1000; i++) { + int tmp = i; + new Thread(() -> { + SydApi api = SydApiClusterBuilder.SYD_Short_Connect_Ex( + pcipList, + iportList, + 10, + 1000); + try { + for (int j = 0; j < 20; j++) { + byte[] data = api.SM3Hash("test".getBytes(StandardCharsets.UTF_8)); + System.out.println("hex=" + Util.bytes2HexString(data)); +// boolean sign = api.deleteCert("C=CN,O=CFCA OCA1,OU=YCCA,OU=Individual-2,CN=YCCA@黄金交易所@Zhuangj@1"); +// System.out.println(sign); + } + + } catch (Exception e) { + e.printStackTrace(); + } finally { + if (null != api) { + api.disconnect(); + } + } + }, i + "t").start(); + } + } +}