Beiträge von f09fa681

Stelle deine Frage öffentlich an die Threema-Forum-Community - über 3.000 Mitglieder helfen dir weiter. Los gehts!
Unterstützung von offizieller Seite erhältst du direkt bei Threema: Zum offiziellen Threema-Support

    Ich finde genauso schlimm ist eigentlich der schlechte Stil beim Programmieren.
    Früher, zu Zeiten des C64 und der ersten Intel-PCs, als Speicher noch ein knappes Gut war, da haben sich die Programmierer wenigstens noch Gedanken über eine effiziente Speichernutzung gemacht. (Okay, dass führte dann auch zu so negativen Design-Entscheidungen wie "Hey, lasst uns für die Jahreszahl nur zwei Stellen verwenden", die uns dann so was wie den Y2K-Bug eingebrockt haben).
    Aber heutzutage macht sich doch kaum noch ein Programmierer Gedanken darüber, ob das, was er der gerade schreibt nicht möglicherweise das digitale Äquivalent einer Umweltverschmutzung ist.
    Letztlich ist das natürlich auch ein Teufelskreis: Immer mehr verfügbarer Speicher sorgt für immer speicherhungrigere Anwendungen, die in Folge dazu führen, dass es immer mehr Speicher geben muss…

    Finde ich deutlich zu kurz gedacht. Sehr, sehr viele Anwendungen von heute wären, mit der Art und Weise wie man früher zu programmieren pflegte (eben, genaue Beachtung der Speicherverwaltung, sehr maschinennah mit Inline-Assembly zwecks Effizienz), zeitlich überhaupt nicht umsetzbar, geschweige denn in irgendeiner Form agil.


    Darüber hinaus kann und muss ich mir durchaus Gedanken darüber machen, wenn ich den Rahmen nicht sprengen möchte. Eben nur nicht in der Form wie es früher normal war. Dass Anwendungen speicherhungrig sind, hat meistens auch einen Vorteil. Den nutzt man dann aus. Den "Teufelskreis" in der von dir beschriebenen Form, sehe ich ehrlich gesagt nicht.

    Keine Ahnung, warum Relatable2273 jetzt gesperrt ist. Aber wie dem auch sei, ich wollte das eigentlich noch abschliessen.


    Bei Threema fallen auch Metadaten an, das ist richtig. Und ebenfalls ist korrekt, dass Threema hier noch einiges verbessern kann und beizeiten wohl auch wird. Es ist auch klar, dass man sowas tiefgreifendes nicht von heute auf morgen machen kann.

    Aber die Ausgangssituation bzgl. Metadaten, würde ich bei Matrix als weit schlechter bezeichnen, einfach weil die Metadaten offensichtlicher und somit qualitativer (im Schlechten) sind. Es wird für Matrix daher voraussichtlich schwieriger sein, diese Metadaten zu verringern, als das bei Threema der Fall ist. Solche Protokolländerungen sind schmerzhaft und dauern lange, je nachdem wie der eigene Supportplan für ältere Versionen aussieht. Das kann man anders sehen - ist einfach meine Einschätzung.


    Und wo wir grad beim Thema Upgrades sind: Ich mag ja dezentrale und auch föderierte Protokolle. Und, wie bereits gesagt, sehe ich auch einige Vorteile darin, z.B. bei der Resilienz. Vor einigen Jahren hätte ich sicher auch gesagt, lasst uns alles dezentral und föderiert organisieren. Aber es lässt sich nicht leugnen, was in der Vergangenheit bei diversen anderen dezentralen/föderierten Protokollen passiert ist, z.B. XMPP und Email. Sie werden häufig nach dem grossen User-Boom recht träge und leiden dann schlagartig unter Agilitätsmangel. Das Problem, ein in Verwendung befindliches Protokoll weiterzuentwickeln, ohne dabei zu disruptiv zu sein, haben alle Protokolle. Aber darüber hinaus müssen bei föderierten/dezentralen Protokollen alle, die am System teilnehmen, die Änderungen auch mitmachen. Das ist viel träger und komplexer als wenn Threema das auf einem Server machen muss und dann später eine neue Clientversion deployed. Und das ist jetzt nur der technische Aspekt. Aus gesellschaftlicher Perspektive will ich das an der Stelle gar nicht bewerten. Auch die unvermeidlichen zähen Diskussionen in irgendwelchen Standardgremien (been there, done that) nachdem ein Protokoll Erfolg hatte, lasse ich mal aussen vor.


    Zum Thema dezentral über das Protokoll organisierte Gruppen bleibe ich bei meiner obigen Aussage und kann weiterhin nicht verstehen, wie man das selbst nach etlichen Erklärungsversuchen in den falschen Hals bekommen kann.

    Ahja, und der Serverbetreiber stellt sich dann dumm und tut so als würde er nicht wissen, dass ein Batch von gleich großen Nachrichten vom gleichen Absender an x Ziele an die selbe Gruppe geht?

    Ja, der Serverbetreiber muss die Zeit aktiv mitschneiden, ansonsten geht die Information verloren. Das ist ein signifikanter Unterschied dazu, wenn es auch später noch nachvollziehbar ist, wie bei Matrix, weil Nachrichten an irgendwelche Rooms gebunden sind.


    Die Nachrichten bei Threema sind eben nicht gleich gross, denn das Padding ist jedes Mal unterschiedlich (ja, auch für den selben Inhalt). Hier kann man höchstens grob abschätzen.

    Bei Threema ist das so. Bei Matrix nicht.

    Quark. Daten fallen immer an, nur bei Matrix eben nicht zwingend immer am selben Ort. Und auch nicht qualitativ die gleichen (Meta-)Daten.

    Was ist eine dezentrale Instanz?

    Irgendetwas, was deine Nachricht weiterleitet, idr. ein Server.

    Stimmt, aber es ist durchaus relevant WER Metadaten sieht.

    Du übersiehst hier meinen Punkt: Es ist ganz offensichtlich besser, wenn Metadaten gar nicht oder so wenig wie möglich anfallen, dann braucht man sich nämlich darum auch überhaupt keine Gedanken machen. Ausserdem muss man die Qualität der Metadaten unterschiedlich gewichten. Hier steht Matrix momentan einfach nicht sonderlich gut da. Es ist schön, dass das bei einem Privatserver kein Problem darstellst, aber du wirst praktischerweise auch ausserhalb von deinem Privatserver kommunizieren.

    Nenn mir ein realistisches Szenario, in dem es keine Garantie ist.

    Distribution List. Zug fährt durch Tunnel. Internet war kurz weg. Führt alles gleichermassen zu Bursts.

    Ich denke mal die vermeintliche Dezentralität ist sowieso schon vom Tisch.

    Nein, aber scheinbar ist es für dich unvorstellbar, dass der Begriff Dezentralität kontextuell verwendet werden kann und nicht immer nur der Serverstandort gemeint ist. Wenn nur das für dich zählt, dann, bitte, ist aber dann nur bis zum Tellerrand.

    Das stimmt so nicht.

    Sobald du an eine Gruppe eine Nachricht schickst, weiß der Server, dass diese existiert. In der Tat kann die Gruppe nicht existieren, ohne eine Nachricht über den Server zu senden.

    Nein, alle Nachrichten an Gruppenteilnehmer (A, B, C) sind ganz normale E2EE-Nachrichten für den Server und sehen so aus, als hätte A etwas an B und dann A etwas an C geschickt. Eine Gruppe mit zwei Threema IDs kann natürlich nur existieren, wenn Nachrichten ausgetauscht werden, aber der Knackpunkt ist, dass diese Information für den Server intransparent ist.

    Ein Matrix Server kennt ohne weitere Informationen erstmal nichts. Damit ein Matrix Server Informationen über die Kommunikation einer Gruppe erfährt, muss sich mindestens ein Teilnehmer der Gruppe auf diesen Server registriert haben. Das steht im Gegensatz zu Threema, wo die Nachrichten IMMER über den einen Server gehen.

    Deine Aussage ist in etwa gleichbedeutend zu, "wenn man nicht kommuniziert, ist auch nichts sichtbar". Ja, natürlich fallen dann auch keine Daten an. Bei Threema übrigens auch nicht - exakt so funktionieren Note Groups. Wenn man die Gruppe dann aber nutzt, werden die Daten einfach nur nicht zwangsläufig über einen einzigen zentralen Server verteilt. Aber sie gehen über irgendeinen Server.


    Wenn man dann aber bei Matrix kommuniziert, ist eben so einiges sichtbar. Wer ist im Room, wie heisst der Room, etc. Schau doch einfach ins Protokoll: https://spec.matrix.org/v1.3/client-server-api/#rooms-1


    Jetzt darf gerne jeder für sich selbst entscheiden, was besser ist: Die Information, dass eine Gruppe existiert, a) in intransparenter Form über eine zentrale Instanz senden, oder b) die Information transparent über eine dezentrale Instanz senden.


    Dein Schaubild zeigt übrigens sehr anschaulich, dass die Daten einfach nur über noch mehr Knoten fliessen. Dezentralität hat eine gewisse Resilienz und auch viele Vorteile, aber Dezentralität führt nicht etwa zu weniger Metadaten, sondern maximal zu verteilteren Metadaten.

    Was Threema nur nicht weiß ist wie ihr eure Gruppe genannt habt ;)

    Das ist, wie bereits erwähnt, falsch. Der Threema-Server weiss nicht einmal, dass eine Gruppe existiert. Es gibt Indikatoren dafür, dass etwas eine Gruppennachricht sein könnte (z.B. zeitlicher Abstand zwischen Nachrichten), aber keine Garantie. Ich hoffe, der Unterschied ist nun klar. :)

    Bei Matrix gibt es nicht DEN Server. Schon alleine beim Lesen von Threema dezentraler als Matrix steigen einem die Haare zu Berge

    Bitte den Schaum vorm Mund abwischen. Ich sprach von Protokollebene. Gruppen sind in Threema auf Protokollebene im Vergleich zu Matrix vollständig dezentral organisiert und es ist für den Server nicht ersichtlich, dass diese überhaupt existiert. Was ein Threema-Server sieht, sind Nachrichten von A nach B. Ein Matrix-Server kennt wesentlich mehr, z.B. dass Kommunikation in Room XY stattfindet.

    Wir sprechen hier von dem Risiko, dass Threema (oder eine dritte Partei die Threema oder dessen Server infiltriert hat) den Public Key der gegenseitigen Kontakte ausgetauscht hat und nun permanent die Nachrichten mitliest und mit den untergejubelten Keys verschlüsselt. Ansonsten wäre ein Nachrichtenaustausch mit untergejubelten Keys zwischen den beiden Personen überhaupt nicht möglich. In der Annahme, dass das passiert ist, würde das beim gegenseitigen Scannen eine Fehlermeldung erzeugen. Deswegen macht man das überhaupt.


    Und nun in Bezug auf meinen obigen Vorschlag (Videochat und QR-Code in die Kamera halten) mit der Annahme, dass ein Angriff aus vorherigem Absatz geschehen ist: Das Mitschneiden und neu verschlüsseln von Nachrichten ist einfach und auch einfach automatisierbar. Deswegen macht es natürlich keinen Sinn, den QR Code via Threema zu verschicken. Das Erkennen, dass jemand einen Termin + Link für einen Videochat ausmacht und diesen zu modifizieren, ist schon deutlich schwerer automatisierbar. Und nun noch den entsprechenden Dienst des Videochats infiltrieren und dann die Videodaten in Echtzeit so zu modifizieren, dass nur der dann per Kamera gezeigte QR-Code präzise und ohne Fragmente mit dem untergejubelten Public Key zu überschreiben, wär ein Stunt den ich maximal einigen wenigen Institutionen der Welt zutrauen würde, die auf der Suche nach einer spezifischen Person sind.

    Ich würde es z.B. via Videochat (z.B. Jitsi) machen. Wenn es sicher sein soll:

    1. Einladung zum Videochat via Threema oder anderem sicheren Kanal schicken. (Das, was die Giffey verbockt hat.)
    2. Im Videochat eine Person den QR Code anzeigen lassen und auf dem anderen Ende der Leitung scannen.

    Videodaten in Echtzeit zu manipulieren ist wahnsinnig aufwändig und, wenn du nicht gerade verfolgt wirst, extrem unwahrscheinlich.

    aber mal im Ernst ... Arbeitet Threema ausschließlich mit seinen zirka 30 Mitarbeitern (Quelle siehe Link) kontinuierlich und exklusiv alleine oder werden z.B. externe Software-Entwickler / Programmier etc. kurzfristig / spotan angestellt oder sonst irgendwie "angemietet"?

    Spontan kurzfristig anstellen lohnt überhaupt nicht. Während der Einarbeitung kosten dich Leute in komplexen Softwareprojekten viel Zeit und du bist somit sogar noch langsamer. Das ist ein Prozess, der sich je nach Projekt und Knowhow von Wochen bis Monate dauern kann.

    Aber anders herum will man doch gerade die nächste Generation dazu bewegen zu wechseln?

    Das ist richtig und wichtig. Man muss natürlich nicht jeden Trend mitmachen, aber wer zukünftige Generationen nicht abholt, hat in der Zukunft schon verloren. Apple und Microsoft fangen auch schon in der Schule an.

    Schnickschnack: Threema ist für sichere Kommunikation und nicht zum Aufblähen der Datenbank mit sinnfreien Bildchen gedacht.

    Deshalb finden viele Threema-Nutzer den Messenger so wie er ist, schon fast perfekt und sind damit super zufrieden.

    Du kannst nur für dich sprechen. Ich finde Sticker keine schlechte Idee.

    Es gibt sie übrigens bereits in Threema für Android (nur eventuell nicht so, wie LordHelmchen es meinst): Man kann über die Android-Tastatur Sticker versenden, welche auch anders als normale Bilder dargestellt werden.

    f09fa681 Eine Frage noch: Wie kann man - ohne den Quelltext zu kennen- wissen, wie Kryptographie von Teleguard funktioniert?


    Ist ja (noch) nicht Open Source? (Wenn doch - Wo finde ich den Link zum Quelltext?)

    1. Dekompilieren der Android App gibt halbwegs lesbaren Source Code.

    2. Da kein Certificate Pinning verwendet wird, kann man sich einfach dazwischenhängen und die Kommunikation mit dem Teleguard-Server im Klartext mitschneiden.


    Beides in Kombination reicht aus für so eine Analyse.

    Ganz offen ... wenn in Deutschland du bereits wegen des Erwerbs illegaler Windows-Keys verfolgt wirst - noch dazu, wo der Betroffene sogar diese scheinbar legal erwerben wollte, wäre ich mir da nicht mehr so sicher...

    Mein Argument ging ja auch gar nicht in die Richtung, dass ich den Ermittlungsbehörden nicht zutraue zu ermitteln (höchstens mein Seitenhieb).


    Mein Argument war, dass ich den Deutschen Ermittlungsbehörden nicht zutraue die Kompetenz zu besitzen, das auszunutzen. Insofern brauchst du auch nicht mit einem dadurch unabhängig entstehenden Audit zu rechnen. Ich denke aber, der oben verlinkte Artikel reicht auch vollkommen aus. Wer jetzt noch Vertrauen in Teleguard hat, hat es entweder nicht verstanden oder ist sehr naiv. 1. Durch den Nachrichtenverlauf auf dem Server extrahierbarer Key. 2. Nonce reuse. Das sind unentschuldbare, kapitale Fehler.

    Lass es mich mal so ausdrücken ... falls die Ermittlungsbehörden eine öffentliche Stellungnahme abgeben, erfahren wir auf diese Art und Weise, "wie sicher" dieser Messenger ist, was die Rückverfolgung einzelner Nutzer (Identität) und deren Daten betrifft

    Hahaha. Selbst diese stümperhafte Nutzung der Crypto APIs wird den Ermittlungsbehörden wohl zu hoch sein. Mitschneiden muss man ja auch noch. Ich würde da exakt nix erwarten. Bedenke, es geht hier nur um langweilige Drogen. Da musst du schon härtere Geschütze auffahren... z.B. das Erschleichen von Sozialleistungen oder 15-jährige "Klimaterroristen" mit Kreide auf die Strasse schreiben lassen.

    Den aktuellen Fortschritt der Programmierung von Jami (alle Betriebssysteme) kann man hier einsehen: https://review.jami.net/q/status:open

    Na ja, da werd ich mich jetzt nicht durchwühlen. :)

    Bei Threema kann man auf Github (Link: https://github.com/threema-ch/threema-android ) meiner Info nach nur fertige Patches / den fertigen Quellcode sehen ...

    Oder kann man auch unfertige (in Bearbeitung befindliche) Patches / Codes sehen?


    Ich meine eher nein, sonst könnten ja alle erahnen, welche Features mit dem nächsten Update kommen (-Die gibt Threema doch nicht vorab bekannt?)

    Nur Threema Web wird derzeit offen einsehbar entwickelt. Wie es bei Desktop sein wird, ist noch offen.