Ich bekomme irgendwie das Gefühl dass du andauernd versuchst auszuweichen um dein Verfahren irgendwie zu rechtfertigen. Du hast jetzt während dieser Diskussion einfach mal dein Verfahren geändert!
Im PDF Dokument steht nichts davon dass es Pflicht wäre zwei Wörter komplett auszutauschen oder dass alle Wörter in allen Blöcken Sinn ergeben müssen, sondern dass dies eine optionale Maßnahme für „noch mehr Sicherheit“ wäre. Dabei sind genau das die Schritte die überhaupt erst Sicherheit ins Spiel bringen!
In deinem Beispiel hast du das nicht so gemacht, dein Beispiel ist sogar ungültig.
Auf die Fragen von @skyrmion bist du bisher auch nicht eingegangen:
Hinter deiner Verschlüsselung steckt ein Schlüsselraum. Wenn man diesen vollständig absucht hat man die Mnemonic. Bei deiner ersten Version lag dieser jediglich bei 6!, also für einen Computer quasi nicht vorhanden und damit extrem unsicher.
Durch die beiden Wörter geht jetzt aber tatsächlich ein ordentliches Stück Entropie (für den Angreifer) verloren, kombiniert mit den 9! Permutationen, also wenn alle Blöcke gültige Wörter beinhalten, kann man das grob überschlagen:
\log_2(9! * 2048^2 *24*23) \approx 50 bit Sicherheit
Das gilt heutzutage nicht mehr als sicher. Wir machen uns sogar bei einem Mnemonic Split um die Entropie Gedanken, die immerhin bei 80 bit liegt! Das BSI empfiehlt Schlüssellängen von 100 bit.
Wir bewegen uns (grob) in dieser Liga:
Hier hat ein jemand alleine 240 Mnemonic phrases abgesucht – in 30 Stunden. Sehr cooler Artikel:
Ich habe jedenfalls weder die Zeit, noch die Lust 2^{50} Mnemonics abzusuchen, vor allem weil man alle gültigen auf den Seed runter ableiten muss um die Adressen zu checken, was jeweils tausende Operationen sind. :D
Jetzt aber nochmal zurück zur Sinnhaftigkeit dieses Verfahren zu nutzen.
Schwachstellen:
-
Komplizierter Schlüssel. Man muss sich Permutation innerhalb der Blöcke, die richtige Reihenfolge der Blöcke, und die getauschten Wörter merken. Simsalabimm, wir haben ein neues Backup über das wir uns Gedanken machen müssen.
Moment mal… Das kenne ich irgendwo her. Nur dass man sich hier nur ein einfaches Passwort, das man frei wählen kann, merken muss. Dazu kommt noch dass es ein Standardisiertes Verfahren ist das jede Hardware Wallet integriert hat und dass theoretisch beliebig viel zusätzliche Sicherheit bietet:
Optionale Passphrase ("25. Wort") - Braucht man das wirklich?
-
Risiko bei Vererbung. Deine Erben müssen nachvollziehen wie sie an deine Bitcoin kommen. Das ist bei einer Passphrase oder einem Mnemonic Split deutlich einfacher realisierbar.
-
Keine Verbreitung. Du bist der einzige der dieses Verfahren kennt. Niemand kann dir helfen. Du musst manuell ver- und entschlüsseln.
-
Fehleranfälligkeit. Das Risiko (vor allem) beim Verschlüsseln einen Fehler zu machen der eventuell einen massiven Entropieverlust zur Folge hat ist gegeben! Man muss auf viele Parameter achten und darf nirgends verrutschen. Hier wieder die Frage: Wieso sollte man sich das antun?
Ich habe mich beim Abschreiben deiner Chiffren bestimmt mehrere Male vertippt. Mach das mal in einer Notfallsituation, wenn z.B. deine Mnemonic aus irgendeinem Grund kompromittiert sein könnte.
-
Eventuelle Schwachstellen die niemand kennt! Ich bin kein Kryptanalytiker, und in diesem Forum ist nach meinem Kenntnisstand auch keiner. Wir gehen aktuell davon aus dass der effizienteste Angriff ein Brute-Force Angriff ist (so sollte es auch sein), aber wieso können wir uns da so sicher sein? :)
-
Eventuell habe ich in deinem 500€ Beispiel einen Shortcut gefunden, ist aber nur eine Vermutung. Du hast nur die Wörter von 6 der 9 Blöcke permutiert und damit vielleicht einen Hinweis gegeben dass eben diese 6 Blöcke die richtigen sind.
Damit würde sich der Suchraum auf 40 bit verkleinern. Wenn du aber rein „zufällig“ die Blöcke ausgewählt hast die permutiert werden, dann ist das kein Problem.
Hier mal die Kandidaten, mit denen man einen Angriff starten könnte:
Auf jeden Fall auch an dich, @bit01, Danke dass du dir die Mühe gemacht hast. :) Daraus ist ein spannender Thread geworden. Ich würde dir aber persönlich davon abraten dein Verfahren zu benutzen, aus den oben genannten Gründen. Schau dir ausführlich die Vorteile der optionalen Passphrase oder eines Mnemonic Splits an.
Beide sind garantiert besser für dich geeignet. Die Menge der Vorteile der beiden Verfahren ist größer als die von deinem, während die Menge der Nachteile kleiner ist.
Ich würde dir außerdem empfehlen deine 500€ wieder in Sicherheit zu bringen.