av激情亚洲男人的天堂国语,日韩欧美精品一中文字幕,无码av一区二区三区无码,国产又色又爽又刺激的a片,国产又色又爽又刺激的a片

一篇文章徹底搞懂Base64編碼原理

 開(kāi)始

在阜新等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站 網(wǎng)站設(shè)計(jì)制作定制網(wǎng)站建設(shè),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站設(shè)計(jì),全網(wǎng)整合營(yíng)銷推廣,成都外貿(mào)網(wǎng)站建設(shè),阜新網(wǎng)站建設(shè)費(fèi)用合理。

在互聯(lián)網(wǎng)中的每一刻,你可能都在享受著B(niǎo)ase64帶來(lái)的便捷,但對(duì)于Base64的基礎(chǔ)原理又了解多少?今天這篇文章帶領(lǐng)大家了解一下Base64的底層實(shí)現(xiàn)。

Base64是什么東東呢?

Base64編碼是網(wǎng)絡(luò)上常見(jiàn)的用于傳輸8bit字節(jié)數(shù)據(jù)的一種編碼方式之一,所以可以依據(jù)概括:它是一種編碼方式,記住它不是加密的方式,它沒(méi)有秘鑰的概念,任何人拿到數(shù)據(jù)都能解析出來(lái)。它只是一種編碼方式!!

到底哪些地方會(huì)使用?

我們?cè)趨?shù)傳輸?shù)倪^(guò)程中肯定遇到過(guò)這樣一種情況:使用全英文的沒(méi)問(wèn)題,但一旦涉及到中文就會(huì)出現(xiàn)亂碼情況。與此類似,網(wǎng)絡(luò)上傳輸?shù)淖址⒉蝗强纱蛴〉淖址热缍M(jìn)制文件、圖片等。Base64的出現(xiàn)就是為了解決此問(wèn)題,它是基于64個(gè)可打印的字符來(lái)表示二進(jìn)制的數(shù)據(jù)的一種方法。

電子郵件剛問(wèn)世的時(shí)候,只能傳輸英文,但后來(lái)隨著用戶的增加,中文、日文等文字的用戶也有需求,但這些字符并不能被服務(wù)器或網(wǎng)關(guān)有效處理,因此Base64就登場(chǎng)了。隨之,Base64在URL、Cookie、網(wǎng)頁(yè)傳輸少量二進(jìn)制文件中也有相應(yīng)的使用。

實(shí)現(xiàn)原理

它的來(lái)龍去脈我們是知道了,但它的原理我們還不知道,那下面我們就來(lái)徹底搞懂它。

Base64編碼將一個(gè)8位子節(jié)序列拆散為6位的片段,而且這每個(gè)6位的片段都會(huì)被分配一個(gè)字符,那這個(gè)是個(gè)什么字符呢?其實(shí)它是base64字母表中的64個(gè)字符之一,所以顧名思義base64了。而這64個(gè)字符可是有講究的,是選擇了最常用而且兼容性最好的64個(gè)字符。所以可以算出base64編碼后的字符串大約比編碼前大了33%,因?yàn)橛?位來(lái)表示6位。下面的詳細(xì)的例子,大家來(lái)感受下。

Base64還有幾個(gè)規(guī)則如下:

  • ①.3字符變?yōu)?字符。
  • ②每76個(gè)字符增加一個(gè)換行符。
  • ③.結(jié)束符也要編碼。

例子

加入編碼前的數(shù)據(jù)是“Ow!”,那編碼之后是4個(gè)字符的base64編碼值“T3ch”。下面是具體的轉(zhuǎn)換過(guò)程。

1, 字符串"Ow!"被拆分成3個(gè)8位的字節(jié)(0x4F、0x77、0x21)。看下圖:

2, 這3字節(jié)構(gòu)成了一個(gè)24位的二進(jìn)制 01001111 ,01110111 ,00100001??聪聢D:

3, 這些為被劃分為一些6位的序列010011、110111、011100、1000001??聪聢D:

4, 每6位值都表示了從0~63數(shù)值,在base64字母表中的都有對(duì)應(yīng)的字符。所以查表轉(zhuǎn)換得出是4字符的字符串“T3ch”。如下圖所示轉(zhuǎn)換表。

整個(gè)過(guò)程就over了,就是這么簡(jiǎn)單,大家理解了嗎?

總結(jié)

大多數(shù)編碼都是由字符串轉(zhuǎn)化成二進(jìn)制的過(guò)程,而B(niǎo)ase64的編碼則是從二進(jìn)制轉(zhuǎn)換為字符串。與常規(guī)恰恰相反,

Base64編碼主要用在傳輸、存儲(chǔ)、表示二進(jìn)制領(lǐng)域,不能算得上加密,只是無(wú)法直接看到明文。也可以通過(guò)打亂Base64編碼來(lái)進(jìn)行加密。

中文有多種編碼(比如:utf-8、gb2312、gbk等),不同編碼對(duì)應(yīng)Base64編碼結(jié)果都不一樣。


文章題目:一篇文章徹底搞懂Base64編碼原理
當(dāng)前URL:http://uogjgqi.cn/article/djegheh.html
掃二維碼與項(xiàng)目經(jīng)理溝通

我們?cè)谖⑿派?4小時(shí)期待你的聲音

解答本文疑問(wèn)/技術(shù)咨詢/運(yùn)營(yíng)咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流