A. 網站密碼除了md5加密還有什麼加密
md5加密是比較通用的加密演算法
如果你想要可逆的加密演算法的話,可以用隨機數做種子來寫,一般可逆的演算法都是按自己的想法去寫的,最簡單的就是字母的移位,ASCII碼加密等等。
B. 與md5 一樣給用於資料庫數據加密的 還有什麼 免費付費的都可以 最好有網址
1. MD5加密,常用於加密用戶名密碼,當用戶驗證時。} }2. SHA加密,與MD5相似的用法,只是兩者的演算法不同。} }3. RSA加密,RAS加密允許解密。常用於文本內容的加密。
1. MD5加密,常用於加密用戶名密碼,當用戶驗證時。
protected byte[] encrypt(byte[] obj) ...{
try ...{
MessageDigest md5 = MessageDigest.getInstance("MD5");
md5.update(obj);
return md5.digest();
} catch (NoSuchAlgorithmException e) ...{
e.printStackTrace();
}
}
2. SHA加密,與MD5相似的用法,只是兩者的演算法不同。
protected byte[] encrypt(byte[] obj) ...{
try ...{
MessageDigest sha = MessageDigest.getInstance("SHA");
sha.update(obj);
return sha.digest();
} catch (NoSuchAlgorithmException e) ...{
e.printStackTrace();
}
}
3. RSA加密,RAS加密允許解密。常用於文本內容的加密。
import java.security.KeyPair;
import java.security.KeyPairGenerator;
import java.security.interfaces.RSAPrivateKey;
import java.security.interfaces.RSAPublicKey;
import javax.crypto.Cipher;/** *//**
* RSAEncrypt
*
* @author maqujun
* @see
*/
public class RSAEncrypt ...{
/** *//**
* Main method for RSAEncrypt.
* @param args
*/
public static void main(String[] args) ...{
try ...{
RSAEncrypt encrypt = new RSAEncrypt();
String encryptText = "encryptText";
KeyPairGenerator keyPairGen = KeyPairGenerator.getInstance("RSA");
keyPairGen.initialize(1024);
KeyPair keyPair = keyPairGen.generateKeyPair();
// Generate keys
RSAPrivateKey privateKey = (RSAPrivateKey) keyPair.getPrivate();
RSAPublicKey publicKey = (RSAPublicKey) keyPair.getPublic();
byte[] e = encrypt.encrypt(publicKey, encryptText.getBytes());
byte[] de = encrypt.decrypt(privateKey,e);
System.out.println(encrypt.bytesToString(e));
System.out.println(encrypt.bytesToString(de));
} catch (Exception e) ...{
e.printStackTrace();
}
}
/** *//**
* Change byte array to String.
* @return byte[]
*/
protected String bytesToString(byte[] encrytpByte) ...{
String result = "";
for (Byte bytes : encrytpByte) ...{
result += (char) bytes.intValue();
}
return result;
}
/** *//**
* Encrypt String.
* @return byte[]
*/
protected byte[] encrypt(RSAPublicKey publicKey, byte[] obj) ...{
if (publicKey != null) ...{
try ...{
Cipher cipher = Cipher.getInstance("RSA");
cipher.init(Cipher.ENCRYPT_MODE, publicKey);
return cipher.doFinal(obj);
} catch (Exception e) ...{
e.printStackTrace();
}
}
return null;
}
/** *//**
* Basic decrypt method
* @return byte[]
*/
protected byte[] decrypt(RSAPrivateKey privateKey, byte[] obj) ...{
if (privateKey != null) ...{
try ...{
Cipher cipher = Cipher.getInstance("RSA");
cipher.init(Cipher.DECRYPT_MODE, privateKey);
return cipher.doFinal(obj);
} catch (Exception e) ...{
e.printStackTrace();
}
}
return null;
}
}
以上是針對java數據加密的,其實ASP中常用到的都是MD5,偶爾有人用哈希加密(SHA-1),其它的就更少人用了。不過恰好我這里有MD5和哈希加密的原文件,如果想用我可以給你傳過去。
C. 跟md5加密解密差不多的東西
不是每個加密都用固定演算法加密的。
有些是人自己編寫的演算法進行的加密。
D. 除了MD5之外,32位的加密演算法有那些
首先指出
MD5
嚴格意義上叫
"散列演算法"
而不是
"加密演算法"
散列和加密的區別是散列是只能正著算不能反著算,也就是理論上只能加密不能解密的(除了一個一個亂猜,然後猜中了.....媒體喜歡炒作某博士教授又破解了MD5.其實就是炒作一下,媒體都不知道他到底做了什麼,其實就是找到個辦法在猜的時候少一些試,比如試一個就知道有另外兩三個不用試了直接試另外的)
舉個例子,
你輸入一句話,
然後我用一種演算法,把你這句話每個字的筆畫數加起來,最後得到一個數字比如500,
這就是結果,你拿這個500是無法還原出原來那句話的(除非你亂猜猜中了)
32位密鑰的加密強度太低了,
所有這種強度的加密都不夠安全.
DES演算法,3DES演算法這些是最常用的
E. 網站後台是大多是MD5加密,還有其他的加密嗎
數據加密可以有好多種,一般來說分為兩大類來說就是對稱加密和非對稱加密。而你說的md5卻不是這兩種,md5是一種不可逆的加密演算法。就是只能加密,不能解密。
你所謂的破解,可能是將密碼字典,經md5加密後的結果進行了資料庫保存。拿一個加密後的數據在資料庫中進行比對,如果找到匹配的,就可以找到相應的加密前的字元串。但如果碰到資料庫中沒有數據,就是資料庫中沒有收錄某字元串加密後的字元數據話,就找不到了。
所以說你的這種情況可能就是這個原因。
F. 請問除了MD5之外,32位的加密演算法有那些
首先指出 MD5 嚴格意義上叫 "散列演算法" 而不是 "加密演算法" 散列和加密的區別是散列是只能正著算不能反著算,也就是理論上只能加密不能解密的(除了一個一個亂猜,然後猜中了.....媒體喜歡炒作某博士教授又破解了MD5.其實就是炒作一下,媒體都不知道他到底做了什麼,其實就是找到個辦法在猜的時候少一些試,比如試一個就知道有另外兩三個不用試了直接試另外的)
舉個例子, 你輸入一句話, 然後我用一種演算法,把你這句話每個字的筆畫數加起來,最後得到一個數字比如500, 這就是結果,你拿這個500是無法還原出原來那句話的(除非你亂猜猜中了)
G. 這個是什麼加密方式
幾種加密方式
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演算法有著更高的速度和資源使用效率,安全級別也較之更高了,被稱為下一代加密標准
H. 什麼演算法是不可逆加密 像 MD5一樣的演算法。。。。。。 不過 有點抽象 能
一個數除以 另一個數再把余數丟掉,得到商,從最後得到的商沒有辦法算出被除數。
I. 除了md5還有什麼是40位的加密
MD5加密後產生的是32位的字元串