
                 DODec - Der Directory Opus 4.0 Decrypter
               --------------------------------------------

             copyright (c) 1993 bei Markt & Technik Verlag AG
                      geschrieben von Thomas Lopatic

     -----------------------------------------------------------------

Directory  Opus  bietet  in  der  Version 4.0 eine Option zum Verschlsseln
wichtiger   Daten.    Der   verwendete   Algorithmus  weist  jedoch  einige
offensichtliche Schwchen auf.  DODec bedient sich einiger dieser Schwchen
und rekonstruiert aus einer verschlsselten Datei die ursprnglichen Daten.
Damit  die Korrektheit der Entschlsselung eindeutig berprft werden kann,
mu DODec dazu die ersten vier Byte der unverschlsselten Datei kennen.  In
der  Regel  verursacht  das  jedoch  keine Probleme, da viele Files, z.  B.
IFF-Dateien, stets eine Standardkennung am Dateibeginn besitzen.

Directory   Opus   errechnet   aus  dem  eingegebenen  Schlsselwort  einen
32-Bit-Wert.  Es existieren also maximal 2 ^ 32 verschiedene Schlssel, was
fr  eine  sichere  Verschlsselung  absolut  zu wenig ist.  Darber hinaus
treten  bei  der  Umrechnung  der Schlsselphrase in den 32-Bit-Wert einige
Werte wesentlich hufiger auf als andere.

DODec  benutzt  den  einfachsten  aller Angriffe, den "Brute Force Attack".
Das  Programm  probiert  dabei  einfach  alle  mglichen  Schlssel aus dem
32-Bit-Schlsselraum  durch,  beginnend  mit den wahrscheinlichsten Werten.
Dieses  Verfahren  bentigt  auf einem 7-MHz-Amiga im absolut ungnstigsten
Fall  vier  Tage.  Aufgrund der extrem ungleich verteilten 32-Bit-Schlssel
ist es jedoch sehr wahrscheinlich, da die Lsung innerhalb weniger Minuten
oder  Stunden  gefunden  wird.   Das  Verfahren  liee sich noch wesentlich
beschleunigen,  da  der verwendete Algorithmus noch einige andere Schwchen
besitzt.   DODec  mchte  jedoch  lediglich zeigen, da ein Angriff auf das
verwendete Verfahren mglich und durchfhrbar ist.

Um  mit  DODec  zu  arbeiten,  mu  sich  "dodec.def"  entweder  im aktiven
Verzeichnis  oder  in  "s:"  befinden.  Diese Datei enthlt die ersten vier
Byte  einiger  Standard-Dateitypen wie beispielsweise IFF-Dateien ("FORM").
Da  die  Datei  in  reinem  ASCII  vorliegt, sind eigene Erweiterungen kein
Problem.   Es  ist  lediglich  darauf zu achten, da der Name des Dateityps
keine  Leerzeichen  beinhaltet.  Die darauf folgenden vier dezimalen Zahlen
sind die ersten vier Byte des bezeichneten Dateityps.

DODec luft ab Betriebsystemversion 2.0.

Nach  dem  Programmstart ffnet DODec ein Fenster mit einer aus "dodec.def"
eingelesenen   Liste  an  Standard-Dateitypen  und  verschiedenen  Knpfen.
"Quelle" erlaubt dem Anwender, den Dateinamen der zu entschlsselnden Datei
(=  Quelldatei)  festzulegen.  Der komplette Dateipfad wird daraufhin neben
"Quelle:"  angezeigt.  "Ziel" gibt den Dateinamen der entschlsselten Datei
an, der Pfad wird dann neben "Ziel:" angegeben.

Die    vier   Zahlen-Gadgets   enthalten   die   vier   ersten   Byte   der
unverschlsselten  Datei.   Tragen  Sie  hier  ihre eigenen Werte ein, oder
whlen Sie einfach eine der Vorgaben aus der Liste der Standard-Dateitypen.

Der "Start"-Knopf startet die Entschlsselung.  DODec liest dann die ersten
vier   Byte   der   verschlsselten   Datei   ein  und  versucht  diese  zu
entschlsseln.   Der  Vergleich  mit  den  vier Byte aus den Zahlen-Gadgets
zeigt  dann, ob ein Entschlsselungsversuch erfolgreich war.  Hat DODec den
korrekten  Schlssel  gefunden, speichert es die entschlsselte Datei unter
dem   bei   "Ziel:"  angezeigten  Namen  plus  einer  neun  Zeichen  langen
Erweiterung.   Die Erweiterung stellt dabei den 32-Bit-Wert des verwendeten
Schlssels hexadekadisch dar.

Die  Entschlsselung ist in Runden unterteilt.  Es existieren 65536 Runden,
die  im  schlimmsten  Fall  alle  durchlaufen  werden mssen.  Im Test sind
jedoch  nie Schlssel aufgetreten, die mehr als 4096 Runden bentigten.  So
ergab  sich  beim  Testen auf einem 7-MHz-Amiga eine maximale Wartezeit von
rund  sechs  Stunden  pro  Entschlsselung.   Der  "Stop"-Knopf  bricht den
Entschlsselungsvorgang  nach  Beendigung der aktuellen Runde ab.  Beachten
Sie,  da  auch  das  Programmfenster  erst  jeweils  nach Beendigung einer
kompletten Runde wieder neu aufgebaut wird.

Da  DODec  prinzipbedingt  mehr  als  einen Schlssel finden kann, wird die
Suche  nicht nach Auffinden des ersten Schlsselwertes abgebrochen.  Findet
das  Programm  einen mglichen Schlssel, so sollten sie das entschlsselte
File   erst   von  Hand  auf  Korrektheit  berprfen.   Wurde  es  korrekt
entschlsselt,  kann  der  Suchvorgang  abgebrochen  werden.   Im Test trat
jedoch  stets  nur  ein  Schlssel  auf,  so  da  die  Suche nach weiteren
Schlsseln lediglich eine Vorsichtsmanahme ist.

Mchte  jemand  das  Programm weiter verbessern, Fehler (?) entfernen, oder
den  Algorithmus  einer weitergehenden Cryptoanalyse unterziehen, steht ihm
im Unterverzeichnis "source" der komplette DODec-Quelltext in C (Aztec 5.0)
und Assembler zur Verfgung.


     -----------------------------------------------------------------
