RevealTheme logo

ตัวเข้ารหัสและถอดรหัส Base64

เข้ารหัสสตริงเป็น Base64 หรือถอดรหัส Base64 เป็นข้อความ เคารพความเป็นส่วนตัวของคุณ: ทำงานในเบราว์เซอร์ของคุณ

Base64 คืออะไรและทำไมจึงมีอยู่ทุกที่?

Base64 เป็นรูปแบบการเข้ารหัส ไม่ใช่การเข้ารหัสลับ ที่แสดงข้อมูลไบนารีใดๆ ก็ตามโดยใช้อักขระ ASCII ที่พิมพ์ได้เพียง 64 ตัว (A-Z, a-z, 0-9 รวมถึง +, / และ = เป็นตัวเติม) มันมีอยู่เพราะโปรโตคอลการส่งผ่าน รูปแบบไฟล์ และ API จำนวนมากรองรับเฉพาะข้อความ หรือจัดการบางไบต์เป็นพิเศษ: อีเมล (SMTP ออกแบบมาสำหรับ ASCII แบบ 7 บิต), JSON (ไม่สามารถบรรจุไบต์ดิบได้), URL (มีอักขระที่สงวนไว้), ส่วนหัว HTTP (ข้อความที่จัดเรียงเป็นบรรทัด) และแอตทริบิวต์ HTML ล้วนต้องการวิธีส่งผ่านข้อมูลไบนารีผ่านช่องทางข้อความ Base64 แก้ปัญหานี้โดยจัดกลุ่มไบต์อินพุตเป็นชุดละ 3 ไบต์ (24 บิต) และเข้ารหัสแต่ละชุดใหม่เป็น 4 อักขระ Base64 (6 บิตต่อตัว) การเพิ่มขนาดอยู่ที่ 33% พอดี: ทุก 3 ไบต์จะกลายเป็น 4 อักขระ เครื่องมือนี้เข้ารหัสข้อความ UTF-8 หรือสตริง Base64 ได้ทั้งสองทิศทาง โดยทำงานในเบราว์เซอร์ของคุณทั้งหมด มันจัดการอักขระ UTF-8 แบบหลายไบต์ได้อย่างถูกต้อง (อีโมจิ อักษรที่ไม่ใช่ละติน) ซึ่งการใช้งาน Base64 แบบง่ายที่เรียก atob/btoa โดยตรงจะทำให้เสีย

กรณีการใช้งานทั่วไป

  • ฝังรูปภาพขนาดเล็กลงใน CSS โดยตรงในรูปแบบ data: URL (ช่วยกำจัดคำขอ HTTP หนึ่งครั้งสำหรับไอคอนเล็ก ๆ)

  • ถอดรหัส payload ของ JWT หรือ header แบบ Basic Auth เพื่อตรวจสอบสิ่งที่อยู่ข้างใน

  • เข้ารหัสเนื้อหาไฟล์ไบนารีเพื่อใส่ในฟิลด์ JSON หรือตัวแปรสภาพแวดล้อม

  • ย้ายข้อมูลไบนารีผ่านระบบที่ไม่รักษาไบต์ตามอำเภอใจ (อีเมล, คัดลอก/วาง)

  • ถอดรหัสการตอบกลับของ API หรือ payload ของ webhook ที่เข้ารหัส base64 ระหว่างการดีบัก

  • แปลงข้อมูลรับรองแบบไบนารีให้อยู่ในรูปแบบที่คัดลอก-วางได้ง่ายสำหรับการส่งมอบงานปฏิบัติการ

คำถามที่พบบ่อย

