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

การเข้ารหัส Base64 จะแปลงข้อมูลไบนารีเป็นรูปแบบข้อความซึ่งส่งผ่านช่องทางการสื่อสารที่ผู้ใช้สามารถจัดการกับข้อความได้อย่างปลอดภัย Base64 เรียกอีกอย่างว่าPrivacy enhanced Electronic mail (PEM) และใช้เป็นหลักในกระบวนการเข้ารหัสอีเมล

Python มีโมดูลที่เรียกว่า BASE64 ซึ่งรวมถึงฟังก์ชันหลักสองอย่างตามที่ระบุด้านล่าง -

  • base64.decode(input, output) - ถอดรหัสพารามิเตอร์ค่าอินพุตที่ระบุและจัดเก็บเอาต์พุตที่ถอดรหัสเป็นวัตถุ

  • Base64.encode(input, output) - เข้ารหัสพารามิเตอร์ค่าอินพุตที่ระบุและเก็บเอาท์พุทที่ถอดรหัสเป็นวัตถุ

โปรแกรมสำหรับการเข้ารหัส

คุณสามารถใช้โค้ดต่อไปนี้เพื่อทำการเข้ารหัส base64 -

import base64
encoded_data = base64.b64encode("Encode this text")

print("Encoded text with base 64 is")
print(encoded_data)

เอาต์พุต

รหัสสำหรับการเข้ารหัส base64 ให้ผลลัพธ์ต่อไปนี้ -

โปรแกรมสำหรับการถอดรหัส

คุณสามารถใช้โค้ดต่อไปนี้เพื่อทำการถอดรหัส base64 -

import base64
decoded_data = base64.b64decode("RW5jb2RlIHRoaXMgdGV4dA==")

print("decoded text is ")
print(decoded_data)

เอาต์พุต

รหัสสำหรับการถอดรหัส base64 ให้ผลลัพธ์ต่อไปนี้ -

ความแตกต่างระหว่าง ASCII และ base64

คุณสามารถสังเกตความแตกต่างต่อไปนี้เมื่อคุณทำงานบน ASCII และ base64 สำหรับการเข้ารหัสข้อมูล -

  • เมื่อคุณเข้ารหัสข้อความใน ASCII คุณจะเริ่มต้นด้วยสตริงข้อความและแปลงเป็นลำดับไบต์

  • เมื่อคุณเข้ารหัสข้อมูลใน Base64 คุณเริ่มต้นด้วยลำดับของไบต์และแปลงเป็นสตริงข้อความ

ข้อเสียเปรียบ

อัลกอริทึม Base64 มักใช้เพื่อเก็บรหัสผ่านในฐานข้อมูล ข้อเสียเปรียบที่สำคัญคือคำที่ถอดรหัสแต่ละคำสามารถเข้ารหัสได้อย่างง่ายดายผ่านเครื่องมือออนไลน์ใด ๆ และผู้บุกรุกสามารถรับข้อมูลได้อย่างง่ายดาย