**PHTML Encoder** เป็นโปรแกรมเข้ารหัสประเภทแชร์แวร์ที่ถูกพัฒนาโดย RSSoftware Lab โดยรองรับขั้นตอนวิธีการเข้ารหัสหลากประเภท โปรแกรมนี้ถูกเขียนขึ้นสำหรับทำงานทั้งบนระบบปฏิบัติการไมโครซอฟท์ วินโดวส์ และลินุกซ์

PHTML Encoder ถูกสร้างขึ้นเพื่อใช้ในการเข้ารหัสพีเอชพีสคริปต์ก่อนที่จะทำการแจกจ่ายออกไป เพื่อไม่ให้ผู้อื่นทราบตรรกะของผู้พัฒนาได้ ทั้งยังสามารถกำหนดให้สคริปต์ที่ถูกเข้ารหัสทำงานเฉพาะบนเครื่องใดเครื่องหนึ่ง เพื่อให้สคริปต์ดังกล่าวทำงานได้เฉพาะบนเครื่องของผู้พัฒนาได้ โปรแกรมสามารถทำงานได้บนทุกแพลตฟอร์มที่รองรับการทำงานของภาษาพีเอชพี และยังมีส่วนต่อประสานกับผู้ใช้ทั้งแบบกราฟิก และ command-line อีกด้วย

นอกเหนือไปจากตัวโปรแกรมแล้ว ทาง RSSoftware Lab ยังมีการขายซอร์สโค้ดของโปรแกรมพร้อมสิทธิ์ในการปรับแก้อีกด้วย นี่แตกต่างจากโอเพนซอร์สซอฟต์แวร์ตรงที่ไม่อนุญาตให้มีการแจกจ่ายซอร์สโค้ดของโปรแกรมต่อ และผู้ใช้ต้องซื้อตัวซอร์สโค้ดจากทางบริษัท แทนที่จะเป็นการแจกจ่ายเสรี

การทำงานของ PHTML Encoder
-------------------------

PHTML Encoder จะทำการเข้ารหัสพีเอชพีสคริปต์บนเครื่องแม่ข่ายด้วยขั้นตอนวิธีการเข้ารหัสที่ผู้ใช้เลือกไว้ แต่เครื่องแม่ข่ายยังคงสามารถประมวลผลสคริปต์ดังกล่าวได้ปกติ ทั้งนี้เพื่อให้ผู้ใช้เกิดความมั่นใจว่าสคริปต์ของตนจะไม่ถูกนำไปเผยแพร่โดยไม่ได้รับอนุญาต

|  |
| --- |
| การเข้ารหัสสคริปต์โดยใช้ PHTML Encoder |
| ภาพแสดงการประมวลผลสคริปต์ที่ผ่านการเข้ารหัสแล้ว |

ตัวอย่างสคริปต์ก่อนการเข้ารหัส:

```
<?php
phpinfo () ;
?>

```

จะได้รับการเข้ารหัสเป็น:

```
 PHPEnc8+æ&FºUJ�Y&#Yr) njLµY÷w}a

```

เมื่อมีเครื่องลูกข่ายเชื่อมต่อเข้ามายังเครื่องแม่ข่ายเว็บ เครื่องแม่ข่ายจะทำการค้นหาไฟล์พีเอชพีสคริปต์แล้วส่งไปให้ PHP preprocessor ตามปกติ

ทั้งนี้หากเราได้ทำการติดตั้งไลบรารีของโปรแกรมเอาไว้แล้ว PHP preprocessor จะสามารถทำความเข้าใจสคริปต์ที่ถูกเข้ารหัสไว้ได้เสมือนว่ามันไม่ได้ถูกเข้ารหัส PHP preprocessor จะทำการประมวลผลเปลี่ยนสคริปต์นั้นเป็นHTML แล้วส่งเป็นเว็บเพจกลับไปยังเครื่องลูกข่ายอีกครั้ง

