Una vez que acabamos de programar nos gustaría que nuestro código no se ande replicando y siendo usado por otros, robando nuestro trabajo sin embargo como PHP no se compila, nuestro código fuente queda desprotegido.
He probado algunos ofuscadores de código que hacen el código muy ilegible y dificil de entender, ojo eso no es igual que codificar simplemente lo hacen poco comprensible. Este muy sencillo ofuscador online me parece genial para evitar que pirateen las clases que conforman nuestro script, pueden dare un vistazo aqui
Requiere el uso de la librería gzip, la cual la tienen prácticamente todos los servidores en Internet así que por ahí no hay problemas, veamos un ejemplo:
Código Original
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | <?php class MySQL{ private $conexion; private $total_consultas; public function open(){ if(!isset($this->conexion)){ $this->conexion = (mysql_connect(_host,_user,_password)) or die(mysql_error()); mysql_select_db(_database,$this->conexion) or die(mysql_error()); } } public function consulta($consulta){ $this->total_consultas++; $resultado = mysql_query($consulta,$this->conexion); if(!$resultado){ echo 'MySQL Error: ' . mysql_error().'<br>'.$consulta; exit; } return $resultado; } public function fetch_array($consulta){ return mysql_fetch_array($consulta); } ?> |
Codigo Ofuscado
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | <?php // Este archivo es protegido por la ley del derechos de propiedad literaria. La ingenieria inversa de este codigo se prohibe estrictamente. eval(gzinflate(base64_decode(' dZJNTsMwEIXXqdQ7DFKkOGroAWhJV+xggTiA5TgT xVKI0/EEGiHujp20tIRW8sKen2/es73LF9tdV3fL hW6Uc/AyvL0+fy0XHZkPxQixti0ejG03FzG2rBrp M65vWLmQ6ovGaKj6VrMvBtthK1LPMZW4M84hi5hr 4+7zEy8N2WgWhEcQ74Pbj/AWNQtZW8eZ7B1SJjuv 8NNSmaZgCUqDx2IksiTS1AuJpojDxnfLshCyVKwK 5TCbC7jJ+B7X3NLJrohPu0sHsytZrYKWmHA8ltYb m8bse6ThjPgnKrSFOzu3jlMi1LWFZHwdeApSHyCB NfzRvk62BeXJ+pe+GTsPhsPGW4oIuacWzvDNVasV sq6lIlLDzO0RMI29XjYhd+Ff/QA= '))); ?> |
Creo que queda lo suficientemente incomprensible o no?





















Lo genial de este ofuscador es que la clase sigue funcionando normalmente aún usando los includes de siempre sin añadir códigos extras. Hay otros ofuscadores que cambian los nombres de las clases y las funciones y todo deja de funcionar a menos que lo apliques al script completo.
Hola, una pregunta, eso se puede desincriptar no?
Yo no se porque, se confunden tanto entre la palabra ofuscar y encriptar, ofuscar es quitar espacions en blanco quitar los saltos de linea, reducir el codigo lo mas que se pueda e incluso en casos mas drasticos cambiar los nombres de funciones a nombres totalmente sin sentido, ESO ES OFUSCAR!!! lo que tu estas haciendo es encriptar, el el cual coges encriptas con un algoritmo de encriptacion ( valga la redundancia ) un codigo, y luego en modo inverso lo desencriptas para poderlo visualizar, este ejemplo que das ademas de de no ser ofuscacion esta encriptado de tal manera que cualqueir persona que tenga un 20% de conocimientos de programacion lo desifraria facilmente.