Noch eine App;) Bitcoin lineage tracker by dackelmann

Hallo zusammen,

ich wollte eigentlich noch warten, aber da das Thema hier den ein oder anderen wohl auch umtreibt möchte ich schon mal mein aktuelles Projekt vorstellen. War eigentlich nicht gedacht das zu veröffentlichen, aber wenn ich Interesse besteht werde ich das gerne tun. Auf jeden Fall freue mich über Feedback, ggf. hat der ein oder andere ja noch eine Idee was ein must have wäre für so eine App.

Mein Ziel war/ist es nicht ein Cointracking 2.0 oder eine andere App zu entwickeln die mir einen Steuerreport baut, das ist nicht der Scope meiner App.

So wie mir geht es vermutlich vielen hier. Man hat irgendwann angefangen Bitcoin zu kaufen bzw. sats zu stacken. Erst auf einer Börse wie z. B. Bison. Man beschäftigt sich mit dem Thema und stellt fest, man braucht eine eigene Wallet und ggf. einen Bitcoin nativen Broker wie coinfinity. Eventuell findet hier schon die erste transaction statt. Dann besorgt man sich eine Hardware Wallet, die sats werden wieder bewegt. Man passt sein Setup an, verteilt ggf. auf eine weitere Wallet. Geht auf Multisig, optional passphrase, was auch immer. UTXO mgmt macht das ganze auch nicht einfacher nachvollziehbar.

Und ich denke in Zukunft wird sowas immer mal wieder vorkommen, weil man sein Setup den Gegebenheiten anpassen muss.

Die Frage die ich mir hierbei gestellt habe, wie verhält sich das jetzt mit dem Herkunftsnachweis. Auf meinen Kaufbelegen steht ich habe an Datum xy diese sats gekauft und die wurden auf diese Wallet bzw. auf diese Adresse gesendet. Liegen diese Sats da auch noch nach ein paar Jahren? Also in meinem Fall nicht alle. Aus Unwissenheit am Anfang und weil ich mein Setup mehrfach angepasst habe um mehr Sicherheit reinzubekommen.

Wie mache ich jetzt dem Finanzamt klar, dass das die selben sats sind die jetzt 5 Jahre später auf einer ganz anderen Adresse liegen und ggf. auch über mehrere Wallets verschoben wurden? Am Ende schadet diese ganze Steuerthematik am meisten denen, die Eigenverwahrung betreiben und die Sats nicht auf einem Broker liegen lassen. Wenn man die Herkunft nicht nachweisen kann, kann es doch recht teuer werden.

Das ist der Scope meiner App. Rein on-chain, startet mit einer Aquisition und endet mit einem unspent UTXO oder einem Exit (transfer zu einem broker für den Verkauf).

Was ich gerade noch am testen bin, es kann natürlich sein, dass man sats auf der wallet hat die nicht von einer Aquisition stammen. Die müssen auch gelistet werden mit einem extra flag. Genauso Aquisitions die ggf. „verloren gegangen sind“ und auf keiner der hinterlegten wallets/adressen liegen.

  • Datenbasis sind einmal meine Aquisitions - import per CSV von coinfinity als Beispiel
  • Abgeleitete Adressen meiner xpubs
  • ggf. manuell hinterlegte adressen
  • falls man den xpub/die adressen nicht mehr hat kann man diese im trace auch manuell auf „owned“ setzen.

Die App läuft lokal in einem docker container auf einer ubuntu VM. Connect per RPC auf die eigene umbrel Node im LAN. Bewusst so gebaut, schränkt den Anwenderkreis natürlich ein. Kann komplett offline betrieben werden, die Daten werden ausschließlich von der eigenen Node abgefragt. Ob diese per Tor oder anderweitig nach außen connected ist spielt keine Rolle. Alle Daten bleiben lokal.

Am Ende kann man sich dann die „exits“ z. B. aus dem letzten Jahr als csv exportieren und hat da drin den genauen Pfad, über welche Adressen die sats so gewandert sind.

Um irgendwelche Adressen und Transaktionen manuell zu tracen(forward/reverse) kann man die App natürlich auch nehmen, dauert halt bisschen bis der graph sich aufbaut.

Im Anhang paar Bilder. Freue mich wie gesagt über Feedback. Paar Kleinigkeiten möchte ich noch fixen, dann könnte ich die App auch auf Github packen falls sie jemand bei sich betreiben oder testen möchte.

Der Monster Graph auf dem letzten Bild ist natürlich nicht von mir, habe eine random Adresse aus dem Netz getraced :)

5 „Gefällt mir“

Coole Sache =)

Besonders der Name Dackelmann App finde ich passend super. :star_struck: