Base64 加密之中文亂碼

2021-07-10 04:48:02 字數 537 閱讀 5799

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.替換空格為+

Base64加密解密

public class base64 對應asicc字元的位置 public static string base64encode string str c2 str i if i len c3 str i out base64encodechars c1 2 out base64encodech...

base64加密 例子

12349 50 51 31 32 33 00110001 00110010 00110011 001100 010011 001000 110011 00001100 00010011 00001000 00110011 12 19 8 51 mtiz base64編碼說明 base64編碼要求把...

Base64 加密 解密

1 原理 轉碼過程例子 3 8 4 6 記憶體1個字元佔8位 轉前 s 1 3 先轉成ascii 對應 115 49 51 2進製 01110011 00110001 00110011 6個一組 4組 011100110011000100110011 然後才有後面的 011100 110011 00...