App Version 0.2 ist fertig!

Ich schicke gleich mal eine unschöne Nachricht voraus. Gestern Abend (Stand 25.02.2021) hatte ich den Entschluss gefasst, die App zu canceln! Ich weiss gar nicht wie viele schriftliche Dokumentationen in englisch und deutsch, wie viele schriftliche Tutorials und wie viele YouTube-Videos ich mir angeschaut habe und nichts davon hat geholten! Ich hatte einfach nie Erfolg mit den sch***s Tabs! Es wollte einfach nicht funktionieren!

Da ich versuche realistisch zu bleiben, war das für mich ein KO-Kriterium. Wenn ich so etwas banales wie ein TabLayout nicht in den Griff bekomme, dann sollte ich es wohl besser lassen, denn dann fehlt mir ja irgendwo das grundlegende Verständnis dafür. Also macht es keinen Sinn.

Glücklicherweise hat mich dann jemand davon überzeugt, die Sache doch nicht ruhen zu lassen. Mit dem Abstand von einigen Stunden und etwas freierem Kopf, gepaart mit der Tatsache, dass man ja doch an mich glaubt, habe ich es jetzt einfach noch einmal versucht.

Was soll ich euch sagen? Ich habe es tatsächlich auf die Reihe bekommen! Die Tabs funktionieren jetzt tatsächlich und nicht nur das! Beim Login werden auch automatisch die Freunde geladen, angezeigt und diese kann man tatsächlich auch schon aus der Freundesliste entfernen. Demnach habe ich alles implementiert, was ich für die Version 0.2 haben wollte!

Das bedeutet, auch wenn ich die nächsten Tage nicht viel Zeit zum programmieren haben werde, jetzt kommt das Layout für den Chat, die Übergabe des Chatpartners und ja, dann kommt der Part mir der Verschlüsselung. Der letzte Meilenstein!

Sobald ich diesen geknackt habe, kommt noch der Teil mit den Chats von unbekannten Teilnehmern und dann ist die Version 0.3 tatsächlich bereit für die Veröffentlichung!

Wahrscheinlich wird es aber so sein, dass man zu Beginn weder Bilder noch Emojis von der App aus verschicken können wird. Also wird es ähnlich sein, wie bei der Version 0.3 für den Desktop. Ich hoffe mal, ihr werdet das am Anfang verschmerzen können.

Das kann ich natürlich auch begründen. Das Konzept des Chats sieht ja vor, dass man keine Bilder irgendwo auf das Gerät speichert. In der Desktop-Version funktioniert das ja super. Ich habe allerdings nicht den Hauch einer Ahnung, wie ich das unter Android bewerkstelligen kann. Das wird sich dann also bis zur Version 0.4 hinziehen. Dafür denke ich aber, wird die App auch die Kamera einsetzen können, um Bilder zu verschicken. Hoffe ich zumindest mal, hab ich auch noch nie gemacht!

Okay. Soweit der Stand der Dinge. Es geht weiter!

App Version 0.2

Nein, ich bin noch nicht ganz fertig mit Version 0.2. Aber, ich will ein Lebenszeichen abgeben.

Im Moment stolpere ich ein bisschen über die GUI-Programmierung von Android. Das funktioniert irgendwie an manchen Stellen anders, als ich es gewohnt bin. Das heisst, ich habe zwar jetzt schon etwas geschaffen, was ich aber wieder wegwerfen kann. Gemeint sind die Freundeslisten. Also Freunde, Gruppen und Unbekannt. Nutzer der Desktop-Version wissen, was ich meine. Was ich da bisher zusammengebaut habe, funktioniert eben nicht und bevor ich anfange da jetzt zu flicken, bevor es überhaupt fertig ist, baue ich das lieber neu und richtig.

Wie ist denn aber jetzt der Stand der Dinge?

Nun, es geht weiter und weiter. Registrieren ist möglich, anmelden ist möglich (auch mit Accounts, die per Desktop erstellt wurden), man kann alle Teilnehmer anzeigen, nur die, die Online sind und aus den Listen dann Teilnehmer zu Freunde machen. Diese werden dann auch in der Freundesliste angezeigt.

