| | |
| | | } |
| | | |
| | | /** |
| | | * CBC加密 用户验证方法 |
| | | * |
| | | * @param message keyIndex:密钥 sm4IV:base64后的16字节字符串 maced:MAC计算值 |
| | | * @return |
| | | */ |
| | | public CBCResultDTO getCBCMacEncipher(String sm4Iv, String keyIndex, String message) { |
| | | |
| | | String url = urlPrefix + "/api/Http/scm"; |
| | | |
| | | |
| | | JSONObject jsonParm = new JSONObject(); |
| | | jsonParm.put("Action", "CBCMac"); |
| | | jsonParm.put("DeviceType", "SCM"); |
| | | |
| | | JSONObject targetJson = new JSONObject(); |
| | | targetJson.put("TimeStamp", String.valueOf(System.currentTimeMillis())); |
| | | targetJson.put("Token", getToken()); |
| | | targetJson.put("KeyIndex", keyIndex); |
| | | targetJson.put("Message", message); |
| | | targetJson.put("Sm4IV", sm4Iv); |
| | | |
| | | jsonParm.put("Target", targetJson); |
| | | |
| | | ResultDTO ret = apiRequest(url, jsonParm.toJSONString()); |
| | | |
| | | return new CBCResultDTO(getKeyIndex(), sm4Iv, ret.getData()); |
| | | } |
| | | |
| | | /** |
| | | * 加密 |
| | | * @param sm4Iv 算法为SM4时需要填写,16字节字符串 |
| | | * @param keyIndex 密钥 |