Thema: Delphi C++ Übersetzung klemmt

Einzelnen Beitrag anzeigen

totti14

Registriert seit: 26. Mai 2005
Ort: Bremen
90 Beiträge
 
Delphi 10.3 Rio
 
#5

Re: C++ Übersetzung klemmt

  Alt 31. Mai 2010, 17:17
Sorry. Komplett sieht das so :
Code:
 for (i=0; i<256; i++) {
    block->keytable[i] = i;
  }

  for (i=0; i<256; i++) {
    j += key[i % len] + block->keytable[i];  
  }

  block->state = *key;
  block->counter=0;
  block->sum=0;
Das hatte ich, der Übersicht wegen, weggelassen.



Delphi-Quellcode:
Type
  TCrypt_Block = Record
    keytable: Array [0 .. 255] of byte;
    state: Pbyte; // to key or Hash ?
    counter: byte;
    sum: byte;
  End;

procedure crypt(block: PCrypt_Block; Data: PArray; len: Word; mode: TCrypt_Mode);
Var
  i: Integer;
  z: byte;
begin
  for i := 0 to len - 1 do
    begin
      Inc(block^.counter);
      block^.sum := block^.sum + block^.keytable[block^.counter];
      SwapC(block^.keytable[block^.counter], block^.keytable[block^.sum]);
      z := Data^[i];
      Data^[i] := z xor block^.keytable[(block^.keytable[block^.counter] + block^.keytable[block^.sum]) and $FF] xor block.state^;
      if mode = DECRYPT then
        z := Data^[i];
      block.state^ := block.state^ xor z;
    end;
end;
So lässt es sich jetzt compilieren. Bin mir aber mit den ganzen ^ nicht sicher. Pointer
Was macht das für einen Sinn, nur das erste Byte vom Hash zu nehmen ?
  Mit Zitat antworten Zitat