Doch wie gesagt, hier gibt es eben die blöden Probleme. Aber, die werde ich in den Griff bekommen und danach geht es an den Chat. Sprich, Verschlüsselung.

Im Endeffekt heisst das, der wirklich grösste Schritt ist noch der, die Verschlüsselungen zu gewährleisten. Schliesslich soll man ja von Desktop zur App und zurück schreiben können. Ich hoffe(!), dass ich das bis zum Wochenende (Stand: 22.02.2021) in den Griff bekomme.

Es gibt aber noch einen Punkt, den ich berücksichtigen werden muss. Es wäre doch echter Murks, wenn jeder zwei Accounts haben müsste, um beide Varianten (Desktop und App) nutzen zu können. Das heisst, ich muss den privateKey transferieren können, ohne dass dieser offen irgendwo auf dem Server liegt. Pläne dafür habe ich schon, aber umsetzen muss ich diese noch.

Aber gut, weit von Version 0.3, welche wieder die erste veröffentlichte Version werden soll, sind wir nicht mehr. Ich bin guter Dinge!

App Version 0.1

Ich glaube es noch gar nicht! Gestern Abend habe ich tatsächlich mein erstes Ziel und damit Version 0.1 erreicht! Nein, die kann man sich noch nicht runterladen und vor Version 0.3, schätze ich mal, wird das auch nicht der Fall sein.

Die App kann aber schon einiges! Eigentlich wollte ich ja zuerst die Verschlüsselung implementieren, aber irgendwie hat das nicht wirklich Sinn gemacht. In der Desktop-Version war das ja noch simpel. Schlüsselpaar generieren, einen Text damit verschlüsseln und anschliessend wieder entschlüsseln. So hatte ich das eigentlich auch bei Android geplant.

Doch hier nun der Haken. Natürlich hätte ich es hier genauso machen können. Doch wer sagt denn, dass die Funktionen mit den Schlüsseln dann auf die gleiche Weise funktionieren, wie beim Desktop? Sprich, nur weil ich unter Android Schlüssel generiere und damit einen Text erst ver- und dann wieder entschlüsseln kann, muss es ja nicht auch mit den Schlüsseln funktionieren, die von der Desktop-Version kommen!

Um hier kein Risiko einzugehen, habe ich den Fahrplan eben etwas geändert.

Der aktuelle Stand ist, nach dem öffnen der App kommt man direkt zum Login. Hat man noch keinen Account, kann man sich registrieren. Optisch sieht das der Desktop-Version sehr ähnlich. Bei der Registrierung kann man sich die Nutzungsbedingungen anschauen und die Registrierung abschicken. Hat das geklappt, kommt man wieder zum Login, wo man sich auch wirklich schon einloggen kann! Auch mit Zugangsdaten, die man in der Desktop-Version angelegt hat! Das habe ich natürlich schon getestet.

Aber Vorsicht! Auch wenn man die Zugangsdaten der Desktop-Version nutzen kann, kann man damit so nicht wirklich arbeiten! Erinnert sich noch wer an die Datei privateKey.pem? Richtig, die fehlt in der App! Man könnte also gar keine eingehende Nachricht entschlüsseln. Da habe ich aber schon einen Plan, wie man seinen privaten Schlüssel sicher übertragen können wird!

Das heisst also, jetzt geht es an die Freundeslisten, den Abruf jener, die gerade Online sind und wer alles registriert ist. Freund hinzufügen kommt danach und dann geht es an den Chat, wo ich den letzten Knackpunkt in Angriff nehme. Die Verschlüsselung!

Es geht also wirklich zügig voran, wie ich feststellen muss. So wirklich wundert mich das aber nur in der Hinsicht, dass ich eigentlich von Java nicht wirklich Ahnung habe. Tatsächlich ist es aber C++ so ähnlich, dass der Lernaufwand relativ gering ist. Ausserdem gibt es wirklich super Tutorials für alles mögliche im Netz, was die Sache natürlich sehr erleichtert.

Von Vorteil ist natürlich, ich muss eigentlich nur die Funktionen, die ich in der Desktop-Version ja von Grund auf entwickeln musste, einfach nur nachbauen. Hier und da gibt es natürlich Unterschiede in der Entwicklung, die ich berücksichtigen muss, aber bislang gestaltet sich das als nicht besonders schwer. Hoffentlich bleibt es so!

Ja, man mag es kaum glauben. Aber ich sehe tatsächlich eine baldige Veröffentlichung der App bevorstehen!

WSC für Android

Ja ist das denn zu fassen? Erst erkläre ich vollmundig, dass ich ein kleines, soziales Netzwerk für die Wifesharing Community schreiben will. Dann über ein Jahr Stille!

Plötzlich geht es weiter. Auf einmal ist die Version 0.3 sogar öffentlich! Es werden Fehler und Vorschläge gemeldet und ein Update folgt dem nächsten bis Version 0.7! Es läuft unter Linux und Windows, man kann voll End zu End Verschlüsselt chatten, man kann einstellen, ob man einen Ton bei neuen Nachrichten hören möchte, Emoticons sind möglich und man kann Bilder verschicken! Alles, ohne dabei irgendwelche Spuren auf seinem eigenen System zu hinterlassen.

Die Sache hat nur einen Haken. Die Meisten heutzutage verwenden Smartphones, um zu kommunizieren! Software für den PC scheint fast schon etwas für Nerds.

Schon haben wir da den nächsten Haken. Ich hab von Java eigentlich keine Ahnung. Okay, es ist C++ nicht unähnlich, aber dennoch habe ich noch nie ernsthaft eine App für Android programmiert.

Und was jetzt?

Ganz einfach. Ich lerne! Das sogar erfreulich schnell! Anfangs hatte ich meine Probleme mit der IDE, denn weder war Qt-Creator kooperativ, noch Android-Studio. Ich bin aber hartnäckig und siehe da, auch wenn Android-Studio immer noch hier und da ein wenig zickt, läuft es jetzt.

Das heisst, ich habe mit der Entwicklung einer App für Android begonnen!

Aber damit noch nicht genug. Ich habe nicht nur mit einer App begonnen, sondern schon Meilensteine erreicht! So kann die App schon vollständig mit der Datenbank kommunizieren, gespeicherte Passwörter vergleichen und neue Passwörter hashen! Das sind dann zwei von drei Meilensteine, die für die Entwicklung zwingend erforderlich sind!

Jetzt fehlt noch Meilenstein Nummer drei. Da geht es um die Verschlüsselung. Das heisst, Schlüsselpaar generieren, neue Nachrichten mit dem privaten Schlüssel des Empfängers verschlüsseln und ankommende Nachrichten entschlüsseln. Sobald das geschafft ist, geht die Entwicklung der App so richtig los!

Das heisst, Teilnehmerlisten erstellen und den Chat bauen. Da auf einem Smartphone ohnehin alles in einem eigenen Bildschirm läuft, werde ich hier vorerst auf Gruppen und das Notizbuch verzichten. Wichtig ist mir erst einmal, die App auf den gleichen Stand zu bringen, wie die Desktop-Version.

Wenn das geschafft ist, so ist zumindest der Plan, werde ich neue Funktionen einbauen, bis schliesslich zusammen mit Gruppen und dem Notizblock alle Varianten die Version 1.0 erreichen. Ab dann ist die Zukunft offen.

Version 0.7 – Feinschliff und Bug

Viel neues gibt es nicht. Dieses Mal habe ich mein Augenmerk auf den Feinschliff und das entfernen von Bugs gelegt.

Leere Nachrichten

Es wurde zurecht bemängelt, dass leere Nachrichten verschickt werden können. Das kann im Eifer des Gefechtes schon vorkommen, dass man zu oft Enter drückt und schon wandert da eine leere Nachricht auf den Server.

Ein wirkliches Problem ist das zwar nicht, aber es kann schon für Verwirrung sorgen. Hat da das System vielleicht einen Fehler gemacht und deshalb wird die Nachricht nicht angezeigt? Kann der Client die Nachricht vielleicht nicht entschlüsseln?

Um das gar nicht erst aufkommen zu lassen, kann man nun eben keine leeren Nachrichten mehr abschicken. Problem gelöst.

Bilder senden

Da hat sich ein kleiner Fehler eingeschlichen. Eigentlich kein Fehler, sondern eine mangelhafte Programmierung. Ich habe versäumt, bei dem Dialog zum auswählen eines Bildes auf den Abbruch zu reagieren. Stattdessen hat das Programm munter das Bild verschickt, welches da gerade angewählt war, auch wenn man auf Abbruch gedrückt hat. Das ist nun behoben.

Ausserdem kann man nun Bilder einfach per Drag & Drop verschicken. Man muss also nicht mehr über den Dialog gehen, sondern kann aus seinem Dateimanager einfach ein Bild in den Chat ziehen und es wird verschickt.

Absturz nach Login

Da hat sich ein handfester Bug eingeschlichen. Wenn aus irgendeinem Grund ein Freund keiner ID zugeordnet werden konnte, ist der Client abgestürzt.

Wieder ist das Problem hausgemacht. Wieder habe ich nicht angemessen auf das Verhalten meiner Funktionen reagiert und einfach die ankommenden Werte durchgeschleift. Diesen Fehler habe ich nun korrigiert.

Layout

Das Layout hat sich etwas verändert. So ist der Button, um den Chat zu beenden, nun nach oben in den Titel gewandert. So ähnlich wie bei normalen Fenstern auch.

Der Grund dafür ist der Senden-Button. Ein kleiner Button Rechts neben der Chateingabe, mit dem man die Nachricht abschicken kann. Es ist nervig, wenn man ein Emoji eingefügt hat und erst wieder in die Nachricht klicken muss, um diese abschicken zu können. Jetzt kann man die Nachricht eben über den Button versenden.

Online-Status

In der Freundesliste wird nun neben dem Benutzernamen auch ein kleines Icon angezeigt, welches den Online-Status des Freundes anzeigt.

Version 0.6 – Jetzt mit Bildern!

Ach ja, wer hätte das für möglich gehalten? WSC ist Online und bekommt in der Version 0.6 jetzt Bilder und Emojis.

Ausserdem freut es mich sehr, dass auch schon Verkehr in der Community anzutreffen ist! Besonders lustig finde ich es aber, dass sich schon einige Frauen angemeldet haben und es noch nicht zu dem grossen Männerüberschuss gekommen ist, den ich zu Anfang befürchtet habe!

Wird die WSC doch keine Todgeburt?

Warum nicht Version 1.0?

Das bin ich jetzt tatsächlich schon ein paar Mal gefragt worden und gebe hier nun für Alle die Antwort:

Im Prinzip ist das Programm Beta-Software. Kinderkrankheiten, nicht ganz geschickte Lösungen für verschiedene Situationen usw. Ausserdem gibt es derzeit nur eine von drei Kernfunktionen. Den Chat. Das wo ich dachte, dass kommt erst ganz am Schluss.

Von daher. Wenn einmal alle Funktionen drin sind, also auch Gruppen und der Notizblock, hebe ich das Programm auf Version 1.0. Das ist das ganze Geheimnis dahinter.

Bilder

Bislang war der Chat reiner Text. Das lag besonders daran, ich hatte bislang nicht den Hauch einer Ahnung, wie ich die Übertragung von Bildern realisieren kann. Da ich mit dem Programm ja einen ganz eigenen Weg gehe, finden sich dafür im Netz auch keine wirklichen Lösungen und vor allem, da ich es ohne einen Browser mache, sind da einige Dinge selbst zu implementieren, die ein Browser mit HTML eben von Hause aus kann.

Nun sind die Bilder aber da!

