Hier geht' s zur Hauptseite
Das "Harmless Little Board"
ENGLISH Mirror-Page
Ziel des Projekt:
Ein alleinstehendes Device zu bauen das
zwischen Telefon und Amtsleitung gehaengt wird.
Wenn zwei Leute dasselbe Geraet haben werden die
gefuehrten Gespraeche verschluesselt Ende zu Ende
ausgetauscht.
Auf neudeutsch: "We build a Crypto-Phone!"
Gruende fuer die Entwicklung:
- Kommerzielle Crypto-Telefone kosten eine UNMENGE an Geld (ca.5000.-DM pro Seite).
Unser Ziel ist es die Kosten auf ein 10tel zu senken (wenn man die Geraete EINZELN
fertigen laesst). In Massenfertigung rechen wir sogar mit einem Preis von ca
200-300 DM pro Seite.
- Bei kommerziellen Crypto-Telefonen bei, denen die Sourcen nicht offengelegt sind, besteht
immer die Gefahr einer Hintertuer fuer Geheimdienste. Hier sei auf die Machenschaften der
Schweizer Cryto-AG hingewiesen.
- Standart Crypto-Telefone koennen nur mit ihresgleichen reden. Eine Moeglichkeit mit einen
PC zu reden der ueber aehnliche Hardware verfuegt (Modem/Soundkarte/genuegned CPU) besteht
nicht. Das wollen wir aendern.
- Verwendete Crypto Verfahren: "It's a Useroption!" Dadurch das wir die Sourcen offenlegen
koennt ihr ALLES an Verschluesselungsverfahren einbauen was ihr wollt. Natuerlich wird es einen
Grundstock geben von implementierten OFFENEN Cryptoverfahren (z.B. Blowfish) die keinerlei
Exportbeschraenkungen unterliegen geben aber wenn jemand mehr will kann er es sich selber
Triple-DES mit 2048Bitlaenge implementieren und dann Aerger mit der NSA kriegen. :-)
Grundlegende Designentscheidungen:
- Die Telefongespraeche muessen vor der Verschluesselung
komprimiert werden damit als Datenuebertragungseinrichtung
ein V.34 Modem genuegt. (Nein, wir machen nicht nur ISDN!!)
Standartmaessig wird ein freier GSM-Codec benutzt.
- Das Modem oder ein ISDN-TA werden von extern an das Board
angeschlossen. (Damit ist die zulassungsproblematik auf
den Hersteller des Modems abgewaelzt)
Software:
- Die Sourcen werden frei verfuegbar seien (Open Source)
(Oder wuerden Sie eine Verschluesselungssoftware
benutzen von der Sie nicht wirklich wissen ob sie auch
das tut was sie verspricht?)
- Der Hauptteil wird in purem C geschrieben und ein Assembler
bootloader der auch debuggingfunktionen uebernimmt.
- ALLE Sourcen muessen mit dem GCC uebersetzt werden
koennen (Referenz Linux Crosscompiler).
Hardware:
- Das fertige Platinenlayout + Schaltplaene wird veroeffendlicht
damit jeder es selber nachbauen kann oder fuer eigene Zwecke
modifizieren.
- Da der erste Versuch mit dem Hitachi SH-2 misslang (zu langsam)
wird jetzt die Hitachi SH-3 CPU (7709) verwendet.
- Der Temic U3810 wird als Telefonlineinterface verwendet da er
auch ueber eine Freisprecheinrichtung verfuegt d.h. man kann
das Geraet auch ohne Telefon benutzen.
Projektstand:
Hardware Version 2.0 mit der SH-3 ist fertig.
Probeplatine ist bestueckt mit CPU/RAM/ROM/Takt.
Der Bootloader bedient schon die Serielle.
ROM geht.
RAM wird erkannt.
C-Code kann ausgefuehrt werden.
Die Newlib ist portiert.
Der GSM-Softwarecodec laeuft und verbraucht ca. 55% CPU-Last.
Bootloader ist zu 90% fertig.
MD5 als Hashfunktion portiert.
Die GNU-MP-Lib ist mit kleinen aendrungen portiert und getestet.
RSA und ElGamal sind als Keyexchange-Funktion mithilfe der GNU-MP-Lib implementiert und getestet.
Der TEMIC Baustein laesst sich offenbar nicht gleichzeitig mit der Freisprecheinrichtung
und den AD/DA betreiben. Da der eh nur eine halb-duplex Freispricheinrichtung hat ist die einzige
Alternative zur Zeit ein Headset und ein "normaler" Slic.
Test mit Tonausgabe auf Ersatzplatine fuer Headset-test gelungen.
25.05.2000 Neue Schematik fuer das V2.2 Board ist endlich fertig! Geaendert sind:
CPU kann wahlweise 7709(80MHz) oder 7709A/7729(120MHz) sein.
Anstelle der QS245 jetzt die leichter zu kriegenden 74LCX245.
Chipkarteninterface.
Netzteil.
Statt dem TEMIC jetzt ein diskretes Lineinterface (besser is das).
Statt MAX232 jetzt 1488/1498.
Anschluss fuer Hardwarezufall.
16.06.2000 Neues Hardwarelayout fertig. Jetzt sollten alle geforderten Funktionen erfuellt werden.
DRAFT des HLB-Protokolls.
SOURCE-Snapshot der Entwicklung.