PHP - proteger código PHP

 
Vista:
sin imagen de perfil

proteger código PHP

Publicado por NHFénix (16 intervenciones) el 17/09/2007 18:58:56
Hola a todos espero me puedan ayudar con lo siguiente:
He preparado una aplicación con PHP y MySQL, l cual estará disponible para vairas máquinas desde un servidor, pero el problema es el siguiente; que también necesito una copia de esa aplicación en un computadora sin conexión a Internet, es decir local. Cómo puedo hacer para proteger los archivos *.PHP para que un usuario con nociones de PHP pueda ver cómo está construida mi apliciación en esa máquina local?
Estoy usando el WAMP5.

Gracias de Antemano y Saludos..
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:proteger código PHP

Publicado por Nicolás (154 intervenciones) el 17/09/2007 19:37:08
No se pueden ocultar los archivos. Una buena alternativa es ensuciar el código... cambiar las variables con nombres poco (y nada) reconocibles, cambiar los nombres de las funciones, escribir todo en una sola linea, etc.
Te muestro un ejemplo.
En los siguientes dos post, envio un script que me hace un backup de una base de datos. El primero, con el código normal, y el segundo con el codigo modificado.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:proteger código PHP

Publicado por Nicolás (154 intervenciones) el 17/09/2007 19:38:02
<?php
$db = 'ao000073_sicoe';
$nombre_backup = date("Y-m-d") . "-" . $db . ".sql";

// CABECERAS PARA DESCARGAR EL ARCHIVO
header( "Content-type: application/savingfile" );
header( "Content-Disposition: attachment; filename=$nombre_backup" );
header( "Content-Description: Document." );

include("conex.php");

// RECUPERO LAS TABLAS
$tablas = mysql_list_tables($db);
if (!$tablas) {
echo "Error en la base de datos: no se pueden listar las tablas\n";
echo 'MySQL Error: ' . mysql_error();
exit;
}

// RECORRO TODAS LAS TABLAS
while ($tabla = mysql_fetch_row($tablas)) {

// RECUPERO LA INFORMACION DE CREACION DE LA TABLA
$creacion = mysql_fetch_array(mysql_query("SHOW CREATE TABLE $tabla[0]"));
echo "-- Informacion de creacion de la tabla $tabla[0]\n\n";
echo $creacion['Create Table']."\n\n";

// VUELCO LOS REGISTROS DE LA TABLA
echo "-- Volcado de registros en la tabla $tabla[0]\n\n";

// RECUPERO LOS NOMBRES DE LOS CAMPOS
$columnas_txt = "";
$columnas = mysql_query("SHOW COLUMNS FROM $tabla[0]");
$cantidad_columnas = mysql_num_rows($columnas);
if (mysql_num_rows($columnas) > 0) {
while ($columna = mysql_fetch_assoc($columnas)) {
$columnas_txt .= $columna['Field'] . ", ";
}
}
$columnas = substr($columnas_txt, 0, -2);
echo "INSERT INTO $tabla[0] ($columnas) VALUES\n";

$registros_txt = "";
$registros = mysql_query("SELECT * FROM $tabla[0]");
while ($registro = mysql_fetch_array($registros)) {
$i = 0;
$registro_txt = "";
while ($i < $cantidad_columnas) {
$registro_txt .= "'$registro[$i]', ";
$i++;
}
$registros_txt .= "(".substr($registro_txt, 0, -2)."),\n";
}
echo substr($registros_txt, 0, -2).";\n\n\n";

}
?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:proteger código PHP

Publicado por Nicolás (154 intervenciones) el 17/09/2007 19:38:38
<?php $s546125344561553214564134523554265='ao000073_sicoe';$s54873216879462134898795413213574=date("Y-m-d")."-".$s546125344561553214564134523554265.".sql";header("Content-type: application/savingfile");header("Content-Disposition: attachment; filename=$s54873216879462134898795413213574");header("Content-Description: Document.");include("conex.php");$s31455423668724978735654542361237=mysql_list_tables($s546125344561553214564134523554265);if(!$s31455423668724978735654542361237){echo "Error en la base de datos: no se pueden listar las tablas\n";echo 'MySQL Error: '.mysql_error();exit;}while($s1121324163455746254392344761237662=mysql_fetch_row($s31455423668724978735654542361237)){$s625346924877987895699264566253463457=mysql_fetch_array(mysql_query("SHOW CREATE TABLE $s1121324163455746254392344761237662[0]"));echo $s625346924877987895699264566253463457['Create Table'].";\n\n";$s65459678445642364554975873586="";$s652445676445798580316253466477=mysql_query("SHOW COLUMNS FROM $s1121324163455746254392344761237662[0]");$s6857973798396893899289862456=mysql_num_rows($s652445676445798580316253466477);if(mysql_num_rows($s652445676445798580316253466477)>0){while($s10278308723017501647126394761237662=mysql_fetch_assoc($s652445676445798580316253466477)){$s65459678445642364554975873586.= $s10278308723017501647126394761237662['Field'].", ";}}$s652445676445798580316253466477=substr($s65459678445642364554975873586,0,-2);echo "INSERT INTO $s1121324163455746254392344761237662[0] ($s652445676445798580316253466477) VALUES\n";$s65212357498734598580316253466477="";$s6521574987211171847652116253466477=mysql_query("SELECT * FROM $s1121324163455746254392344761237662[0]");while($s652157498712121231231429793466477=mysql_fetch_array($s6521574987211171847652116253466477)){$s652157498712124449879253466477=0;$s652123574142635412112116253466477="";while($s652157498712124449879253466477<$s6857973798396893899289862456){$s652123574142635412112116253466477.="'$s652157498712121231231429793466477[$s652157498712124449879253466477]', ";$s652157498712124449879253466477++;}$s65212357498734598580316253466477.="(".substr($s652123574142635412112116253466477,0,-2)."),\n";}echo substr($s65212357498734598580316253466477,0,-2).";\n\n\n";}?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:proteger código PHP

Publicado por Nicolás (154 intervenciones) el 17/09/2007 19:39:48
Como verás, en realidad no hay forma de ocultar el código.. .pero si hay forma de dificultar su lectura y comprensión.
Espero que te haya servido.
Suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:proteger código PHP

Publicado por Cristian Vicente (2 intervenciones) el 31/05/2011 23:52:40
Disculpa mi ignorancia pero como hiciste eso?? porfa necesito un poco de tu ayuda para realizar eso que tu hiciste, te agradeceria un monton....

gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:proteger código PHP

Publicado por NHFénix (16 intervenciones) el 19/09/2007 01:47:58
Gracias lo voy a implementar ya que creo que será la única forma de resolverlo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:proteger código PHP

Publicado por Nicolás (154 intervenciones) el 19/09/2007 03:23:05
Lamentablemente, si lo tienes bajo windows, es la única manera. Si lo tuvieras en linux sería distinto. Suerte!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar