base64編碼原理是將一個8位子節序列拆散為6位的片段,並為每個6位的片段分配一個字符,這64個字符為小寫字母【a-z】,大寫字母【A-Z 】,數字【0-9】,符號【 】、【/】。
base64編碼原理是:
Base64編碼將一個8位元子節序列拆散為6位元的片段,並為每個6位的片段分配一個字符,這64個字符----小寫字母a-z、大寫字母A-Z、數字0-9、符號" "、"/" , 看到這裡知道64是什麼意思了吧,是代表64個字元,其實還有一個墊字的"=",實際上是65個字元。
Base64法則如下:
第一步,將每三個位元組當作一組,一共是24個二進位位元。
第二步,將這24個二進位位元分成四組,每個組有6個二進位位元。
第三步,在每組前面加兩個00,擴展成32個二進位位,即四個位元組。所以base64編碼字串大約比原來大了33%
例子
#舉一個具體的實例,示範英文單字Man如何轉成Base64編碼。
第一步,"M"、"a"、"n"的ASCII值分別是77、97、110,對應的二進位值是01001101 、01100001、01101110,將它們連成一個24位元的二進位字串010011010110000101101110。
第二步,將這個24位元的二進位字串分成4組,每組6個二進位位元:010011、010110、000101、101110。
第三步,在每組前面加兩個00,擴展成32個二進位位,即四個位元組:00010011、00010110、00000101、00101110。它們的十進制值分別是19、22、5、46。
第四步,根據下圖,得到每個值對應Base64編碼,即T、W、F、u。
因此,Man的Base64編碼就是TWFu。
以上是base64編碼原理是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!