Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-03-2009
Cecilio Cecilio is offline
Miembro
 
Registrado: ago 2007
Posts: 140
Poder: 17
Cecilio Va por buen camino
He localizado la función que desencripta..
Pero no me entero de nada. Creo que convierte a hexadecimal pero he realizado pruebas con una clave conocida y no da el resultado ni por asomo, tanto en MD5 Sha1

Código PHP:
function getCryptedPassword($plaintext$salt ''$encryption 'md5-hex'$show_encrypt false)
    {
        
// Get the salt to use.
        
$salt JUserHelper::getSalt($encryption$salt$plaintext);

        
// Encrypt the password.
        
switch ($encryption)
        {
            case 
'plain' :
                return 
$plaintext;

            case 
'sha' :
                
$encrypted base64_encode(mhash(MHASH_SHA1$plaintext));
                return (
$show_encrypt) ? '{SHA}'.$encrypted $encrypted;

            case 
'crypt' :
            case 
'crypt-des' :
            case 
'crypt-md5' :
            case 
'crypt-blowfish' :
                return (
$show_encrypt '{crypt}' '').crypt($plaintext$salt);

            case 
'md5-base64' :
                
$encrypted base64_encode(mhash(MHASH_MD5$plaintext));
                return (
$show_encrypt) ? '{MD5}'.$encrypted $encrypted;

            case 
'ssha' :
                
$encrypted base64_encode(mhash(MHASH_SHA1$plaintext.$salt).$salt);
                return (
$show_encrypt) ? '{SSHA}'.$encrypted $encrypted;

            case 
'smd5' :
                
$encrypted base64_encode(mhash(MHASH_MD5$plaintext.$salt).$salt);
                return (
$show_encrypt) ? '{SMD5}'.$encrypted $encrypted;

            case 
'aprmd5' :
                
$length strlen($plaintext);
                
$context $plaintext.'$apr1$'.$salt;
                
$binary JUserHelper::_bin(md5($plaintext.$salt.$plaintext));

                for (
$i $length$i 0$i -= 16) {
                    
$context .= substr($binary0, ($i 16 16 $i));
                }
                for (
$i $length$i 0$i >>= 1) {
                    
$context .= ($i 1) ? chr(0) : $plaintext[0];
                }

                
$binary JUserHelper::_bin(md5($context));

                for (
$i 0$i 1000$i ++) {
                    
$new = ($i 1) ? $plaintext substr($binary016);
                    if (
$i 3) {
                        
$new .= $salt;
                    }
                    if (
$i 7) {
                        
$new .= $plaintext;
                    }
                    
$new .= ($i 1) ? substr($binary016) : $plaintext;
                    
$binary JUserHelper::_bin(md5($new));
                }

                
$p = array ();
                for (
$i 0$i 5$i ++) {
                    
$k $i +6;
                    
$j $i +12;
                    if (
$j == 16) {
                        
$j 5;
                    }
                    
$p[] = JUserHelper::_toAPRMD5((ord($binary[$i]) << 16) | (ord($binary[$k]) << 8) | (ord($binary[$j])), 5);
                }

                return 
'$apr1$'.$salt.'$'.implode(''$p).JUserHelper::_toAPRMD5(ord($binary[11]), 3);

            case 
'md5-hex' :
            default :
                
$encrypted = ($salt) ? md5($plaintext.$salt) : md5($plaintext);
                return (
$show_encrypt) ? '{MD5}'.$encrypted $encrypted;
        }
    } 
Alquien que sepa php podría indicarme ?
__________________
Saludos Cordiales.
------------------

Responder Con Cita
  #2  
Antiguo 13-03-2009
Cecilio Cecilio is offline
Miembro
 
Registrado: ago 2007
Posts: 140
Poder: 17
Cecilio Va por buen camino
Como mis conocimientos de PHP son demasiados escasos para descifrar como se crea la clave cifrada he pensado lo siguiente:

Crear el usuario aleatoriamente y poner una clave conocida y única para todos.
La clave la puedo obtener de un usuario actual, copiando todo el tocho de dígitos.

Es algo chapuza, pero puede valer.
__________________
Saludos Cordiales.
------------------

Responder Con Cita
  #3  
Antiguo 13-03-2009
JXJ JXJ is offline
Miembro
 
Registrado: abr 2005
Posts: 2.475
Poder: 22
JXJ Va por buen camino
esa es lo que mal explique que podias hacer.

la conocidicima clave. 123456789
para todos los usuarios y ya ellos ingresan y modifican la clave.
aunque podrias dar la seudo seguridad .. de que de el usuario 1 al 100
la misma clave. del 101 al 201. otra clave igual .
y asi...

suerte.
Responder Con Cita
  #4  
Antiguo 13-03-2009
Cecilio Cecilio is offline
Miembro
 
Registrado: ago 2007
Posts: 140
Poder: 17
Cecilio Va por buen camino
Pues si, es muy coerente, crear claves por tramos.

Aunque el nombre de usuario será 4 digitos del número de cliente y otros 4 dígitos aleatorios.

Y unidos a tramos de password, la seguridad mejorará.

De todas formas, voy a intentar contactar con el equipo de joomla o con algún foro de php, ya que va a ser algo para largo, y me gustaría hacerlo bien.
__________________
Saludos Cordiales.
------------------


Última edición por Cecilio fecha: 13-03-2009 a las 17:18:27. Razón: faltaba puntualizar algo.
Responder Con Cita
  #5  
Antiguo 14-03-2009
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por Cecilio Ver Mensaje
he pensado lo siguiente:

Crear el usuario aleatoriamente y poner una clave conocida y única para todos.
La clave la puedo obtener de un usuario actual, copiando todo el tocho de dígitos.

Es algo chapuza, pero puede valer.
Pues no sé si es chapuza o no pero si sirve es buena.

De todas formas, me di a la tarea de investigar un poco y me encontré con el plugin userport que te permite importar y exportar usuarios. Tú sólo tienes que proveer los datos así:

Código:
Hugo Donald, hugo, hugo@disney.com, hugo001
Paco Donald, paco, paco@disney.com, paco002
Luis Donald, luis, luis@disney.com, luis003
es decir, cuatro campos:

nombre completo, nombre de usuario, email, contraseña

Por defecto, pone los usuarios como autores, pero puedes configurarlo para que los ponga como usuarios registrados, editor, etc. También puedes configurar el separador (por defecto es la coma).

La contraseña es plana, esto es, sin encriptar. De manera que puedes pre-procesar tu archivo de texto y colocar la contraseña que desees y el plugin se encarga de encriptarla.

Por lo demás, el plugin es muy fácil de instalar, nada más te descargas el zip, te vas al menú Extensions|Install/Uninstall y en la sección "Upload Package File" buscas el archivo descargado y oprimes el botón "Upload File & Install".

El plugin lo verás en el menú Components.

El único pero que le veo es que no te permite cargar el archivo de texto sino que tienes que copiar y pegar su contenido en un recuadro. Pero salvo eso, lo he probado y funciona muy bien.

// Saludos
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Joomla & Interbase AMINOA2R Firebird e Interbase 3 16-07-2008 07:54:53
alta de usuarios en linux desde php irene PHP 1 21-08-2007 17:50:24
Joomla Alimentarlo con RSS JXJ PHP 5 09-07-2007 22:03:09
Alta de usuarios Win 2003 Server jorelivi Varios 2 21-06-2007 19:44:45
Por que dar de alta a los usuarios... Arturo MySQL 2 04-02-2005 22:45:01


La franja horaria es GMT +2. Ahora son las 20:40:45.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi