Mesebetsi ea BaseCoding ea Base64

Haeba inthanete e le tsela e kholo ea boitsebiso, joale tsela ea imeile ke moferefere o moqotetsane. Likoloi tse nyane feela li ka feta.

Tsamaiso ea tsamaiso ea imeile e etselitsoe bakeng sa temana e hlakileng ea ASCII feela. Ho leka ho romela melaetsa ka lipuo tse ling kapa ho kenya lifaele tse fapaneng ho tšoana le ho kena ka teraka.

Tariki e Khōlō e Tla Pholletsa le Ntoa?

Joale u romela teraka e khōlō joang ka mokoloko o monyane? U tlameha ho e nka likotoana ka lehlakoreng le leng, u tsamaise likotoana ka har'a sefate, 'me u tsosolose teraka ho tloha likarolong tse ling.

Ho etsahala ntho e tšoanang ha o romella sefahleho sa fono ka imeile . Ka mokhoa o tsejoang e le ho kenyelletsa data ea binary o fetoloa ho e ngotsoeng ASCII, e ka tsamaisoang ka imeile ntle le mathata. Ha qetello ea mohoeletsi e fela, boitsebiso bo hlophisitsoe mme file ea pele e tsosolosoa.

Tsela e 'ngoe ea ho kenyelletsa ditshwantsho tse fapaneng e le letšoao le hlakileng la ASCII ke Base64. Ke e 'ngoe ea mekhoa e sebelisoang ke standard MIME ho romela lintlha tse ling ntle le mantsoe a hlakileng .

Base64 ho Pholoso

Ho kopa encoding ea Base64 ho nka li-byte tse tharo, e 'ngoe le e' ngoe e na le li-bits tse robeli, mme e emela e le litlhaku tse 'nè tse hatisitsoeng ka tekanyo ea ASCII. E etsa joalo ka mehato e 'meli.

Mohato oa pele ke ho fetola li-bytes tse tharo ho ea ka linomoro tse 'nè tsa li-bits tse tšeletseng. Sebopeho se seng le se seng se lekanang le se-ASCII se na le likarolo tse supileng. Base64 e sebelisa feela libaka tse 6 (e lekanang le 2 ^ 6 = litlhaku tse 64) ho netefatsa hore data e kentsoeng e ka hatisoa mme e baloa ke batho. Ha ho le ea mong oa batho ba khethehileng ba fumanehang ka ASCII.

Litlhaku tse 64 (ka hona lebitso la Base64) ke litekanyetso tse 10, litlhaku tse 26 tse ka tlaasana, litlhaku tse 26 tse tloaelehileng hammoho le '+' le '/'.

Haeba ka mohlala, li-bytes tse tharo li na le 155, 162 le 233, metsi a lekanang (le a tšosang) ke 100110111010001011101001, e leng eona e lumellanang le litekanyetso tsa 6-bit tse 38, 58, 11 le 41.

Linomoro tsena li fetoloa ho litlhaku tsa ASCII mohato oa bobeli ho sebelisa tafole ea ho qaqisa Base64. Litekanyetso tsa 6-bit tsa mohlala oa rona li fetolela ho latellano ea ASCII "m6Lp".

Mokhoa ona oa mehato e 'meli o sebelisetsoa ho latellana ha li-bytes tse kentsoeng. Ho netefatsa hore data e kentsoeng e ka hatisitsoe ka mokhoa o nepahetseng 'me ha e felle moeli ofe kapa ofe oa lengolo la mela ea poso, litlhaku tse ncha li kenngoa ho boloka bolelele ba line ka tlase ho litlhaku tse 76. Litlhaku tse ncha li ngolisitsoe joaloka dintlha tse ling tsohle.

Ho rarolla Bothata

Qetellong ea ts'ebetso ea ho kopa, re ka 'na ra kena bothateng. Haeba boholo ba dintlha tsa pele ka bytes ke di-multiple tsa tse tharo, tsohle di sebetsa hantle. Haeba ha ho joalo, re ka 'na ra qetella re e-na le li-bytes tse le tse peli kapa tse peli. Bakeng sa encoding e nepahetseng, re hloka hantle ka li-byte tse tharo, leha ho le joalo.

Tharollo ke ho bokella li-bytes tse nang le bohlokoa ba '0' ho theha sehlopha sa 3-byte. Litekanyetso tse peli tsa mofuta ona lia kenngoa haeba re e-na le boitsebiso bo bongata bo bongata, e leng e kenyelletsoang ka li-bytes tse peli tse eketsehileng.

Ha e le hantle, litsela tsena tsa maiketsetso tsa 0 ha li khone ho kenyelloa ka ho sebelisa tafoleng e kenyelletsoeng ka tlase. E tlameha ho emeloa ke setho sa 65.

Sebopeho sa base64 sa Base64 ke '='. Ka tlhaho, e ka hlaha feela qetellong ea data e kentsoeng.

Base64 Tlhahlobo ea Boitsebiso

Ntho ea bohlokoa Char Ntho ea bohlokoa Char Ntho ea bohlokoa Char Ntho ea bohlokoa Char
0 A 16 Q 32 g 48 w
1 B 17 R 33 h 49 x
2 C 18 S 34 i 50 y
3 D 19 T 35 j 51 z
4 E 20 U 36 k 52 0
5 F 21 V 37 l 53 1
6 G 22 W 38 m 54 2
7 H 23 X 39 n 55 3
8 Ke 24 Y 40 o 56 4
9 J 25 Z 41 p 57 5
10 K 26 a 42 q 58 6
11 L 27 b 43 r 59 7
12 M 28 c 44 s 60 8
13 N 29 d 45 t 61 9
14 O 30 e 46 u 62 +
15 P 31 f 47 v 63 /