⑴ 這個是什麼加密方式
幾種加密方式
1 Base64加密方式(可逆)
Base64中的可列印字元包括字母A-Z/a-z/數組0-9/ 加號』+』斜杠』/』 這樣共有62個字元
Base64 ios7之後加入系統庫
2 MD5加密
Message Digest Algorithm MD5(中文名為消息摘要演算法第五版)為計算機安全領域廣泛使用的一種散列函數,用以提供消息的完整性保護
是計算機廣泛使用的雜湊演算法之一(又譯摘要演算法、哈希演算法),主流編程語言普遍已有MD5實現。
根據輸出值,不能得到原始的明文,即其過程不可逆
MD5演算法具有以下特點:
1、壓縮性:任意長度的數據,算出的MD5值長度都是固定的。
2、容易計算:從原數據計算出MD5值很容易。
3、抗修改性:對原數據進行任何改動,哪怕只修改1個位元組,所得到的MD5值都有很大區別。
4、強抗碰撞:已知原數據和其MD5值,想找到一個具有相同MD5值的數據(即偽造數據)是非常困難的。
MD5的作用是讓大容量信息在用數字簽名軟體簽署私人密鑰前被」壓縮"成一種保密的格式(就是把一個任意長度的位元組串變換成一定長的十六進制數字串)。除了MD5以外,其中比較有名的還有sha-1、RIPEMD以及Haval等。
MD5加鹽
3 鑰匙串加密方式
iCloud鑰匙串,蘋果給我們提供的密碼保存的解決方案,iOS7之後有的
存沙盒:
1、如果手機越獄,密碼容易被竊取。
2、當軟體更新時,沙盒裡的內容是不被刪除的。但是,如果將軟體卸載後重裝,沙盒裡的數據就沒有了。
3、每個APP的沙盒是相對獨立的,密碼無法共用。
存鑰匙串里:
1、蘋果提供的安全方案,rsa加密,相對安全。
2、無論軟體更新或刪除,密碼都存在,都可以自動登錄。
3、同一公司的APP密碼是可以共用的。
4 對稱加密演算法
優點:演算法公開、計算量小、加密速度快、加密效率高、可逆
缺點:雙方使用相同鑰匙,安全性得不到保證
現狀:對稱加密的速度比公鑰加密快很多,在很多場合都需要對稱加密,
演算法: 在對稱加密演算法中常用的演算法有:DES、3DES、TDEA、Blowfish、RC2、RC4、RC5、IDEA、SKIPJACK、AES等。不同演算法的實現機制不同,可參考對應演算法的詳細資料
相較於DES和3DES演算法而言,AES演算法有著更高的速度和資源使用效率,安全級別也較之更高了,被稱為下一代加密標准
⑵ 浠涔堟槸md5鍔犲瘑
浠庝簨緗戠粶瀹夊叏榪欎竴琛屼笟鐨勪漢閮界煡閬擄紝鎴戜滑鍋氭笚閫忔祴璇曟椂緇忓父浼氶亣鍒伴渶瑕佽В瀵嗙殑Md5瀵嗘枃銆備負浜嗚兘澶熸彁鍗囨晥鐜囷紝鎴戜滑鍙浠ュ湪緗戜笂鎵句竴浜涜兘澶熷湪綰縨d5瑙e瘑鐨勭綉絝欍備笅闈㈢粰澶у跺垎浜鍥藉唴甯哥敤鐨勫嚑涓鍏嶈垂MD5鍦ㄧ嚎瑙e瘑緗戠珯銆
涓銆丮D5鍦ㄧ嚎鍔犲瘑瑙e瘑
閽堝筸d5絳夊叏鐞冮氱敤鍏寮鐨勫姞瀵嗙畻娉曡繘琛屽弽鍚戞煡璇錛屽緩絝嬩簡瀵嗘枃瀵瑰簲鏌ヨ㈡暟鎹搴擄紝MD5鍔犲瘑瑙e瘑騫沖彴鍙鏌ヨ㈠緢澶氬嶆潅瀵嗘枃錛屾敮鎸佸氱嶇畻娉曪紝瀹炴椂鏌ヨ㈣板綍瓚呰繃24涓囦嚎鏉★紝鍏卞崰鐢160T紜鐩橈紝鎴愬姛鐜95%浠ヤ笂銆傝繖涓緗戠珯鍥藉唴寰堝氫漢鍦ㄤ嬌鐢錛屽洜涓哄畠鏄鍏嶈垂鐨勩傚傛灉鍦╩d5涓婅В瀵嗕笉浜嗙殑瀵嗘枃鍦ㄥ叾浠栬В瀹㈢綉絝欎篃鍩烘湰娌℃垙浜嗐
⑶ asp中用md5演算法得到的加密數據如何解密!麻煩寫個簡單的代碼演示下!
MD5 是破壞性加密,也就是說是無法由密文直接解密的。
詳細說明如下:
MD5是輸入不定長度訊息,輸出固定長度128-bits的演演算法。經過程式流程,生成四個32位元資料,最後聯合起來成為一個128-bits雜湊。基本方式為,求余、取余、調整長度、與連結變數進行迴圈運算。得出結果。一般128位元的MD5雜湊被表示為32位元十六進制數位。以下是一個43位長ASCII字母列的MD5雜湊:
MD5("The quick brown fox jumps over the lazy dog") =
即使在原文中作一個小變化(比如用c取代d)其雜湊也會發生巨大的變化:
MD5("The quick brown fox jumps over the lazy cog") =
而空文的雜湊為:
MD5("") =
MD5的弱點:
MD5較老,雜湊長度通常為128位元,隨著電腦運算能力提高,找到「碰撞」是可能的。因此,在安全要求高的場合不使用MD5。
2004年,王小雲證明MD5數位簽名演演算法可以產生碰撞。
2007年,Marc Stevens,Arjen K. Lenstra和Benne de Weger進一步指出透過偽造軟體簽名,可重復性攻擊MD5演演算法。研究者使用字首碰撞法(chosen-prefix collision),使程式前端包含惡意程式,利用後面的空間添上垃圾代碼湊出同樣的MD5 Hash值。
2007年,荷蘭埃因霍芬技術大學科學家成功把2個執行檔進行了MD5碰撞,使得這兩個執行結果不同的程式被計算出同一個MD5。
2008年12月一組科研人員透過MD5碰撞成功生成了偽造的SSL證書,這使得在https協議中伺服器可以偽造一些根CA的簽名。
⑷ MD5加密和哈希演算法是什麼
MD5(Message-Digest Algorithm 5,信息-摘要演算法 5),用於確保信息傳輸完整一致。是計算機廣泛使用的雜湊演算法之一(又譯摘要演算法、哈希演算法、Hash演算法),主流編程語言普遍已有MD5實現。將數據(如英文字元串,漢字,文件等)運算為另一固定長度值是雜湊演算法的基礎原理,MD5的前身有MD2、MD3和MD4。 哈希演算法將任意長度的二進制值映射為固定長度的較小二進制值,這個小的二進制值稱為哈希值。哈希值是一段數據唯一且極其緊湊的數值表示形式。如果散列一段明文而且哪怕只更改該段落的一個字母,隨後的哈希都將產生不同的值。要找到散列為同一個值的兩個不同的輸入,在計算上是不可能的,所以數據的哈希值可以檢驗數據的完整性。
哈希表是根據設定的哈希函數H(key)和處理沖突方法將一組關鍵字映象到一個有限的地址區間上,並以關鍵字在地址區間中的象作為記錄在表中的存儲位置,這種表稱為哈希表或散列,所得存儲位置稱為哈希地址或散列地址。作為線性數據結構與表格和隊列等相比,哈希表無疑是查找速度比較快的一種。