A small howto Ver.1.01 2009/11/28 as simple description to modifications of bcompiler sources made by me, within the terms of PHP license. I. Extract content of bcompiler-0.8-mcrypt.tar.gz file to ext directory of php sources. II. To use extension with encrypt/decrypt feature, uncomment a line below in bcompiler.c file(comented as default) #define BCOMPILER_ENCRYPTED_SOURCE III Before compilation change default password/key in lines(two lines) strcpy(key, "A_large_and_random_key_opened"); to yours(default 32 byte) IV. If you are familiar with mcrypt, you can change values as “keysize”, as well cipher modes, block modes, initialization vector definition algorithms or values, etc. V. On WIN32 copy libmcrypt.lib and php5ts.lib or php4ts.lib to ext\bcompiler. directory in PHP sources and instruct linker to use them or simple open bcompiler.dsp project. - On other systems also instruct linker to link libmcrypt.la “-L/$libpath $libpath/libmcrypt.la” with compiled sources. Or simple in $phpsources/ext/bcompiler directory run 1.phpize 2../configure --enable-bcompiler 3.make, make install VI.TODO, a php script to simplify compiling + encrypting, additional parameters for bcompiler_encrypt_file(fh1,fh2) function as “key-passphrase”, simple encrypted key or algorithm storing if you are changing passphrase from source to source. Optional parametrization. VII. Added function description: bcompiler_encrypt_file(fh1,fh2) has two arguments as file handles. First as fh1 is input as compiled file, second as output as encrypted file handle. PHP example cutout regarding description $fp2 = fopen( "encrypted.php", "wb"); $fp1 = fopen( "compiled.php", "rb"); bcompiler_encrypt_file($fp1,$fp2); fclose($fp2); fclose($fp1); Extension could be loaded in php.ini or by dl(). Matjaz Marcina