Einzelnen Beitrag anzeigen

Aurus

Registriert seit: 26. Aug 2005
Ort: Schweiz
53 Beiträge
 
#8

Re: Wie kann ich 3 PChar addieren

  Alt 18. Jan 2006, 22:22
Es geht nicht um XOR-Beispiele.

Ich habe schon ein paar Verschlüsselungsprogramme geschieben, aber nie mit PChar.

Ich will einen String den ich mit PChar in eine DLL mit XOR verschlüsseln.
Ich verwende einen Schlüssel der mit einem Zufallsgenerator erstellt wurde.

Doch ich komme weniger Zeichen zurück. Anders gesagt die Grösse der PChar nicht immer gleich Grosse.


Wenn der Eingangsstring 30 Zeichen hat sollte ich ich auch 30 Zeichen zurück bekommen.


Das kann ich mir nicht erklären.


Gruss

Aurus



Function DLLCKey(AChar;Faktor:Integer)Char;
var
intGr :Integer;
intZA :Integer;
intZB :Integer;
IntB1 :Byte;
intB2 :Byte;
strTxt Char;
strKey Char;
strTot Char;
strFak Char;
const
K1 =16;
begin

Randomize;

strKey :='';

//Zufallsschlüssel erstellen
For intZA :=1 to K1 do
begin
strKey := strKey + Random(255);
end;


intZB := 0;
strTxt := A;
strFak := PChar(IntToHex(Faktor,6));
strTot :=pchar(string(strKey)+ string(strTxt)+string(strFak));
intGr :=Length(strTot);



//Verschlüsseln
For intZA := K1 to intGr - 1 do
begin

inc(intZB);
if intZB > K1 then intZB :=1;
IntB1 := Ord(strTot[intZA]);
intB2 := ORD(strKey[intZB]);
strTot[intZA] :=Char(intB1 XOR intB2);
end;


Result := strTot;

end;
  Mit Zitat antworten Zitat