app开发者平台在数字化时代的重要性与发展趋势解析
912
2022-09-20
Scala MD5加密类
只是简单实现,很容易破解,暂时先拿来用记录下。 Scala object MD5 { def MD5Encode(input: String): String = { // 指定MD5加密算法 val md5 = MessageDigest.getInstance("MD5") // 对输入数据进行加密,过程是先将字符串中转换成byte数组,然后进行随机哈希 val encoded = md5.digest(input.getBytes) // 将加密后的每个字节转化成十六进制,一个字节8位,相当于2个16进制,不足2位的前面补0 encoded.map("%02x".format(_)).mkString } def main(args: Array[String]): Unit = { println(MD5Encode("hello world")) // 5eb63bbbe01eeed093cb22bb8f5acdc3 } } Java public class TestMD5 { /** * MD5加密 * @param input * @return */ public static String MD5Encode( String input) { try { // 指定MD5加密算法 MessageDigest md5 = MessageDigest.getInstance("MD5"); // 将字符串中转换成byte数组,并更新到MD5 md5.update(input.getBytes()); // 对输入数据进行随机哈希加密 byte[] encoded = md5.digest(); // 转换为十六进制字符串 return getHex(encoded); } catch (NoSuchAlgorithmException e) { e.printStackTrace(); } return null; } /** * 转换为十六进制字符串 * 将加密后的每个字节转化成十六进制,一个字节8位,相当于2个16进制,不足2位的前面补0 */ private static String getHex(byte[] bytes){ StringBuilder builder = new StringBuilder(bytes.length * 2); for (byte b: bytes) { builder.append(Integer.toHexString((b >> 4) & 0x0f)); builder.append(Integer.toHexString(b & 0x0f )); } return builder.toString(); } public static void main(String[] args) { System.out.println(MD5Encode("hello world")); // 5eb63bbbe01eeed093cb22bb8f5acdc3 } }
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~