Einzelnen Beitrag anzeigen

gekmihesg
(Gast)

n/a Beiträge
 
#1

registrierungsschlüssel generieren

  Alt 9. Apr 2004, 16:33
ich hab ne funktion geschrieben die mir nen registrieungsschlüssel für z.b. shareware-programme errechnet.
ich bin auf dem gebiet n ziehmlicher anfänger und hät gern gewusst ob ich da irgendwo nen überflüssigen scheiß drin hab und ob des sicher is und so.

Delphi-Quellcode:
function gen_reg_key(text, passwort: string; rlen: integer = 200;
    minlen: integer = 6; maxlen: integer = 50): string;
const
  zeichen = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
var
  i,a,x,y: integer;

procedure gen_str;
var
  i:integer;
  c: char;
begin
  for i:=1 to length(text) do
    begin
      c:=chr( ord(text[i]) xor ord(passwort[y]) );
      if c <> 'then
        text[i]:=c;
      inc(y);
      if y > length(passwort) then
        y:=1;
    end;
end;

begin
  result:='';
  if (length(text) < minlen) or (length(text) > maxlen) then
    exit;
  if rlen < maxlen then
    rlen:=maxlen;

  y:=1;
  setlength(result,rlen);
  i:=length(text);
  for x:=length(result) downto 1 do
    begin
      gen_str;

      if i+1 > length(text) then
        a:=(ord(text[i]) + ord(text[1])) div 2
      else
        a:=(ord(text[i]) + ord(text[i+1])) div 2;

      if a > length(zeichen) then
        a:=a mod length(zeichen) + 1;

      text[i]:=zeichen[a];
      result[x]:=zeichen[a];
      dec(i);
      if i = 0 then
          i:=length(text);
    end;
end;
  Mit Zitat antworten Zitat