Auch die Bilder verweilen nicht auf dem Server! Wird die Nachricht abgerufen, verschwinden auch das Bild sofort! Ich halte das, in Anbetracht des Hintergrund des Programms und damit verbundenen, freizügigen Bildern, für wünschenswert. Die Bilder sollen auch wirklich nur bei dem ankommen und angezeigt werden können, der sie auch wirklich sehen soll!

Hier zeigt sich dann aber ein Unterschied zu sonstigen Messengern. Die Bilder werden nicht im Chat angezeigt! Dort bekommt man lediglich einen Link, bei dessen anklicken man das Bild zu sehen bekommt. Das ist kein Bug, dass kann ich derzeit auch nicht ändern.

Hintergrund ist folgender. Die abgerufenen Bilder werden nicht gespeichert! Das heisst, sie werden während des Betriebes vom Server geladen, bleiben im Speicher und sobald man das Programm schliesst, sind sie weg! Um Bilder im Chat anzeigen zu können, müsste ich aber auf eine Datei zugreifen, was gegen das Konzept der Community verstösst, nach Möglichkeit keine Spuren zu hinterlassen.

Deshalb einmal ganz deutlich. Das keine Bilder im Chat angezeigt werden ist kein Bug, keine Unzulänglichkeit, es ist ein Feature!

Konfiguration

Es ist nun möglich, über Datei->Konfiguration Einstellungen vorzunehmen. Derzeit sind es ganze zwei Optionen!

  1. Soundbenachrichtigung
  2. Registrierung in Blog anzeigen

Soundbenachrichtigung

Hier wird man sich schon fast denken können, um was es geht. Will man, dass bei eingehenden Nachrichten ein Sound abgespielt wird? Dann aktiviert man diese Option. Wenn nicht, kann man sie hier ausschalten und es ist Ruhe. Per Default ist es deaktiviert.

Registrierung in Blog anzeigen

Diese Option ist etwas geheimnisvoller. Dahinter steckt die Möglichkeit, seinen Benutzernamen im Blog anzeigen zu lassen. Rechts, unter den Buttons, erscheint die Anzahl aller registrierten Benutzer und die Namen derer, die ihren Namen dort angezeigt sehen wollen.

Der Grund dafür ist simpel. Hat man sich nicht registriert, sieht man auch nicht, wer alles in der Community registriert ist. Durch diese Option will ich neugierigen einen Anreiz geben, sich anzumelden.

Dabei sei gleich gesagt, es wird einzig der Benutzername angezeigt! Keine E-Mail, keine IP, gar nichts!

Per Default ist diese Option deaktiviert. Wer die Community dadurch unterstützen will, der muss diese Option also selbst anwählen und speichern!

Emojis

Wer kennt sie nicht? Ach ja, Emojis sind eigentlich aus der Kommunikation nicht mehr wegzudenken. Deshalb mussten die natürlich auch in die Community.

Anfangs war ich schon ein bisschen besorgt. Wie implementiert man so etwas? Jedes Mal die Nachrichten durchsuchen und dann eine bestimmte Kombination ersetzen? Bei dieser gewaltigen Menge an Möglichkeiten?

Dabei geht es ja viel einfacher! Die kleinen Dinger sind schon in der Schrift drin, Unicode sei dank. Es war also kein wirkliches Problem, sie einzubauen! Natürlich gibt es noch viel mehr, die werden wohl auch nach und nach dazukommen, doch für den Moment reicht es hoffentlich.

Mit der Darstellung unter Linux bin ich aber noch nicht so wirklich zufrieden. Da werde ich eine andere Schriftart suchen müssen, die schönere Emojis drinnen hat. Unter Windows sieht das deutlich besser aus. Aber, für den Anfang sollte es in Ordnung sein, hoffe ich zumindest.

Version 0.4 (Release)

Ganz ehrlich? Ich habe oft selbst daran gezweifelt, ob ich jemals auch nur eine einzige, lauffähige Version der Community veröffentlichen werden. Jetzt ist es dann tatsächlich passiert!

01.02.2021 00:00 Uhr

