成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

base64編碼原理的示例分析

這篇文章將為大家詳細(xì)講解有關(guān)base64編碼原理的示例分析,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

北川羌族ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書(shū)未來(lái)市場(chǎng)廣闊!成為創(chuàng)新互聯(lián)的ssl證書(shū)銷售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18980820575(備注:SSL證書(shū)合作)期待與您的合作!

base64編碼原理

最近在做將文件轉(zhuǎn)成base64編碼,并保存在文件中。編碼后的文件比編碼前的文件大1/3。于是研究了一下base64編碼的原理。

base64編碼的由來(lái)

我們?cè)谕ㄟ^(guò)網(wǎng)絡(luò)傳輸文件時(shí),并不是所有的字節(jié)都可以傳輸?shù)?。如我們?cè)诎l(fā)送郵件時(shí),只支持可見(jiàn)字符的傳送,像ASCII碼的控制字符不能通過(guò)郵件發(fā)送;圖片的二進(jìn)制流并不是每個(gè)字節(jié)都是可見(jiàn)字符。

這時(shí)候我們需要把不可見(jiàn)字符轉(zhuǎn)換為可見(jiàn)字符。于是就有了base64編碼,Base64就是一種基于64個(gè)可打印字符來(lái)表示二進(jìn)制數(shù)據(jù)的表示方法。

base64編碼原理

 看一下Base64的索引表,字符選用了"A-Z、a-z、0-9、+、/" 64個(gè)可打印字符。數(shù)值代表字符的索引,這個(gè)是標(biāo)準(zhǔn)Base64協(xié)議規(guī)定的,不能更改。64個(gè)字符用6個(gè)bit位就可以全部表示,一個(gè)字節(jié)有8個(gè)bit位,剩下兩個(gè)bit就浪費(fèi)掉了,這樣就不得不犧牲一部分空間了。這里需要弄明白的就是一個(gè)Base64字符是8個(gè)bit,但是有效部分只有右邊的6個(gè)bit,左邊兩個(gè)永遠(yuǎn)是0。

base64編碼原理的示例分析

 如何將字符轉(zhuǎn)換為base64編碼,首先我們來(lái)看個(gè)例子,更容易理解

base64編碼原理的示例分析

 首先我們將字符轉(zhuǎn)換為二進(jìn)制,將二進(jìn)制數(shù)據(jù)分割,每6位分割成base64的有效為,然后在前補(bǔ)0,將補(bǔ)0 后的8位二進(jìn)制轉(zhuǎn)為十進(jìn)制數(shù)據(jù),十進(jìn)制數(shù)據(jù)就是base64編碼的索引,根據(jù)索引查找對(duì)應(yīng)的編碼即可。

8和6的最小公倍數(shù)是24,也就是說(shuō)3個(gè)傳統(tǒng)字節(jié)可以由4個(gè)Base64字符來(lái)表示,保證有效位數(shù)是一樣的,這樣就多了1/3的字節(jié)數(shù)來(lái)彌補(bǔ)Base64只有6個(gè)有效bit的不足。因此文件的大小也增加1/3。

原則是Base64字符的最小單位是四個(gè)字符一組,那這才兩個(gè)字符,后邊補(bǔ)兩個(gè)"="吧。其實(shí)不用"="也不耽誤解碼,之所以用"=",可能是考慮到多段編碼后的Base64字符串拼起來(lái)也不會(huì)引起混淆。由此可見(jiàn)Base64字符串只可能最后出現(xiàn)一個(gè)或兩個(gè)"=",中間是不可能出現(xiàn)"="的。

關(guān)于“base64編碼原理的示例分析”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

當(dāng)前標(biāo)題:base64編碼原理的示例分析
網(wǎng)頁(yè)網(wǎng)址:http://jinyejixie.com/article26/ipjpjg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)、品牌網(wǎng)站制作域名注冊(cè)、做網(wǎng)站、動(dòng)態(tài)網(wǎng)站、網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司
临颍县| 邹平县| 东宁县| 江城| 平昌县| 左权县| 余庆县| 新和县| 临江市| 密云县| 旌德县| 含山县| 繁昌县| 海兴县| 临江市| 门源| 子洲县| 金川县| 依兰县| 禄劝| 德庆县| 乳山市| 贡嘎县| 卢氏县| 兴海县| 金湖县| 临湘市| 巴楚县| 嘉定区| 临颍县| 贵定县| 梨树县| 万盛区| 山阳县| 汉中市| 康乐县| 吴桥县| 调兵山市| 巴南区| 江西省| 赣州市|