scm嘉讯传媒接口文档

接口文档v1


2.签名、加解密

<p><strong>2.1依赖</strong></p> <pre><code>&amp;lt;dependency&amp;gt;     &amp;lt;groupId&amp;gt;cn.hutool&amp;lt;/groupId&amp;gt;     &amp;lt;artifactId&amp;gt;hutool-all&amp;lt;/artifactId&amp;gt;     &amp;lt;version&amp;gt;5.7.16&amp;lt;/version&amp;gt; &amp;lt;/dependency&amp;gt; </code></pre> <p><strong>2.2加密方法</strong></p> <pre><code>/** * 内容进行加密 * @param apiClientId 需加密内容 - 商户ID * @param publicKey 公钥 * @return 加密后信息 */ public static String encryptByPublicKey(Long apiClientId,String publicKey){ // 初始化基于hutool的 RSA公钥 // 获取RSA对象,RSA构造函数有2个参数,RSA(PrivateKey,PublicKey),公钥加密指向传入PublicKey //算法 RSA_ECB_PKCS1(&amp;quot;RSA/ECB/PKCS1Padding&amp;quot;) RSA rsa = new RSA(null, publicKey); // 调用RSA的encrypt方法把apiClientId名为进行加密 byte[] encrypt = rsa.encrypt(apiClientId.toString().getBytes(), KeyType.PublicKey); // 把公钥的字节码转化为Base64后,得到加密数据 String encryptedData = Base64.encode(encrypt); return encryptedData; } </code></pre> <p><strong>2.3签名方法</strong></p> <pre><code>/** * 获取签名 * @param encryptedData 加密数据 * @param key 用户key * @return 签名 */ public static String generatePrivateSign(String encryptedData ,String key){ // sha256算法做不可逆签名 return SecureUtil.sha256(encryptedData + key); } </code></pre>

页面列表

ITEM_HTML