🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.os.linux.programacion
Article #8149

Re: Comprobar comtraseña

#8149
From: Fernando Arbeiza
Date: Tue, 17 Dec 2002 16:15
61 lines
2839 bytes
Hola:

S�lo puntualizar una cosita:

On Tue, 17 Dec 2002 15:32:46 +0100, Jose A <MAQUI000@.> wrote:
> // Dentro de este bloque if comprobamos el tipo de
> // password que se usa, si empieza por "$1$", es
> // del tipo md5, y copiamos los 11 primeros caracteres
> // del password que est�n formados por la identificaci�n
> // (3 caracteres) y la salt (8 caracteres), por ejemplo:
> // $1$aT���TjK

En las contrase�as MD5, me parece que la salt no tienen por qu� ser 8
caracteres (pueden ser menos). As� que creo que es mejor quitar ese if,
y meter directamente como salt el password cifrado original. Ya se
encarga crypt de separar el salt que haga falta y elegir el algoritmo.

Es decir:


> int main (int argc, char *argv[0]) {
    char *pwd, *passwd, *tpwd;
>     struct spwd *p;
> 
>     if (argc < 3) {
>         printf ("Usar %s nombre password\n", argv[0]);
>         exit (1);
>     }



> // Bloqueamos el fichero "/etc/shadow" para que no se
> // modifique mientras accedemos a sus datos.
>     lckpwdf ();
>     p = getspnam (argv[1]);
> // Y aqu� lo desbloqueamos.
>     ulckpwdf ();
>     
>     pwd = argv[2];
>     passwd = p->sp_pwdp;
>


> // Aqu� se encripta la password pasada al programa y
> // a continuaci�n se compara con la almacenada en el
> // fichero "/etc/shadow".
        tpwd = (char *) crypt (pwd, passwd);
>     if (strcmp (tpwd, passwd) == 0) {
>         printf ("Las password son iguales\n");
>     } else {
>         printf ("Las password son distintas\n");
>     }
>     return 0;
> }

Un saludo.

-- 
Fernando Arbeiza
arbeizaf [arroba(at)] ono [punto(dot)] com
LFS en castellano:  <URL:http://www.escomposlinux.org/lfs-es>
Technical Details
Message-ID: <slrnavujd0.fsn.direccion_en_la_firma.address_in_signature@jupiter.olimpo>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news2.google.com!news1.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.fjserv.net!proxad.net!peer1.news.newnet.co.uk!fu-berlin.de!uni-berlin.de!62.42.160.52!not-for-mail
References: <atgjct$13knnp$1@ID-129971.news.dfncis.de> <atncbv$k5m81@cesio.mundo-r.com>

Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII
X-Google-Thread: f86c8,249be857bbf5a850
X-Google-Attributes: gidf86c8,public
X-Google-ArrivalTime: 2002-12-17 08:17:26 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news2.google.com!news1.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.fjserv.net!proxad.net!peer1.news.newnet.co.uk!fu-berlin.de!uni-berlin.de!62.42.160.52!not-for-mail
From: Fernando Arbeiza <direccion_en_la_firma.address_in_signature@homelinux.org>
Newsgroups: es.comp.os.linux.programacion
Subject: Re: Comprobar comtraseña
Date: Tue, 17 Dec 2002 17:15:28 +0100
Lines: 61
Message-ID: <slrnavujd0.fsn.direccion_en_la_firma.address_in_signature@jupiter.olimpo>
References: <atgjct$13knnp$1@ID-129971.news.dfncis.de> <atncbv$k5m81@cesio.mundo-r.com>
NNTP-Posting-Host: 62.42.160.52
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-15
Content-Transfer-Encoding: 8bit
X-Trace: fu-berlin.de 1040141845 840037 62.42.160.52 (16 [148301])
X-Orig-Path: jupiter.olimpo!news
User-Agent: slrn/0.9.7.4 (Linux)