Ich hatte gerade eine Idee bezüglich Bitcoin und wollte die einfach mal loswerden, für den unwahrscheinlichen Fall, dass sie gut ist Bei der Idee handelt es sich vorerst nur mal um ein Gedankenspiel, wie man die Anreize meine Bitcoins (oder möglicherweise andere Crypto-Assets) zu stehlen, deutlich verringert könnte. Ich denke, dass meine Idee zumindest auf Ethereum funktionieren sollte (da Turing-Complete), aber mich würde interessieren, ob so etwas auch bei Bitcoin mit der eingeschränkten Smart-Contract Funktion möglich wäre. Oder möglicherweise existiert das Ganze bereits, hab beim google allerdings nichts gefunden (weiß aber auch allerdings nicht genau wonach ich suchen soll).
Ok nun aber zu der vielleicht guten Idee:
Nehmen wir an ich Sperre meine Coins in einem Smart-Contract ein, das nur erlaubt diese Coins
mit einer großen Zeitverzögerung zu versenden, sagen wir z.B eine Woche. Soll heißen, wann
immer ich einen Teil der Coins versenden möchte, muss ich eine Transaktion machen die das
Smart-Contract verändert und die Coins dann allerdings erst nach ca. einer Woche (also 1008
Blöcke) auf der gewünschten Adresse landen.
Nun nehmen wir noch an, dass das Smart-Contract so geschrieben ist, dass es jeder Zeit mit
einem, nennen wir ihn Withdrawal-Key, zurückgezogen werden kann.
Nun was würde das bedeuten, wenn nun 1. jemand meinen „normalen“ Key stehlen würde und 2.
jemand meinen „normalen“ und/oder meinen Withdrawal-Key stehlen würde.
Im ersten Fall hätte ich kein Problem, solange ich immer jede Woche auf die Blockchain schau
(könnte ja automatisiert sein) und dann, für den Fall das der Bösewicht meine Bitcoins
versenden möchte, diese Versendung einfach mit meinem Withdrawal-Key abbreche. Dann würde es sich natürlich, sobald ich gemerkt habe dass jemand meinen Key gestohlen hat anbieten, dass ich
meine Bitcoins auf eine andre Adresse versende, damit ich das nicht andauernd machen muss …
Im zweiten Fall wäre es so, dass sowohl ich als auch der Bösewicht den Withdrawal-Key haben und somit keiner keiner von uns beiden die Coins versenden könnte, weil der andere die Transaktion ja immer mit dem Withdrawal-Key abbrechen würde. Die Coins wären nun (erstmals)
verloren. Mit dem großen Unterschied, dass der Bösewicht von vornherein viel weniger Anreiz hätte mir meine Coins zu stehlen, da sein einziger nutzen darin besteht mir meine Coins wegzunehmen, er selbst aber keinen finanziellen Vorteil dadurch hat.
Man könnte also eine Menge an Bitcoin von denen man weiß das man sie eh nicht schnell
versenden möchte in so einem Smart-Contract einsperren und dies sollte es dann aus Sicht der
Spieltheorie wesentlich unwahrscheinlicher machen, dass ich das Ziel eines Bösewichts werden. Könnte mir so was vor allem bei Leuten gut Vorstellen die große Mengen an Bitcoin halten, dass sie ihre Coins auf so einer Wallte einsperren würden, vielleicht sogar Exchanges.
Außerdem bietet das zuletzt beschriebenen Szenario in dem beide, ich und der Bösewicht beide
Keys haben, eine interessante und absurde Situation. Denn nehmen wir mal an ich
habe 1 BTC in diesem Smart-Contract, dann habe ich -1BTC und der Bösewicht 0BTC aus dieser
Aktion gezogen. Aus spiel-theoretischer Sicht wäre es also sinnvoll, für beide Parteien sich
darauf zu einigen den Bitcoin aufzuteilen, dann hätte ich nur -0,5BTC und der Angreifer
+0.5BTC. Sehr absurde Situation :). Doch wenn man sie weiterdenkt würde jeder davon profitieren.
Also wäre es ja vielleicht sogar mögliche einen Mechanismus von vornherein in das Smart-Contract
mit einzuprogrammieren, der es erlaubt, dass wenn beide sich auf eine Split-Ratio einigen (oder
vielleicht auch einen default festlegen) die Bitcoins doch aus den Smart-Contract wieder raus
kommen.
Ich bin gespannt was ihr von meiner vielleicht guten Idee halten.
Viele Grüße
Manuel
PS: mir sind grad am Ende noch zwei Sachen eingefallen eingefallen:
- Der Coinbase Vault tut meines Wissens (bin da nicht so drin) etwas ähnliches, denke das das
ganze dort allerdings offchain passiert und nicht von der Bitcoin Sicherheit sondern von der
Coinbase Sicherheit abhängt? - Übersehe ich aus spiel-theoretischer Sicht etwas was die Gebühren betrifft? Also weil ich für das andauernden verwenden des Withdrawal-Keys ja immer gebühren zahlen muss?
Für den unwahrscheinlichen Fall, dass das ne gute Idee ist a5559f6a385555af53b21b41e9f019960bbb983c0de6826228e4ea6680d99539