HEKTOR 128 - Sprachverschlüssler
nach dem Transpositionsverfahren


Wer öffentliche Kommunikationssysteme nutzt, muss damit rechnen, dass hier Unbefugte Informationen abgreifen. Gegen elektronische Bespitzelung schützt eben kein aufgeweichtes "Fernmeldegeheimnis" und auch kein naiver Datenschutz, sondern einzig und allein der beherzte Einsatz von Kryptografie.

Vorworte | Projekt | Hardware | Firmware | Nachbau | Bedienung | Sicherheit | Messungen | Kommentar | Nachworte | Index


Prototyp1
Bild 1a: Technischer K.O. für Schäuble und Co.



Tabelle 1: Technische Daten
der HEKTOR-Firmware V1.0

Beschreibung: Taktische Sicherheit für die Sprachkommunikation im Halbduplex auf einer autonomen und transparenten Plattform
Verfahrens-
klasse(n):

Zeittransposition + Frequenzvariation
Bandbreite: Allgemeine Telefonie-Anforderungen (Basisband maximal 300-3300 Hz)
Interner Codec:
Deltamodulation, Abtastrate um 96 kHz
Blockdauer: 1,28 s Block + 40 ms Synchro
Blockteilung: 128 Symbole pro Block,
64 Frequenzvariationen pro Symbol
Symboldauer:
ca. 10 ms (Laufzeitvariation +/- 50 %)
Schlüssel-
management:
16-stelliger Dezimalcode als symmetrischer Sitzungsschlüssel
Schlüsselraum:
1016 verschiedene Startbedingungen (entspr. einem 53-Bit-Schlüssel)
Schlüsselwechsel
(Rolling Code):
Transpositionstabelle wechselt mit jedem Block, Frequenztabelle wechselt mit jedem Durchgang
Synchronisation: 1510 Hz Durchgangskennung (1,3 s)
1625 Hz Blocksynchronisation (40 ms)
und Blockende (ca. 2 s)



Telefonverschlüsselung für alle

Wer private E-Mails übertragen will, verschlüsselt diese. Wer private Daten auf seiner Festplatte für sich behalten will, verschlüsselt diese. Wer private Telefonate führen will, verschlüsselt diese. Nie war das so klar, wie heute.

Nun ist Kryptografie für viele Menschen nicht ganz so selbstverständlich, wie etwa das Zukleben von Briefumschlägen oder das Absichern der Wohnungstür. Erschwerend kommt hinzu, dass es insbesondere für die Sprachverschlüsselung auch scheinbar keine einzige kommerzielle oder nichtkommerzielle Lösung gibt, die wirklich robust und praktisch anwendbar und transparent und bezahlbar wäre.1

Dabei wollen wir doch bloß das gesprochene Wort von "A" nach "B" transportieren, ohne dass ein allzu neugieriger "C" diese Kommunikation mit realistischem Aufwand entziffern kann. Wir wollen darüber hinaus keine unnötigen Datenspuren und Serverprotokolle erzeugen, und wir wollen auch dort die Option für eine verschlüsselte Sprachkommunikation haben, wo nur ein ganz ordinärer Telefonanschluss zur Verfügung steht.
Da wir am Telefon keine langfristigen strategischen Planungen besprechen, brauchen wir nicht zwangsläufig eine überkandidelte volldigitale Verschlüsselung, bei der "ein Superrechner soundsoviele Millionen Jahre rechnen müsste, um den Code zu brechen". Viel wichtiger als solche rein theoretischen Zahlenspielchen sollte doch wohl sein, dass das Kryptosystem in der Realität eine robuste und vor allem nachvollziehbare Sicherheit gewährleisten kann. Sie sollte schon deutlich über dem liegen, was kommerzielle "Scrambler" zu bieten haben. Einem ernsthaften kryptoanalytischen Angriff sollte das System mindestens für ein paar Tage, vielleicht auch eine Woche standhalten können; gerade so lange, bis die interessanten Informationen schon wieder "veraltet" sind und ihre Aufdeckung für den Abhörgegner keinen direkten Nutzen mehr hätte.

Diese taktische Sicherheit lässt sich bereits mit einem knackigen Analogverfahren erreichen!

Zur Klarstellung: Unter "Analogverfahren" verstehen wir im erweiterten Sinne alle Methoden der Signalverarbeitung, bei denen das Audiosignal nicht als digitaler Datenstrom verschlüsselt wird, sondern durch Manipulationen in der Zeit- und/oder Frequenzdomäne. Unter "taktischer Sicherheit" verstehen wir in diesem Zusammenhang deutlich mehr, als etwa eine reine Verschleierung im Sinne von Frequenzinversion2.

Von den klassischen Analogverfahren hat vor allem die gute alte Zeittransposition das Potenzial, einem Sprachsignal nennenswerte Komplexität zu verleihen. Das Verfahren ist simpel, aber fast beliebig skalierbar. Wer bereit ist, auf Bedienkomfort zu verzichten, kann die Blocklänge und die Teilung bei der Zeittransposition sehr hoch ansetzen, und bekommt dafür eine echte Analogverschlüsselung, die diesen Namen verdient.

Die allgemeinen Vorteile von Analogverschlüsselungen bleiben auch mit einer sehr komplexen Zeittransposition erhalten: Im Gegensatz zu einem volldigitalen Verschlüssler, der einen anspruchsvollen Datenstrom übertragen muss, und der daher meist auf ein bestimmtes digitales Transportmedium mit Sicherungsschicht (ISDN, UMTS, TCP/IP) angewiesen ist, liefert der Analogverschlüssler an seinem Ausgang ein seltsam klingendes Audiosignal. Dieses Signal lässt sich weiterhin über schmalbandige Kanäle übertragen. Wegen seines analogen Charakters ist das Signal weniger störanfällig, als beispielsweise ein Modemsignal. Für den Analogverschlüssler ist es praktisch egal, ob das Übertragungsmedium nun ein analoges oder digitales Funkgerät oder ein analoges oder digitales Telefonsystem ist. Die Installation erfolgt stets im niederfrequenten Signalpfad, sie ist nur eine Frage von passenden Adaptern und der Angleichung von Signalpegeln.

Der Analogverschlüssler als universell einsetzbare und krisensichere Option zur Sprachverschlüsselung

Mit den heute zur Verfügung stehenden Komponenten können wir das analoge Verschlüsselungsverfahren der Zeittransposition nicht nur relativ preisgünstig, sondern auch in einer Komplexität und Präzision durchführen, die früher undenkbar war. Die Tatsache, dass jedes schmalbandige Telefonie-System zur verschlüsselten Übertragung genutzt werden kann, ist unter dem technisch-strategischen Gesichtspunkt nicht zu verachten.

Das Projekt "HEKTOR" ist nun ein konkreter Vorschlag, wie ein Analogverschlüssler mit höherem Sicherheitsanspruch für den Hausgebrauch aussehen könnte.
Die Technik passt in ein süßes kleines Kästchen, das sich mit wenigen Handgriffen an jeden analogen Telefonanschluss dranstöpseln lässt. (Also z.B. auch: ISDN-Terminaladapter, VoIP-Box) Bei Bedarf können wir mit wenigen Tastendrücken auf Privatkommunikation umschalten. Bedienung und Schlüsselmanagement sind so einfach wie möglich gehalten, aber nicht einfacher. Was den Bedienkomfort betrifft, ist das System nicht mit den "idiotensicheren" Produkten für Amtsstuben oder Militärangehörige vergleichbar.

Alle technisch-mathematischen Details sind offengelegt und für den ernsthaft interessierten Nutzer lückenlos nachvollziehbar (Kerckhoff). Meiner Meinung nach dürfte die hier praktizierte Variante der Zeittransposition mit semiprofessionellen Mitteln nicht mehr zu brechen sein. Darüber hinaus wurden ein paar nette Komplikationen eingebaut, die sich gegen anspruchsvollere phonetische Analyseansätze richten. Damit sollte das System auch professionellen Angriffsmethoden für einige Zeit Paroli bieten können. Diese Einschätzung werde ich weiter unten noch genauer darlegen und zur Diskussion stellen.




1 Manch einer hofft wohl noch immer, dass das Internet und insbesondere die verschlüsselte Internet-Telefonie (VoIP-Sec) diese Forderungen erfüllen wird... Nun ja, das hätte sie doch schon längst tun können! Hat sie aber nicht. Und die Gründe sind sicher nicht nur technischer Natur. Von den korrupten kommerziellen Anbietern (ein weißer Schimmel) darf man keine brauchbaren Krypto-Lösungen erwarten. Jedenfalls keine, die weltweit einsetzbar wären. Das bedeutet: Keine harte Verschlüsselung, keine Anonymisierung der Verbindungsroute, keine offen dokumentierten Quellcodes, dafür aber "mit Sicherheit" komfortable Hintertürchen für einschlägige Dienste... Da können wir's auch gleich lassen. Und dass sogenannte freie Projekte zur verschlüsselten Internet-Telefonie immer wieder im Sande verlaufen, das hat sicher auch nicht nur technische Gründe. Wo bleibt es denn, das endgeile Endgerät für VoIP, oder wenigstens eine vertrauenswürdige Software-Lösung? Könnte es sein, dass das Internet vielleicht doch kein so tolles Streaming-Medium ist? Könnte es vielleicht sogar sein, dass bestimmte Protokolle und Organisationsformen bereits heute systematisch sabotiert und zensiert werden? Machen wir uns doch nichts vor: Es ist nur eine Frage der Zeit, bis auch hierzulande "chinesische Verhältnisse" bei der Internetnutzung herrschen.

2 Leider beschränken sich die handelsüblichen Spielzeuggeräte auf Manipulationen in der Frequenzdomäne. Vorteilhaft ist hier nur die relativ gute Soundqualität und die Tatsache, dass keine nennenswerte Durchlaufverzögerung entsteht. Viele Systeme für den Telefonbetrieb ermöglichen sogar einen richtigen Vollduplex. Soviel Komfort sollte misstrauisch machen. Tatsächlich gelten alle Analogverfahren, die nur in der Frequenzdomäne operieren, als relativ schwach. Selbst die aufwendigsten Varianten der Frequenzinversion (mehrere Teilbänder, ständiger Wechsel der Mischfrequenzen) haben nach heutigen Maßstäben nicht besonders viele Freiheitsgrade, sodass man keinen großen Schlüsselraum generieren kann. Aus diesem Grund lassen sich wahrscheinlich auch die kompliziertesten Varianten der Frequenzinversion mit speziellen DSP-Tools knacken. Ehrlicherweise sollte man hier also garnicht von Verschlüsselung sprechen, sondern von einer Verschleierung. Sie schützt bestenfalls gegen das versehentliche Mithören durch technisch schlecht ausgerüstete Gelegenheitslauscher ...
(Ergänzung: Gelegentlich liest man von neuartigen Ansätzen zur analogen Sprachverschlüsselung, die auf Grundlage von komplexen Modulationstechniken oder Elementen der Chaostheorie funktionieren sollen - schade nur, dass diese vielversprechenden Konzepte anscheinend nie zu praktisch einsetzbaren Geräten werden. Das kann nur zwei Gründe haben: Entweder funktionieren viele dieser Systeme auf realen Telefonsystemen doch nicht so richtig, oder die Entwürfe verschwinden still und leise in irgendwelchen Schubladen...)


Nach oben


Codename: "HEKTOR"

Das Konzept dieses Sprachverschlüsslers kombiniert zwei unterschiedliche Verfahrensklassen zur analogen Sprachverschlüsselung: Zeittransposition mit großzügigen Parametern sowie eine einfache Form der Frequenzsubstitution.

Die Hardware beruht auf einem AVR-Mikrocontroller mit RAM-Erweiterung und einem Minimum an Analogelektronik drumherum. Es handelt sich um eine autonome, transparente, experimentierfreundliche und preiswerte Plattform.

Die Software realisiert eine komplexe Zeittransposition mit langen Blöcken und feiner Teilung. Durch diese hoch angesetzten Parameter für das Transpositionsschema wird erreicht, dass die Untermenge von brauchbaren Transpositionen (das sind solche, die eine wirklich gute Durchmischung des Signals gewährleisten) tatsächlich groß genug wird, um einen Brute-Force-Angriff von vornherein aussichtslos zu machen. Zusätzlich kommt eine dynamische Frequenzvariation zur Anwendung. Als ergänzende Maßnahme zur Zeittransposition bewirkt sie, dass die Symboldauer dynamisch verändert und die Frequenzkomponente auf dem Übertragungsweg gespreizt wird. Diese Maßnahme soll phonetische Analyseverfahren weiter erschweren und das Signal widerstandsfähiger gegen Kanalstörungen machen.

Das Schlüsselschema arbeitet mit 16-stelligen Dezimalzahlen und bietet daher einen praktisch nutzbaren Schlüsselraum von fast 10 Billiarden unterschiedlichen Startbedingungen. Dies entspricht einer binären Schlüssellänge von immerhin 53 Bits. Der Algorithmus zur Generierung der Transpositionstabellen liefert für jeden Block eine neue Transpositionstabelle, die auch nur einmal verwendet wird.

In den eingangs erwähnten technischen Daten sind die wichtigsten Parameter der aktuellen Lösung zusammengefasst.
Wer sich diese einmal genauer ansieht, ahnt es sicher schon; der Name HEKTOR ist keine sinnige Abkürzung, er leitet sich vielmehr von der griechischen Vorsilbe "hekto" ab, also "Hundert" bzw. "das Hundertfache".
Hier finden sage und schreibe 100 Transpositionen pro Sekunde statt. Der Transpositionsblock ist in 128 Symbole von je 10 Millisekunden unterteilt, sodass sich eine Blocklänge von 1,28 Sekunden ergibt.
Die rapide Symbolfolgefrequenz stellt zwar relativ hohe Anforderungen an das Synchronisationsverfahren und an den Übertragungskanal, aber diese Anforderungen scheinen durchaus noch im "grünen Bereich" dessen zu liegen, was man von Telefonie-Systemen, die sich an wesentliche ITU-Anforderungen halten, erwarten darf. Problematisch wird es offensichtlich im GSM-Netz, und wahrscheinlich auch beim Umweg über ähnlich stark komprimierende Sprach-Codecs (VoIP).

Durch die Realisierung mit einem Mikrocontroller besteht natürlich immer die Möglichkeit, an allen technischen Parametern der Zeittransposition noch einiges zu "drehen".

Zur Handhabung

Es handelt sich um ein klassisches (symmetrisches) Kryptosystem, das mit memorierbaren Zahlenschlüsseln arbeitet. Eine Zahl kann jedenfalls nicht verlorengehen oder geklaut werden, wie etwa eine Chipkarte. Eine bis zu 16-stellige Zahl können wir bisweilen noch im Kopf behalten oder mithilfe von Eselsbrücken nach Bedarf errechnen.
Das Schlüsselmanagement ist somit recht überschaubar und lässt sich konsequent handhaben. Im Extremfall genügt es nämlich schon, wenn ein einziges Mal eine Geheimzahl über einen sicheren Kanal vereinbart wurde (wie wär's mit PGP bis 2.6.2 oder OpenPGP?), und wenn beide Teilnehmer ihre Sitzungsschlüssel bei Bedarf nach einer vorher vereinbarten Regel berechnen. (Mehr Phantasie ist hier sicher besser, als mehr Technik!)

Technisch gesehen beginnt die verschlüsselte Kommunikation immer als unverschlüsseltes Telefonat über einen normalen Telefonapparat. Nach Absprache geben beide Teilnehmer ihren bis zu 16-stelligen Tagesschlüssel am Gerät ein. (Der Anrufer kann dies auch schon vorher getan haben.)
Ungefähr gleichzeitig drücken dann beide Teilnehmer die Bestätigungstaste und aktivieren damit den Verschlüssler. Dieser schaltet sich auf die Leitung und wirft den Telefonapparat ab. Beide Teilnehmer müssen anstelle des Telefons nun das Mikrofon und den Kopfhörer des Verschlüsslers benutzen. Klingt etwas umständlich, ist aber im Sinne einer sauberen Trennung zwischen sicherer und potenziell unsicherer Hardware durchaus angebracht! Das reguläre Telefon kann "verwanzt" sein. Manipulationen am Verschlüssler lassen sich im Zweifelsfall besser verhindern (Gerät wegschließen, mit Sprengkapseln absichern... "Mehr Phantasie"!)

Aufgrund der zweifachen Zwischenspeicherung (einmal beim Sender, einmal beim Empfänger) und zusätzlicher Synchronisationssignale entsteht bei diesem Verfahren eine ungewöhnlich große Signalverzögerung von insgesamt 2,6 Sekunden. Bei solchen Laufzeiten ist an eine Kommunikation im Vollduplex natürlich nicht mehr zu denken. Die Kommunikation muss im Halbduplex (Wechselsprechen) stattfinden, ist dabei aber erstaunlich gut möglich.

Hinweis zu dieser Version

Das Projekt wurde erstmalig in [10] veröffentlicht, dort als zweiteiliger Aufbau, bestehend aus einer Hauptplatine mit einer standardisierten Kontaktleiste zum Anschluss verschiedener Anpassschaltungen (Telefonsysteme, Funkgeräte). Dieser "modulare" Ansatz sollte es erleichtern, dass der experimentierfreudige Nutzer bei Bedarf eigene maßgeschneiderte Anpassschaltungen für das Funkgerät seiner Wahl entwickeln kann. Ein universelles HEKTOR-Radio-Interface, das mit jedem Funkgerät zusammenspielen würde, gibt es leider bis heute nicht, und die Entwicklung wird von mir persönlich zurzeit nicht weiterverfolgt.

Für die Ankopplung an analoge Telefonsysteme existiert aber schon seit Längerem eine einfache und zuverlässige Schaltung, das sogenannte HEKTOR-Line-Interface. Auf der Basis dieses bewährten Konzeptes habe ich nun eine HEKTOR-Kompaktversion ersonnen, die sich ausschließlich auf den Telefonbetrieb beschränkt. Dafür passt jetzt alles auf eine einzige Platine von nur 75 x 100 mm, also halbes Euroformat. Apropos "Euro", die kompakte Variante spart durch die Rationalisierungseffekte noch einiges an Materialkosten.

Die hier vorgeschlagene HEKTOR-Kompaktversion ist funktional absolut identisch mit dem zweiteiligen Aufbau aus separater Hauptplatine und Line-Interface. Es kommt auch bis auf Weiteres genau dieselbe Software zum Einsatz. Alle Erklärungen zur Schaltungstechnik, zur Bedienung und zur Sicherheit, gelten sinngemäß für beide Varianten.

Nach oben




Hektor Gerät 2 geöffnet Bild 1b: Kompaktversion, offen


Technische Umsetzung

Das Transpositionsverfahren lässt sich mit der heute zur Verfügung stehenden Technik recht preiswert und konsequent umsetzen. Dabei besteht die vorgestellte Hardware-Plattform lediglich aus einem größeren AVR-Mikrocontroller, dem ATmega8515 mit etwas zusätzlichem Arbeitsspeicher und einer kompakten Software, die die gesamte Ablaufsteuerung, die Schlüsselberechnung und die Sprachspeicherung besorgt.

Die Sprache wird übrigens nicht mit einem internen A/D-Wandler des AVR digitalisiert - Der ATMega8515 besitzt nämlich gar keinen. Dafür hat er einen schnellen Analogkomparator, der sich hervorragend zur A/D-Wandlung nach dem Prinzip der Deltamodulation verwenden lässt. (Im Laufe des Projektes sollte sich herausstellen, dass die Deltamodulation als Notlösung hier ein echter Glücksgriff war, da sie für die Signalverarbeitung in dieser Anwendung einige besonders angenehme Eigenschaften aufweist. Mehr dazu weiter unten. Als Einstieg in die Grundlagen der Deltawandler empfiehlt sich die Lektüre von [5] in der Linkliste.)
Für eine akzeptable "Telefonqualität" benötigt man unter Verwendung der einfachen (nicht-adaptiven) Deltamodulation eine Mindest-Abtastrate von etwa 64 kbit/s. In ein RAM von lediglich 256 kbit passen dann aber bereits bis zu 4 Sekunden Sprache. Das ist für diese Anwendung genau die richtige Größenordnung.

Praktischerweise unterstützt der ATmega8515 bereits in seinem tiefsten Innersten den Zugriff auf externe Speicherbausteine mit parallelem 16-Bit-Adressbus. Als Speicher kommt daher ein preiswertes und robustes statisches RAM vom Typ 62256 zum Einsatz. (Recycling-Tipp: Alternativ dazu wäre auch ein 61256 mit einem Adaptersockel nutzbar. Die schnellen SRAMs wurden massenweise auf AT-Mainboards als externer Prozessorcache verwendet, die müssten also noch in manch einer Bastelkiste vorrätig sein, schmeißt man ja nicht weg, sowas Edles, die Dinger waren damals richtig teuer...)
Für den Adress-/Datenmultiplex benötigt man als weiteren Baustein nur noch ein Halteregister (Latch) vom Typ 74HC573. Das gesamte Timing und Signalspiel wird zu 100% vom Prozessorkern des ATmega8515 verwaltet. Sehr praktisch, das Ganze, denn als Programmierer kann man bei den Zugriffen auf das externe SRAM fast genauso vorgehen, wie bei der Verwendung des controllereigenen internen SRAMs. Nur mit dem kleinen Unterschied, dass der externe Adressraum nun geradezu sagenhafte 32 KB umfasst!

Die Aufschaltung des Sprachverschlüsslers an das Telefonsystem erfolgt in bewährter Weise über einen NF-Transformator. Der Verschlüssler geht bei Bedarf als eigenständiges "Nebengerät" auf die Leitung und wirft den Telefonapparat einfach ab, genau wie ein analoges Modem.
Bei einer Zwischenschaltung in das Hörerkabel, die zunächst naheliegend schien, weil es doch immerhin einige amerikanische Spielzeuggeräte genauso machen, hätten wir im alten Europa keinesfalls einheitliche technische Bedingungen vorgefunden. Die Anschlussbelegung von Hörerkabeln ist nicht genormt, hier kann jeder Hersteller sein eigenes Süppchen kochen. Es ist auch nicht festgelegt, welche Impedanzen die Hörkapseln und Mikrofone haben müssen. Für die Hörkapsel kommen bisweilen sogar Piezo-Lautsprecher zum Einsatz. Für eine Zwischenschaltung in das Hörerkabel wäre also eine Box mit Steckbrücken und aufwendigen Anpassschaltungen erforderlich gewesen. Dagegen sind die Parameter zur direkten Anschaltung (Schleifenstrom, Klingelspannung, Frequenzgang, Wählsysteme) weltweit ziemlich ähnlich. Hier kommt man mit ein- und derselben Standardschaltung aus, die im wesentlichen aus einem NF-Übertrager mit der passenden Impedanz besteht.
Hier ist nun aber dummerweise wieder in jedem Land ein anderer Stecker üblich. In der EU haben wir zwar fast überall dasselbe Geld, dieselbe Korruption, dieselben Massenverblödungsmedien, dieselben niedrigen Umweltstandards, aber dort, wo eine Vereinheitlichung mal sinnvoll wäre, dort versagen die EU-Bürokraten wieder einmal auf ganzer Linie. Wahrscheinlich von der Lobby der Adapterstecker-Hersteller unter Druck gesetzt, was weiß ich... So gibt es in Mitteleuropa noch immer die absonderlichsten Telefonstecker, eine erschreckende Auswahl findet sich zum Beispiel hier: http://www.holzinger.cc/phone/telefonstecker.htm.

Die Gesamtkosten der hier vorgestellten Kompaktversion lassen sich locker unter 100 Euro halten. Diese Aussage gilt auch dann noch, wenn man die Spendierhosen anhat und nun unbedingt alle Teile zu Apothekenpreisen beim "großen C" bestellen sollte.


Nach oben





Zeittransposition (Transposition in der Zeitebene, "Time Domain Scrambling")


Verschlüsseln
Die Sprache wird blockweise elektronisch zwischengespeichert. Der Block kann z.B. eine Sekunde Sprache aufnehmen und ist dann noch einmal in viele kürzere Abschnitte adressierbar. Diese Abschnitte werden hier, analog zur klassischen Kryptografie, als "Symbole" bezeichnet. Sobald ein Block mit Sprachdaten angefüllt ist, werden die Symbole nach einer Tabelle in pseudozufälliger Reihenfolge wiedergegeben. Was über den Kanal gesendet wird, sind scheinbar zusammenhanglose Sprachfetzen.

Entschlüsseln
Der rechtmäßige Empfänger kennt die vom Sender verwendete Transpositionstabelle; sie ist der gemeinsame Schlüssel (oder besser: ein Teilschlüssel) des Kryptosystems. Der Empfänger benutzt diese Tabelle, um die ankommenden Symbole bereits zum Zeitpunkt ihres Eintreffens an der richtigen Position in seinem eigenen Zwischenspeicher abzulegen. Hat der Empfänger auf diese Weise alle Symbole eines Blockes gesammelt, kann er den zurückliegenden Block wieder im Klartext abspielen.
Schema der Zeittransposition

Ein Lauscher, der das verwendete Transpositionsschema nicht kennt, sieht sich mit einer mehr oder weniger großen Anzahl von Kombinationsmöglichkeiten konfrontiert. Zunächst einmal gelten für das Puzzle aus zerhackten Lauten dieselben mathematisch-statistischen Voraussetzungen, wie etwa für eine klassische Transposition von Zeichen innerhalb eines Textblockes.

Feine Blockteilung = großer Schlüsselraum

Die Zahl der theoretisch möglichen Vertauschungen bei einer Blocktransposition ergibt sich vordergründig aus der Fakultät der möglichen Positionierungen innerhalb eines Blockes. Das Standardbeispiel aus der Stochastik wäre "Ziehen aus einer Urne mit durchnummerierten Kugeln ohne Zurücklegen".
Auf diese Weise erhält man schon in dem oben genannten Beispiel mit nur 8 Positionen eine erstaunlich hohe Zahl von möglichen Symbol-Reihenfolgen:
8! = 8 x 7 x 6 x 5 x 4 x 3 x 2 x 1 = 40.320
Auf den zweiten Blick wird schnell klar, dass ein Großteil der theoretisch möglichen Transpositionen in einem 8-er-Block gar keine so gute Durchmischung der Symbole bewirken würde. Schlecht für kryptografische Zwecke wären zum Beispiel alle Transpositionen, bei denen längere Symbolfolgen in ihrer ursprünglichen Reihenfolge auftreten, oder solche, bei denen allzu regelmäßig einzelne Symbole in ihrer ursprünglichen Reihenfolge auftreten. Dann besteht nämlich die Möglichkeit, dass ein menschlicher Hörer oder ein sehr leistungsfähiges maschinelles Spracherkennungsverfahren die ursprüngliche Aussage noch "heraushören" kann. Schuld daran ist natürlich die hohe Redundanz der Sprache, die sozusagen als eingebaute Fehlerkorrektur dafür sorgt, dass wir phonetische Inhalte selbst unter dem Einfluss von starken akustischen Störungen noch entziffern können.
Je feiner der Block jedoch aufgeteilt ist ( Teilung in mindestens 40 Positionen ), umso mehr mögliche Transpositionen gibt es logischerweise. Auch die Untermenge an kryptografisch wertvollen Transpositionen, die eine gute statistische Durchmischung der Symbole gewährleisten, wird dann entsprechend größer.


Kurze Symbole = erschwerte Signalanalyse
Abgesehen vom ineffizienten "Brute Force"-Vorgehen, wäre ein Angriff auf die Zeittransposition noch über die Analyse des vorliegenden Audiosignals denkbar. Der Angreifer müsste, ähnlich wie bei der klassischen Spracherkennung, zunächst einmal versuchen, die phonetisch relevanten Frequenz- und Hüllkurvenmerkmale aus dem zeittransponierten Audiosignal zu extrahieren und zu klassifizieren. Das sind DSP-Verfahren vom Feinsten. Sie dürften relativ viel Rechenleistung in Anspruch nehmen und müssten auf die Eigenarten des anzugreifenden Transpositionssystems zugeschnitten werden. Falls es aber gelingt, die durch Zeittransposition zerstückelten Phoneme automatisch wieder zusammenzufassen und in eine Art Lautschrift zu überführen, dann hätte der Angreifer bereits eine Aufstellung der vorkommenden "Buchstaben". Durch nachfolgende statistische Verfahren kann er in einem zweiten Schritt versuchen, die wahrscheinlichste Aussage zu rekonstruieren. Möglicherweise können noch weitere Korrelationen aus dem Signal abgeleitet werden, die das Vorgehen unterstützen. Angriffe dieser Art sind für einschlägig berüchtigte Schnüffelorganisationen angeblich kein Problem. (Allerdings beziehen sich solche Ausagen immer nur auf marktgängige Systeme, die alle in einem ziemlich groben Zeitraster und mit relativ kurzen Blöcken arbeiten.)
Wenn man aber ein besonders feines Zeitraster anwendet, bei dem die Symbole kürzer sind als 20 Millisekunden, dann tritt ein sehr interessanter Effekt auf: Der menschliche Hörer bemerkt, dass sich der akustische Eindruck der zeittransponierten Sprache verändert. Selbst charakteristische Laute sind plötzlich nicht mehr eindeutig aus dem Signal herauszuhören, obwohl sie ja im Signal weiterhin vorhanden sein müssten. Streckenweise bekommt man sogar den Eindruck, es handele sich garnicht mehr um menschliche Sprache, sondern um "irgendwas Synthetisches". Der Grund dürfte vor allem darin liegen, dass unser Gehirn zur Unterscheidung von Phonemen einen kontinuierlichen Höreindruck von durchschnittlich 20-50 ms Dauer benötigt. (Literaturwerte, z.B. unter [9].)
Diese 20-Millisekunden-Grenze scheint also kein reiner psychoakustischer Effekt zu sein, sondern vielmehr eine Art "Biokonstante", die den meisten menschlichen Sprachen gemeinsam ist. Das würde nun aber bedeuten, dass eine wesentlich schnellere Erkennung der Phoneme auch mit einem leistungsfähigen maschinellen Verfahren aus prinzipiellen Gründen nicht möglich wäre. Tatsächlich arbeiten alle gängigen Spracherkennungsverfahren heute mit kleinsten Samples von 20 ms Spieldauer. In einem deutlich kürzeren Messintervall ließen sich die Spektralkomponenten für eine Formantanalyse nicht mehr hinreichend genau bestimmen.
Dieser interessante und kaum berücksichtigte Aspekt führt zur vorläufigen Schlussfolgerung: Durch ein besonders feines Zeitraster ( tSym < 20ms ) lässt sich die Zeittransposition gegen Angriffe abhärten, die auf bekannten Methoden der Phonemanalyse aufsetzen.


aufkleberLange Blöcke = hohe Komplexität
In einen längeren Zeitabschnitt passen mehr Wörter, Silben und Phoneme, als in einen kurzen Zeitabschnitt. Die besten kommerziellen Scrambler nach dem Prinzip der Zeittransposition arbeiten mit Blocklängen von immerhin bis zu einer halben Sekunde. Bei einem solchen System können ein gutes Dutzend Phoneme in jedem Block vorkommen.
Wenn wir zugunsten des Angreifers annehmen, dass er diese Phoneme mithilfe automatisierter Analyseverfahren einwandfrei bestimmen und zusammenfassen kann, dann hätte er also bereits die "Buchstaben", die er nur noch mit statistischen Mitteln zur richtigen Lösung rekombinieren müsste. Da die Information jetzt digital vorliegt, sollte dies blitzschnell möglich sein. Doch was ist das? Schon für relativ kurze Anagramme gibt es mitunter eine ganze Reihe von Lösungen, die dann auch noch statistisch ungefähr gleichwahrscheinlich sind. Hat der Angreifer keine weitere "Kontextinformation" zur Hand, und kann er keine weiteren Korrelationen aus dem Signal ableiten, dann steht er jetzt vor einem richtigen Problem: Das Rätsel kann nicht gelöst werden. Mit jedem zusätzlichen Buchstaben, der im Angebot steht, wird sich die Zahl der möglichen Rekombinationen, die einen "Sinn machen" nochmals erhöhen. Diese Mehrdeutigkeit lässt sich auch nicht durch höhere Rechenleistung beseitigen.
Schlussfolgerung: Möglichst lange Blöcke ( tBlock> 0,5s ) erhöhen die Wahrscheinlichkeit, dass eine Transposition wegen Mehrdeutigkeiten kryptoanalytisch unbrechbar wird.


Weitere Komplikationen
Durch sinnvolles Kombinieren unterschiedlicher Verfahrensklassen erreicht man in einigen Fällen deutlich höhere kryptografische Sicherheit, als es die Mächtigkeit der Einzelverfahren vermuten lässt. Diese altbekannte Tatsache lässt sich, wenn auch nicht mit besonders viel Auswahlmöglichkeiten, auf Analogverfahren übertragen. Hier könnte es sinnvoll sein, die Zeittransposition zum Beispiel durch ein weiteres Analogverfahren zu ergänzen, das zusätzliche Manipulationen in der Frequenzdomäne vornimmt.


jt2007




Schaltunterlagen HEKTOR-kompakt Version 1.0

1. Schaltplan HEKTOR-kompakt V1.0 (Anklicken zum Vergrößern oder Herausspeichern)
HEKTOR-Kompakt Schaltplan
2. Stückliste HEKTOR-kompakt Version V1.0
------------------------------------
Stückliste HEKTOR VOICE ENCRYPTOR
Kompaktversion für Telefonbetrieb
Version 1.00
------------------------------------
05/2008 Julien Thomas, Kiel
------------------------------------

Widerstände:

R1          100k
R2-R8       470       
R9-R12      330
R13, R14    1k0
R15, R16    22k
R17         220k
R18         470k
R19         22k
R20         100
R21         15k
R22         22k
R23-R27     10k       
R28         100
R29         47k
R30         100k
R31         470


Kondensatoren:

C1-C5       100nF Kerko
C6          10nF Kerko
C7          100nF Folie (MKS)
C8          100pF Kerko
C9, C10     470nF Folie (MKS)
C11         1µF/10V Elko
C12         22nF Kerko
C13         22µF/10V Elko
C14         220nF Folie (MKS)
C15, C16    22p Kerko, NPO
C17         47µF/10V Elko
C18         47µF/25V Elko
C19         100nF Folie (MKS)
C20         1nF Kerko


Halbleiter:

VR1        7805
D1         1N4001
D2         1N4148
T1-T3      BC547C
T4         BC337-25
IC1        AVR AT90S8515-16 oder ATMEGA8515-16 PDIP
IC2        74HC(T)573
IC3        SRAM 62256 - 80ns
IC4        CMOS 4053
LED1       LED rot
LED2       LED gelb
LED3       LED grün
LED4       LED grün (alle LED Standard oder Low Current)


Sonstiges:

- IC-Fassungen für IC1-IC4
- Schwingquarz 10 MHz RM5 (HC18)
- Tastatur Matrix 3x4 (z.B. Conrad Bestnr. 709840, ggf. passenden Rahmen mitbestellen)
- Stiftleisten/Platinenstecker-Kombinationen für X1-X5
- 2x5 pol. Wannenstecker für X6 (ISP)
- Steckverbindungen zum Anschluss der LEDs
- Platine nach Layout 75 x 100 mm
- NF-Übertrager für Telefonanwendungen, Übertragungsverhältnis 1:1 bis 1:5
  DER GLEICHSTROMWIDERSTAND AUF DER HOCHOHMIGEN SEITE (a/b) MUSS MINDESTENS 100 OHM BETRAGEN.
  (z.B. Conrad NTE-1 515940, Conrad NF-Uebertrager 515701)
- Re1 - 5V/6V DIL-Relais 2fach Umschalter, Spulenwiderstand mind. 90 Ohm, z.B. von Reichelt:
  Fin30.22.9 6V (Finder), RY05 W-K (Takamisawa)
- Modular-Einbaubuchse RJ11 6-polig, z.B. von Reichelt: MEB6-6
  für TAE-N-Kabel mit RJ11-Stecker auf der anderen Seite, z.B. von Reichelt:  TAE 4NWS-I



3. Layout HEKTOR-kompakt Platinenversion V1.0, einseitig, 300dpi, 75 x 100 mm (Anklicken und Herausspeichern möglich)
Layout HEKTOR-kompakt Bestückungsplan



Schaltungsdetails: HEKTOR-kompakt Version 1.0

Allgemeines

Die Schaltung wird über einen 7805-Linearregler (VR1) mit stabilisierten 5 Volt versorgt. Der Bereitschaftsstromverbrauch bei laufender Verschlüsselung liegt unter 60 mA. Ein Großteil dieses Strombedarfs wird durch die LEDs, den Ruhestrom des NF-Verstärkers sowie durch ein eingeschaltetes Line-Relais verursacht. Wenn man hier kein allzu niederohmiges Exemplar verwendet, dann kommt die gesamte Schaltung auch im aktiven Betrieb nicht über 100 mA Summenstrom. Das kann unser 7805 noch ohne Kühlkörper regeln, wenn wir mit der Eingangsspannung nicht deutlich über 9V gehen.

Hinweis: Für einen Batteriebetrieb müsste die Summenspannung der Zellen noch mindestens 6 V betragen, damit eine ausreichende Stabilisierung über VR1 gegeben ist. Also mindestens 4 frische Alkalizellen mit 1,5 V. Diese könnten allerdings nicht voll ausgenutzt werden, denn schon bei einer Entladung auf 1,3 V würde das Spannungsgefälle nicht mehr zur Stabilisierung ausreichen. (Andererseits lassen sich Alkali-Zellen ganz wunderbar "wiederauffrischen", da gab es doch mal so einen Artikel über den Umbau von herkömmlichen Billigladegeräten...)

Ein Akkupack aus NiCd- oder NiMH-Zellen müsste mindestens 5 oder besser 6 Zellen beinhalten (6,0V bzw. 7,2V Nennspannung), damit wäre genügend Stabilisierungsspielraum vorhanden und das Gerät kann die Akkus mit langer Laufzeit gut ausnutzen.

Kryptomaschine

Herzstück ist der AVR-Mikrocontroller ATmega8515 (IC1). Die Beschreibung seiner Peripherie erfolgt hier anhand des Stromlaufplans zur HEKTOR-Kompaktversion im Uhrzeigersinn um den Baustein herum:

Port A
Die Leitungen PA0-PA7 sind ein 8 Bit breiter Adress- und Datenbus. Diese 8 Portleitungen führen in ihrer Funktion als Adressleitungen direkt auf das Latch IC2 und gehen parallel dazu auf die SRAM-Datenleitungen D0-D7 von IC3.

Port E
Der Ausgang PE0 liefert ein "PTT"-Signal, bei dem HIGH-Pegel für den Sendemodus steht, LOW für den Empfangsmodus.
Der Strom aus dem AVR-internen Porttreiber reicht zur Ansteuerung der Rx/Tx-LEDs und eines weiteren Logikeinganges gerade aus. In der zweiteiligen HEKTOR-Variante wird dieses Signal auf die Steckverbindung für das jeweilige Interface herausgeführt, es müsste zur Steuerung eines Funkgerätes in der Regel noch invertiert werden (Schalttransistor oder Optokoppler), wodurch dann ein gewisser Schutz für den Controller gegeben ist. In der HEKTOR-Kompaktversion geht dieses Signal direkt auf den Steuereingang des Signalumschalters IC4 (CMOS4053).
Der Ausgang PE1 arbeitet in seiner Funktion als Address-Latch-Enable (ALE), er steuert den Adress-/Datenmultiplex über IC2 (74LS573 bzw. 74HC573).
Die Leitung PE2 liefert das Signal zur Umschaltung zwischen Transparentbetrieb und Verschlüsslerbetrieb.
HIGH entspricht verschlüsseltem Betrieb. Die an +5V liegende LED1 leuchtet demnach nur, wenn der Ausgang PE2 auf LOW steht. Dann zeigt sie durch ihr mahnendes rotes Leuchten an, dass sich der Verschlüssler noch im unsicheren Transparentmodus befindet. Dieses Signal wird zur Schaltstufe des Telefoninterfaces weitergegeben, wo es über T4 (BC337) das Line-Relais Re1 durchschaltet.

Port C
Port C liefert weitere 8 Adressleitungen, von denen aber nur 7 benötigt werden. Zusammen mit PA0-PA7 bilden PC0-PC6 also 15 Adressbits für den direkten Zugriff auf IC3 (32-kByte-SRAM vom Typ 62256).

Port D
Die Lese- und Schreibvorgänge auf das SRAM werden durch die Controllerports PD6 und PD7 (in ihrer Funktion als /WR und /RD) koordiniert.
Die Leitung PD2 dient zur Ansteuerung von LED2 (Sync).
Die Leitung PD3 ist als Eingang konfiguriert und wertet Synchronisationssignale aus. Dazu wird das über Audio-IN ankommende Signal über T1 bis in die Begrenzung verstärkt, sodass am Kollektor bereits ein Quasi-TTL-Pegel zur Verfügung steht (Kollektorwiderstand wird vom AVR-Port bereitgestellt). Die Erkennung der richtigen Synchro-Frequenzen erfolgt rein softwaretechnisch.
Leitung PD4 ist als Ausgang konfiguriert und bildet mit R22 und C9 einen Tiefpass für die Rückführung der Delta-Regelgröße auf PB3, das ist der nichtinvertierende Eingang des internen Komparators (AIN1). Vergleichsgröße für den Delta-Modulator ist natürlich das Audio-Eingangssignal, welches über C14 auf den invertierenden Eingang PB2 (AIN0) eingekoppelt und über den Spannungsteiler R15/R16 mit einem Offset von etwa der halben Betriebsspannung vorgespannt wird.
Der Ausgang PD5 liefert das Ausgabesignal (Delta-Bitstrom) an einen ähnlich dimensionierten Tiefpass (R23, C10) mit nachgeschalteter Pufferstufe (T2 und umliegende Bauteile). Der Audio-Ausgang wird unter Zwischenschaltung des Koppelkondensators C13 (47µF) zur Telefonanschaltung weitergeleitet.

Port B
Einerseits dienen die Leitungen PB0,1,2 (Spalten) und PB4,5,6 (Zeilen) zur Abfrage der angeschlossenen 3x4-Matrixtastatur. Andererseits werden die Leitungen PB2/PB3 noch als Komparatoreingänge (AIN0/AIN1) zur A/D-Wandlung nach dem Verfahren der Deltamodulation genutzt.
Darüber hinaus können PB5/PB6/PB7 auch noch als ISP-Schnittstelle (MOSI/MISO/SCK) zum Flashen des Controllers genutzt werden. Dazu wurde nun auch auf der Platine der Kompaktversion wieder ein ISP-Stecker vorgesehen, die 10-polige Steckverbindung X6. Sie entspricht der von Atmel spezifizierten Anschlussbelegung und kann also mit einem ensprechenden Programmer für serielle ISP/SPI direkt angesprochen werden (AVR-ISP, diverse Parallelprogrammer).

Telefonankopplung

Dieser Schaltungsteil entspricht weitgehend dem HEKTOR-Line-Interface (HLI), welches in der zweiteiligen Aufbauvariante als separate Platine realisiert wurde.
Der Anschluss an das Telefonsystem erfolgt über ein vierpoliges Kabel mit TAE-N-Stecker. Die Anschaltung findet wie bei Modem und Anrufbeantworter durch Abwurf des Telefons und Aufschaltung des eigenen Line-Übertragers auf die Leitung statt.
Solange der Verschlüssler keinen Betriebsstrom hat oder sich im Transparentmodus befindet, wird das Leitungspaar a / b über die Ruhekontakte des Line-Relais Re1 unverändert an a' / b' weitergegeben, also entweder an das Telefon oder an das nächste Nebengerät.
Erst, wenn der Verschlüssler in den aktiven Betrieb umschaltet, legt der Controller seine Leitung "Aktiv/Transparent" (PE2) auf HIGH und schaltet damit den Transistor T4 durch. Jetzt zieht das Line-Relais an, wirft den Telefonapparat ab und schaltet stattdessen seinen eigenen NF-Übertrager (Tr1) auf die Leitung. Der Übertrager sorgt durch seinen Innenwiderstand in der Größenordnung von 100 bis 300 Ohm dafür, dass weiterhin ausreichend Schleifenstrom fließt und eine günstige Anpassung an den Quellenwiderstand der Telefonleitung vorliegt. HINWEIS: Die relativ hochohmige Seite soll auf der Seite des Telefonnetzes liegen. Weil das Umschalten weniger als 0,1 s dauert, wird die bestehende Verbindung gehalten. Nun können niederfrequente Signale in beide Richtungen übertragen werden.
Die Umschaltung der Signalrichtungen vom Controller zum Übertrager und zu Kopfhörer und Mikrofon besorgt ein CMOS-Signalumschalter (IC4, Typ 4053). Das Mikrofonsignal von einer Elektret-Kapsel (z.B. im Headset) muss noch etwa 10-fach vorverstärkt werden, dafür ist die Transistorstufe mit T3 zuständig.

In der Stückliste sind Typenbezeichnungen von Übertragern angegeben, die in dieser Anwendung bereits erfolgreich eingesetzt wurden.
Recycling-Tipp: Alte Modems oder Anrufbeantworter enthalten in der Regel auch einen Übertrager, der sich ganz hervorragend für diese Anwendung eignet.

Hinweis zum Übertrager: Das Übersetzungsverhältnis ist nicht kritisch. Die Synchronisation ist darauf ausgelegt, in einem weiten Pegelbereich zu funktionieren, und auch der Pegel der Audiosignale darf in einem weiten Rahmen schwanken. Sowohl die Deltamodulation als interner Codec, wie auch die allgemeinen technischen Spezifikationen von Telefonsystemen erlauben da einen gewissen Spielraum. Zu hohe Pegel werden immer begrenzt.


Nach oben



Anschlüsse auf der Platine HEKTOR-Kompaktversion

X1
Anschluss einer unstabilisierten Gleichspannungsquelle 6-9 V, Belastbarkeit etwa 250 mA.
Die Spannung sollte aus einem sauberen Netzteil oder (bei Funkanwendungen) aus Batterien stammen.
X2
Hier wird eine 3x4-Matrixtastatur angeschlossen, über die die Schlüsseleingabe stattfindet und wesentliche Gerätefunktionen gesteuert werden (Z.B. eine Taste als Sprechtaste).
X3
Analoger Endgeräteanschluss - hierfür sollte ein 4-poliges Kabel mit TAE-N-Stecker benutzt werden, damit der Verschlüssler als Nebengerät die Leitung exklusiv benutzen kann (wie Modem oder Anrufbeantworter).
X4
Mikrofon-Anschluss für direkten Anschluss einer 2-poligen Elektret-Mikrofonkapsel bzw. Mikrofon des Headsets
X5
Kopfhörer-Anschluss, vorzugsweise hochohmiges Exemplar für Sprachwiedergabezwecke, z.B. Kopfhörer eines PC-Headsets
X6
ISP-Anschluss (2x5-polige Stiftleiste) nach Atmel-Spezifikationen
LED
1-4
Vier zweipolige Steckverbinder für den direkten Anschluss von Status-LEDs
zur Anzeige der verschiedenen Betriebszustände.

Nach oben



Hinweise zum Nachbau

Das Gerät lässt sich problemlos mit Amateurmitteln aufbauen, zumal hier ausschließlich bedrahtete Bauteile zum Einsatz kommen. Die einseitige Platine stellt an den Ätzvorgang nur mäßige Anforderungen. Sogar mit dem Toner-Transferverfahren könnte es noch klappen (wenn man wirklich gut ist). Die Herstellung nach dem Fotoverfahren ist vollkommen unproblematisch.

Für das Flashen des Mikrocontrollers gibt es auch auf der Kompaktversion wieder einen 10-poligen ISP-Stecker (hier mit X6 bezeichnet). Hier können wir jeden Programmer für das serielle Programmieren von AVRs anschließen. Beim Flashen der Fusebits und der Firmware bitte unbedingt die Hinweise weiter unten beachten!

Für die Steckverbindungen auf der Platine kommen verschiedene Systeme im Rastermaß 2,54 mm infrage. Auch Selbstgebasteltes aus SIL-Sockelleisten, Litze, Heißkleber und Phantasie kann verwendet werden. Die Anschlüsse für Betriebsspannung (X1), Tastatur (X2) und Telefonanlage (X3) sollten einigermaßen stabil und rutschsicher ausgeführt sein.

Ein Quell immerwährender Freude ist sicher wieder der mechanische Zusammenbau. So benötigt die Zahlentastatur einen einigermaßen passgenauen Gehäuseausbruch, was der geübte Laubsäger natürlich mit links und mit nur geringem Nachbearbeitungsaufwand durchaus hinkriegen kann... Wer aber darauf keinen Bock hat, sollte für die Tastatur gleich einen überteuerten Rahmen mitbestellen. Der bessere optische Eindruck, den das Gerät dann später macht, entschädigt für alles.

Beim Anschluss der Matrixtastatur ist auf die richtige Zuordnung von Pin 1 (erste Spalte, im Stromlaufplan Leitung A1) zu achten, falls das Kabel auf der Tastaturseite direkt angelötet werden soll. Hierzu sei angemerkt, dass die Tastatur von C**rad keine Pin-1-Markierung hat und dass man bei der Lektüre des dazugehörigen "Datenblatts" von Informationen überschüttet wird. Um die Raterei etwas abzukürzen: Wenn wir die Tastatur seitenrichtig vor uns liegen haben und sie dann umdrehen, dann liegt auf der Rückseite Pin 1 rechts.

Für den Anschluss des TAE-Kabels gibt es mehrere Optionen. Ein direktes Festlöten auf der Platine ist nicht empfehlenswert. Es sollte mindestens für X3 eine 4-polige Steckverbindung dazwischen gesetzt werden. Ich selbst verwende RJ11-Einbaubuchsen und beschalte diese so, dass ein genormtes TAE-N-Modemkabel angeclippt werden kann. Das bedeutet: Die Adern a/b liegen auf den beiden mittleren Anschlussfedern (3/4), die Adern a'/b' liegen auf den weiter außen liegenden Anschlussfedern (2/5). Eventuell vorhandene weitere äußere Anschlüsse (1/6) müssen unbeschaltet bleiben. Selbstverständlich wäre auch jede andere "Hausnorm" möglich, is' ja'n freies Land oder so, aber dann bitte nicht wundern, wenn die Sache nur bei Vollmond mit einem bestimmten Anschlusskabel funktioniert!

Es sei noch darauf hingewiesen, dass selbstgebaute Telefongeräte ganz bestimmt nur an private Nebenstellenanlagen angeschlossen werden dürfen ;-)

Nach oben



Tests

Die Software beinhaltet einen elementaren Testmodus, welcher direkt nach dem Einschalten, einem Hardware-Reset oder nach dem Neustart des Programms mit der Taste " # " aktiviert werden kann. Das Programm geht dann direkt in eine Endlosschleife, in der die Interruptroutine kontinuierlich das Synchro-Signal "Blockstart" (ca. 1,5 kHz) erzeugt. Das Signal wird aus dem RAM heraus mit konstanter Lesegeschwindigkeit erzeugt, sodass auch permanent Speicherzugriffe mit konstanter Geschwindigkeit stattfinden. Dabei ist die Übertragungsrichtung im Testmodus jedoch auf "Empfang" festgelegt, sodass der Ton direkt über das Headset abgehört werden kann.
Eine qualitative Bewertung ist schon per Ohr möglich: Der Ton sollte relativ weich klingen (kein Rechteck, eher Dreieck, wenig Oberschwingungen) und er darf keine hörbaren Frequenzschwankungen aufweisen.

Messsignale im Testmodus
  • Mit Oszilloskop oder Frequenzzähler an Pin 15 des Controllers (PD5, Ausgabe Deltamodulation) sollte im Testmodus ein TTL-Rechteck mit 50-zu-50 Prozent Tastverhältnis und 1510 Hz zu messen sein;
  • Am unbelasteten Audioausgang (C13) soll das verstärkte und geglättete Signal (dreiecks-ähnlich) mit einem Pegel von mindestens 2 Vss vorliegen.
  • An den Pins 16/17 (PD6/PD7) des Controllers treten pulsförmige Taktsignale (Speicherzugriffe) mit einer Frequenz von 12080 Hz auf. (Anmerkung: Die angegebenen Frequenzen beziehen sich auf die aktuelle Programmversion 1.0b.)
