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

base64_encode() การเข้ารหัสข้อมูลด้วย BASE64 


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

สำหรับบทความนี้จะพูดถึงการรหัสรูปแบบ Base64 กันน่ะครับ 

รูแบบ Syntax 

base64_encode ( string $data ) : string

ตัวอย่างการนำไปใช้ในการเข้ารหัส

<?php
$str = 'This is an encoded string';
echo base64_encode($str);
?>

และผลลัพธ์ที่ได้ดังนี้ครับ 

VGhpcyBpcyBhbiBlbmNvZGVkIHN0cmluZw==

ตัวอย่างที่สอง

<? 
echo base64_encode("zerohate");
?>

ผลลัพธ์ที่ได้

emVyb2hhdGU= 

จะเห็นว่าเราไม่สามารถอ่านหรือเข้าใจผลลัพธ์ที่ได้มาเลย เพราะถูกเข้ารหัสไว้ ถ้าจะถอดรหัสต้องใช้ ฟังก์ชัน base64_decode()  แต่ถ้าหากไม่รู้ว่าถูกเข้ารหัสด้วยอะไรก็คงอยากที่จะมาถอดรหัส เพราะว่า ฟังก์ชันที่ทำหน้าที่เข้ารหัสข้อมูลมีมากมาย ไม่ว่าจะเป็น รูปแบบ MD5 hash  ฟังก์ชั่น sha1 และอื่นๆ สามารถศึกษาได้เพิ่มเติมในเว็บนี้  การเข้ารหัสมีประโยชน์มากมายเช่น เพื่อป้องกันรหัสผ่านของผู้ใช้ เป็นต้น ทั้งนี้บางรูปแบบอาจจะง่ายในการถอดรหัส ควรมีการเข้รหัสหลายชั้นอาจจะเป็นการดีที่สุด

 

