base64編譯碼
1英文本元=1位元組=8位
base64編碼原理:將要編碼的二進位制(字串、等都可以轉換成二進位制格式表示)把3個8位位元組以4個6位的位元組表示,然後把每個6位位元組都轉換成乙個單獨的數字並對映到base64碼表中的乙個字元。如果最後剩下的位元組不足3個,則在後面補0,補0轉換的字元用「=」表示,故編碼後輸出的字串末尾可能會有乙個或兩個「=」。
base64碼表如下:
base64編譯碼:
public class base
public static string decode(string str) throws exception
}
呼叫:
string encode = null;
try catch (exception e1)
system.out.println("zyf encode:" + encode);
if (encode != null) catch (exception e)
}
輸出結果:
zyf encode:sgvsbg8gv29ybgq=
zyf decode:hello world
編碼過程:
binary dec base64
010010 18 s
000110 6 g
010101 21 v
101100 44 s
011011 27 b
000110 6 g
111100 60 8
100000 32 g
010101 29 d
110110 54 2
111101 61 9
110010 50 y
011011 27 b
000110 6 g
010000 16 q
aes加解密
public class aes
public static string decrypt(string ssrc, string skey) throws exception
}
呼叫:
// key的長度必須是16位或24位或32位
string key = "1234567812345678";
string encrypt = null;
try catch (exception e)
system.out.println("zyf encrypt:" + encrypt);
if (encrypt != null) catch (exception e)
system.out.println("zyf decrypt:" + decrypt);
}
輸出結果:
zyf encrypt:r/pscgyws4qu7oclzcteobpokrkvkxkr8ss2h9eo3is=
zyf decrypt:key=name;value=zyf
為了防止反編譯key被破解,key值可以放到c**中。 base64編譯碼原理
base64 base64的編碼都是按字串長度,以每3個8bit的字元為一組,然後針對每組,首先獲取每個字元的ascii編碼,然後將ascii編碼轉換成8bit的二進位制,得到一組3 8 24bit的位元組 然後再將這24bit劃分為4個6bit的位元組,並在每個6bit的位元組前面都填兩個高位0,...
Base64編碼解碼原理
一.base64編碼由來 為什麼會有base64編碼呢?因為有些網路傳送渠道並不支援所有的位元組,例如傳統的郵件只支援可見字元的傳送,像ascii碼的控制字元就不能通過郵件傳送。這樣用途就受到了很大的限制,比如二進位製流的每個位元組不可能全部是可見字元,所以就傳送不了。最好的方法就是在不改變傳統協議...
編譯碼 關於base64編碼的原理及實現
自 base64 base64的編碼都是按字串長度,以每3個8bit的字元為一組,然後針對每組,首先獲取每個字元的ascii編碼,然後將ascii編碼轉換成8bit的二進位制,得到一組3 8 24bit的位元組 然後再將這24bit劃分為4個6bit的位元組,並在每個6bit的位元組前面都填兩個高位...