武汉人行指令整合
This commit is contained in:
@@ -2,6 +2,8 @@ package com.sunyard.inf;
|
||||
|
||||
import com.sunyard.RetWrap;
|
||||
|
||||
import java.io.UnsupportedEncodingException;
|
||||
|
||||
|
||||
/**
|
||||
* 密钥生成相关接口
|
||||
@@ -128,6 +130,57 @@ public interface SydGenApi {
|
||||
*/
|
||||
RetWrap SM2GenSessionKey(String publicKey);
|
||||
|
||||
/**
|
||||
* 生成数字信封
|
||||
* @param publicKey 公钥
|
||||
* @return
|
||||
* CipherKey: 公钥加密的会话密钥,DER 编码,HEX 格式,
|
||||
* SessionKey: 本地LMK 加密的会话密钥,HEX 格式 ,
|
||||
* KCV: 会话密钥的检验值,HEX 格式,长度为 16H。
|
||||
*/
|
||||
RetWrap genDigitalEnvelope(String publicKey);
|
||||
|
||||
/**
|
||||
* 解密数字信封
|
||||
*
|
||||
* @param sk 私钥索引
|
||||
* @param cipherKey 密文
|
||||
* @return sessionKey LMK加密下的密钥
|
||||
*/
|
||||
String deDigitalEnvelope(String sk, String cipherKey);
|
||||
|
||||
/**
|
||||
* @Description: 数字信封加密数据,会员专用
|
||||
* @Param: [pk, inPutData,msgId]
|
||||
* @return: byte[] 格式:sessionByPk+\r\n+头+\r\n+密文
|
||||
* @Author: wp
|
||||
* @Date: 2020/11/20
|
||||
*/
|
||||
String genDigitalEnvelopeWithDM(String pk, String inPutDataStr,String msgId) throws UnsupportedEncodingException;
|
||||
/**
|
||||
* 数字信封加密数据,票价所定制格式
|
||||
* @param pk 公钥值
|
||||
* @param inPutData 报文明文
|
||||
* @return 报文密文 格式:sessionByPk(base64)+\r\n+密文(base64)
|
||||
* @throws UnsupportedEncodingException
|
||||
*/
|
||||
String genDigitalEnvelopeWithData(String pk,String inPutData) throws UnsupportedEncodingException;
|
||||
/**
|
||||
* 解密数字信封,解密数据
|
||||
* @param sk 私钥索引
|
||||
* @param inPutData 报文密文
|
||||
* @return 报文明文
|
||||
* @throws UnsupportedEncodingException
|
||||
*/
|
||||
String deDigitalEnvelopeWithData(String sk, String inPutData) throws UnsupportedEncodingException;
|
||||
|
||||
/**
|
||||
* 将秘钥从 PK 加密转为 LMK 加密
|
||||
* @param skIndex 私钥索引
|
||||
* @param sessionKey 会话秘钥密文
|
||||
* @return 会话秘钥密文
|
||||
*/
|
||||
String transKeyFromPkToLmk(String skIndex, String sessionKey);
|
||||
|
||||
/**
|
||||
* 此函数用于会话密钥的接收,用于接收端。
|
||||
@@ -148,6 +201,17 @@ public interface SydGenApi {
|
||||
*/
|
||||
RetWrap SM2ConfirmSessionKey(String sk, String cipherKey);
|
||||
|
||||
/**
|
||||
* 产生对称密钥,通过公钥加密生成网联格式的数字信封。
|
||||
|
||||
* @param dn 对*方 X509 证书DN。
|
||||
* @param nAlg 算法标识,0:AES,1:SM4
|
||||
* @return RetWrap 包含 CipherKey SessionKey KCV
|
||||
* CipherKey 公钥加密的会话密钥 ,BASE64 编码
|
||||
* SessionKey 本地LMK 加密的会话密钥,HEX 格式, 本地 LMK 加密的会话密钥长度,HEX 格式(不包括第 1 个字符),一般为 33 个 Bytes。默认输入值为缓冲区的大小。
|
||||
* KCV 会话密钥的检验值,HEX 格式,长度为 32H。
|
||||
*/
|
||||
RetWrap generateDEByDn(byte[] dn, byte nAlg) throws Exception;
|
||||
|
||||
/**
|
||||
* 产生对称密钥,通过公钥加密生成网联格式的数字信封。
|
||||
|
||||
Reference in New Issue
Block a user