首页
工具
隐私协议
作品
更多
关于我们
Search
1
FlexboxLayout+recyclerView实现自动换行
1,037 阅读
2
proguard-rules出现unresolved class name
975 阅读
3
onActivityResult过时了,registerForActivityResult使用方法
965 阅读
4
android5遇到INSTALL_FAILED_DEXOPT 解决办法
690 阅读
5
Room数据库Schema export Error
654 阅读
默认分类
mysql
android
android深入
Jetpack Compose
Android传感器
php
Yii2
windows
webrtc
登录
Search
标签搜索
android
kotlin
webrtc
kurento
mysql
nginx
flutter
adb
rsa
微信
git
Yii2
md5
加密
dart
aes
wechat
windows
小程序
dexopt
Kornan
累计撰写
76
篇文章
累计收到
3
条评论
首页
栏目
默认分类
mysql
android
android深入
Jetpack Compose
Android传感器
php
Yii2
windows
webrtc
页面
工具
隐私协议
作品
关于我们
搜索到
1
篇与
md5
的结果
2020-08-14
android加密算法之MD5
方法1fun getMD5A(str: String): String? { return try { val md: MessageDigest = MessageDigest.getInstance("MD5")//生成一个MD5加密计算摘要 md.update(str.toByteArray()) //计算md5函数 var md5Str: String = BigInteger(1, md.digest()).toString(16) if (md5Str.length < 32) { md5Str = "0$md5Str" } md5Str } catch (e: Exception) { throw Exception("MD5加密出现错误") } }方法2,修改hexDigits可生所不同的字符串:例如:charArrayOf('5','2','0','1','3','1','4','7','8','9','a','b','c','d','e','f')fun getMD5B(str: String): String? { val hexDigits = charArrayOf('0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f') return try { val mdInst = MessageDigest.getInstance("MD5") mdInst.update(str.toByteArray()) val md = mdInst.digest() val j = md.size val str = CharArray(j * 2) var k = 0 for (i in 0 until j) { val byte0 = md[i] str[k++] = hexDigits[byte0.toInt().ushr(4) and 0xf] str[k++] = hexDigits[byte0.toInt().and(0xf)] } String(str) } catch (e: java.lang.Exception) { e.printStackTrace() null } }
2020年08月14日
255 阅读
0 评论
0 点赞