Ich hab gerade mal eine Anfrage an Threema gestellt. Ob sie in diesem Fall auch antworten, bleibt abzuwarten.
EDIT: Keine Antwort bislang.
Ich hab gerade mal eine Anfrage an Threema gestellt. Ob sie in diesem Fall auch antworten, bleibt abzuwarten.
EDIT: Keine Antwort bislang.
Anscheinend antwortet der Support nicht. Sehr enttäuschend.
Geduld, heute ist Feiertag, gestern war ein Fenstertag
Ich wusste nicht, dass in der Schweiz heute Feiertag ist. Fenstertag war mir auch neu, hier heißt das Brückentag. Hat das irgendwas mit Fenster putzen zu tun?
Wart' mal ne Woche. Ein Tag - tze.
Hier mal die Antwort vom Threema Support:
Zitat
Guten Tag,Ja, das ist korrekt. Aufgrund der niedrigen Entropie bzw. Anzahl möglicher Kombinationen von Handynummern wäre eine Speicherung als Hash prinzipbedingt nicht sinnvoll, da die Hashes sowieso sehr leicht zu knacken wären. Damit nach einer ID-Wiederherstellung die verknüpfte Handynummer dem Benutzer wieder angezeigt werden kann, wird sie im Klartext gespeichert. Bei E-Mail-Adressen ist das Hashing sinnvoller, da diese je nach Länge/Zusammensetzung mehr Entropie enthalten können.
Mit freundlichen Grüssen,
Threema Support
Ok, sie machen's also wirklich. Enttäuschend. Im Falle eines Datenlecks/Hacks fallen dem Angreifer so gleich die Telefonnummern aller Threema-Nutzer, die ihre Telefonnummer mit der ID verbunden haben, komplett im Klartext in die Hände. Sozusagen auf dem Silbertablett. Anderenfalls müsste der Hacker erst mal Millionen von Nummern "ent-hashen", was schon mehr Aufwand wäre (aber wohl nicht unmöglich). Und mit Hackerangriffen/Datenlecks muss man ja heutzutage anscheinend immer rechnen... dazu reicht ja ein Blick in die Tagespresse.
Außerdem ergibt es aus technischer Sicht gar keinen Sinn, die Telefonnumer als Klartext zu speichern, denn zum Adressbuch-Abgleich (bei dem ja gehashte Telefonnummern übertragen werden) wird ja nur der Hash benötigt, und zwar von allen verbundenen Nutzern. D.h. die Telefonnummern müssen ohnehin in Form von Hashes vorliegen. Warum dann also zusätzlich die Klartext-Telefonnummern auch noch speichern?? Das ist absolut unnötig. Oder hab ich da einen Denkfehler drin?
Auf jeden Fall mMn alles andere als Zero-Knowledge bzw. "wir-speichern-nur-was-technisch-nötig-ist".
Ich fände es gut, wenn Threema die Klartext-Nummern löscht - einfach, um das Zero-Knowledge-Prinzip glaubwürdig vertreten zu können.
- Andy
Anderenfalls müsste der Hacker erst mal Millionen von Nummern "ent-hashen", was schon mehr Aufwand wäre (aber wohl nicht unmöglich).
Wenn du diesen Post gelesen hättest, wüsstest du, dass es selbst auf einem regulären PC eine Sache von 1-2 Minuten ist. Oder mit einem optimierten Programm wohl so 1-2 Sekunden. Ich sehe den Sicherheitsgewinn nicht.
Warum dann also zusätzlich die Klartext-Telefonnummern auch noch speichern?? Das ist absolut unnötig. Oder hab ich da einen Denkfehler drin?
...und wenn du die Antwort vom Support oben gelesen hättest, wüsstest du, dass sie auch noch zu folgendem Zweck verwendet wird:
Zitat
Damit nach einer ID-Wiederherstellung die verknüpfte Handynummer dem Benutzer wieder angezeigt werden kann, wird sie im Klartext gespeichert.
Wenn du diesen Post gelesen hättest, wüsstest du, dass es selbst auf einem regulären PC eine Sache von 1-2 Minuten ist. Oder mit einem optimierten Programm wohl so 1-2 Sekunden. Ich sehe den Sicherheitsgewinn nicht.
Der Post ist mir bekannt. Die Zeitangabe betrifft jedoch nur das ent-hashen einer einzigen Nummer. Wenn die gesamte Liste mit den Hashes sämtlicher verknüpfter Telefonnummern aller Threema-Nutzer bei einem Hack erbeutet wird, dann wird es wenigstens schon mal etwas aufwändiger, an alle Telefonnummern der (verknüpften) Threema-Nutzer zu kommen. Klar, kein unüberwindbares Hindernis für einen gezielten Angriff, aber so, wie es jetzt ist, würde die Information auf dem Silbertablett geliefert und können im Vorbeigehen abgegriffen werden.
Zitat
...und wenn du die Antwort vom Support oben gelesen hättest, wüsstest du, dass sie auch noch zu folgendem Zweck verwendet wird: [verknüpfte Telefonnummer wiederherstellen]
Stimmt, dazu kann sie verwendet werden. Ich persönlich finde aber nicht, dass das es wert ist, das Zero-Knowledge-Prinzip dafür aufzuweichen - zudem ich ja meine eigene Telefonnummer eh' kenne [emoji6]
Die Zeitangabe betrifft jedoch nur das ent-hashen einer einzigen Nummer.
Falsch, das waren 40 Millionen SHA256-Hashes Macht das den Grund unserer Meinungsverschiedenheit etwas deutlicher?
Zitat
Ich persönlich finde aber nicht, dass das es wert ist, das Zero-Knowledge-Prinzip dafür aufzuweichen
Da würde ich dir 100% zustimmen, wenn es Zero-Knowledge wäre. Bei Telefonnummern ist es aber eher 99%-Knowledge.
Oh stimmt! Gebe mich geschlagen, Du hast natürlich Recht [emoji6] Danke für die Diskussion! [emoji2]
Lässt sich die Entropie nicht erhöhen indem man der Handynummer einen Salt beimischt und dann den hash Wert erzeugt?
Dann wird bei Threema auf dem Server halt salt und hash gespeichert aber der Brutforce wird doch dann erschwert, oder lieg ich falsch?
...aber dann würden bei einem Angriff auf einen Server Hash und Salt zusammen abgegriffen. Dann ist doch nichts gewonnen, oder?
- Andy
Random Salt hat ein ganz anderes Problem: Klar kannst du einen Random Salt für den Hash einer Telefonnummer nutzen. Der ist dann aber beim Abgleich nicht bekannt. Nehmen wir an, es gäbe nur 25 verschiedene Salts, dann müsstest du für jede Telefonnummer alle 25 Salts durchprobieren.
@"andyg": Für halbwegs vernünftige Passwörter funktionieren Salts in Kombination mit teuren Hash-Verfahren wunderbar, da ist ein Leak erstmal kein Problem. Für Telefonnummern wäre es immer noch recht wenig Entropie in Kombination mit einem schnellen Hash-Verfahren wie SHA256, trotz Salt.
Natürlich ist das etwas, das Threema eigentlich von Anfang an hätte transparent machen sollen, auch wenn ich es sehr gut finde, dass sie offen geantwortet haben. Mir fehlt da leider auch in Teilen das technische Verständnis. Wenn Threema an Behörden die Telefonnumer nur in gehashter herausgeben würde, wie kommt man dann auch an die Klartextnummer? Wieso genügt ein Hashwert, um die Systematik dahinter zu knacken? Funktioniert das nicht nur mit bereits vorhandenen Rainbow-Tabellen?
Wenn Threema an Behörden die Telefonnumer nur in gehashter herausgeben würde, wie kommt man dann auch an die Klartextnummer?
Man tut das indirekt: Für jede mögliche Telefonnummer berechnest du den Hashwert. Dann schaust du, ob der erhaltene Hashwert mit einem der errechneten Hashwerte übereinstimmt. Falls ja, hast du die Telefonnummer gefunden.
Es sollte meiner Meinung nach tatsächlich im Cryptography Whitepaper erwähnt werden (falls nicht schon gemacht), dass das Telefonnummernhashing nicht viel wert ist.
dbrgn Danke Dir. Bei dieser Methode müsste aber doch, rein logisch, bekannt sein, nach welcher Systematik Threema Hashes erstellt. Woher weiß man das?
dbrgn Danke Dir. Bei dieser Methode müsste aber doch, rein logisch, bekannt sein, nach welcher Systematik Threema Hashes erstellt. Woher weiß man das?
Weil die Hash Verfahren natürlich bekannt sind.
Weil die Hash Verfahren natürlich bekannt sind.
Und alles andere sinnfrei wäre: https://de.wikipedia.org/wiki/Kerckhoffs%E2%80%99_Prinzip