• May 13, 2018

    1. ใช้ encode ธรรมดาแล้ว decode อย่างเช่น base64_encode ไปเป็นสตริง แล้วตอนรันเอามา eval(base64_decode($string));

    2. ใช้ encode library เช่น ioncube, source guardian, zend guard หรืออื่นๆ ทั้งนี้พวกนี้มันต้องมี extension ติดตั้งบน server ไม่งั้นก็ทำงานไม่ได้

    3. ถ้าคุณมีทุนพอ การใช้ api ช่วยก็จะเป็นทางเลือกที่ดีที่สุด

    encode php file

    http://www.phpencode.org
    http://www.phpeasystep.com/phptu/28.html
    http://ottoshi.blogspot.com/2012/04/php-encode-php.html

    ปกป้อง Source code ของคุณด้วยวิธีต่างๆ

    ปกป้องด้วยการ encode

    วิธีนี้มีทั้งที่ฟรีและไม่ฟรี คือ ตั้งแต่ใช้วิธีการ base64_encode() แล้วเอา string ที่ได้ไปใช้ในการ eval(base64_decode($string)); อีกทีหนึ่ง ซึ่งการย้อนกลับไปเป็นซอร์สโค้ดปกตินั้นก็ง่ายมาก วิธีนี้จึงเป็นการปกป้องแบบขั้นต่ำ แบบง่ายๆ

    วิธีที่ไม่ฟรี ก็คือใช้บริการ encoder ต่างๆที่จะต้องติดตั้งตัว decoder ไว้ที่ server ด้วย บริการที่มีใช้ในวิธีเหล่านี้ เช่น Ioncube, PHP Shield, Zend Guard, Nu-Coder, Source guardian หรืออื่นๆ ซึ่งค่าบริการก็มีตั้งแต่การ encode เป็นไฟล์ ก็จะไม่แพง ไปจนถึงซื้อ software มาเพื่อทำการ encode ซึ่งก็จะจ่ายมากขึ้น แต่หากใช้มากๆก็ถือว่าคุ้มกว่าจ่ายแบบเป็นไฟล์.

    ตัว encoder เหล่านี้ บางตัวก็โดนเจาะให้ทำการย้อนกลับเป็นซอร์สโค้ดปกติได้แบบง่ายๆแล้ว ดังนั้นหากเลือกใช้วิธีนี้จะต้องหมั่นอัพเดท encoder และตัว decoder บน server ด้วย

    ระดับการปกป้อง 2/5
    ค่าใช้จ่าย 1/5

    ปกป้องด้วยการใช้ register key

    วิธีการนี้ ค่อนข้างจะซับซ้อนนิดหน่อย คือก่อนการใช้งานแอพพลิเคชั่นที่ผู้ใช้ได้ไป ผู้ใช้จะต้องทำการลงทะเบียนโดยกรอก register key แล้วในการบวนการกรอกก็จะไปทำการตรวจความถูกต้องของ key ที่ฝั่ง server หากถูกต้องก็จะถือว่าลงทะเบียนแอพพลิเคชั่นนั้นผ่านแล้ว
    และในขั้นตอนการทำงาน ก็จะต้องตั้งให้มีการตรวจ key ที่ลงทะเบียนแล้ว โดยความถี่อาจจะเป็นวันละครั้งเป็นอย่างน้อย ซึ่งการตรวจก็จะไปตรวจที่ฝั่ง server หาก key ถูกต้องกับที่ลงทะเบียนไว้แล้วก็ทำงานได้ หากไม่ถูกต้องก็ไม่ให้ทำงานต่อ

    สำหรับโค้ดของการทำงานบน server ของผู้ใช้นั้น ส่วนที่ตรวจสอบ key, ลงทะเบียน key อาจเขียนร่วมกับการทำงานอื่นๆแล้วทำการ encode เพิ่มเติม เพื่อปกป้องและป้องกันการลัดวงจรตัดส่วนลงทะเบียน key, ตรวจสอบ key ออกไป และการ encode นี้หากใช้บริการต่างๆเช่น Ioncube, Zend Guard หรืออื่นๆ ผู้พัฒนาจะต้องเสียเงินเพิ่มขึ้น

    การปกป้องในรูปแบบนี้ ผู้พัฒนาจะต้องลงทุนในส่วนของ server ของตนที่จะต้องทำการรองรับ authenticate การลงทะเบียน key และการตรวจ key ซึ่ง server ดังกล่าวจะต้องมีเปอร์เซ็นต์ up time สูงกว่าทั่วไป เพราะหากเว็บไซต์ของผู้ใช้เรียกตรวจ key แล้วไม่พบ server ก็อาจทำให้เกิดความเสียหายได้

    ระดับการปกป้อง 4/5
    ค่าใช้จ่าย 3/5

    ปกป้องด้วยการ host API

    คล้ายๆกับการปกป้องด้วยการใช้ register key คือผู้พัฒนาเมื่อเขียนแอพพลิเคชั่นหนึ่ง ไม่จำเป็นต้องเขียนซอร์สโค้ดส่วนที่จะให้กับผู้ใช้ครบถ้วนทั้งหมด แต่ให้เว้นไว้บางส่วนที่สำคัญแล้วระบบทางฝั่งผู้ใช้ทำการเรียกใช้มายัง server ของผู้พัฒนา แล้วในกระบวนการขั้นตอนนี้เองก็จะทำการตรวจสอบ key และโดเมนว่าถูกต้องหรือไม่ หากถูกต้องก็ทำงานต่อไปตามปกติ

    ตัวอย่างสำหรับการปกป้องกรณีนี้ เช่น ระบบความปลอดภัยของผู้ใช้ในการแจ้งเตือนการเข้าสู่ระบบทาง sms เมื่อผู้ใช้ระดับพิเศษ เช่น ผู้ดูแลเป็นต้น ทำการเข้าสู่ระบบสำเร็จ ให้แจ้งเตือน sms ไปยังเจ้าของผู้ดูแลคนนั้นๆ กระบวนการส่ง sms ก็ไม่ต้องเขียนไปให้ระบบของผู้ใช้ แต่ใช้วิธีการเรียกมายัง server ของผู้พัฒนาแทน ซึ่งผู้พัฒนาก็จะมีระบบส่ง sms นั้นอยู่และทำการตรวจ key กับโดเมนที่เรียกใช้ให้ถูกต้องก่อนทำการส่ง.

    อีกตัวอย่างหนึ่ง คือ ระบบฟอรั่มที่ใช้ markup พิเศษ ต่างจาก bb code ธรรมดาทั่วไป ในส่วนของกระบวนการแสดงผล แทนที่จะเขียนฟังก์ชั่นแปลง bb code พิเศษเหล่านั้นไปให้กับผู้ใช้ ก็ให้ทำการเรียกมายัง server ของผู้พัฒนา โดยส่งข้อความที่จะให้แปลง, api key แล้วทำการตรวจ key และโดเมนให้ตรงกันแล้วค่อยแปลง bb code พิเศษนั้นแล้วส่งกลับไปเป็น html.

    วิธีการป้องกันแบบนี้ได้ผลดีเลิศ และผู้พัฒนาจะต้องมี server ที่รองรับการทำงานที่มีเปอร์เซ็นต์ up time มากกว่า server ทั่วไป เพื่อป้องกันความเสียหายเมื่อ server ผู้ใช้เรียกมาใช้งานไม่ได้ การป้องกันแบบนี้ไม่จำเป็นต้องทำการ encode ใดๆในซอร์สโค้ดของฝั่งผู้ใช้เลย เพราะหากผู้ใช้นั้นได้ซอร์สโค้ดไปอย่างไม่ถูกต้อง ระบบตรวจสอบฝั่ง server ของผู้พัฒนาก็เพียงแค่ส่งค่าการตรวจสอบล้มเหลวกลับไปเท่านั้นเอง

    ระดับการปกป้อง 5/5
    ค่าใช้จ่าย 5/5

    https://rundiz.com/web-resources/ปกป้อง-source-code-ของคุณด้วยวิธี



เวอไนน์ไอคอร์ส

ประหยัดเวลากว่า 100 เท่า!






เวอไนน์เว็บไซต์⚡️
สร้างเว็บไซต์ ดูแลเว็บไซต์

Categories