yo hice uno para proteccion de documentos...
Tenemos una pagina que se llama "candado.php" la cual revisa una cookie >.<
<?php $login = "login.php";
$nombre = $_COOKIE['nombre'];
if(!$nombre){
header("LOCATION: $login");
}
?>
y, tenemos la pagina de "login.php"
<?php
if(isset($Submit)){
$nombre = $_POST['nombre'];
$nombre = urlencode($nombre);
$psw = $_POST['psw'];
$redirect = $_POST['redirect'];
if($nombre=="" || $psw==""){
echo "<link href=\"estilo.css\" rel=\"stylesheet\" type=\"text/css\" />";
echo "Debes de llenar los dos campos <a href=\"".$_SERVER['HTTP_REFERER']."\">Intentar de nuevo</a>";
exit;
}
$passok = base64_encode($nombre);
$passok = str_replace("=","",$passok);
if($psw==$passok){
setcookie("nombre",$nombre,time()+1800);
header("LOCATION: $redirect");
}else{
echo "<link href=\"estilo.css\" rel=\"stylesheet\" type=\"text/css\" />";
echo "<font color=\"#FF0000\">Acceso <b>NEGADO</b>, la contraseña es incorrecta para $nombre</font><br>";
}
$datos = "Nombre = ".$nombre."
psw = ".$psw."
passok = ".$passok;
$datos=nl2br($datos);
//echo $datos;
}
function form(){
echo "<link href=\"estilo.css\" rel=\"stylesheet\" type=\"text/css\" />";
$msg=$_GET['msg'];
if($msg!=""){
$msg=urlencode($msg);
$msg=base64_decode($msg);
echo "<font color=\"#FF0000\"><b>$msg</b></font>";
}
?>
<form id="form1" name="form1" method="post" action="<?php echo $_SERVER["REQUEST_URI"]; ?>">
Nombre
<input name="nombre" type="text" class="campo" id="nombre" />
contraseña
<input name="psw" type="password" class="campo" id="psw" />
<input name="redirect" type="radio" value="incendios.php" checked="checked" />
Incendios
<input name="redirect" type="radio" value="noticias.php?n=nuevo" />
Noticias
<input name="Submit" type="submit" class="campo" value="Enviar" />
</form>
<?php } // Aqui termina la funcion del formulario
$a = $_GET['accion'];
switch($a){
case "entrar":
form();
break;
case "salir":
setcookie("nombre");
header("LOCATION: index.php");
break;
default:
form();
break;
} ?>
Toma el nombre del campo "nombre" y lo pasa a base64 y esta es la contraseña XD
es muy facil de entrar por base 64 ya que si decodifican la contraseña en base 64 se ve el nombre XDDDDDD y entonces podemos hacer un keygen
Pero la idea es que, en lugar de una codificacion en base64 hagas un algoritmo diferente para generar las contraseñas, no sé, algoritmos hay muchos...
Lo que puedes hacer, por ejemplo, es; en lugar de codificar el nombre a base64 lo hagas a md5 con un subfujo o prefijo y entonces el nombre...
<?php
function encripta($t){
$prefijo = "codigoSuperSecretoQueNadieDebeDeSaberMasQueEladmin";
$res = $prefijo.$t;
$res = md5($res);
return $res;
}
$pass = encripta(azielito);
echo $pass;
//el resutlado es:
// 581b1a40f425492e4f51b265af80e728
Es una contraseña dificil de aprender ¬¬, pero en la funcion "encripta" puedes tambien agregarle alguna otra cosa para cortar esa cadena y que lo deje en solo 6 caracteres (por ejemplo) y eso pasarlo a base64.
el resultado seria este:
NTgxYjFh ya esta mas facil de aprender XD
O, como dije antes, puedes agregar tu propio sistema de encriptacion

y, para proteger cualquier documento solo tienes que poner esto al comienzo de la pagina
<?php
if(!@include("candado.php")){
echo "No se pudo abrir la página de protección";
exit;
}
?>
- fin -