คู่มือ Base64
เข้ารหัสข้อความให้ส่งผ่านช่องทางข้อความได้ แต่ไม่ใช่การเข้ารหัสลับ
Base64 เปลี่ยน byte เป็นตัวอักษรที่พกพาง่ายและถอดกลับได้ทุกคน จึงเหมาะกับรูปแบบข้อมูลและการดีบัก แต่ไม่ควรใช้ซ่อนรหัสผ่านหรือข้อมูลลับ
วิธีใช้งานทีละขั้นตอน
- 01
เลือกทิศทาง
ใช้ Encode กับข้อความอ่านได้ และใช้ Decode เมื่อข้อมูลนำเข้าเป็น Base64 อยู่แล้ว
- 02
เก็บค่าให้ครบ
อย่าตัดเครื่องหมาย = ท้ายค่าโดยไม่รู้ข้อกำหนด เพราะอาจเป็น padding ที่จำเป็น
- 03
ทดสอบ round trip
เข้ารหัสแล้วถอดกลับเพื่อยืนยันว่า emoji และอักขระ UTF-8 ยังคงเดิม
รายละเอียดที่ควรตรวจสอบก่อนนำผลลัพธ์ไปใช้
- Base64 ไม่ใช่ encryption และไม่มีการป้องกันผู้ที่เห็นค่า
- ข้อความ UTF-8 หนึ่งตัวอักษรอาจใช้หลาย byte
- Base64 มักทำให้ข้อมูลใหญ่ขึ้นประมาณหนึ่งในสาม
แนวคิดและข้อจำกัดที่สำคัญ
Base64 เป็น encoding ไม่ใช่กุญแจ
ทุกคนที่เห็นค่าสามารถถอดกลับได้ จึงใช้พกพา byte ผ่านระบบข้อความ ไม่ใช้ซ่อน password หรือ secret
Padding และ UTF-8
เครื่องหมาย = หรือ == เติมกลุ่ม byte สุดท้ายให้ครบ ส่วนอักขระไทย emoji และตัวอักษรมี accent จะถูกแปลงเป็น UTF-8 ก่อน
คำถามที่พบบ่อย
Base64 เข้ารหัสลับหรือปกป้องข้อความไหม?
ไม่ ทุกคนที่มีค่าสามารถถอดกลับได้
ทำไมค่าจึงลงท้ายด้วย =?
Base64 แบ่ง input ทีละสาม byte หากกลุ่มสุดท้ายไม่ครบจะเติม padding เพื่อบอกจำนวน byte จริง
รองรับ emoji ภาษาไทย และตัวอักษรมี accent ไหม?
รองรับ โดยแปลงข้อความเป็น UTF-8 ก่อน encode และถอดกลับเป็นข้อความเดิม
ข้อความที่วางถูกอัปโหลดไหม?
ไม่ การ encode และ decode เกิดในเบราว์เซอร์