Mit Version 0.4 ist nun wirklich und wahrhaftig die erste Version der Community Online und kann im Downloadbereich für Linux und Windows heruntergeladen werden!

Was kann Version 0.4?

Nichts! Na ja, nichts ist falsch! Aber, im Vergleich zu dem vorläufig angestrebten Funktionsumfang funktioniert wirklich so gut wie nichts.

  • Man kann sich registrieren
  • Man kann sich einloggen
  • Man kann sich anzeigen lassen, wer online ist
  • Man kann sich anzeigen lassen, wer alles registriert ist
  • Man kann eine Person, oder mehrere, aus diesen Listen zum Freund machen
  • Man kann dieser Person eine persönliche Nachricht schicken
  • Man kann mit einer unbekannten Person chatten, wenn diese einen anschreibt
  • Man kann diese Person zum Freund machen
  • Man kann einen Freund entfernen

Das war es auch schon!

Ausserdem gehe ich davon aus, dass sich da noch viele Fehler finden werden. Da sind nun die Nutzer gefragt. Im Downloadbereich befindet sich auch ein Issue-Tracker. Wer also einen Fehler gefunden hat, ein Problem, wer eine Anregung machen, oder einfach nur ein Feedback loswerden will, der kann das dort gerne tun und ich werde mich der Sache annehmen!

Was ich aber von mir aus sagen möchte, ich habe einen für mich sehr wichtigen Teil erfüllt! Die privaten Nachrichten sind End-End Verschlüsselt mit 4096 Bit RSA! Es kommt also nie(!) Klartext auf den Server. Zudem werden die Nachrichten, sobald sie abgeholt wurden, wieder gelöscht.

In dem Zusammenhang muss ich erwähnen, nach der Registrierung hat man die Datei privatKey.pem im WifsharingCommunity-Ordner. Passt gut auf diese Datei auf, denn ohne die werdet ihr nie wieder dazu in der Lage sein, die eingehenden Nachrichten zu entschlüsseln! Die Datei ist sehr wichtig und kann NICHT wiederhergestellt werden!

Wie geht es weiter?

Nun, hier kommt ihr ins Spiel! So ein Programm zu entwickeln und dann auch noch auf mehreren Systemen anzubieten, kostet Zeit! Der nächste, logische Schritt wäre ein Port auf Android.

Ich programmiere wirklich sehr gerne, sonst hätte ich die ganze Nummer sicherlich nicht angefangen. Aber ein System, was keine Nutzer hat, da will ich meine Energie nicht für einsetzen!

Von daher. Ihr könnt da etwas für die Community machen. Schaut doch mal, wie viele Leute ihr davon überzeugen könnte! Je mehr Personen angemeldet sind und je höher die Akzeptanz ist, desto lieber investiere ich Zeit hinein! Soll daraus also wirklich mal ein kleines, soziales Netzwerk werden, dann brauche ich eure Hilfe! Zeigt mal, ob ihr jemand dafür gewinnen könnt!

Ich bin auf jeden Fall mal sehr gespannt, wie sich das hier entwickeln wird!

WSC macht Fortschritte!

Das ist nur ein kleines Update, um den Stand der Dinge zu klären.

Zum Einen, ich habe ein paar Änderungen vorgenommen. Sollte ursprünglich noch pqxx für die Verbindung zur Datenbank eingesetzt werden, was unter Windows zu Schwierigkeiten geführt hat, übernimmt nun Qt direkt dieser Arbeit. Das muss jetzt im Code noch umgebaut werden, aber dann geht es zu den Tests auf Windows. Mal die Daumen drücken!

Einen produktiven Fortschritt gibt es jedoch bei der Verschlüsselung. Da habe ich einiges ausprobiert, aber vieles kam mir einfach zu kompliziert vor.

Nun bin ich bei OpenSSL gelandet und das funktioniert hervorragend! Schlüsselgenerierung, Verschlüsselung und Entschlüsselung, alles läuft! Das kann also jetzt für das Programm verwendet werden. Das compilieren unter Windows wurde auch getestet und funktioniert einwandfrei!

