Registriert seit: 4. Aug 2005
Ort: Owschlag
129 Beiträge
Delphi 2005 Professional
|
Re: Kleine Verschlüsselung
2. Mär 2006, 13:49
so ich habe das denn noch mal überdacht:
Delphi-Quellcode:
function verschüssel (Wort: string) : string;
var i,f,x,v,ran:integer;
test, test1, test2, ran_str, test3 : string;
begin
test := '';
ran_str := '';
ran := 0;
For i := 1 to length(wort) do begin
ran := random(8)+1;
test2 := Inttostr(Ord(Wort[i])*154) ;
v := Ord(Wort[i]) * 154 * length(test2);
test2 := InttoStr(v) + InttoStr(length(test2));
test := Test+ InttoStr(ran);
If length(test) <10 then ran_str := ran_str + '0' + inttostr(length(test)) else
ran_str := ran_str + InttoStr(length(test));
test := test + test2;
end;
If length(test)> 9 then ran_str := ran_str + inttostr(length(test)) else ran_str := ran_str + '0' + InttoStr(length(test));
test3 := InttoStr(Length(ran_str));
If strtoint(test3) < 9 then test3 := '0' + test3;
result := test3 + ran_str + test;
end;
function entschüssel (Wort: string): string;
var i,f,x,y, test6, test7 : integer;
test1,test2: TStringList;
test, test3, test4, test5, test8,test10 : string;
begin
x := 0;
test := '';
test3 := '';
result := '';
test10 := '';
test4 := '';
test6 := 0;
test7 := 0;
test8 := '';
test1 := TStringList.Create;
test2 := TStringList.Create;
x := 2;
For i := 2 to (StrToInt((Wort[1] + Wort[2]))+ 2) div 2 do begin
x := x + 2;
test := Wort[x -1]+ wort [x];
If i = (StrToInt((Wort[1] + Wort[2]))+ 2) div 2 then test1.add (Inttostr(Strtoint(test) + 1)) else
test1.add (test);
end;
For i := 3 + StrtoInt(Wort[1] + Wort[2]) to length (wort) do test4 := test4 + Wort[i];
For i := 1 to (StrtoInt(Wort[1] + Wort[2]) div 2) -1 do begin
For f := strtoint(test1[i - 1]) +1 to strtoInt(test1[i]) -1 do begin
test3 := test3 + test4[f];
end;
test5 := test3[length(Test3)];
test6 := StrtoInt(test5);
For y := 1 to length(test3) - 1 do begin
test10 := test10 + test3[y];
end;
test7 := Strtoint(test10) div strtoint(test5);
test7 := test7 div 154;
test8 := Test8 + chr(test7);
test7 := 0;
test3 := '';
test10 := '';
end;
result := test8;
end;
Der string sieht dann so aus:
Zitat:
28010815222936435057647178859118932051777705788550 5289320537
77705688550538932052777705388550548932051777705488 55051893205
Jetzt könt ihr mir nicht sagen das das all zu schenll zu knacken ist
[edit=Admin]String umgebrochen, um Scrollbalken zu vermeiden. Mfg, Daniel[/edit]
|
|
Zitat
|