اگه منظورتون از encode کردن کدها همون اینکریپت کردن است، به صورتی که هر کسی نتونه دیکریپتش کنه و هدف محافظت از اسکریپت است:
پاسخ خلاصه: راه حل رایگان وجود نداره!
پاسخ مفصل:
اگه میخواید کدتون رو به افراد مختلف بدید تا بتونن روی هاستشون نصب کنن، باید از زند یا ioncube استفاده کنید که هر دو پولی هستند. ioncube یک گزینه تحت وب هم داره که نسبت به سایز فایل و تعداد فایلها مبلغی ازتون میگیره و اسکریپت رو کد می کنه که برای کارها سبک به صرفه تر از زند است. همچنین ioncube قویتر از Zend است.
اما اگه خودتون سرور دارید و میخواید کدها رو فقط روی سرور خودتون اجرا کنید، چند گزینه رایگان وجود داره. که نصب ماژول اونها روی سرور، دردسرهای خاص خودش رو داره و توضیحش از حوصله این تاپیک خارجه.
گزینه دیگه هم وجود داره که به اصطلاح ناخوانا کردن کدها است؛ که روی همه سرورها جواب میده و نیاز به نصب ماژول خاصی نداره. در این روش کدها درهم ریخته میشن و به گونه ای انکود میشن که اگه کسی بخواد کدها رو بخونه، دچار سردرگمی میشه. البته این روش به راحتی قابل دور زدن است و اگه طرف یکم حرفه ای باشه به راحتی کدها رو به حالت اولیه برمی گردونه.
در مورد دیکریپت و دیکد کردن:
- اگه با Zend یا ioncube نسخه جدید اینکریپت شده باشه، درحال حاضر روش یا نرم افزار پابلیک شده ای برای دیکد کردن وجود نداره. بعضی از افراد و سایتها هستند که ادعای دیکد کردن Zend رو دارن که البته صحت ادعاشون 100درصد تایید نشده.
- اگه با گزینه های رایگان اینکریپت شده باشه، معمولاً امکان دیکریپت کردن تقریباً غیر ممکنه.
- اگه از روش ناخوانا کردن (Obfocusing) استفاده شده باشه، به راحتی قابل دیکد کردن است.
درحقیقت میشه گفت که در عدم وجود برنامه و نرم افزار رایگان درست و حسابی برای کد کردن PHP عمدی درکاره! چون PHP بر اپن سورس بودن تاکید داره و یکی از علل فراگیریش هم همون اپن سورس بودنه، پس زیاد خوشش نمیاد کسی کدها PHP اینکریپت کنه. اون ZEND و IONCUBE هم که خوب توسعه پیدا کردن اولاً پولی هستند و ثانیاً برای پروژه هایی پیش بینی شده که برنامه نویس مجبور نشه برای حفاظت از کدهاش به aspx و... رو بیاره.