MD5現在是用來作為一種數字簽名算法,即A向B發送數據m,為了讓B確信數據是A送來的並且沒有被篡改於是A就是用hash算法將數據散列一並發送給 B。B接收到文件以后也用相同的hash算法校驗數據是否被修改。主要是防止數據被修改的。MD5值的重復就是所謂的碰撞。
獲取文件的MD5碼
System.out.println(DigestUtils.md5Hex(new FileInputStream(new File("C:/ttt/new1328505655521"))));
獲取字符串MD5碼
System.out.println(DigestUtils.md5Hex(string));
linux 查看文件md5值命令
md5sum Dockerfile
上述測試引用的文件來源:
commons-codec包可以從apache下載: http://commons.apache.org/codec/download_codec.cgi