home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: Security
/
Security.zip
/
quipu10.zip
/
quipu_d.doc
< prev
next >
Wrap
Text File
|
1995-12-15
|
19KB
|
435 lines
*************************
******** QUIPU ********
*************************
QUIPU bietet
- IT-Sicherheit fuer Daten bei Speicherung und Übertragung von Dateien
durch eine symmetrische Verschlüsselung.
- Kontinuierliche Verschluesselung Byte fuer Byte, ohne
Blockbildung und Zeichenrueckfuehrung.
- Uebertragung ohne Vervielfachungon von Uebertragungsfehlern.
- das einfache Schluesselmanagement der Public Key Verfahren und
der asymmetrischer Chiffrierung.
- die hohe Chiffriersicherheit der symmetrischen Chiffrierung.
- hohe Datensicherheit zum bezahlbaren Preis.
Kurzbeschreibung des Schluesselverfahrens
=========================================
Die effektive Laenge des Arbeitsschluessels ist 1632 Bit.
Authentisierung durch eine Zeichenkette mit beliebiger Laenge zwischen
1 und 255 Zeichen.
Die Zeichenkette zur Authentisierung dient als Startwert fuer einen
hochwertigen Zufallsgenerator, der eine Schluesseldatei von beliebiger
Laenge ueber 2 kByte erzeugt. Nur mit der gleichen Authentisierungszeichen-
kette kann die gleiche Schluesseldatei mehrmals erzeugt werden. Eine
verschluesselte Datei kann nur entschluesselt werden, wenn die gleiche
Schluesseldatei zur Verfuegung steht.
Aus dieser Schluesseldatei wird beim Verschluesselungsvorgang der
Arbeitsschluessel in zwei Teilen von zwei verschiedenen, zufaellig
ausgewaehlten Stellen geholt.
Die beiden Auswahlpunkte in der Schluesseldatei, der Name der Klardatei
(ohne Pfad, lange Dateinamen bis 255 Bytes werden unterstuetzt)
und die urspruengliche 32-Bit Prüfsumme der Klardatei werden auch
verschluesselt und in der verschluesselten Datei eingefügt.
QUIPUs Schluesselgenerator wird mit den beiden Teilschluesseln
initialisiert und erzeugt fuer jedes Datenbyte ein Schluesselbyte.
Datenbyte und Schluesselbyte werden logisch verknuepft und ergeben das
verschluesselte Byte.
Zum Entschluesseln der verschluesselten Datei muss eine Schluesseldatei
vorhanden sein, die mit der gleichen Authentisierungszeichenkette erzeugt
wurde und die mindestens so lang ist, dass beide Schlüsselauswahlzeiger
hineinpassen. Eine zu kurze Schluesseldatei wird moniert und die Mindest-
laenge wird angegeben.
Der Entschluesselungvorgang verlaeuft ansonsten wie der Verschluesse-
lungsvorgang. Nach dem Entschluesseln wird die 32-Bit Pruefsumme der
entschluesselten Datei mit der uebertragenen 32-Bit Pruefsumme der Original-
datei verglichen. Unterschiede werden angezeigt. Bei unterschiedlichen
Pruefsummen liegt entweder ein Uebertragungsfehler vor oder es wurde versucht
die verschluesselte Datei zu manipulieren.
QUIPU Schritt fuer Schritt
====================================
1. Schritt: Erzeugen der Schluesseldatei
(nicht unbedingt fuer jede Ver-/Entschluesselung notwendig)
Authentisierung -> Schluesseldatei
QUIPUD -m \
-p <Parameter Datei> \
-k <Schluesseldatei> -a <Authorisierung> \
-l <gewuenschte Laenge der Schluesseldatei> \
-a <Authentisierung>
Falls die Authentisierung aus mehreren Woertern mit Zwischenraeumen besteht,
ist sie in Anfuehrungszeichen zu setzen:
-a "Dies ist die Authentisierung"
2. Schritt: Verschluesselung
Klardatei ->
>- verschlüsselte Datei
Schluesseldatei -> Schluesselalgorithmus ->
QUIPUD -e \
-p <Parameter Datei> \
-f <Klardatei> \
-c <verschluesselte Datei> \
-k <Schluesseldatei>
3. Schritt: Entschluesselung
verschluesselte Datei ->
>- Klardatei
Schluesseldatei -> Schluesselalgorithmus ->
QUIPUD -d \
-p <Parameter Datei> \
-c <verschluesselte Datei> \
-k <Schluesseldatei> \
[-f <Klardatei>]
Wenn kein Name fuer die Klardatei angegeben wird, wird der verschluesselt
ubertragene Originalname genommen.
Fachwoerter und anderes Wissenswertes
=====================================
Ich habe bewusst Fachfremdwoerter vermieden und habe weitgehend auf
allgemeinverstaendliche Woerter zurueckgegriffen um Laien nicht abzuschrecken.
Klardatei: Die urspruengliche nicht verschluesselte Datei.
Verschluesselte Datei: Die verschluesselte Klardatei.
Schluesseldatei: Eine Datei beliebiger Laenge > 2 kByte aus der
von zwei zufaellig gewaehlten Stellen die zwei
Teile des Arbeitsschluessels geholt werden.
Authentisierung: Eine Zeichenkette von 1 bis 255 Zeichen, zur
Erzeugung der Schluesseldatei. Die Erzeugung der
Schluesseldatei erfolgt durch einen komplexen
mathematischen Algorithmus. Selbst Aenderungen von
nur einem Bit in dieser Zeichenkette erzeugen eine
komplett andere Schluesseldatei.
Es empfiehlt sich, zur Vermeidung von schrift-
lichen Notizen, Klartext als Authentisierung zu
nehmen. Z.B. Saetze oder Phrasen die man sich leicht
merken kann oder Buchauszuege, deren Stelle man sich
gut merken kann. Wegen der Guete des Zufallsgenerators
ist das kein Sicherheitsrisiko.
Die Herstellung der Schluesseldatei mit leicht zu
merkenden Texten als Authentisierung, erhoeht die
Sicherheit, da keine Aufzeichnungen gemacht werden
muessen und das Schluesselmaterial zwischen den
Sitzungen vernichtet werden kann.
Die Authentisierungszeichenkette sollte nur
autorisierten Personen zugaenglich sein
da sie auch zur Autorisierung des Erstellers der
Schluesseldatei dienen soll.
Sie muss auch immer auf einem gesonderten
Uebertragungsweg uebermittelt werden. Da sie ohne
Sicherheitsrisiko aus Klartext bestehen kann, ist
die Übermittlung per Telefon oder Fax möglich. Die
Verwendung von Klartext traegt auch zur Vermeidung
von Fehlern bei der Schluesseleingabe bei.
Parameterdatei: In dieser Datei befinden sich alle Standardparameter
fuer das Programm. Die Parameter auf der Kommando-
zeile haben Vorang vor den Parametern in dieser
Datei. In dieser Datei koennen sich auch nach
der Registrierung die Registrierungsparameter (Name
und Registrierungsnummer) befinden.
Pruefsumme: Eine Zahl, die nach einer mathematischen Formel aus
den Zeichen und deren Reihenfolge einer Datei berechnet
wird. Kleinste Aenderungen in der Datei, auch
Aenderung nur eines Bits erzeugt eine komplett andere
Pruefsumme. Durch Vergleich dieser Pruefsumme einer
Datei vor und nach einer Uebertragung kann deren
Integritaet ueberprueft werden.
Schluesselgenerator: Im Programm eingebauter mathematischer Algorithmus,
der vor der Chiffierung mit 1632 Bits initialisiert
wird und dann in jedem Verschluesselungsschritt ein
Schluesselbyte erzeugt, mit dem das anliegende Klar-
byte durch eine logische Verknuepfung verschluesselt
wird. Mit dem gleichen Schluesselbyte kann durch
logische Verknuepfung mit einem verschluesselten
Byte wieder das Klarbyte hergestellt werden.
Die Folge der erzeugten Schluesselbytes ist quasi-
zufaellig. D.h. sie ist in sich statistisch zufaellig,
aber notwendigerweise reproduzierbar, was der reinen
Zufaelligkeit widerspricht.
Arbeitsschluessel: Aus der Schluesseldatei zufaellig ausgewaehlte Bits
(kurz: Schluessel) (1632), mit denen der Schluesselgenerator vor der Ver-
und Entschluesselung initialisiert wird. Der Schluessel
muss fuer Ver- und Entschluesselungin beiden Faellen gleich
sein (Symmetrisches Schluesselverfahren).
Durch die notwendige Gleichheit der Schluessel ist
die Authentisierung automatisch implementiert.
Der eingebaute Zufallsgenerator sorgt dafuer, dass
fuer jeden Verschluesselungsvorgang ein neuer
Schluessel aus der Schluesseldatei ausgewaehlt wird.
Je laenger diese Datei ist, desto mehr verschiedene
Schluessel stehen zur Verfuegung.
Authentisierung: Nachweis beim Empfaenger, daß das empfangene Dokument
unverfaelscht empfangen wurde und mit dem gesendeten
Dokument identisch ist. Dieses ist durch die Chiffrierung
mit QUIPU gegeben und wird durch die verschluesselten
Prüfsummen bestaetigt.
Autorisierung: Der Absender und der Empfaenger eines Dokumentes weisen
sich durch den Besitz des gemeinsamen Schluessels gegen-
seitig als berechtigt zum Versenden bzw. Empfangen des
aus Dokumentes aus.
Sicherheitaspekte
=================
Einige Sicherheitsaspekte beim Gebrauch von QUIPU wurden schon erwaehnt.
Hier eine Aufzaehlung in Stichpunkten:
- Authentisierungszeichenkette moeglichst in Klartext um schriftliche Aufzeichnung
zu vermeiden.
- Durch unterschiedliche Authentisierungen sind Gruppenbildungen mit gegen-
seitiger Kapselung fuer einige Uebertragungen und Oeffnung fuer andere
Uebertragungen moeglich.
- Die Schluesseldatei auf einer RAM-Disk anlegen. Das erhoeht die Sicherheit,
da diese automatisch beim Abschalten gelöscht wird.
- Bei Verwendung von komplizierten Authentisierungen, die Schlüsseldatei
auf Diskette ablegen, damit sie nach Gebrauch entfernt werden kann. Die
Schlüsseldatei muss dann nicht zu jeder Sitzung neu kreiert werden.
- Moeglichst lange Schluesseldateien anlegen, wenn diese haeufig gebraucht
werden, um die effektive Schluesselvielfalt zu erhoehen.
- Bei Verwendung von mehreren Authentisierungen fuer verschieden Partner,
empfiehlt es sich entweder fuer jede Authentisierung eine Diskette
anzulegen oder fuer jede Authentisierung eine eigene Batchdatei und eine
eigene Parameterdatei zu erzeugen.
- Der Schluesselgenerator in QUIPU ist sehr stark und daher ist haeufiger
Wechsel der Authentisierung nicht erforderlich.
- Sowohl die mögliche Schlüsselvielfalt wie auch die Laenge und die
statische Verteilung des erzeugten Stromes von Schluesselbytes machen
QUIPU immun gegen Angriffe durch Ausprobieren, Korrelation oder andere
statistische Mittel.
- Der mathematische Algorithmus von QUIPU ist so angelegt, dass die
Schluesselbytes nur in einer Richtung erzeugt werden koennen. Die Rueck-
rechnung von den Schluesselbytes auf den zur Initialisierung verwendeten
Schluessel ist nicht moeglich.
- Bei QUIPU werden die Klardaten nicht durch die Register des Schluessel-
generators gefuehrt wie bei anderen Schluesselverfahren, sondern sie
laufen daran vorbei und werden nur mit den vom Schluesselgenerator erzeugten
Quasi-Zufallsdaten logisch verknuepft. Da also die Schluesselbytes voellig
unabhaengig sind von den Klardaten, kann es auch bei langen Dateien nicht zu
Wiederholungsmustern kommen, die von den Klardaten abhaengen.
- Selbst lange Sequenzen des gleichen Zeichens in der Klardatei sind nach
der Verschluesselung nicht mehr als solche zu erkennen.
- Da der Originalname der Klardatei verschluesselt uebertragen wird, ist es
moeglich durch Vergabe von Zufallsnamen fuer die verschluesselte Datei,
nicht nur deren Inhalt sondern auch den Namen bei der Uebertragung
geheimzuhalten.
- Datenkomprimierung muss vor der Verschluesselung durchgefuehrt werden. Die
zufaellige Verteilung der Bytes nach der Verschlüsselung laesst keine
sinnvolle Komprimierung mehr zu.
- Quipu ist ein schlankes Programm, das als Beipack noch auf jede Diskette
passt oder bei Transfer im Internet an jede Datei angehaengt weren kann
und so dem Empfaenger, falls er noch nicht im Besitz ist, zusammen mit den
verschluesselten Daten zur Verfuegung gestellt werden kann. Die Authenti-
sierung fuer die Entschluesselung der Daten kann per Fax oder Telefon separat
uebermittelt werden.
- Da die Schluesseldatei schnell durch eine leicht zu merkende Authentisierung
erzeugt wird, kann QUIPU ohne Bedenken auf Notebooks verwendet werden. Die
Schluesseldatei wird einfach nach jeder Sitzung geloescht und die sensiblen
Dateien bleiben geschuetzt auf der Harddisk.
- Wenn QUIPU bei Behoerden oder Firmen in einer geschlossenen Anwendergruppe
eingesetzt wird, besteht natuerlich auch die Moeglichkeit die Schluessel-
dateien fuer alle Teilnehmer auf konventionelle Weise zentral auf Disketten
zu erstellen und dann zu verteilen. Man kann dann zur Erstellung des
Schluesselmaterials auf vorhandene Zufallsgeneratoren zurueckgreifen.
- Bei sorgfaeltiger Anwendung bietet QUIPU alle wesentlichen Faktoren der
IT-Sicherheit fuer Datenuebertragung und Datenspeicherung:
* Authentisierung des uebertragenen Dokumentes
* Autorisierung des Zugriffs auf die Ver-/Entschluesselung
* Verschluesselung der Daten
* Verifizierung der Integritaet der Daten beim Empfaenger
Lizensierung
===========
Private Nutzung:
----------------
Die vorliegende Software ist als Shareware Version QUIPU V1.0 fuer einen
Zeitraum von 60 Tagen fuer die private Anwendung frei benutzbar. Nach diesem
Zeitraum ist nur die lizensierte Benutzung erlaubt.
Die Software ist erhaeltlich fuer DOS und OS/2. Die OS/2 Version hat zu-
saetzlich zum Aufruf ueber die Kommandozeile die Moeglichkeit Dateien
durch 'Drag und Drop' zu Ver-/Entschluesseln.
Der Sourcecode ist in ANSI-C geschrieben und daher frei portierbar. Er ist
auf Anfrage erhaeltlich.
Die einzige Einschraenkung in der Shareware Version ist die Erinnerung zur
Lizensierung und ein Piepser beim Programmstart.
Zur Registrierung bitte einen Brief mit dem Namen fuer die Registrierung
und einem Verrechnungsscheck oder bares in Hoehe von DM 80,- an untenstehende
Anschrift schicken. Der eingesendete Name wird fuer die Erzeugung der Lizenz-
nummer hergenommen und muss dann in der Parameterdatei zusammen mit der
Lizenznummer genau wie geordert eingetragen werden. Gross-/Kleinschreibung ist
wichtig.
Die ausgegebene Lizenznummer kann fuer Updates wiederverwendet werden.
Die Lizenznummer wird per Post oder E-Mail verschickt. Die Software selber
aendert sich nicht. Updates werden ueber Mailboxen oder FTP-Server verteilt
und koennen mit den vergebenen Lizenznummern als lizensiert benutzt werden.
Behoerdliche und Kommerzielle Nutzung
-------------------------------------
Die behoerdliche oder kommerzielle Nutzung dieser Shareware Version ist
nicht erlaubt.
Dieser Benutzerkreis hat die Moeglichkeit dieses Programm waehrend
eines Zeitraumes von 30 Tagen zu testen. Die Nutzung ist nur moeglich mit
einer Lizenz.
Lizenzen fuer behoerdliche oder kommerzielle Nutzung sowie der Sourcecode
sind auf Anfrage erhaeltlich. Anfragen bitte an untenstehende Anschrift.
E-Mail wird bevorzugt.
Behoerdliche und kommerzielle Lizenzen werden per Post verschickt.
Fuer behoerdliche oder kommerzielle Nutzung sind Modifikationen moeglich.
- automatische Loeschung der Klardatei nach dem Verschlüsseln.
- Benutzung von zwei Schluesseldateien fuer die Auswahl des Arbeits-
schluessels. Dadurch kann die Zugangskontrolle (Autorisierung) ver-
bessert werden, wenn man die dann notwendigen zwei Authentisierungs-
texte an zwei Personen vergibt, die beide zur Ver-/Entschluesselung
anwesend sein muessen.
- Geaenderte Grundeinstellung oder Initialisierung des Algorithmus.
- Programmabruch bei falscher Lizenznummer. Dieses verbessert auch die
Zugangskontrolle, wenn Name und Lizenznummer nicht in der Parameterdatei
erscheinen, sondern beim Programmstart eingegeben werden muessen (Passwort).
Andere Aenderunge sind auf Anfrage moeglich.
Haftung
=======
Der Autor haftet nicht fuer irgendwelche Schaeden die durch mittelbare
oder unmittelbare Benutzung des Programmes an Personen, Sachen oder
Daten entstehen.
Kundendienst und Weiterentwicklung
==================================
Alle Fragen, Anregungen, Wuensche bitte an eine meiner E-Mail Anschriften
richten. Registrierte Benutzer werden bei der Beantwortung natuerlich bevorzugt.
Der Schluesselalgorithmus wird nicht geaendert werden. Fuer die Verbesserung
der Bedienung und des Betriebsablaufes steht auf dem Programm:
- Erhoehung der Geschwindigkeit beim Ver-und Entschluesseln.
- Beruecksichtigung der EAs unter OS/2.
- evtl. Makros fuer Standardsoftware zur automatischen Verschluesselung beim
Abspeichern von bearbeiteten Dateien.
- evtl. Integration von Komprimierung.
- evtl. Integration von UU-Codierung fuer Internetuebertragung.
Anregungen sind auf jeden Fall willkommen!
Anschriften
===========
Michael Mieves
Wessobrunner Weg 1
D-82407 Wielenbach
Fax: 0881-63543 (nur wenn mein PC laeuft!)
CIS: 100334,142
Internet: Mieves@btx.dtag.de
mieves@ibm.net
*********************************************************
* Uebrigens: *
* *
* QUIPU ist benannt nach den Knotenschnueren der Inkas. *
* Diese bliebe lange ein unentziffertes Geheimnis. *
* *
* Die von QUIPU geschützten Daten werden ebenso auf *
* lange Zeit geheim bleiben. *
*********************************************************