ช่องทางการศึกษาเพิ่มเติมข่าวที่น่าสนใจเกี่ยวกับ : ฟังก์ชัน PHP

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
คำว่า extension ผิดค่ะ
โดย numtan5839 ศ 06 ธ.ค. 2019 8:17 pm บอร์ด MindPHP News & Feedback
1
8
ส 07 ธ.ค. 2019 1:20 am โดย mindphp
ทำอย่างไรให้ google slide นั้นสามารถแสดงหน้าที่เรากำหนดได้ ผ่าน url ครับ
โดย jamepiyawat ศ 06 ธ.ค. 2019 5:23 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
0
10
ศ 06 ธ.ค. 2019 5:23 pm โดย jamepiyawat
การทำนายข้อมูลแบบ Dicision Tree ด้วยโปรแกรม Weka
โดย Grammanano ศ 06 ธ.ค. 2019 5:16 pm บอร์ด Share Knowledge
0
8
ศ 06 ธ.ค. 2019 5:16 pm โดย Grammanano
ทำไม แปลงวันเดือนปีเป็นวันที่ ตามระบบของ Joomla แล้ววันถึงถอยไปวันหนึ่งครับ
โดย jamepiyawat ศ 06 ธ.ค. 2019 3:23 pm บอร์ด Joomla Development
1
13
ศ 06 ธ.ค. 2019 4:51 pm โดย thatsawan
คำสั่งพื้นฐานในการใช้ Matlab เพื่อการทำ Image Processing
โดย Grammanano ศ 06 ธ.ค. 2019 3:20 pm บอร์ด Share Knowledge
0
7
ศ 06 ธ.ค. 2019 3:20 pm โดย Grammanano
Introducing the Module Weather Forcecast.
โดย numtan5839 ศ 06 ธ.ค. 2019 2:34 pm บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
2
10
ศ 06 ธ.ค. 2019 3:24 pm โดย numtan5839
เขียนบทความ แต่พอ save แล้วเนื้อหาไม่แสดง
โดย numtan5839 ศ 06 ธ.ค. 2019 2:30 pm บอร์ด MindPHP News & Feedback
0
10
ศ 06 ธ.ค. 2019 2:30 pm โดย numtan5839
จะทำอย่างไรให้ดึงข้อความ 10 ตัวท้ายได้ครับ
โดย jamepiyawat ศ 06 ธ.ค. 2019 11:39 am บอร์ด Programming - PHP
3
20
ศ 06 ธ.ค. 2019 2:04 pm โดย jamepiyawat
จะทำอย่างไรให้ Plugin Content Change Log แสดงข้อความด้านบนได้ ครับ
โดย jamepiyawat ศ 06 ธ.ค. 2019 11:03 am บอร์ด Joomla Development
1
17
ศ 06 ธ.ค. 2019 7:42 pm โดย thatsawan
งานประจำวันที่ 6 ธันวาคม 2562
โดย Grammanano ศ 06 ธ.ค. 2019 9:43 am บอร์ด M098 - อนงค์นาท ไฝขาว
2
13
ส 07 ธ.ค. 2019 1:45 am โดย mindphp
งานประจำวันที่ 6 ธันวาคม 2562
โดย numtan5839 ศ 06 ธ.ค. 2019 9:34 am บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
10
27
ศ 06 ธ.ค. 2019 7:42 pm โดย numtan5839
เปิดตัวเว็บบอร์ด รูปแบบใหม่ ของเรา มีอะไรมาใหม่ ลองมาดูกัน เราใช้ phpBB 3.2 นะ
โดย mindphp พ 04 ธ.ค. 2019 7:44 pm บอร์ด MindPHP News & Feedback
1
34
พ 04 ธ.ค. 2019 8:03 pm โดย thatsawan
วิธีการ ใช้งาน Jquery คำนวณเลขฐาน 2 8 16
โดย Ittichai_chupol พ 04 ธ.ค. 2019 6:58 pm บอร์ด Jquery & Ajax Knowledge
0
949
พ 04 ธ.ค. 2019 6:58 pm โดย Ittichai_chupol
การใช้บอร์ด Arduino ต่อกับเซ็นเซอร์สี TCS3200
โดย Grammanano พ 04 ธ.ค. 2019 6:54 pm บอร์ด Share Knowledge
0
15
พ 04 ธ.ค. 2019 6:54 pm โดย Grammanano
คำสั่ง cmd และโปรแกรมที่ใช้สำหรับการเขียน python
โดย Grammanano พ 04 ธ.ค. 2019 6:02 pm บอร์ด M098 - อนงค์นาท ไฝขาว
3
18
ส 07 ธ.ค. 2019 1:41 am โดย mindphp
Google One เปิดสำรองข้อมูลบนระบบ Android
โดย noppadonsk พ 04 ธ.ค. 2019 5:42 pm บอร์ด Share Knowledge
0
19
พ 04 ธ.ค. 2019 5:42 pm โดย noppadonsk
แคปหน้าจอเว็ป แล้วแปลงเป็นไฟล์ PDF บนChrome
โดย noppadonsk พ 04 ธ.ค. 2019 5:28 pm บอร์ด Share Knowledge
0
17
พ 04 ธ.ค. 2019 5:28 pm โดย noppadonsk
วิธี ซ่อนไฟล์ใน Google Drive หายังไงก็ไม่เจอ
โดย noppadonsk พ 04 ธ.ค. 2019 5:16 pm บอร์ด Share Knowledge
0
19
พ 04 ธ.ค. 2019 5:16 pm โดย noppadonsk
รู้รึยังการใส่เพลงใน Google Slides
โดย noppadonsk พ 04 ธ.ค. 2019 4:41 pm บอร์ด Share Knowledge
0
15
พ 04 ธ.ค. 2019 4:41 pm โดย noppadonsk
คู่มือการเลือกใช้ไฟล์สำหรับงานออกแบบ
โดย noppadonsk พ 04 ธ.ค. 2019 4:20 pm บอร์ด Graphic design
0
14
พ 04 ธ.ค. 2019 4:20 pm โดย noppadonsk