Ver Mensaje Individual
  #132  
Antiguo 10-09-2007
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Reputación: 24
seoane Va por buen camino
Cita:
Empezado por dec Ver Mensaje
Bueno... a mí me gusta empezar y acabar, lo que pasa es que las cosas son como son... esto de los programas y tal... no se sabe nunca dónde acaban.
Tampoco quería decir que dejaras todo a medias Es verdad que al final los detalles finales pueden alargarse indefinidamente, y cuando crees que ya lo tienes se te ocurre algo mejor ... en fin, que la cosa nunca acaba.

Y como comentaba antes, lo bueno de usar un algoritmo sencillo es que puede portarse fácilmente. Por ejemplo a freepascal.
Código Delphi [-]
program passhash;

uses Sysutils, md5;

function PassGen(Str: String): String;
const
  Alfa = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
var
  i: Integer;
begin
  PassGen:= '';
  Str:= MD5Print(MD5String(Str));
  for i:= 0 to (Length(Str) div 4) - 1 do
    PassGen:= PassGen +
      Alfa[(StrToInt('$'+Copy(Str,(i*4)+1,4)) mod Length(Alfa))+1];
end;

var
  i: Integer;
  Str: String;
begin
  Str:= '';
  for i:= 1 to ParamCount do
    Str:= Str + ParamStr(i);
  Writeln('Hash: ' + PassGen(Str));
end.

Código:
./passhash www.clubdelphi.com secreto
Hash: EEOWyCST
Responder Con Cita