數(shù)據(jù)庫加密算法及其實現(xiàn)
目前,數(shù)據(jù)加密常用的算法為對稱算法,以DES、IDEA為代表,加密、解密采用相同的密鑰,其優(yōu)點是加密、解密速度快,缺點是密鑰分發(fā)困難。實際應(yīng)用中往往采用非對稱算法協(xié)助分發(fā)對稱算法密鑰的策略,其中以RSA加密算法最為常用。RSA加密算法是PKI的基礎(chǔ)核心,由于PKI的市場優(yōu)勢.選擇RSA算法,系統(tǒng)部署會相對容易。
通過以上對加密算法的簡單介紹,利用DES和RSA加密算法可以很好地解決大多數(shù)數(shù)據(jù)庫系統(tǒng)的加密要求。
DES加密算法及其實現(xiàn)
DES使用相同的算法對數(shù)據(jù)進行加密和解密,所用的加密密鑰和解密密鍘也足相同的。而且DES加密算法適合于大量數(shù)據(jù)的加密,所以數(shù)據(jù)庫數(shù)數(shù)據(jù)加密一般選擇DES加密算法。
該算法的輸入是64 hit的明文,在56 bit的密釧控制下,通過初始換位fP變成TO= IP (T).再對TO經(jīng)過16層的加密變換,最后通過逆初始變換得到64 bit的密文。密文的每一位都是明文的每一位和密鑰的每一位聯(lián)合確定的。DES的加密過程可以分為加密處理、加密變換以及子密鑰的生成和解密等部分。
RSA加密算法及其實現(xiàn)
RSA加密算法既能用于數(shù)據(jù)加密,也能用于數(shù)字簽名.RSA的理論依據(jù)為尋找兩個大素數(shù)比較簡單,而將它們的乘積分解開則非常困難。
在RSA加密算法中,包含兩個密鑰:加密密鑰(e,n)和解密密鑰 (d,n),在加密的時候,先把明文轉(zhuǎn)換成(0,n一1)范圍內(nèi)的整數(shù)M。當明文較長時,先分隔成適當?shù)慕M,然后再進行變換。
RSA加密算法的優(yōu)點是密鑰空間大;缺點是加密速度慢。如果RSA和DES結(jié)合使用,則正好彌補RSA的缺點。即DES用于明文加密;RSA用于密鑰的加密。由于DES加密速度快,適合加密大量的數(shù)據(jù),主要應(yīng)用在計算機網(wǎng)絡(luò)通信、電子資金傳送系統(tǒng)、用戶識別和用戶文件的保護;而RSA可解決DES密鑰的分配和管理問題。
小知識之數(shù)據(jù)庫加密:
對數(shù)據(jù)庫中數(shù)據(jù)加密是為增強普通關(guān)系數(shù)據(jù)庫管理系統(tǒng)的安全性,提供一個安全適用的數(shù)據(jù)庫加密平臺,對數(shù)據(jù)庫存儲的內(nèi)容實施有效保護。它通過數(shù)據(jù)庫存儲加密等安全方法實現(xiàn)了數(shù)據(jù)庫數(shù)據(jù)存儲保密和完整性要求,使得數(shù)據(jù)庫以密文方式存儲并在密態(tài)方式下工作,確保了數(shù)據(jù)安全。