Desweiteren habe ich entschieden, keine privaten Nachrichten und Mediendateien auf dem Server zu behalten. Soll heissen, wenn eine Nachricht abgeschickt wird, kommt sie auf den Server. Hat dann der Empfänger die Nachricht abgerufen, wird sie im Anschluss wieder vom Server gelöscht.

Diese Vorgehensweise hat ein paar Vorteile. Der Wichtigste dürfte natürlich sein, sollte irgendwie mal jemand unerlaubt auf die Datenbank zugreifen können, kann er bestenfalls noch ungelesene Nachrichten abgreifen. Diese dann aber verschlüsselt und soweit ich informiert bin, ist RSA mit 4096 Bit im Moment noch nicht so einfach zu knacken. Ausserdem reduziert sich auf die Art die Datenmenge in der Datenbank und sorgt hoffentlich für gut Performance, auch wenn die Nutzerzahl steigt.

Man wird aber die Möglichkeit haben, auf dem heimischen Gerät den Chatverlauf zu speichern. Natürlich verschlüsselt. Wer das nicht will, der kann es ausschalten und wann auch immer er den Chat beendet, kann er nicht mehr auf den Verlauf zugreifen.

Schlussendlich werde ich im Moment den privaten Chat priorisieren. Das war eigentlich überhaupt nicht mein Plan, aber ich gehe davon aus, dass damit am schnellsten das Interesse für dieses kleine Netzwerk zu wecken ist.

WSC ist in Arbeit

Ach ja, schon wieder ein neues Projekt. Wobei es nicht ganz richtig ist. Genau genommen ist es noch das Projekt Horizont unter einem neuen Namen. Im Prinzip kann ich daraus auch Horizont später ableiten, mit wahrscheinlich nur wenigen Änderungen. Es ist also auch ein kleines, soziales Netzwerk, doch mit dem Ziel, die Leute aus meinem Wifesharing-Blog besser zu vernetzen.

Um was geht es?

Ziel des Ganzen soll ein soziales Netzwerk werden, welches, anders als bislang üblich, komplett auf einen Browser verzichtet. Mit ein Problem dabei wird natürlich sein, es muss für möglichst alle Plattformen verfügbar sein. Also Linux (klar, damit wird es entwickelt), Windows, Android, aber auch MacOS und iOS, oder heissen die jetzt beide iOS?

Im Fokus liegt derzeit Linux und Windows. Beides 64-Bit natürlich. Dann soll es zu Android gehen und was Apple angeht, da ich keine Hardware und auch kein PC mit diesem OS habe, wird das natürlich schwieriger. Abwarten!

Natürlich ist das ganze kostenlos und Daten werden auch keine Verkauft. Wüsste zum Einen nicht an wen, zum Anderen wage ich es zu bezweifeln, dass da genug Informationen bei rumkommen, als dass die wirklich von Bedeutung wären. Also in der Hinsicht ist in diesem Netz nichts zu befürchten.

Darüber hinaus versuche ich auch alles möglichst so zu regeln, dass es auch mit den kommenden Urheberrechtsgesetzen in Einklang steht.

Ausserdem, was eigentlich mehr durch Zufall entstanden ist, WSC wird Templates unterstützen! Das heisst, wer sich berufen fühlt, kann der Software ein eigenes Aussehen verpassen und dieses dann auch veröffentlichen, damit auch andere Nutzer etwas davon haben.

Was soll WSC bieten?

Bieten soll WSC die Kommunikation für Gleichgesinnte. Also jene, die sich mit dem Thema auseinandersetzen.

Dabei gibt es drei grundlegende Funktionen:

  • Notizblock
  • Gruppen / Gruppenchat
  • Privater Chat

Der Notizblock

Der Notizblock soll das Äquivalent des Streams werden. Dort werden die neusten Beiträge von den Leuten der Freundesliste angezeigt und man kann eigene verfassen. Kommentare abgeben, liken und was eben dazugehört.

Gruppen und Gruppenchat

