動態生成簽名工具類
要求
根據方法的入參值拼接成動態的祕鑰,進行MD5加密,引數名 ASCII 碼從小到大排序(字典序)
public class SignUtil {
/**
* 生成簽名
*
* @param map
* @return
*/
public static String getSign(Map<String, String> map) {
String result = "";
try {
List<Map.Entry<String, String>> infoIds = new ArrayList<Map.Entry<String, String>>(map.entrySet());
// 對所有傳入引數按照欄位名的 ASCII 碼從小到大排序(字典序)
Collections.sort(infoIds, new Comparator<Map.Entry<String, String>>() {
@Override
public int compare(Map.Entry<String, String> o1, Map.Entry<String, String> o2) {
return (o1.getKey()).toString().compareTo(o2.getKey());
}
});
// 構造簽名鍵值對的格式
StringBuilder sb = new StringBuilder();
for (Map.Entry<String, String> item : infoIds) {
if (item.getKey() != null || item.getKey() != "") {
String key = item.getKey();
String val = item.getValue();
if (!(val == "" || val == null)) {
sb.append(key + "=" + val + "&");
}
}
}
sb.append("secret=").append(ParkingCloudConstant.SECRET);
result = sb.toString();
//進行MD5加密
result = DigestUtils.md5Hex(result).toUpperCase();
} catch (Exception e) {
return null;
}
return result;
}
}
相關文章
- 通過類名動態生成物件物件
- Ant自動打包(可動態修改包名、資源等)生成不同簽字不同包名的APPAPP
- html生成郵件簽名HTML
- iOS簽名、iOS企業簽名、iOS超級簽名工具使用iOS
- 蘋果企業簽名:動態庫注入與企業證書重簽名蘋果
- Android 打包簽名 從生成keystore到完成簽名Android
- Android Studio生成簽名檔案,自動簽名,以及獲取SHA1和Android
- openssl生成自簽名證書
- 生成自簽名SSL證書
- 請教,如何動態生成Java類?Java
- 利用自簽名生成「可隨機自啟動」來電通隨機
- PHP 做 RSA 簽名 生成訂單PHP
- android簽名生成和釋出Android
- JS如何動態生成變數名[重點]JS變數
- canvas橫屏簽名,簽名圖片旋轉90度生成base64Canvas
- apk空包簽名方法及工具APK
- 使用OpenSSL生成自簽名SSL證書
- 程式碼簽名、驅動簽名的常見問題解答
- Android 生成簽名apk與多渠道打包AndroidAPK
- pb通過類名稱動態構建類物件(原創)物件
- windows下使用makecert命令生成自簽名證書Windows
- Net8 使用BouncyCastle 生成自簽名證書AST
- win10怎樣禁用驅動簽名_如何禁用win10驅動簽名Win10
- 蘋果企業簽名的三種型別,企業簽名是如何分類的?蘋果型別
- 程式碼簽名好用的工具推薦
- 為什麼驅動程式簽名需要EV程式碼簽名證書
- 【楊航】自動生成實體類工具原始碼原始碼
- 動態表名
- 蘋果企業簽名多少錢-ios企業簽名-企業簽名蘋果iOS
- app直播原始碼,uniapp隨機數生成簽名APP原始碼隨機
- Win10系統安裝驅動怎麼生成cat檔案和簽名Win10
- 二維碼生成工具類
- 利用766IPA/iOS/蘋果簽名工具在Mac和win電腦上進行簽名iOS蘋果Mac
- 群簽名與環簽名的介紹
- 靜態方法查詢類名
- win10驅動簽名禁用後果_win10驅動程式簽名有什麼用Win10
- swift中的名稱空間及動態載入類Swift
- 環簽名