Base64 เป็นการเข้ารหัสลับหรือไม่?
ไม่ Base64 เป็นการเข้ารหัสที่ย้อนกลับได้: ใครก็ตามสามารถถอดรหัสได้ทันทีโดยไม่ต้องใช้คีย์ สำหรับความลับ ให้ใช้การเข้ารหัสลับจริง (AES-256, RSA หรือเครื่องมือการเข้ารหัส AES ของเรา) การปฏิบัติต่อ Base64 ว่าเป็นการรักษาความปลอดภัยเป็นความเข้าใจผิดอันดับหนึ่งเกี่ยวกับมัน
ทำไม Base64 จึงเพิ่มขนาด ~33%?
การเข้ารหัสจับคู่ 3 ไบต์ (24 บิต) ของอินพุตเป็น 4 อักขระ (24 บิต เนื่องจากอักขระ Base64 แต่ละตัวแทน 6 บิต) ภาระด้านขนาดนี้เป็นสิ่งที่มาพร้อมกันและหลีกเลี่ยงไม่ได้ สำหรับการแสดงผลแบบไบนารีที่เล็กกว่า ให้ใช้ Base85 หรือส่งไบนารีดิบหากช่องทางรองรับ
Base64 ที่ปลอดภัยสำหรับ URL คืออะไร?
เป็นรูปแบบหนึ่งที่กำหนดไว้ใน RFC 4648 ซึ่งแทนที่ + ด้วย - และ / ด้วย _ เพื่อให้ผลลัพธ์ปลอดภัยสำหรับการใส่ใน path ของ URL หรือชื่อไฟล์โดยไม่ต้องเข้ารหัสแบบเปอร์เซ็นต์ JWT ใช้ Base64 ที่ปลอดภัยสำหรับ URL API จำนวนมากรับได้ทั้งสองรูปแบบ
ทำไมฉันจึงเห็น '=' ที่ท้าย?
นั่นคืออักขระตัวเติม Base64 ส่งผลลัพธ์ออกมาเป็นกลุ่มละ 4 อักขระ หากอินพุตไม่ใช่จำนวนเท่าของ 3 ไบต์ กลุ่มสุดท้ายจะถูกเติมด้วย '=' จนครบ 4 อักขระ Base64 บางรูปแบบละเว้นตัวเติม ทั้งสองแบบถอดรหัสได้เหมือนกัน
มันจัดการอีโมจิและข้อความที่ไม่ใช่ละตินได้หรือไม่?
ได้ เครื่องมือจะแปลงข้อความเป็นไบต์ UTF-8 ก่อน แล้วจึงเข้ารหัสไบต์เป็น Base64 สิ่งนี้หลีกเลี่ยงข้อผิดพลาดคลาสสิกของ JavaScript ที่ btoa() ล้มเหลวกับอักขระที่ไม่ใช่ Latin1
ฉันเห็น Base64 ในแอปพลิเคชันจริงที่ไหนบ้าง?
ทุกที่: data: URL ของรูปภาพใน CSS, ส่วนหัว Authorization: Basic, ส่วนของ JWT, ลายเซ็นของ signed URL, presigned URL ของ S3, ใบรับรอง PKCS (รูปแบบ PEM), ไฟล์แนบอีเมล (MIME), payload ของรหัส QR และความลับสไตล์ .env ของแพลตฟอร์มการดีพลอยสมัยใหม่

เครื่องมือที่เกี่ยวข้อง

ตัวถอดรหัส JWT

ถอดรหัส JSON Web Tokens (JWT) ได้ทันที ทำงานในเบราว์เซอร์ของคุณ โทเค็นจะไม่ออกจากอุปกรณ์ของคุณ จึงปลอดภัยที่จะใช้กับซีเคร็ตในโปรดักชัน

เครื่องมือจัดรูปแบบและตรวจสอบ JSON

จัดรูปแบบ ตรวจสอบ และย่อขนาด JSON ออนไลน์ ทำงานทั้งหมดในเบราว์เซอร์ของคุณ ข้อมูลของคุณจะไม่ออกจากอุปกรณ์ของคุณเลย

เครื่องมือจัดรูปแบบ XML

จัดรูปแบบและทำให้เอกสาร XML อ่านง่ายขึ้น มีประโยชน์สำหรับ SOAP, sitemap, feed RSS และไฟล์การกำหนดค่า

ตัวเข้ารหัสและถอดรหัส URL

แปลงข้อความเป็นการเข้ารหัสที่ปลอดภัยสำหรับ URL (การเข้ารหัสแบบเปอร์เซ็นต์) และกลับกัน มีประโยชน์สำหรับ query string การเปลี่ยนเส้นทาง และโฟลว์ OAuth

เครื่องมือเข้ารหัสและถอดรหัสเอนทิตี HTML

แปลงอักขระพิเศษเป็นเอนทิตี HTML (&, < เป็นต้น) และในทางกลับกัน มีประโยชน์สำหรับการฝังข้อความลงใน HTML อย่างปลอดภัย

ตัวย่อขนาด CSS

ลบคอมเมนต์ ช่องว่าง และอักขระที่ไม่จำเป็นออกจาก CSS เพื่อลดขนาดไฟล์

สมัครรับข่าวสารอัปเดต

เราไม่ขายอีเมลของคุณ เราไม่ส่งสแปม

© 2026 RevealTheme. All rights reserved.