Wichtig in einer solchen Community sind natürlich Gruppen. Nach Plan sollen die von den Benutzern selbst erstellt und gepflegt werden können. Bestandteile jeder Gruppe sind zu Beginn natürlich der Notizblock und Chat der Gruppe. In späteren Versionen kann es natürlich auch noch erweitert werden. Je nach Bedarf.

Ich will aber sofort anmerken, Gruppen werden NICHT verschlüsselt! Das mag jetzt kontraproduktiv wirken, aber ich habe keinen Bedarf, irgendwelche illegalen Aktivitäten zu unterstützen, was eine verschlüsselte Gruppe in einem wenig, oder fast unbekannten Netzwerk natürlich unterstützen würde. Von daher, Gruppen können bei Bedarf eingesehen werden!

Privater Chat

Ein privater Chat bedeutet eine Kommunikation zwischen zwei Personen. Dieser Chat wird definitiv verschlüsselt! Eingesetzt wird dabei OpenSSL mit asymmetrischer Verschlüsselung (4096 Bit).

Hier dürfte auch einer der grössten Unterschiede zu anderen sozialen Netzwerken liegen. Diese verwenden in aller Regel ja den Browser als Oberfläche. Das heisst, niemand kann mit Sicherheit sagen, wer die Nachrichten dort schon abfangen kann, bevor sie verschickt, oder verschlüsselt werden. Beim WSC wird das anders. Da werden alle Nachrichten auf dem lokalen Rechner verschlüsselt und erst dann an den Server übertragen (End – End Verschlüsselung)! Im Umkehrschluss werden die Nachrichten erst auf den lokalen Computer geladen und dann erst entschlüsselt. Der Klartext ist also definitiv nur beim Sender und Empfänger zu sehen!

Um das realisieren zu können, generiert WSC bei der Registrierung automatisch ein Schlüsselpaar und speichert den öffentlichen Schlüssel auf dem Server. Der Private bleibt immer auf dem lokalen Rechner und wird NIE übertragen!

Was bietet WSC (noch) nicht?

Man sollte bedenken, ich entwickle diese Software alleine und auch ehrenamtlich. Das da nicht von Anfang an ein Funktionsumfang dabei ist, wie man ihn aus etablierten Systemen her kennt, dürfte klar sein. Deshalb sollte es auch nicht verwunderlich sein, wenn dieses soziale Netzwerk am Anfang etwas rudimentär daherkommt. Hoffentlich schreckt das nicht zu viele Leute ab. Die Zeit wird es zeigen.

Was definitiv noch nicht in Version 1 zu finden sein wird, sind Emojis und die Möglichkeit Bilder zu übertragen. Das liegt jedoch nicht an meiner Unfähigkeit, sondern viel mehr daran, erst einmal eine stabile Plattform zu schaffen! Das heisst, sowohl das Versenden von Bildern, wie auch die Nutzung von Emojis ist definitiv auf der Liste! Das wird also kommen, insofern das System keine Totgeburt wird!

Was noch alles fehlen wird, wird sich noch zeigen. Aber ich sage es jetzt schon. Findet das System Anklang, werde ich es auch weiterentwickeln und auf Wünsche der Nutzer eingehen!

Das benötigt WSC

Nicht sonderlich viel und nichts davon kostet Geld. Insofern man einen Computer mit Linux, oder Windows sein Eigen nennt.

Abhängig wird WSC, zumindest aus aktueller Sicht, nur von zwei Komponenten sein.

  • Qt
  • OpenSSL
  • Sodium

Also, alles locker, alles kostenlos.

Stand der Dinge

Das mag ja alles gut klingen und sich nach einer super Vision anhören. Davon gibt es aber schon genug. Um zu zeigen, dass es sich dabei nicht um ein Hirngespinst handelt, hier der aktuelle Stand der Version 0.1:

Linux-Version
Windows-Version

Kann zwar noch nichts, aber wie man sieht, es existiert bereits! Ist vielleicht nicht das schönste Design, wie aber schon weiter oben angemerkt, dass Design kann geändert werden.