[英]Comparing MD5 strings
我有一個java代碼,我發送md5已經通過套接字在另一邊接收。 我輸入一個密碼作為輸入並創建自己的md5來檢查通過套接字收到的md5進行身份驗證。
兩個md5字符串都具有相同的字節模式,但是當我對兩個md5模式進行相等性測試時,String.equals()返回false。 這怎么可能 ?。 如果有人知道可能出錯的地方,請幫忙嗎?
MD5是一個byte[]
。 它的表示通常是十六進制字符串。 要看的東西:
new String(bytes)
。 這使用默認編碼,該編碼因機器而異,並且編碼可能不支持某些字節值。 但你不應該比較表示。 你應該比較字節: Arrays.equals(ar1, ar2)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.