关于MD5加密

什么是MD5加密?

MD5信息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。MD5由美国密码学家罗纳德·李维斯特(Ronald Linn Rivest)设计,于1992年公开,用以取代MD4算法。这套算法的程序在 RFC 1321 标准中被加以规范。1996年后该算法被证实存在弱点,可以被加以破解,对于需要高度安全性的数据,专家一般建议改用其他算法,如SHA-2。2004年,证实MD5算法无法防止碰撞(collision),因此不适用于安全性认证,如SSL公开密钥认证或是数字签名等用途。

为啥要使用MD5这个东西?

原因很简单,一来加密文件,比如像百度云盘那种大企业,就使用MD5把文件加密一串字母,然后你上传的文件MD5和别人的一样就会视为一个文件,最后分享成一个链接,这样就有助于节省空间
另外你只有改变文件大小或者类型还有其它的,才会让文件的MD5改变,不然是无法改变MD5的

iAPP下的文件MD5加密代码

代码如下

ug(4,"text",lj)  //获取文本框

t(){
  //文件路径
  fdir(lj,path)  //文本框变量lj
  //获取md5值
  javanew(file,"java.io.File","String",path)
  javanew(is,"java.io.FileInputStream","java.io.File",file)
  java(md,null,"java.security.MessageDigest.getInstance","String","MD5")
  cls("byte",c)
  java(bytes,null,"java.lang.reflect.Array.newInstance","java.lang.Class",c,"int",1024)
  java(length,is,"java.io.InputStream.read","byte[]",bytes,"int",0,"int",1024)
  w(length>=0){
    java(null,md,"java.security.MessageDigest.update","byte[]",bytes,"int",0,"int",length)
    java(length,is,"java.io.InputStream.read","byte[]",bytes,"int",0,"int",1024)
  }
  java(dig,md,"java.security.MessageDigest.digest")
  javanew(big,"java.math.BigInteger","int",1,"byte[]",dig)
  java(value,big,"java.math.BigInteger.toString","int",16)
  ufnsui()
  {
    us(3,"text",value)
  }
}

这个用处还是蛮大的

关于我的MD5加密

另外,我也有用到MD5这个东西,比如本博客的所有图片都被我转到了本地,而且还用了MD5加密了的
MD5加密图片
对此,我还有一个专门使用ND5加密的一个API接口

加密接口:

https://cdn.yvu.cc/api/md/md5.php?act=md5加密&md5=内容

内容那里填写文本

解密接口:

https://cdn.yvu.cc/api/md/md5.php?act=md5解密&md5=内容

内容那里填写MD5加密后的字母

消息盒子
# 您有1条未读消息 #
# 您需要首次评论以获取消息 #
# 您需要首次评论以获取消息 #

只显示最新10条未读和已读信息