Wenn dies soweit alles zutrifft, haben wir folgende Gewissheiten: Das Programm ist lauffähig (korrekt geflasht, Alter!); der Taktoszillator des AVR läuft mit dem externen 10-MHz-Quarz; Treiberverstärker und Signalumschaltung funktionieren. Gut gemacht!


Funktionstest

Nun möchten wir sicher schon einmal das Ver- und Entschlüsseln testen. Dazu ist nicht unbedingt ein zweites Gerät erforderlich. Es genügt, eine verschlüsselte Sendung aufzunehmen und danach wieder in das Gerät einzuspielen.

Mit einem alten Diktiergerät oder einem schlechten Cassettenrecorder dürfte es wegen der Gleichlaufschwankungen schiefgehen. Mit einem guten Cassettendeck, einem Tonbandgerät, einem MP3-Diktiergerät oder mit der Soundkarte des PC sollte es problemlos funktionieren.
Das HEKTOR-Synchronisationsverfahren kann Laufzeitschwankungen in einem Bereich von maximal 20 ms ausgleichen. Auch die Pegelverhältnisse bezüglich des Audiosignals sind nicht sehr kritisch. Wichtig ist, dass das Programm für Aufnahme und Wiedergabe wirklich kontinuierlich aufnehmen und wiedergeben kann. Sonst wundert man sich, warum eine scheinbar perfekte Aufnahme immer wieder zu Entschlüsselungsfehlern führt. An einem PC sollten wir alle anderen Fenster schließen und konkurrierende Prozesse beenden. Als Aufnahme- und Wiedergabeprogramm sollte immer das einfachste verfügbare Programm verwendet werden, das die geringste Systemauslastung erzeugt. Schon eine Pause von mehr als etwa 20 ms, die wir mit dem Ohr kaum wahrnehmen, kann bereits das ganze Zeitschema durcheinanderbringen.

Aufnahme: Signal von den Adern a/b (X3-2 und X3-3) direkt auf einen LINE-IN der Soundkarte oder des Aufnahmegerätes geben. Polung egal. Sprechtaste drücken und einen kompletten Durchgang von mindestens 10 Sekunden mitschneiden.

Wiedergabe: Die Adern a/b mit dem Lautsprecherausgang bzw. LINE-OUT des Aufnahmegrätes anschließen. Polung egal. Die Aufnahme wieder einspielen.

Wichtig: Vergessen wir nicht, den Verschlüssler vor dem Wiedereinspielen einer solchen Testaufnahme nochmal mit dem verwendeten Code neu zu initialisieren - ansonsten werden wir uns trotz einwandfreier Synchronisation nicht wiedererkennen...!

Um den Test zu vereinfachen, enthält das Paket im FA-Download noch einige Audiodateien, die mit der aktuellen Software (und vielleicht auch mit folgenden Versionen) kompatibel sind und bewusst in eine miese Telefonqualität von 8000 Hz / 8 Bit PCM umcodiert wurden. Auch diese Beispiele sollten sich mit dem Wartungscode  * #  oder  * 0 #  problemlos entschlüsseln lassen.

Nach oben
 


Zur Bedienung

