因?yàn)槭窃谙鄬?duì)開放的運(yùn)行環(huán)境中進(jìn)行XML網(wǎng)站信息數(shù)據(jù)的傳輸與交換,確保數(shù)據(jù)的安全可靠是XML能夠被成熟地應(yīng)用到網(wǎng)站開發(fā)的必要條件。為了解決實(shí)際應(yīng)用中的安全問題,推動(dòng)XML的成熟使用與發(fā)展,確保網(wǎng)絡(luò)環(huán)境安全可信任,國際標(biāo)準(zhǔn)化組織W3C提出了一系列安全加密技術(shù),主要過程是將XML加密,并將其存儲(chǔ)為XML解密器可解的格式。
傳統(tǒng)字符加密算法常用的有MD5加密算法,能夠?qū)ψ址妥址M(jìn)行加密,在企業(yè)及商用網(wǎng)站上經(jīng)常使用,應(yīng)用到XML缺點(diǎn)是靈活性不足,不能對(duì)XML整體或單個(gè)節(jié)點(diǎn)元素進(jìn)行加密。而XML加密相對(duì)于MD5傳統(tǒng)加密有突出的優(yōu)勢,可以對(duì)整個(gè)文檔的根節(jié)點(diǎn),或者某個(gè)子元素均可以進(jìn)行加密。
所謂加密就是利用加密算法將需要保密的內(nèi)容轉(zhuǎn)換為不可識(shí)別的亂碼進(jìn)行傳送,到達(dá)目的后使用解密算法將數(shù)據(jù)還原解密。通常一個(gè)加密過程包含兩個(gè)必要元素:算法與密鑰。算法與密鑰兩者緊密結(jié)合,缺一不可。加密過程將明文與密鑰(一般是數(shù)字或字母)按照特定的算法轉(zhuǎn)換成密文。通常,將XML加密技術(shù)分成對(duì)稱密鑰加密和非對(duì)稱密鑰加密。