[Cryptojim-devel] Planung
Status: Planning
Brought to you by:
arndh
From: Arnd H. <ar...@ar...> - 2005-01-27 20:11:03
|
Hallo Allerseits, ich denke es wird ok sein in dieser Maillingliste deutsch zu schreiben.... Hatte leider in in letzter Zeit ziemlich viel mit meinem Seminar zu tun. Morgen werde ich es halten und dann habe ich wieder ein bisschen mehr Zeit mich um dieses Projekt zu k=FCmmern. Wie ist also der Status? Ich will einmal versuchen aufzuschreiben was wir uns bist jetzt so f=FCr Gedanken gemacht haben Public Key Infrastruktur: - Jeder User braucht mindestens einen Public und Private key - Wie Verkn=FCpfung von Key und UID (z.B. ICQ#)? - F=FCr jedes IM System einen eigenes Schl=FCsselpaar? - M=F6glichkeit zu einem vorhanden Key neue UID hinzuzuf=FCgen? - Verschl=FCsselung des Private Key mit einem Passwort / Speicherung loka= l auf Rechner / USBstick - Das einzig sichere ist die Schl=FCsselerzeugung beim Client selber -> es darf nicht m=F6glich sein das ein Schl=FCssel generiert wird zu einer ICQ# die dem erzeugenden User gar nicht geh=F6rt -> ein Validierungssystem: der CryptoJIM Server stellt sicher das der erzeugende User Zugriff auf die ICQ# hat und unterschreibt den erzeugten key vom User mit seinem eigenem Private Key -> Client braucht also einen Public Key vom CryptoJIM Server um diese Unterschrift bei anderen Key zu =FCberpr=FCfen -> Das sollte evtl. austauschbar sein ( jedes Jahr einen Neuen general key?) - Woher bekommt ein Client einen Public Key von einem anderen User? Den Client des anderes User fragen (P2P) oder einen zentralen Keyserver? Netzinfrastruktur: - zentrale Server: -> ganz um einen Server herumkommen wird man wohl nicht, denn irgendwer muss ja zum Beispiel die Public Key <-> UID Zuordnung verifzier= en -> Allerdings sollte in jedem Fall der Client trotzdem benutzbar sein falls dieser Server ausf=E4llt (anlegen von neuen Schl=FCsseln funktionie= rt dann halt nicht) -> Cool w=E4re wenn die clienten auch dann noch miteinander reden k=F6nnten wenn sie keinen Zugriff aufs ICQ Netzwerk mehr haben.... -> Soll die Speicherung der History zentral erfolgen? -> Es w=E4r definitiv viel einfacher zu implementieren - P2P: -> die Public Keys dezentral zu verteilen sollte eigentlich kein Problem sein (wenn sie denn von einer Zentralen Instanz unterschrieben werden) -> damit ein Client an einem P2P Netz teilnehmen kann muss er andere Teilnehmer finden man braucht also so etwas wie einen Hostcache (entweder zentraler Server oder =FCber ICQ / anderes Message Protokoll)? -> dezentrale Speicherung der History: tja das w=E4re was sehr sehr feines, allerdings wird es relativ schwierig sein es zu implementieren -> Fragen dazu: wie lange sollen history nachrichten im Netz gespeichert bleiben? Timestamp? -> Die eingesetzte Verschl=FCsselung muss besonders sicher sein -> Selbstheilung: es muss m=F6glich sein history nachrichten zu rekonstruieren und sie erneut ins P2P netz einzuspeisen, falls welche verloren gehen... -> Welches Protokoll f=FCr P2P ? ICQ-Protokoll: -> eine Quick und Dirty l=F6sung w=E4re es eine vorhandene Implementier= ung zu nehmen und erstmal einen Wrapper drumherum zu schreiben -> gaim benutzt eine eigen Version von libfaim, (ich glaube in C++ implementiert) sie sollte unter Windows und Linux kompilieren, evtl werde ich mal versuchen daf=FCr ein Java Wrapper zu schreiben, oder hat jemand andere Vorschl=E4ge? -> fr=FCher oder sp=E4ter sollten wir das ICQ Protokoll allerdings vollst=E4ndig in JAVA implementieren, alleine schon wegen der Plattformunabh=E4ngigkeit, kenn vielleicht jemand einen Opensource ICQ Java client (auch wenn es nur f=FCrs handy ist) Oki die Frage ist wie packen wir es an? ICQ: Mein Vorschlag: Wir fangen an einen Wrapper f=FCr eine ICQ Library (z.B. libfaim zu schreiben) damit wir schon mal Zugriff auf das ICQ-Netzwerk bekommen sp=E4ter k=F6nnen wir das dann durch unsere eigene Implementieru= ng ersetzen. Hat vielleicht irgendwer schonmal eine C++ Library in Java eingebettet? Verschl=FCsselung: seeehr viel zu kl=E4ren, was benutzen wir f=FCr Schl=FCssel? Sollen wir vielleicht sogar versuchen zu pgp oder sowas kompatibel zu werden? Marcel kannst du vielleicht dazu was schreiben? Netzwerk: Mein Vorschlag: wir beginnen mit einer zentralen Speicherung der History und behalten im Auge sp=E4ter auf eine P2P L=F6sung umzusteigen, andere Vorschl=E4ge? GUI: Die muss gut einerseits gut geplant werden, andererseits brauchen wir auch ziemlich bald irgendetwas mit dem wir Testen k=F6nnen. Wir sollten versuchen Engine und GUI m=F6glichst gut zu trennen um evtl. erst eine einfach GUI zu implementieren und diese nachher durch eine sch=F6nere bessere auszutauschen. Marius, wie sieht deine Energie aus, hast du Lust die Planung daf=FCr in Gang zu bringen? Bis denn Arnd P.S.: wir k=F6nnten uns evtl. auch alle mal Treffen um ein Brainstorming zu betreiben, wie sieht es bei euch mit der Zeit aus? Noch vor Semesterende? in den Semesterferien? oder eher danach? |