ให้เรตสมาชิก: 2 / 5

ดาวใช้งานดาวใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

วิธีการเข้ารหัส และถอดรหัส BASE64

 

BASE64 (เบส 64) คือ วิธีการเข้ารหัสข้อมูลรูปแบบหนึ่ง ที่จะเปลี่ยนข้อความ หรือข้อมูลต้นฉบับไปเป็นข้อความ หรือข้อมูลชุดใหม่ ที่ไม่สามารถอ่าน หรือรู้ว่าข้อมูลชุดนี้คืออะไร ซึ่งการเข้ารหัสชนิดนี้จะแทนที่ข้อมูลด้วยตัวอักษร 64 ตัว นั่นคือที่มาของ BASE64 ตามตัวอย่างต่อไปนี้

Table ASCII - Binary Character (เทเบิ้ล แอสกี้ ไบนารี่ ชาเรคเจอร์)

Table ASCII - Binary Character
Table ASCII - Binary Character

Table BASE64  (เทเบิ้ลเบส 64)

Table BASE64
Table BASE64

วิธีการเข้ารหัส BASE64

ยกตัวอย่าง
ต้องการเข้ารหัสข้อความนี้ "mind" จะมีขั้นตอนคือ

1. นําข้อมูลที่ต้องการเข้ารหัสมาแปลงเป็นเลขฐานสอง 8 bit ดูตามตาราง Table ASCII - Binary Character
m = 01101101
i = 01101001
m = 01101101
d = 01100100

01101101    01101001    01101101     01100100

2. จากนั้น เรียงบิตใหม่จากทางด้านซ้าย แบ่งเลขฐานสองออกเป็นชุด ชุดละ 6 bit กรณีที่ชุดสุดท้ายไม่ครบ ให้เติม 0 ไปจนครบ จะได้ดังนี้

011011  010110  100101  101101  011001  000000

** bit ที่ถูกเติมเข้าไปที่เป็น 00 แทนด้วย "="
กรณี bit สุดท้าย เป็น 000000 ก็จะได้ == สองตัวต่อ

3. แปลงเลขฐาน 2 แบบ 6 bit เป็นเลขฐาน 10
จำนวนบิต จะเริ่มจากขวาไปซ้าย สูตรการคำนวณบิต n^2

ผลการแปลง
ผลการแปลง

 

เมื่อนำไปเปรียบเทียบกับตาราง Table BASE64 จะได้ดังนี้

bWltZA==

วิธีการถอดรหัส BASE64
     วิธีการถอดรหัส BASE64 ทําย้อนกลับครับให้นําข้อมูลมาแปลงเป็นฐานสอง 6 bit มาเรียงต่อกันก่อน แล้วนํามาจัดกลุ่ม กลุ่มละ 8 bit โดย bit สุดท้ายที่เหลือไม่ครบ 8 bit ให้ตัดทิ้ง หลังจากนั้นก็แปลงเลขฐานสอง 8 bit แต่ละชุดเป็นข้อมูล ASCII เท่านี้ก็จะได้ข้อมูลต้นฉบับแล้ว


อ้างอิง
view.officeapps.live.com
thitiblog.com

 

 

 

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
วิธีการใช้งาน Template engine ของ Laravel Framework
โดย makup พ 14 ต.ค. 2020 9:15 am บอร์ด PHP Knowledge
0
224
พ 14 ต.ค. 2020 9:15 am โดย makup
การติดตั้งโปรแกรม xampp ผ่าน Command terminal ในนาม root
โดย makup อ 13 ต.ค. 2020 11:03 am บอร์ด Linux - Web Server
0
205
อ 13 ต.ค. 2020 11:03 am โดย makup
วิธีแก้ ติดปัญหา you are not owner so cannot change permissions
โดย makup อ 13 ต.ค. 2020 10:13 am บอร์ด Linux - Web Server
0
153
อ 13 ต.ค. 2020 10:13 am โดย makup
Influencer Marketing คือ ? มีกี่ประเภท? บทความนี้มีคำตอบ
โดย ploypola จ 12 ต.ค. 2020 6:30 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
233
จ 12 ต.ค. 2020 6:30 pm โดย ploypola
Function sort() และ rsort()
โดย makup จ 12 ต.ค. 2020 5:38 pm บอร์ด PHP Knowledge
1
175
จ 12 ต.ค. 2020 6:36 pm โดย prmindphp
คำสั่ง While loop คำสั่งทำงานซ้ำ
โดย makup อ 11 ต.ค. 2020 3:23 pm บอร์ด PHP Knowledge
0
169
อ 11 ต.ค. 2020 3:23 pm โดย makup
วิธี Update งาน Project laravel บน Gitlab
โดย makup อ 11 ต.ค. 2020 2:29 pm บอร์ด PHP Knowledge
0
228
อ 11 ต.ค. 2020 2:29 pm โดย makup
วิธีเปิด Debug SQL Explain and Load time บน phpBB 3.3.x
โดย thatsawan อ 11 ต.ค. 2020 11:26 am บอร์ด PHP Knowledge
1
193
อ 18 ต.ค. 2020 2:00 am โดย mindphp