Ablauf
  • Die Verbindung wird über konventionelle Festnetz-Telefone hergestellt.
  • Nach Absprache geben beide Teilnehmer, ungefähr zur gleichen Zeit, ihre Tagesschlüssel ein:
    - Die Schlüsseleingabe beginnt mit "Sternchen" und darf bis zu 16 Dezimalziffern enthalten.
    - Nach Bestätigung mit der Taste "Doppelkreuz" schaltet sich der Verschlüssler in die bestehende Telefonverbindung.

  • Das konventionelle Telefon wird von der Leitung getrennt und der Verschlüssler schaltet sich auf die Leitung.
    Die Verbindung wird vom Verschlüssler übernommen und gehalten.

  • Beide Geräte befinden sich nun in Bereitschaft.

  • Hörer des konventionellen Telefons auflegen, Sprechgarnitur aufsetzen.

  • Wer zuerst auf die Sprechtaste " 0 " drückt, darf auch zuerst sprechen (senden).

  • Das Gerät der Gegenstelle erkennt die Start-Synchronisation und geht von Bereitschaft in den aktiven Empfangsmodus (Entschlüsseln).

  • Nachdem der sendende Teilnehmer seinen Durchgang beendet hat, gehen beide Geräte automatisch wieder in den Bereitschaftsmodus.

  • Der bisherige Empfänger kann jetzt antworten, indem er selber auf die Sendetaste drückt.

  • Nach Vereinbarung können auch beide Teilnehmer wieder in den normalen, unverschlüsselten Telefonmodus zurückschalten: Bereitschaftsmodus, " * " drücken.

  • Mit der Taste " * " lässt sich das Gerät aus jedem Modus heraus neustarten (Vorsicht, Rückkehr in den Transparentmodus!).
  • Mit der Taste " # " lässt sich das Gerät aus dem Empfangsmodus bei gestörter Durchgang-Ende-Kennung in den Bereitschaftsmodus bringen.

Betriebsarten HEKTOR-Firmware 1.0b

STATUS
Optionen
LED1
Trans
(rot)
LED2
Sync
(gelb)
LED3
Rx
(grün)
LED4
Tx
(grün)
Kopfhörer
Testmodus Einschalten,
# drücken
leuchtet
aus
leuchtet
aus
Dauerton
Transparent
Neustart mit *
leuchtet
aus
leuchtet
aus
Startquittung
dreimal Kurz
Schlüssel-
eingabe
Neubeginn mit *,
Eingabe max. 16 Ziffern,
Bestätigen mit #
leuchtet
aus
leuchtet
aus
Bestätigungstöne
für jeden Tastendruck
Bereitschaft
Sprechen mit 0
Neustart mit *,
aus
leuchtet
leuchtet
aus
kein Ton
Hören
Zurück in Bereitschaft mit #
Neustart mit *
aus
blinkt
leuchtet
aus
Gegenstelle
Sprechen
Taste "0" gedrückt halten
Neustart mit *
aus
blinkt
aus
leuchtet
kein Ton



Synchronisation

Die hier praktizierte Methode der Blocksynchronisation hat sich wohl gerade wegen ihrer Primitivität als ausgesprochen störungsresistent und zuverlässig erwiesen. Auf einigermaßen brauchbaren Verbindungen kann es mit dem hier implementierten Protokoll im Prinzip garnicht mehr dazu kommen, dass die Transpositionstabellen "auseinander laufen".

Das System synchronisiert sich mit jedem Block neu. Sollte die Blocksynchronisation zeitweise fehlen, dann läuft das System noch über mehrere Blöcke mit der Ganggenauigkeit der lokalen Taktoszillatoren weiter. Sobald wieder Synchronisationssignale ankommen, wird die volle Genauigkeit des Zeitrasters normalerweise wieder hergestellt, und die folgenden Blöcke lassen sich dann auch wieder problemlos entschlüsseln.
Bei schweren Übertragungsstörungen kann sich das System in der Pause zwischen zwei Durchgängen (Bereitschaftsmodus) wieder auf ein- und dieselbe Tabelle einstellen, sodass die Übertragung ebenfalls ohne Neustart fortgesetzt werden kann. (Wie der Trick funktioniert, steht in den Überlegungen zur Sicherheit - Tabellensynchronisation.)

Die Synchronisation und das Schlüsselschema ließen es durchaus zu, dass mehr als zwei Teilnehmer verschlüsselt kommunizieren. Diese Variante wurde aber noch nicht ausführlicher getestet. Bei einer Dreierkonferenz oder QSO-Runde sollte man sich wohl besser auf eine feste Sprechreihenfolge einigen, um keine Kollisionen heraufzubeschwören.

Schlüsselvereinbarungen

Da es sich um ein klassisches symmetrisches Kryptosystem handelt, bleibt das alte Problem der Schlüsselvereinbarung, für die im Vorfeld natürlich ein sicherer Kommunikationsweg benötigt wird. In Zeiten von E-Mail und PGP sollte dies nun aber wirklich kein Problem sein. Zur sicheren Übermittlung von ein paar Zahlen tut's vielleicht auch schon ein gutes (!) Steganografie-Tool.
Oder die wohl bequemste Variante: einfach im Laufe einer verschlüsselten Kommunikation weitere Schlüssel oder Regeln vereinbaren!

Schlüsselmanagement

Sicher ist es nicht jedermanns Sache, gleich mehrere 16-stellige Schlüssel im Kopf zu behalten. So reicht in Friedenszeiten vielleicht schon eine Zusammensetzung aus "nur" 8-stelliger Geheimzahl plus Datum, um auf bequeme Weise für jede Sitzung einen neuen Tagesschlüssel zu bekommen. Also ganz primitiv zum Beispiel:

Geheimzahl:   12345678
Datum:        20080601
Eingabe:     *1234567820080601#



Hardwaresicherheit

Wenn eine Krypto-Hardware schon mit memorierbaren Schlüsseln arbeitet, dann sollte sie konsequenterweise auch vollkommen "gedächtnislos" angelegt sein. Eine Speicherung von Schlüsselkomponenten im EEPROM des Controllers oder gar auf externen Chipkarten erscheint daher auch nicht empfehlenswert.
Diese gedächtnislose Hardware kann von jedermann gefahrlos benutzt werden, ohne dass es nach dem Abschalten der Betriebsspannung noch Datenspuren im Gerät gäbe. Sobald die Betriebsspannung unterbrochen wurde, sind gewissermaßen automatisch "die Walzen in Ausgangsstellung gebracht", sodass bei Verlust oder Diebstahl der Maschine kein Aufdeckungsrisiko für das Schlüsselschema besteht. (Das ist übrigens auch der Grund, weshalb ich auf der Hauptplatine für die Betriebsspannung keine größeren Stützkondensatoren vorgesehen habe!)


Nach oben




Überlegungen zur Sicherheit

An dieser Stelle werde ich alle wichtigen Parameter der hier vorgeschlagenen Lösung genauer erläutern. Aussagen zur praktischen Sicherheit mache ich nur dort, wo es genügend Vergleichsmöglichkeiten gibt.

Parameter der Zeittransposition

Teilung in 128 Positionen
Die Teilung eines jeden Blockes in 128 Positionen bedeutet zunächst einmal, dass es rein rechnerisch n=128! Möglichkeiten der Vertauschung gibt. Das ergibt sagenhafte 3,86 * 10215 Transpositionstabellen - eine verdächtig große Zahl, die wir auch gleich wieder vergessen können, denn sie ist ausschließlich von theoretischem oder schlechterdings von kommerziellem Interesse.
Für Transpositionschiffren im Allgemeinen und für die Audio-Zeittransposition im Besonderen gilt, dass man natürlich nur solche Transpositionstabellen verwenden sollte, die eine gute Durchmischung der Symbole gewährleisten. Es darf nicht vorkommen, dass viele Symbole allzu regelmäßig in ihrer ursprünglichen Reihenfolge auftreten. Dann wäre es nämlich für einen menschlichen Hörer möglich, aus dem Signalgemisch doch einen Inhalt herauszuhören. Allerdings sind die Leistungen von maschinellen phonetischen Analyseverfahren unter solchen Bedingungen nach wie vor wesentlich schlechter, als die unseres "psychoakustischen Biocomputers". Eine besondere Herausforderung für Mensch und Maschine liegt schon allein darin, dass das "Störsignal" (also Sprachfetzen, die an der falschen Stelle stehen), sich qualitativ überhaupt nicht vom "Nutzsignal" (also Sprachfetzen, die zufällig an der richtigen Stelle stehen) unterscheidet. Die Bedingungen sind damit allemal ungünstiger, als etwa beim Heraushören von Sprache, welche nur von Umgebungsgeräuschen mit einem deutlich unterscheidbaren Frequenzspektrum überlagert ist.
Gehen wir zugunsten eines Abhörgegners davon aus, dass die Transposition noch statistisch einwandfrei aufgelöst werden könnte, wenn nur etwa jedes 8. Symbol ungefähr an seiner ursprünglichen Stelle steht. Das würde dann in der Tat bedeuten, dass der Schlüsselraum von unrealistischen 128! auf einen Kernbereich von ungefähr 16! an wirklich guten (d.h. nicht "durchhörbaren") Transpositionstabellen zusammenschrumpft.
Aber auch nach dieser pessimistischen Einschätzung wäre eine Brute-Force-Herangehensweise mit zeitintensiver DSP-Komponente sicher nicht praktikabel.
Der Algorithmus, der die guten Transpositionstabellen liefern soll, kann im vorgestellten System mit 1016 unterschiedlichen Startbedingungen gefüttert werden. Dies ist die Zahl der praktisch anwendbaren Schlüssel. Diese Zahl liegt etwa in derselben Größenordnung, wie die Zahl der mutmaßlich nutzbaren guten Transpositionstabellen. Weitere wichtige Aspekte von Schlüsselschema/Tabellengenerator - siehe weiter unten.

Blocklänge von 1,3 Sekunden
In einer Sekunde lassen sich bereits ganze Sätze unterbringen (nicht nur in Norddeutschland).
Der einzelne Block enthält daher mit hoher Wahrscheinlichkeit eine Auswahl der gebräuchlichsten Phoneme. Bei flotter Sprechgeschwindigkeit können bis zu 50 Phoneme in einem Block zusammenkommen.
Sollte es dem Angreifer mithilfe eines genialen maschinengestützten Verfahrens gelingen, alle vorkommenden Phoneme bzw. ihre Bruchstücke eindeutig zu identifizieren, zusammenzufassen und zu katalogisieren, dann hätte er nicht mehr und nicht weniger als eine Liste von "Buchstaben". Diese müsste er nun in einem zweiten Schritt mithilfe statistischer Methoden (z.B. Häufigkeitsanalyse, Wörterbuchverfahren) oder möglicherweise auch unter Zuhilfenahme von weiteren Korrelationen, die sich vielleicht (nach meiner Einschätzung aber eher nicht!) aus dem Signal ableiten lassen, zur wahrscheinlichsten Aussage rekombinieren.
Wegen der großen Blocklänge stehen aber recht viele Buchstaben im Angebot, sodass es in der Regel mehrere Lösungen von höherer statistischer Evidenz gibt. Das Anagramm würde in solchen Fällen unlösbar, und diese Mehrdeutigkeit ließe sich auch mit beliebig gesteigerter Rechenleistung nicht mehr auflösen.

Symbollänge von durchschnittlich 10 Millisekunden
Ein ernsthafter Angriff auf die Zeittransposition, der nicht auf Brute-Force beruht, wäre durch eine Analyse des Signals hinsichlich seiner phonetisch bedeutsamen Komponenten denkbar. Die Anforderungen dürften noch einmal beträchtlich höher sein, als für eine gewöhnliche "Spracherkennung". Diese kann sich normalerweise auf die zeitliche Korrelation zwischen aufeinander folgenden Samples stützen. Durch die Zeittransposition wird aber genau dieser Zusammenhang aufgelöst. Der Gegner bräuchte also ein Spracherkennungssystem, das die phonetischen Komponenten punktuell und treffsicher erkennen kann. Das sind Forderungen, die sich teilweise widersprechen.
Die bekannten Verfahren zur Phonemanalyse beruhen auf der Auswertung der sogenannten Formanten (das sind die charakteristischen Frequenzspektren der Vokale und Konsonanten) sowie der Hüllkurven (Amplitudenverläufe im Audiosignal).
Zur Erkennung eines Phonems wird in der Regel ein Messintervall von mindestens 20 ms benötigt; die meisten konventionellen Spracherkennungsysteme arbeiten daher mit genau diesem Zeitraster. In einem gröberen Zeitraster würden die Übergänge zwischen den Phonemen möglicherweise "verschluckt", in einem engeren Zeitraster funktioniert die Formantanalyse nicht mehr ausreichend treffsicher (Frequenzbestimmung wird zu ungenau).
Was liegt also näher, als unser System mit einer Symbolrate zu betreiben, die deutlich unter diesen 20 Millisekunden liegt!
HEKTOR arbeitet mit Symbolen von durchschnittlich nur noch 10 ms Spieldauer, deren Länge dynamisch variiert wird. Damit sollte das Signal keiner konventionellen Phonemanalyse mehr zugänglich sein.
(Anmerkung: Sicher kann man das eine oder andere charakteristische Merkmal der Sprecherstimmen als Durchschnittswerte über mehrere Symbole ermitteln - damit lassen sich aber in der Regel keine konkreten sprachlichen Aussagen extrahieren.)

Schlüsselraum

Als Schlüssel können bis zu 16-stellige Dezimalzahlen über den Zehnerblock am Gerät eingegeben werden. Der Schlüsselraum umfasst einen Wertebereich fast 1016 Startbedingungen (abzüglich einer Handvoll Schlüssel mit führenden Nullen, schon klar!).
Ins Binärsystem umgerechnet entspricht dies einer Schlüssellänge von ungefähr 53 Bit.
Ziel eines guten Permutations-/Transpositionsalgorithmus ist es zunächst einmal, dass jede erzeugte Tabelle eine möglichst gute (d.h. statistisch gleichmäßige) Durchmischung der Symbole garantieren kann.
Zwei Schlüssel, die sich in nur einer Ziffer unterscheiden, oder auch zwei beliebige mögliche Schlüssel sollen garantiert unterschiedliche Sequenzen von Transpositionstabellen hervorbringen. Ferner sollen sich die Sequenzen der Transpositionstabellen nach einer realistischen Laufzeit nicht überlappen (also auf dieselben Transpositionstabellen hinauslaufen).

Zu den Erfolgsaussichten für "Brute-Force":
Wenn die oben genannten Bedingungen erfüllt sind, gibt es für einen Brute-Force-Angriff keine "Abkürzungen", die den zu durchsuchenden Schlüsselraum einschränken würden. Für einen Brute-Force-Angriff auf dieses System müsste der Angreifer durchschnittlich den halben Schlüsselraum von 5 Billiarden Schlüsseln durchprobieren. Die Nachbildung des HEKTOR-Schlüsselschemas ist trivial und erfordert wenig Rechenaufwand. Zusätzlich bräuchte der Angreifer aber noch ein automatisierbares Verfahren, das einen "Treffer" sicher erkennen kann. Das ist nun weniger trivial. Dieses Verfahren müsste nämlich blitzschnell entscheiden können, ob der auf gut Glück entschlüsselte Block und seine Folgeblöcke auch sinnvoll entschlüsselt wurde. Blitzschnell bedeutet hier, dass pro Sekunde mindestens 58 Milliarden Schlüssel geprüft werden müssten, wenn der Angriff in einem Tag erfolgreich sein soll. Diese Anforderung erscheint im Hinblick auf die Leistungsfähigkeit moderner Spracherkennungsverfahren auch heute noch ziemlich unrealistisch.


Tabellengenerierung

Der 16-stellige Initialschlüssel wird im BCD-Format in ein softwaremäßig implementiertes rückgekoppeltes Schieberegister (Logical Feedback Shift Register, LFSR) mit der Länge 63 Bit übernommen.
Das LFSR mit XOR-Rückführungen an den Positionen 63 und 62 liefert eine pseudozufällige Bitsequenz, die sich erst nach n = 263-1 Taktschritten zum ersten Mal wiederholen würde.
Auf der Basis dieser Pseudozufallsbits wird die Transpositionstabelle mit jedem Blockwechsel neu umgestellt, und zwar gründlich. Grundlage für eine einzige neue Tabelle ist die Ziehung von 1664 Pseudozufallsbits (mindestens erforderlich wären 886 Bits gewesen) aus dem LFSR. Die großzügige Nutzung des LFSR hat zweierlei Gründe: Zum Einen wird die relativ starke Autokorrelation der LFSR-Bits kompensiert; zum Anderen soll sichergestellt werden, dass keine nennenswerte Korrelation zwischen direkt aufeinander folgenden Tabellen verbleibt.
Da die Transpositionstabelle nicht mit jedem Block neu berechnet, sondern sukzessive umgestellt wird, gibt es zusätzlich zur Entropie des Pseudozufallsgenerators einen Aufbaueffekt. Das Schlüsselschema liefert also nicht etwa "nur" 1016 unterschiedliche Tabellen insgesamt, sondern selbstverständlich kann es 1016 unterschiedliche Tabellensequenzen liefern.
Obgleich mathematisch noch nicht abschließend geklärt, ist doch davon auszugehen, dass sich Tabellensequenzen, welche durch zwei unterschiedliche Startzahlen erzeugt würden, niemals überlappen werden, und dass alle Schlüssel zu einer Sequenz von brauchbaren Transpositionstabellen (gute Durchmischung des Signals) führen werden.
Direkt aufeinander folgende Transpositionstabellen dürften daher statistisch fast ebenso unabhängig voneinander sein, wie zwei Tabellen, die weiter auseinander liegen. Selbst wenn der Angreifer es fertigbringt, eine oder mehrere Transpositionstabellen vollständig und fehlerfrei zu extrahieren, so kann er dadurch noch immer keinen Rückschluss auf weitere Transpositionstabellen oder auf den verwendeten Initialschlüssel ziehen.


Frequenzvariation

Die reine Zeittransposition lässt auch bei sehr feinem Zeitraster noch einige charakteristische Frequenzkomponenten der Sprecherstimmen durchkommen. Diese könnten beispielsweise zur Identifikation der Sprecher genutzt werden. Möglicherweise lassen sich auch noch weitere Korrelationen zwischen den Symbolen finden, die auf Schmutzeffekte bei der A/D-Wandlung oder auf die Symbolfrequenzen zurückzuführen wären (Mischprodukte aus Symbol- und Stimmfrequenz).
Da liegt es nahe, auch die Frequenzkomponente nach einem pseudozufallsschema zu beeinflussen. Im Rahmen der vorliegenden Hardware lässt sich dies realisieren, indem wir die Abtastraten für A/D- und D/A-Wandlung nach einem Pseudozufallsschema dynamisch modulieren, sodass sich die Aufnahmegeschwindigkeit gegenüber der Wiedergabegeschwindigkeit verändert.
Hierzu ein wichtiger Hinweis: Im Gegensatz zur Frequenzinversion (Mischung mit anderen Frequenzen und Herausfiltern der unerwünschten Seitenbänder) erhält man durch die Modifikation der Samplingfrequenzen kein Signal, das vom akustischen Eindruck her vollkommen unverständlich wird. Die Operation ist eher mit einem schneller oder langsamer laufenden Tonband zu vergleichen, also allein für sich angewandt ein eher schwaches Verschleierungsverfahren. Allerdings entstehen auch keine neuen Mischprodukte bzw. Spiegelfrequenzen, die man vor der Übertragung aufwendig herausfiltern müsste.
In der vorliegenden Implementierung wird die Symboldauer und die Tonhöhe der stimmhaften Laute um bis zu +/-50% variiert, was in etwa dem Frequenzumfang einer Oktave entspricht. Eine größere Schwankungsbreite erschien nach einigen Experimenten auch nicht sinnvoll, da das Signal ansonsten aus der zur Verfügung stehenden Übertragungsbandbreite herausfallen könnte.

Als Ergänzung zur Zeittransposition verspricht die Frequenzvariation einen Sicherheitsgewinn, da die Symbole von ehemals zusammengehörigen Lauten jetzt nicht nur an unterschiedlichen Positionen auftreten, sondern auch mit unterschiedlichen Frequenzen. Mögliche Korrelationen zwischen den Sprachfetzen, die die Zeittransposition noch übriggelassen hat, sollten nach Anwendung der Frequenzvariation beseitigt oder stark vermindert worden sein. Effektiv wird durch diese Operation auch das Audiospektrum verbreitert, was allgemein eine bessere Robustheit des Signals gegenüber möglichen Störungen verspricht.

Das Pseudozufallsschema zur Frequenzvariation liegt in der gegenwärtigen Umsetzung ebenfalls als Tabelle aus 128 gleichverteilten Zufallswerten vor. Diese wird, vom Transpositionsschema unabhängig, mit jedem Durchgang gewechselt.

Synchronisation

Dogma: Zu keinem Zeitpunkt sollen irgendwelche Schlüssel-Informationen übertragen werden!
Wenn schon ein symmetrisches Schlüsselschema mit memorierbaren Schlüsseln verwendet wird, dann wäre jede Übertragung von Meta-Informationen zum Schlüssel eine Verschlechterung der Sicherheit. Das System überträgt lediglich drei einfache Synchronisationssignale: ein Startsignal für den Beginn des Durchganges, ein wiederkehrendes Signal zur Blocksynchronisation, ein Stoppsignal für das Ende des jeweiligen Durchganges.
Die Signale identifizieren sich allein über ihre Frequenz und ihre Dauer. Sie enthalten also nicht mehr Information, als unbedingt notwendig.

Der Frequenzbereich der Synchro-Signale wurde nach folgenden technischen Überlegungen gewählt:
Insbesondere die Frequenz der Blocksynchronisation sollte hoch genug sein, um durch eine möglichst kurze Periodendauer eine präzise Synchronisation zu ermöglichen. Andererseits durfte diese Frequenz nicht über 2400 Hz liegen, damit sie bei Telefoniesystemen noch ganz im Übertragungsbereich mit geringster Dämpfung liegt.
Mit Frequenzen zwischen 1200-1800 Hz fährt man hier am besten. Die genauen Frequenzen für Blockstart/Synchro/Ende ergeben sich aus der Programmierung (sichere Unterscheidung der zwei Frequenzen) sowie den Teilerverhältnissen zur Taktfrequenz.


Tabellensynchronisation

Dogma: Zu keinem Zeitpunkt sollen irgendwelche Schlüssel-Informationen übertragen werden!
Natürlich auch dann nicht, wenn der Gleichlauf der Transpositionstabellen durch eine Störung durcheinander gekommen ist.
Dieser Fall könnte eintreten, wenn ein dauerhafter Zeitversatz von mehr als 20 ms (halbe Dauer des Blocksynchro-Signals) auf dem Übertragungsmedium auftreten sollte, wenn eine sehr starke Störung ungünstig auf den Zeitpunkt der Blocksynchronisation fällt, oder wenn die Übertragung für mehr als etwa 3 Blöcke komplett ausfallen sollte. Dann reicht die Ganggenauigkeit der lokalen Taktoszillatoren nicht mehr aus, um den Gleichlauf aufrecht zu erhalten und das System kann sich nicht mehr mit der nächsten Blocksynchronisation "fangen".

Ein Rückfall in die unverschlüsselte Übertragung und anschließende Wiederaufnahme des verschlüsselten Betriebs wären umständlich und mit Sicherheitsrisiken verbunden, besonders dann, wenn man gezwungen wäre, nochmal mit demselben Tagesschlüssel neu zu starten. Besser wäre es, wenn das System in so einem Fall automatisch einen neuen Sitzungsschlüssel bereitstellen würde. Dieser Vorgang sollte aus Sicherheitsgründen selbstverständlich ohne die Übertragung weiterer Informationen abgewickelt werden. (Schon die Übertragung von Laufnummern zu den Schlüsseln, oder allein die Information, dass die Übertragung effektiv gestört werden konnte, sind für einen Abhörgegner bereits interessant.)

Die Idee einer "stillen Tabellensynchronisation" wurde schließlich folgendermaßen umgesetzt:
Der sendende Teilnehmer merkt erstmal nichts von einer Störung und wird seinen Durchgang ganz normal fortsetzen, irgendwann die Sendetaste loslassen und sich wieder im Bereitschaftsmodus befinden, weil er auf eine Antwort wartet. Der Empfänger bemerkt die Störung und wartet seinerseits in aller Ruhe das Ende des Durchganges ab. Die Umschaltung vom Empfangsmodus in den Bereitschaftsmodus funktioniert normalerweise auch dann noch automatisch, wenn ein größerer Zeitversatz von mehr als einer Blocklänge zwischen Sender und Empfänger entstanden sein sollte.
Sollte der Empfänger nicht automatisch in den Bereitschaftsmodus kommen, dann kann der Benutzer den Durchgang auch manuell durch Drücken der Taste "#" beenden, sobald er aus dem Signalgemisch das Tonsignal für "Durchgang-Ende" heraushört.

Egal, ob ein Durchgang gestört wurde oder nicht, beide Teilnehmer befinden sich normalerweise nach einer gewissen Zeit und vor allem zur gleichen Zeit wieder im Bereitschaftsmodus. Nach jedem Übergang vom Sende- oder Empfangsmodus in den Bereitschaftsmodus überspringt das Programm immer eine gewisse Anzahl von Tabellen. Dabei wird nicht etwa eine fixe Anzahl von Tabellentranspositionen durchgeführt, sondern immer bis zur nächsten vollen 128er-Einheit ("Meilenstein") gezählt. (Nebenbei nutzt das System die Bereitschafts-Pause, um eine neue Tabelle für die Frequenzvariation zu generieren.)
Mit diesem Verfahren wird also (fast) jeder eventuell vorhandene Unterschied in den Tabellenzählern mit dem Erreichen des Bereitschafts-Modus automatisch wieder ausgeglichen. (Ausnahme: Einer der Teilnehmer ist gerade bei Tabelle Nr. 127 angelangt und muss in der Bereitschafts-Pause nur noch eine Tabelle weiterspringen, während der andere Teilnehmer schon die 128 erreicht hatte und nun ganze 128 Tabellen weiterspringt. Die Wahrscheinlichkeit hierfür liegt bei unter einem Prozent.)
Und das Wichtigste: Dieser automatische Neuabgleich der Tabellen funktioniert, ohne dass über den unsicheren Kanal irgendwelche zusätzlichen Informationen ausgetauscht werden mussten!


Vorteile der analogen Übertragung

Das analog verschlüsselte Audiosignal kommt bis auf die Synchronimpulse ohne digitale Signalkomponenten aus. Die einzigen digitalen Komponenten (im Sinne einer eindeutigen Auswertbarkeit) sind die drei Synchronisationssignale, welche auch nur drei verschiedene Informationen beinhalten: "Durchgangs-Beginn", "Block-Ende", "Durchgangs-Ende".
Möchte der Angreifer mehr Informationen haben, dann muss er sich schon mit dem nicht codierten, analogen Teil des Signals beschäftigen. Schon das Aufzeichnen einer nicht digital codierten Übertragung ist bereits mit dem ersten Informationsverlust (Quantisierungsfehler) behaftet, und vor allem ist es beim Analogsignal auch nicht immer möglich, Kanalstörungen vom Nutzsignal zu unterscheiden. Dies erschwert die Signalanalyse zusätzlich, da hier weitere Unsicherheitsfaktoren ins Spiel kommen.

Der berechtigte Empfänger hat es da wesentlich leichter. Sobald er eines der Synchronisationssignale sauber erkannt hat und den richtigen Schlüssel verwendet, ist er in der Lage, das korrekte Modell für die Transpositionen und Frequenzvariationen direkt auf das Signal anzuwenden. Das funktioniert selbst dann noch, wenn die Übertragung zeitweise stark gestört wird oder sogar für einige Sekunden komplett ausfällt. Im Gegensatz zu volldigitalen Verfahren kommt es dann nicht zu vollständigen Aussetzern und es müssen auch keine Daten zur Neusynchronisation übertragen werden, die möglicherweise kompromittierend wären.
Etwaige Störungen in der Analogübertragung treten als akustische Störgeräusche in Erscheinung, aber die werden von unserem psychoakustischen Biocomputer ganz hervorragend herausgefiltert. Gegenüber volldigitalen Alles-oder-Nichts-Codierungen hat die Zeittransposition doch so einige Vorteile bezüglich der "Useability".

Weitere Sicherheitsaspekte ergeben sich aus der Verwendung von Deltamodulation als internem Codec:
  • Durch die integrierenden Eigenschaften der Deltamodulation werden harte Pegelsprünge an den "Schnittkanten" der Symbole regelrecht abgerundet - das bedeutet, das Signal verliert gerade jenen Teil seiner Hüllkurveninformation, der für einen Angreifer besonders interessant gewesen wäre. Um auf den Puzzle-Vergleich zurückzukommen: Wir schneiden von jedem Puzzleteil einen Teil der Zacken ab!
  • Zur D/A-Rückwandlung eines Delta-Bitstroms reicht ein simpler Tiefpass. Damit lassen sich höherfrequente Mischprodukte aus Symboltakt und Nutzsignal, die eventuell kompromittierende Informationen beinhalten könnten, bereits sehr gut unterdrücken.
  • Im Zusammenspiel mit modernen Telefonsystemen dürfte es von Vorteil sein, dass die Deltamodulation mit einem hohen Oversampling-Faktor arbeitet. Die Delta-Abtastfrequenz liegt dann weit von der normalerweise üblichen PCM-Abtastrate von 8 kHz entfernt. Aliasing-Effekte sind hier nicht zu befürchten.

Bekannte Schwachstellen

Die Schutzwirkung der Zeittransposition lässt bei besonders langsamer Sprechgeschwindigkeit nach. Bei langsamem Sprechen kommen nur wenige unterschiedliche Phoneme in einen Block, und der bereits erwähnte Effekt der Mehrdeutigkeit lässt sich nicht ausnutzen. Eine Rekombination der wenigen vorhandenen Phoneme und Silben mit den bereits erwähnten Angriffsstrategien wäre vielleicht doch möglich. Andererseits enthält ein einzelner, langsam besprochener Block auch nur wenig Informationen, die kompromittiert werden könnten. Das Auflösen eines einzelnen Blockes lässt auch keinen Rückschluss auf die vorige/nächste Transpositionstabelle oder auf den Initialschlüssel zu.

Die angewandte Methode zur Frequenzvariation lässt sich möglicherweise noch verfeinern. Das ursprüngliche Ziel einer Verbreiterung des Signalspektrums wird bereits mit der vorliegenden Variante erreicht, das kann man hören und anhand von Spektrogrammen objektiv nachweisen. Allerdings sind in der vorliegenden Implementierung die Samplingfrequenzen für Aufnahme und Wiedergabe über ein- und denselben Interrupt aneinander gekoppelt. Aus diesem Grund kann man in der derzeitigen programmiertechnischen Umsetzung für einen Durchgang auch immer nur ein- und dieselbe Frequenztabelle benutzen, weil ansonsten das Last/First-Prinzip bezüglich der Abspielfrequenzen nicht eingehalten werden kann. Ich gehe davon aus, dass die Frequenzvariation in jedem Fall ein Sicherheitsgewinn ist, und dass sich keine neuen Korrelationen und Angriffspunkte durch sie ergeben.

Die jetzige Platinenversion enthält auch wieder einen 10-poligen ISP-Stecker, sodass das AVR-Programm direkt auf der Platine geflasht werden kann. Das ist erstmal sehr praktisch, andererseits bedeutet es natürlich ein gewisses Sicherheitsrisiko, weil jemand, der Zugriff zum Gerät erlangt, das Programm ebenfalls recht schnell gegen eine "Spezialversion" austauschen könnte. Andererseits - wenn einfach jemand in die Wohnung spazieren kann, um dort technische Manipulationen vorzunehmen, dann ist bereits die nächste Eskalationsstufe erreicht, und man sollte sich ernsthafte Gedanken über ein ganzheitlicheres Schutzkonzept für die privaten Räumlichkeiten machen...


Weitere mögliche Schwachstellen

Es wurde bisher noch nicht eingehender untersucht, wie stark die elektromagnetischen Abstrahlungen dieses immerhin mit 10 MHz getakteten Mikrocontrollersystems sind, und ob es vielleicht möglich ist, durch Auswertung der EM-Abstrahlungen einen eingetippten Code gewissermaßen "abzuhören". Das wäre doof, ist aber nach Angaben des CCC nur bei bestimmten Geldautomaten bisher gelungen... Es kann nicht schaden, allgemeine Regeln für einen EMV-günstigen Aufbau zu beherzigen. Also Zuleitungen zur Tastatur so kurz wie möglich zu halten und gegebenenfalls zusätzliche Abschirmbleche und Filtermaßnahmen für die Betriebsspannung vorzusehen.

Der vorliegende Schlüssel- und Transpositionsalgorithmus scheint alle genannten Anforderungen zu erfüllen. Jedoch lassen sich insbesondere die Aussagen zur Komplexität des Schlüsselraums trotz zahlreicher Probeläufe immer nur stichprobenartig bestätigen, aber strenggenommen nicht beweisen. (Jedenfalls nicht für den Autor, der momentan leider auf keinen Superrechner und kein Spezialistenteam von Mathematikern zurückgreifen kann.) Details zur gegenwärtigen programmiertechnischen Umsetzung sind dem kommentierten Quellcode zu entnehmen.



Nach oben



Firmware

Das Programm
Das Programm wurde unter der komfortablen Editoroberfläche von BASCOM-AVR erstellt und compiliert. Es besteht zum größten Teil aus Assemblerroutinen, die von einem Gerüst aus unkritischen Basic-Strukturen gewissermaßen verwaltet werden. Auf diese Weise konnten die Interruptroutine und die Schlüsselberechnung effizient und dennoch weitgehend transparent realisiert werden. Dem hohen Anteil an Maschinensprache ist es denn auch zu verdanken, dass sich dieses Programm noch mit der Demoversion von Bascom-AVR compilieren lässt. Das Programm kann hier nicht im Detail besprochen werden. Seine Funktionsweise sollte auch für den Assembler-Hasser gut nachvollziehbar sein, denn der Quellcode ist reichlich kommentiert.

Download
Die Verschlüsslersoftware ist für alle bisher entwickelten Hardware-Varianten vollkommen identisch. Für die hier beschriebene Kompaktversion kommt also dasselbe Programm zum Einsatz, wie es für die zweiteilige Variante auch verwendet wird. Die stabile Version steht im Download-Bereich von [10] zur Verfügung. Sollte ich Experimentierversionen mit besonderen Features herausbringen, dann wären diese zunächst auf meinen eigenen Seiten zu finden.

Flashen
Die Binär- oder Hex-Files können zum Beispiel mit AVR-OSP, AVRprog oder TwinAVR übernommen und in den Chip geschrieben werden. Im Auslieferungszustand sind die AVR-Fusebits üblicherweise so gesetzt, dass der interne RC-Oszillator zur Takterzeugung verwendet wird, der Chip also in jedem Fall programmiert werden könnte. Ich empfehle jedoch, zunächst die Fusebits für den Betrieb mit einem externen Quarz  entsprechend zu setzen (dann hat man die "gefährlichste" Sache gleich am Anfang erledigt), und dann den Programmcode zu flashen. Unter AVR-Prog, das zusammen mit der Open-Source-Weiterentwicklung des "AVR910"-Programmers (Version 3.8) ganz hervorragende Dienste leistet, wären die Optionen für die Fusebits dann: "externer Quarz, mittlere/hohe Frequenz".

Fusebits ATmega8515 HektorFusebit-Fallstricke
Nebenstehendes Bild zeigt die Fusebits in der Darstellung von Twin-AVR, wie sie gesetzt sein müssen, damit der AVR den externen 10-MHz-Quarz zur Takterzeugung benutzt.
Im Gegensatz zum Auslieferungszustand ist also das Fusebit CLKSEL0 jetzt ebenfalls gesetzt, was unter TwinAVR aber bedeutet, Häkchen weg. CLKSEL2 und CLKSEL3 müssen zusätzlich gelöscht werden, damit der externe Quarz benutzt wird - hier also Häkchen hin. - Siehe Screenshot!
Ich hoffe, dass damit nun alle Klarheiten beseitigt sind und niemand mehr auf die lustige Idee kommt, erstmal nur CLKSEL0 zu setzen, ohne gleichzeitig CLKSEL2 und CLKSEL3 zu ändern - nur um bestätigt zu sehen, dass der AVR dann ganz ohne Taktgenerator dasteht und sich plötzlich auch nicht mehr per ISP/SPI ansprechen lässt... (Endlich ein Grund zur Panik? Nicht ganz: Der Chip ist nicht kaputt, er lässt sich nur nicht mehr im seriellen Programmiermodus ansprechen. Einfach externen Oszillator von z.B. 1 MHz an den Pin XTAL1 anschließen, schon sind Flash und Fusebits wieder erreichbar.)

Nach oben



Messungen

Spektrogramm weibliche unverschlüsselte Sprache

Beispiel:
Spektrogramm Sprache (weiblich), unverschlüsselt,
ca 5 s


Die Spektralanteile der Grundfrequenz bzw. der  Harmonischen bei den stimmhaften Lauten (Formanten) sind deutlich als charakteristische Muster auf der Frequenzachse erkennbar.


Spektrogramm weibliche Sprache, verschlüsselt mit HEKTOR-128, 3 Blöcke

Beispiel:
Spektrogramm Sprache (weiblich) verschlüsselt,
Verfahren HEKTOR-128,
3 Blöcke

Startsync (~1500 Hz) und Stoppsync (~1625 Hz) sind als helle Linien vor und hinter dem Durchgang zu erkennen;
Block-Synchrosignale treten als helle Punkte im Abstand von etwa 1,3 Sekunden aus dem Signalgemisch hervor.


Nach oben


Verschlüsselung ist der beste Datenschutz ...

... und vielleicht schon bald der letzte. Man kann die neuesten Orwell'schen Zumutungen natürlich bejammern und sich in einen Kinderglauben an Rechtstaatlichkeit oder höhere Berufung von Innenministern flüchten. Das ist ganz schlecht. Man kann (und sollte) an Demos, Unterschriftensammlungen und immer schön am Wahlzirkus teilnehmen. Das ist weniger schlecht, wenn man sich über den Happening-Charakter solcher Veranstaltungen im Klaren ist und dabei keine allzu großen Hoffnungen auf Veränderung hegt. Denn bis auf Weiteres ist wohl davon auszugehen, dass ein "Brief-, Post- und Fernmeldegeheimnis" (Grundgesetz Artikel 10) noch keinen einzigen "Lauschangriff", keine "Datenpanne" und keinen "Abhörskandal" verhindert hat.
Gesetze sind eben bestenfalls eine Richtschnur für korrektes Verhalten, sie verhindern keine Straftaten, und schon garnicht solche vermeintlichen Kavaliersdelikte, deren Aufdeckung in letzter Zeit mal wieder große Aufregung erzeugt. Neu ist allerdings, dass selbst kluge Sprüche eines Bundesverfassungsgerichtes scheinbar nicht in der Lage sind, den kriminellen Tatendrang gewisser Sicherheitspolitiker und ihrer Komplizen zu stoppen. Langsam sollte auch dem letzten "Datenschutzbeauftragten" dämmern, wie der Hase läuft: Kriminelle und Nachrichtendienste machen alles, was technisch machbar ist.

Und das kann man ihnen nicht einmal vorwerfen. Gelegenheit macht Diebe. Unsere öffentlichen Kommunikationsnetze waren und sind nicht auf Abhörsicherheit oder Anonymisierung ausgelegt, im Gegenteil, hier wurden ab Mitte der Neunziger Jahre noch zusätzliche Abhörschnittstellen eingerichtet, um reguläre Lauschangriffe erheblich zu erleichtern. Insofern waren dann TKG/TKÜV und Co. wenigstens eine klare politische Stellungnahme der damaligen rot-grünen Koalition: Ein klares JA zum europaweiten Überwachungsstaat!

Am Beispiel von Vorratsdatenspeicherung und Telekommunikationsüberwachung wird der totalitäre Trend überdeutlich. Stellen wir uns doch einfach mal vergleichbare Praktiken für die klassische Briefpost vor. Das sähe dann wohl so aus: In jedem Hauptpostamt werden Absender und Zielort jeder einzelnen Sendung protokolliert und für (mindestens) sechs Monate in einer Kartei abgelegt. Ganz nebenbei ergibt sich aus dieser Maßnahme, dass Briefwechsel zwischen bestimmten Personen oder Personengruppen gezielt überwacht und bei Bedarf auch sabotiert werden können. Dafür gibt's dann eine spezielle Abteilung, in der manche Briefe (oder vielleicht sogar alle?) routinemäßig geöffnet und hinsichtlich einer Liste von verdächtigen Schlüsselbegriffen ausgewertet werden. Auf Anfrage kann diese Abteilung von jedem Briefwechsel Belegkopien oder Abschriften anfertigen, die dann, selbstverständlich ordentlich chiffriert, an die interessierten Organe weitergeleitet werden.

Was man in der Briefpost mit lautem Aufschrei als "Stasi-Methoden" verurteilen würde, ist in der modernen Telekommunikation zum europaweiten Standard erhoben worden. Unter dem Vorwand der Kriminalitätsbekämpfung und mit beliebig austauschbaren Argumenten ("Wirtschaftskriminalität" | "Softwarepiraterie" | "Kinderporno" | "Geldwäsche" | "Terrorismus" | "Musikpiraterie" | "Gewaltspiele") wurde in den letzten zehn Jahren immer nur eines versucht: die Hirne weichzukochen und alle modernen Kommunikationsnetze Ready for Dictatorship zu machen. Wenn es nach der staatlichen Propaganda und den gleichgeschalteten Massenmedien ginge, dann würden verdachtsunabhängige Datensammlungen, allgegenwärtige Bespitzelung und Überwachung schon längst als etwas Normales, Alltägliches oder gar Notwendiges hingenommen. Schließlich hat man doch nichts zu verbergen!

Und schon verkündet das Propagandaministerium eines Dr. S. in bemerkenswerter Kontinuität den Einsatz von neuen, fantastischen Wunderwaffen im Kampf gegen die abstrakte und dennoch konkrete (also gewissermaßen transzendente!) terroristische Bedrohung unserer Zeit: "Biometrische Pässe und Ausweise", "Vorratsdatenspeicherung", "Bundestrojaner", "Personenkennziffer", "Online-Durchsuchung", "Präventives Abschießen von Flugzeugen", "Heimliches Eindringen in Wohnungen zur Anbringung von Wanzen", "Nationaler Sicherheitsrat" ...


Analyse

Findige Unternehmer und Staatsterroristen stehen voll auf den totalitären Technikmissbrauch. Sie kommen in letzter Zeit erstaunlich weit damit, weil es eine Gesellschaft mit nachlassendem Grundrechtebewusstsein und ohne besondere Technikkompetenz bereitwillig zulässt. Geisteskranke Politiker nerven uns seit Jahren mit totalitären Sicherheitskonzepten, die aus Hollywood-Produktionen und schlechten Zukunftsromanen zusammenphantasiert sind. Sinn und Zweck dieser Übung ist es, mehr Terror zu verbreiten, als alle gewöhnlichen Kriminellen und religiösen Spinner zusammen.
Dabei besitzen die Protagonisten des Überwachungsstaates auch noch den Zynismus, sich selbst als Retter von Rechtstaatlichkeit und Freiheit aufzuspielen. Erst machen sie ein paar neue Gesetze, und weil die nichts bringen, kommen noch ein paar klitzekleine Verfassungsänderungen. So kommen wir vom Überwachungsstaat zum Präventionsstaat, welcher dann ruckzuck und mit bereitwilliger Unterstützung bestimmter Industriezweige in einen toppmodernen totalitären Polizeistaat übergehen wird. Wer heute schweigt, stimmt zu und macht sich mitschuldig.



Zusammenfassung

Kriminelle, kriminelle Unternehmer, staatliche Schnüffler und Nachrichtendienste respektieren das Fernmeldegeheimnis nicht. Die einzige realistische Möglichkeit, auf öffentlichen Kommunikationsnetzen vertrauliche Kommunikation durchzuführen, besteht seit jeher in der Anwendung kryptografischer und konspirativer Techniken. Neu daran ist eigentlich nur die Tatsache, dass heute jeder die technischen Möglichkeiten für solche allfälligen Gegenmaßnahmen hätte. Wer seine Privatsachen verschlüsselt, macht sich unter den Bedingungen einer demokratischen Grundordnung keineswegs "verdächtig", er nimmt einfach nur sein verfassungsmäßig garantiertes Recht auf private Kommunikation wahr. Wer verschlüsselt, liefert eine konkrete und angemessene Antwort auf die technisch-politischen Herausforderungen der Gegenwart und er stärkt damit - aufrichtiger und effektiver als mancher Innenhohlminister - die Wahrhaftigkeit unserer verfassungsmäßig garantierten Grundrechte!

  • Freiheit ist wichtiger als eine Illusion von "Sicherheit"!

  • Der Einsatz von Verschlüsselungstechniken für private E-Mails, Dateien und Sprachübertragungen ist in der Bundesrepublik Deutschland legal und keinerlei Einschränkungen unterworfen.

  • Übertragungen per Telefon, Mobilfunk oder auch VoIP dürfen grundsätzlich verschlüsselt werden, wenn sie innerhalb der BRD oder weltweit zwischen BRD-Bürgern stattfinden; hier gilt eindeutig und uneingeschränkt das Telekommunikationsgeheimnis, welches sich aus dem Brief-, Post- und Fernmeldegeheimnis (Artikel 10 GG) ableitet.

  • Funkübertragungen in den Amateur- und ISM-Bändern unterliegen im Allgemeinen nicht dem Schutz des Telekommunikationsgeheimnisses. Hier sind verschlüsselte Übertragungen allerdings zu Experimentierzwecken erlaubt, schließlich entspricht es dem experimentellen Charakter des Amateurfunks, neue Modulationstechniken und Übertragungsverfahren auszuprobieren, sofern die Rahmenbedingungen (Bandpläne, Kanalbandbreiten) eingehalten werden. Wenn sich die teilnehmenden Stationen im Vorfeld eines verschlüsselten QSO als solche zu erkennen geben, ist dagegen sicher auch nichts zu sagen. (Dieser Hinweis bezieht sich auf die zweiteilige HEKTOR-Variante mit einer Funkgeräte-Kopplung.)

  • Auslandsgespräche werden wieder interessanter. Leider gibt es nicht nur in weltbekannten Schurkenstaaten rigorose Kryptografie-Einschränkungen, auch eine ganze Reihe von europäischen Ländern, die sich ansonsten einen demokratischen Anschein geben (z.B. Frankreich), schränken den Einsatz kryptografischer Verfahren empfindlich ein. Kein Kommentar.

Nach oben



Technikfreunde! Antischäublisten!

Es wurde ein System vorgeschlagen, das durch konsequente Anwendung der analogen Zeittransposition ein robustes taktisches Sicherheitsniveau für Telefoniezwecke erreichen kann. Als analoger Verschlüssler stellt das System eine Ergänzung oder Alternative zu anspruchsvolleren volldigitalen Hightech-Lösungen dar.

Das Projekt ist "Open-Source" und soll es auch bleiben. Je mehr Leute mitmachen, umso größer ist der technische, individuelle und politische Nutzen. Durchaus möglich, dass sich die Programmierung auf der vorliegenden Plattform noch erheblich ändern kann.

Ich behaupte nicht, dass das vorgestellte Projekt die ultimative Plattform für analoge Sprachverschlüsseler sei. Es ist vielmehr ein konkreter Vorschlag für ein praktisch einsetzbares System. Sollte mein Projekt jemanden auf den Plan rufen, der etwas noch Besseres vorlegen kann, dann möge er seine Alternative bitteschön zu denselben Bedingungen veröffentlichen, und allen wäre damit geholfen!

Konstruktive Anregungen, Tipps und programmiertechnische Verbesserungsvorschläge nehme ich natürlich gern entgegen. Schon die Erstveröffentlichung hatte ein paar sehr interessante Resonanzen und sachdienliche Hinweise eingebracht. Einige neue Quellen aus dem Internet habe ich in die unten stehende Linkliste aufgenommen.

Platinen, Bausätze oder gar Fertiggeräte gebe ich nur privat an privat und in kleinen Stückzahlen ab. Ich verspüre wenig Lust, mich durch die absurden gewerberechtlichen Bedingungen in diesem Land erpressbar zu machen.


Einige Ideen zur Weiterentwicklung des Projektes gebe ich an dieser Stelle schonmal weiter:
  • Schnellere und komfortablere Bedienung durch kürzere Blöcke?
    Also, DAS ginge sogar ganz ohne Programmänderungen, nämlich durch Austauschen des Quarzes gegen ein anderes Exemplar bis etwa 16 MHz. Dann liegen alle Taktfrequenzen entsprechend höher, die Synchro-Signale würden aber durchaus noch in den Übertragungsbereich passen. Alles läuft dann irgendwie schneller und das Leben wird kürzer.

  • Akustikkoppler-Variante?
    Elektronisch gesehen kein großes Problem: Signalumschaltung etwas ändern, Ausgabe- und Eingabekanal auf ein weiteres Mikro und eine Hörkapsel geben. Die müssten dann auf geschickte Art und Weise am jeweiligen Telefonhörer befestigt werden. Schade nur, dass die heutigen Telefonhörer schon lange nicht mehr genormt sind. So ein Kasten mit zwei Gummimuffen, wie etwa die ersten Modems in den 80ern, bringt's heute einfach nicht mehr. Wenn jemand eine praxiserprobte Idee hat, wie man die akustische Ankopplung einfach, zuverlässig und kostengünstig realisieren kann, bitte, bitte melden!
    Ein "HEKTOR-Akustik-Interface ("HAI"...) wäre zweifelsohne eine interessante Erweiterung für die "klassische" HEKTOR-Hauptplatine. So ein HAI würde sogar den teuren Übertrager und das Relais einsparen. Nichts müsste mehr direkt angeschlossen werden, und man kommt im Batteriebetrieb auch noch länger hin. Ideal zum Beispiel auf Reisen.
    Noch einfachere Variante: Nur ein Mikro, nur ein Lautsprecher, keine elektronische Signalumschaltung, stattdessen hält man entweder das Mikro oder den Lautsprecher an die Hörermuschel oder das Hörermikrofon. Da müsste man sich mal überlegen, wie das mechanisch einigermaßen hinzubekommen ist, dass die "Umschaltung" entsprechend flott und routiniert vonstatten geht, ohne dass es affig aussieht...


  • Noch größerer Schlüsselraum (oder: "Sind 53 Bit nicht etwas knapp, nach heutigen Maßstäben?")
    Find' ich nicht. Einen echten Schlüsselraum von 53 Bit halte ich für ein Analogverfahren sogar für sehr großzügig. Zumal es sich ja, wie schon weiter oben erklärt, beim analogtransponierten Signal nicht um etwas handelt, was man mal schnell am Computer mitschneidet und dann direkt mit klassischer Kryptoanalyse auseinanderpflücken kann. Der zeitliche Aufwand für eine vorgelagerte Signalanalyse dürfte in keinem Fall zu vernachlässigen sein. Bisher habe ich auch von niemandem gehört, dass es besondere Durchbrüche oder ganz andere Angriffsmethoden gäbe, die die taktische Sicherheit infrage stellen könnten.
    Ein größerer Schlüsselraum wird ja nicht nur über eine Erweiterung des Schlüsselschemas erreicht. Zwar könnte man das LFSR auf 72, 96 oder gar 128 Bits verlängern und dann einfach behaupten, das System wäre entsprechend sicherer geworden (das sind so Methoden, die überlasse ich gern den kommerziellen Anbietern!) Für mehr echten Schlüsselraum müsste man selbstverständlich auch das Transpositionsschema noch einmal erheblich erweitern oder eine weitere, noch komplexere Manipulation in der Frequenzdomäne hinzufügen. Damit wäre der verbliebene "Bedienkomfort" wohl endgültig dahin... Ich denke, die jetzige Blocklänge und das Schlüsselschema sind erstmal ein vernünftiger Kompromiss.


  • Noch ein allgemeiner Hinweis: Wir nutzen nur 25 % unseres Flash-Speichers. Es gäbe also noch einigen Spielraum für weitere Firmware-Funktionen. Über eine zusätzliche Ziffer bei der Schlüsseleingabe (sozusagen eine "Vorwahl") könnte man in einem und demselben Gerät noch ganz andere Verschlüssler-Algorithmen unterbringen, ohne den allgemeinen Ablauf bei der Initialisierung des Geräts zu ändern. Eine Idee: Das RAM würde vermutlich locker ausreichen, um damit eine FFT zu realisieren, wie sie zur Realisierung eines sogenannten Vocoders erforderlich wäre. Dessen Datenstrom ließe sich dann vielleicht noch in Form eines schmalbandigen Modemsignals übertragen. Man hätte eine Open-Source-Alternative zu den noch immer recht teuren und schwer zu beschaffenden Spezialchips, wie sie etwa im digitalen Amateurfunk (D-STAR) oder für den digitalen Polizeifunk (TETRA) eingesetzt werden.

Nach oben




Links

[1]    Juristerey:
        http://www.jusdata.info/de/materialien/tkgeheimnis-datenschutz.html

[2]    Tipps von Bernd Zimmermann zum Thema "Internetsicherheit":
        http://www.www-kurs.de/lausch.htm

[3]    Verschleierungsgerät in Consumer-Qualität, mit professionellem Preisniveau:
        http://www.pimall.com/nais/miser.html

[4]    Interessante Hardware nach dem Prinzip der Zeittransposition (Fa. Selectone, USA):
        http://www.com-spec.com/selectone/manual/600-0501.pdf

[5]    Zur Deltamodulation:
        http://www.beis.de/Elektronik/DeltaSigma/DeltaSigma_D.html

[6]    Audio-Analysesoftware Spectrogram von R.S.Horne (Shareware):
        http://www.visualizationsoftware.com/gram.html
        Ältere Version von Spectrogram (Freeware), läuft super auf W9x- und W2k-Systemen:
        http://spot.fho-emden.de/ftp/elektron/gram50.zip

[7]    Thomas, J.: "Potenzialfreie Pegelwandlung für die RS232-Schnittstelle",
        FUNKAMATEUR 54 (2005), H. 11, S. 1140-1141

[8]    Interessantes zur Forschung über Spracherkennung im menschlichen "Biocomputer":
        http://www.neurowissenschaft.ch/oldNeuro/Lehre/SS07/nkogspr/spectral-temporal.pdf

[9]    Englischsprachiger Aufsatz "Psychology of language",
        Autor: ein gewisser 'Max Power' (waaahnsinnig originell...)
        Mit Querverweisen auf weitere interessante Quellen:  http://hireme.geek.nz/phychology-of-language_research-paper.pdf

[10]   Thomas, J.: "Hektor 128 - Sprachverschlüsseler für nach Transpositionsverfahren",
        Teile 1+2 in FUNKAMATEUR 57 (2008), Ausgaben 4/2008 und 5/2008
                Downloadbereich, Stichwort "Hektor": www.funkamateur.de/downloads

[11]  Aus der NVA-Mottenkiste:
       http://freenet-homepage.de/SASundChiffrierdienst/t217.html

  



Nach oben

Index



Revision: 19.07.2008


hektor 128 telefonat telefongespraech verschluesseln gegen schaeuble und co komplexe analoge verschluesselung telefonverschluessler sprachverschluessler taktische sicherheit kryptografie autonome hardware time domain scrambling scrambler zeittransposition cryptophon selbstbau transparenz sicherheit privatsphaere fernmeldegeheimnis artikel 10 grundrechte freiheitsrechte vertraulichkeit bdsg kommunikation selbstdatenschutz informelle selbstbestimmung bespitzelung spionageabwehr gegenwehr ueberwachungsstaat polizeistaat systemparteien widerstandsrecht totalitaer george orwell 1984 stasi mfs bka bnd mad mielke zimmermann kanther schily schaeuble klapse penisneid anschlag terror ottokatalog innenhohlminister innendiktator npd generalverdacht gestapo desinformation gleichschaltung massenmedien schaar eskalation reichssicherheitshauptamt telefonueberwachung lauschangriff vorratsdatenspeicherung tkg tkuev sina-box widerstand