[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: polymorphe Verschluesselung?



On 2000-05-10 10:05:52 +0200, Harald Milz wrote:

> kann jemand was zur Qualität der so genannten
> polymorphen Verschlüsselung (www.ciphers.de) sagen?

Ich glaube, ich würde eher keine Kryptoalgorithmen
verwenden, die jemand "designed", der Code wie diesen hier
in eine Delphi-Referenzimplementierung (!!)
hineinschreibt:

    // (6) next: rol and ror combined with add, sub or xor
    if (instruction_code<=7) then begin
        // rol
      if (instruction_code=2) then begin
        if (data_value<2) then begin
          ap[i]:=$D1;      // rol eax,1
          inc(i);
          ap[i]:=$C0;
          inc(i);
        end
        else begin
          ap[i]:=$C1;      // rol eax,2 .. 7
          inc(i);
          ap[i]:=$C0;
          inc(i);
          ap[i]:=data_value and $07;
          inc(i);
        end;
        ap[i]:=$01;        // add ebx,eax
        inc(i);
        ap[i]:=$C3;
        inc(i);
        instruction_code:=255;
      end; // if (instruction_code=2) then begin

So ähnlich, also mit anscheinend handgehextem Assembler in
Arrays, der dann irgendwie ausgeführt wird, geht es über
weite Strecken des veröffentlichten Quellcodes weiter.

Ehrlich gesagt wirkt das ganze, als hätte der gute Mann
alles, was er an Datenverfremdung je gesehen hat, in einen
großen Topf geschmissen und kräftig gerührt.  Das einzige,
was davon größere Ähnlichkeit mit bekannten
Kryptierverfahren entwickelt, ist jedoch ein
Schieberegister.


Jedenfalls ist keine saubere Beschreibung des
implementierten Designs zu finden - ein neun-Seiten-PDF,
das als Beispiele für Baublöcke der Software
ia32-Assembler-Implementierungen von CRC32 und einem
einfachen XOR bietet (aber nicht fähig ist, vom
Maschinencode auf die stattfindenden Transformationen zu
abstrahieren), kann da wohl kaum zählen, und Code wie der
oben zitierte auch nicht.  

Sätze wie der folgende: "Jeder Codeblock beeinflußt
mindestens 32 Bit und machmal ändert es sogar den
Schlüssel im Datenspeicher." tragen auch nicht gerade zum
Vertrauen bei.


Ach ja, für eine wie auch immer geartete
Praxistauglichkeit bräuchte man auch noch ein vernünftiges
Key-Management, und das bietet die Implementierung
offenbar nicht.

Der Nutzer wäre wohl mit einem one-time-pad und
Schlüsselaustausch per CD-ROM besser bedient, bei gleichem
Aufwand für das Key-Management und größerer Sicherheit.