Base64 加密之中文亂碼


Base64編碼將二進制數據按照每三個字節轉換成四個字節可讀字符,編碼后的字符長度大約為136.1%。字符范圍為 A-Z  a-z  0-9  \  +。但編碼后的字符串不太適合使用URL傳輸,中文加密后的亂碼也多是因為這個原因引起:放在url中傳輸時+號會被替換成空格;並且每76個字符都會添加一個換行"\n",這個換行符合會丟失。

例如:

哈哈哈哈哈哈。。。。

哈哈哈哈哈哈。。。。

哈哈哈哈哈哈。。。。

 會被編碼為:

uf65/rn+uf65/rn+oaOho6GjDQoNCrn+uf65/rn+uf65/qGjoaOhow0KDQq5/rn+uf65/rn+uf6h\no6GjoaM=

 放在URL中傳輸時會變成:

uf65/rn uf65/rn oaOho6GjDQoNCrn uf65/rn uf65/qGjoaOhow0KDQq5/rn uf65/rn uf6h
o6GjoaM=

 解析肯定會出問題。

所以在傳輸和解密時要做如下處理:

1.去掉\n

2.替換空格為+ 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM