zBug
首页 工具 隐私协议 作品
更多
关于我们
1 proguard-rules出现unresolved class name 913 阅读 2 onActivityResult过时了,registerForActivityResult使用方法 889 阅读 3 FlexboxLayout+recyclerView实现自动换行 857 阅读 4 android5遇到INSTALL_FAILED_DEXOPT 解决办法 640 阅读 5 Room数据库Schema export Error 575 阅读
默认分类 mysql
android
android深入 Jetpack Compose Android传感器
php
Yii2
windows webrtc
登录
标签搜索
  • android
  • kotlin
  • webrtc
  • kurento
  • nginx
  • flutter
  • adb
  • rsa
  • 微信
  • git
  • mysql
  • Yii2
  • md5
  • 加密
  • dart
  • aes
  • wechat
  • windows
  • 小程序
  • dexopt
侧边栏壁纸
博主昵称
Kornan

  • 累计撰写 72 篇文章
  • 累计收到 3 条评论
  • 首页
  • 栏目
    • 默认分类
    • mysql
    • android
      • android深入
      • Jetpack Compose
      • Android传感器
    • php
      • Yii2
    • windows
    • webrtc
  • 页面
    • 工具
    • 隐私协议
    • 作品
    • 关于我们
搜索到 1 篇与 加密 的结果
  • android加密算法之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日
    • 254 阅读
    • 0 评论
    • 0 点赞
博主栏壁纸
博主头像 Kornan

72 文章数
3 评论量
2019 - 2022 © Kornan
已运行 00 天 00 时 00 分 00 秒
RSS MAP