PHTML Encoder สามารถใช้ขั้นตอนวิธีในการเข้ารหัสดังต่อไปนี้ได้ 3-WAY, AES (Rijndael) , Blowfish, CAST-128, CAST-256, DESX (DES-XEX3) , Diamond2, GOST, IDEA, MARS, RC2, RC5, RC6, SAFER, Serpent, SHARK, Skipjack,Square, TEA, Triple DES,Twofish ฯลฯ

อย่างไรก็ตาม PHTML Encoder ที่จำหน่ายเสรีนั้นมีข้อเสียอยู่นั่นคือการที่ผู้ใช้ไม่สามารถเลือกคีย์หรือขั้นตอนวิธีด้วยตัวเองได้หากไม่ใช้เวอร์ชัน PRO (ซึ่งต้องซื้อจากผู้พัฒนา) ทำให้ผู้ใช้ PHTML Encoder คนอื่นๆ สามารถถอดรหัสสคริปต์ของตัวผู้ใช้เองได้ทั้งหมด

คุณลักษณะของ PHTML Encoder
--------------------------

* มีการเข้ารหัสพีเอชพีสคริปต์ ทำให้มีความปลอดภัยของข้อมูลมากขึ้น
* การล็อกสคริปต์เข้ากับเว็บเซิร์ฟเวอร์โดยใช้ไอดีของเครื่อง
* ทำงานได้หลายระบบปฏิบัติการ จึงสามารถทำงานบนคอมพิวเตอร์เครื่องใดก็ได้ที่รองรับภาษาพีเอชพี
* สคริปต์ที่เข้ารหัสแล้วสามารถนำไปใช้งานได้สามรูปแบบด้วยกันคือ ใช้แทนไลบรารีของเอนจินภาษาพีเอชพีเดิม ใช้เป็นตัวเสริมของพีเอชพี หรือทำให้เป็นสคริปต์ที่สามารถถอดรหัสด้วยตัวเองได้ (self-decodable script)
* ผู้ใช้สามารถตั้งรหัสผ่านให้กับสคริปต์ของตนเองได้ (**เฉพาะ PHTML Encoder PRO**)
* สามารถปรับแต่งเวอร์ชันให้กับสคริปต์ของผู้ใช้ได้ (**เฉพาะ PHTML Encoder PRO**)
* ป้องกันการคัดลอกโค้ดไปใช้โดยไม่ได้รับอนุญาตได้ (**เฉพาะ PHTML Encoder PRO**)
* ใช้งานได้ทั้งบน วินโดวส์, ลินุกซ์, โซลาริส, FreeBSD (**เฉพาะ PHTML Encoder PRO**)
* มีซอร์สโค้ดมาให้ ทำให้สามารถปรับเปลี่ยนโปรแกรมให้เข้ากับการใช้งานของผู้ใช้ด้วยตนเองได้ (**เฉพาะ PHTML Encoder PRO**)

ประวัติ
-------

แต่เดิม PHTML Encoder ถูกพัฒนาภายใต้ชื่อ PHP Encoder แต่ภายหลังได้รับคำร้องขอจาก PHP Group ให้เปลี่ยนชื่อ จึงเปลี่ยนมาใช้ชื่อ PHTML Encoder จนถึงปัจจุบัน

อ้างอิง
-------

1. ↑  RSSoftware Lab. PHTML Encoder. 2007; [cited 2008 Feb 23]; [3 screens] Available at URL:
2. ↑  John Coggshall. An Introduction to PHP. 2001; [cited 2008 Mar 6]; [6 screens] Available at URL:  เก็บถาวร 2008-02-06 ที่ เวย์แบ็กแมชชีน

ดูเพิ่ม
-------

* Cryptainer LE Free Encryption Software
* Enigmail
* GnuPG
* Mcrypt
* Pretty Good Privacy
* Protect for Windows
* ShyFile

แหล่งข้อมูลอื่น
---------------

* เว็บหลักของ RSSoftware Lab
* วิกิพีเดียภาษาอังกฤษ
* Cryptography: The Ancient Art of Secret Messages โดยโมนิกา พอลัน - กุมภาพันธ์ 1998 เก็บถาวร 2007-12-13 ที่ เวย์แบ็กแมชชีน