簡(jiǎn)單了解
Base64嚴(yán)格來(lái)說(shuō)并不是一種加密算法,而是一種編碼/解碼的實(shí)現(xiàn)方式.
我們都知道,數(shù)據(jù)在計(jì)算機(jī)網(wǎng)絡(luò)之間是使用字節(jié)流的方式進(jìn)行傳遞的,所有的信息都要最終轉(zhuǎn)換為0101的二進(jìn)制,這本身就涉及到編碼,解碼的應(yīng)用.
Base64,顧名思義,是使用了64個(gè)基本的字符來(lái)對(duì)任意數(shù)據(jù)進(jìn)行編碼的一種實(shí)現(xiàn)方式,那既然有Base64,是不是也有Base32,Base16呢? 答案是沒(méi)錯(cuò),有.
下面先看一下Base64的編碼表:
由圖可見(jiàn),Base64使用了26個(gè)字母的大小寫(xiě),也就是52個(gè)字符,再加上10個(gè)數(shù)字和兩個(gè)特殊的"+","/"組成,一共64個(gè)字符,其中最后兩個(gè)字符選取不一定總是這兩個(gè).
java代碼實(shí)現(xiàn)
首先看代碼,然后再細(xì)說(shuō)Base64實(shí)現(xiàn)的原理和應(yīng)用: