Senin, April 24, 2006

PHP Encoder

Waah, sepertinya sudah lama blogs ini tidak saya update.

Sekitar 2 - 3 minggu ini, saya berkutat pada pencarian encoder yang bisa digunakan untuk file PHP.

Biasanya file PHP didistribusikan berupa source code, sehingga bagi programmer yang menerima source code tersebut, akan bisa mempelajari alur dari sistem yang dibuat. Klien saya tidak ingin hal ini terjadi, sebab, kami ingin supaya kalau ada orang yang menggunakan program kami tersebut, kami bisa mengetahuinya, dan tentu saja, meminta pembayaran dari pengguna program tersebut.

Riset pun dilakukan untuk menemukan berbagai macam teknik enkripsi / pengacakan / encoder untuk file php, dan berikut ini list nya :

  1. Zend Encoder

    Ini adalah program encoder untuk php yang mungkin paling terkenal.Akan tetapi, program ini sifatnya bukan freeware ataupun opensource. Harganya hampir USD 1000, dan jelas untuk ukuran programmer yang pelit miskin seperti saya, sangat tidak mau mampu membayar sejumlah uang tersebut. Sempat terlintas niat jahat, bagaimana kalau saya mencari saja versi bajakan dari program ini , akan tetapi sialnya untungnya bajakannya tidak saya temukan, sehingga niat jahat tersebut akhirnya hilang.

  2. IonCube PHP Encoder

    Program encoder ini juga tidak bersifat freeware ataupun opensource (dan tentu saja karena versi bajakannya tidak berhasil saya temukan), sehingga saya tidak meneruskan untuk melakukan riset lebih lanjut dengan program ini.

  3. Microcode

    Melihat dari websitenya dan beberapa review, program ini jelas sifatnya opensource, sehingga sangat menarik diri saya untuk mengeksplorasinya.

    Setelah sourcecode berhasil saya peroleh, dan kemudian program sudah berhasil dicompile, masalah yang terjadi adalah entah mengapa program tersebut tidak bisa di load sebagai modul / extension dari PHP. Karena waktu saya yang terbatas (sok sibuk), dan saya memang lagi malas, akhirnya pilihan untuk menggunakan program ini pun tidak saya lakukan

  4. POBS

    Menilik dari websitenya, program ini sifatnya juga opensource. Kelebihan dari program ini, dia tidak perlu extension khusus untuk menjalankan file php hasil enkripsinya.Setelah beberapa kali saya coba, saya masih kurang puas dengan hasil enkripsi dari program ini, karena sourcecode masih cukup bisa terbaca. Akan tetapi, mungkin saja saya akan memakai program ini, kalau tidak ditemukan alternatif yang lebih baik.

  5. PHTML Encoder

    Sebetulnya program ini sifatnya juga bukan opensource, akan tetapi saya juga sempat mencobanya, karena ada link untuk download file,tetapi tidak disebutkan kalau itu adalah trial version. Kebetulan waktu itu saya mencoba pada waktu malam hari, sepulang saya kerja . Mungkin saya coba di sekitar jam 11 - 12 malam, dan karena saya coba di malam hari tersebut, akhirnya saya justru tahu batasan dari versi freeware program ini. Ternyata hasil enkripsi program ini hanya bisa dijalankan di hari kerja saja (Senin - Jumat) pukul 09.00 - 17.00 (kalau tidak salah ingat).Karena batasan tersebut, maka terpaksa program ini pun saya coret dari pilihan saya.

  6. Turck mmcache

    Sebetulnya saya pernah tahu program ini ketika iseng browsing mengenai suatu topik, akan tetapi waktu itu memang belum merasa perlu program untuk encode file php.Ketika saya perlu, kebetulan salah satu teman saya yang sudah lama tidak kontak, muncul, dan dia merekomendasikan program ini. Program ini sifatnya opensource, dan ini tentunya merupakan kelebihan tersendiri buat saya.Sebetulnya saya bisa saja menggunakan file binary program yang sudah dicompile oleh developernya, akan tetapi file binary yang tersedia hanya untuk versi PHP yang lama, padahal saya sudah menggunakan versi PHP yang paling update. Oleh karena itu, saya memutuskan untuk mengcompile sendiri dari source.


    Setelah sourcecode berhasil didownload, sedikit masalah muncul ketika mengcompile program ini. Beberapa error muncul , dan ini membuat saya agak malas untuk melanjutkan. Tetapi setelah melakukan eksplorasi di sana - sini, program berhasil dicompile dengan sukses. Setelah file binary selesai dibuat, kemudian test dilanjutkan dengan enkripsi file source code PHP.Sepertinya semuanya berjalan dengan lancar, dan kelihatannya tidak ada masalah ketika file hasil enkripsi dijalankan .Masalah muncul ketika program hasil enkripsi mulai saya eksplorasi. Setelah membaca forum diskusi di internet, ternyata masih ada bugs di mmcache encoder ini yaitu kalau dalam source code digunakan fungsi foreach dari PHP, maka hasil halaman enkripsi akan tidak sesuai dengan harapan.Saya mencoba mencari solusi untuk masalah ini, tetapi versi baru dari mmcache ini sudah tidak ada lagi. Sepertinya developer program ini berhenti melakukan update terhadap programnya. Dan karena masalah ini, saya pun harus mencari alternatif lain untuk enkripsi.

  7. EAccelerator

    Melihat info dari homepagenya, program ini merupakan fork dari turck mmcache yang sudah saya bahas sebelumnya.Karena sifatnya yang opensource, maka sourcecode juga tersedia di internet. Seperti alasan sebelumnya, yaitu karena file binary tidak ada untuk release PHP versi terbaru , akhirnya saya terpaksa mengcompile sendiri program ini, supaya sesuai dengan versi dari release PHP yang saya pakai. Seperti kebanyakan orang kebiasaan saya, saya pun memilih untuk mendownload versi program yang terbaru, dengan alasan sudah lebih banyak bugs yang dibuang dan ditambahkan ( versi 0.94).Singkat cerita, program berhasil saya compile, dan lagi - lagi masalah selalu datang di saat yang tidak diinginkan. Entah kenapa, ketika melakukan encode file source code PHP dari program saya, cuma sebagian kecil saja yang berhasil di encode, dan sisanya error dengan sebab yang tidak jelas. Sampai sekarang saya masih belum mengetahui mengapa masalah tersebut terjadi.Kemudian saya coba lagi dengan versi beta dari program tersebut ( versi 0.95-dev), dengan harapan masalah tersebut sudah tidak muncul. Akan tetapi, sepertinya kenyataan berkata lain. hiks....

    Saya pun teringat, kalau program ini merupakan fork dari turck mmcache, dan karena sebelumnya saya sukses melakukan encoding terhadap source PHP saya (meskipun ada masalah), akhirnya saya memutuskan untuk mendownload versi lama dari EAccelerator ini ( versi 0.93).Ini baru saya lakukan tadi malam, dan lagi - lagi, setelah berkutat dengan proses kompilasi yang tidak jelas, ada error sana - sini, akhirnya file binary berhasil dibuat, dan Thank God, bisa digunakan untuk enkripsi file PHP saya. Yang lebih menyenangkan saya adalah, sejauh ini tidak saya temukan masalah seperti ketika menggunakan turck mmcache, dimana untuk fungsi foreach PHP, output tidak sesuai harapan .Sebetulnya masih ada issue yang belum terpecahkan. Klien saya menggunakan versi PHP 5.1.2 , sedangkan saya menggunakan PHP versi 4.4.2, dan saya membaca di website eAccelerator ini, kalau versi 0.93 masih belum mendukung PHP versi 5.1.x, karena ada beberapa bugs yang harus dicari penyebabnya. PHP versi 5.1.x baru mulai akan disupport pada eaccelerator versi development 0.9.5-dev. Padahal versi 0.9.4 ke atas sudah saya compile, dan tidak belum bisa digunakan untuk encode file PHP saya. Cara termudah yang akan saya tempuh yaitu, saya minta klien saya supaya memakai PHP versi 4.4.2 sesuai dengan yang saya pakai.. hahaha


Alhasil, karena tadi malam saya mencoba coba sampai kira - kira jam 12.30 (biasanya saya tidur sangat lama) , hari ini saya pun pergi ke kantor dengan ngantuk dan tidak semangat. Hal ini diperparah, karena hari ini adalah hari Senin (so what???). Dan karena saya lagi malas dan capek tersebut, saya malah menulis blogs ini hahaha..


 

1 komentar:

Anonim mengatakan...

coba yg ini http://encode.indocms.net/