Im Beispiel BitcoinJ 06 Erzeuge eine Transaktion haben wir eine echte Bitcoin-Transaktion erzeugt und sie an die Blockchain geschickt. Unser Wallet hat die Transaktion als „von uns erzeugt“ gespeichert und überwacht nun die Blockchain auf Informationen dazu. In diesem Artikel zeige ich Euch, wie einfach Ihr die Transaktionsdaten aus dem Wallet auslesen und anzeigen könnt, wobei wir beim Start des Programms „online“ gehen und das Wallet direkt aktualisieren, sodass die spätere Ausgabe den aktuellsten Stand hat.
Auch hier schreibe ich die Ausgaben in die Konsole in zwei separate Fenster und parallel in 2 separate Dateien mit den Dateinamen BitcoinJ07Transaction_Output_xxx.txt und BitcoinJ07Transaction_Logfile_xxx.txt, wobei „xxx“ für das aktuelle Datum und die Uhrzeit steht; so könnt Ihr die Ausgaben später ganz in Ruhe studieren. Die hierfür notwendige Klasse RedirectedFrame.java findet Ihr in meinem GitHub-Archiv.
Zur Nutzung benötigt Ihr diverse Bibliotheken zur Nutzung von BitcoinJ – ladet Euch diese aus dem separaten Github-Archiv (https://github.com/java-crypto/BitcoinJ_Libraries) herunter und bindet Sie über Eure Entwicklungsumgebung ein.
Dieses Programm ist ebenfalls für den Regtest-Modus vorbereitet, die Voreinstellung verweist auf das Bitcoin Testnet.
Nach der Aktualisierung werden die Daten ausgelesen und das Programm beendet sich nach dem Klick auf den OK-Button, schauen wir uns daher das Output-Logfile an.
Eine etwas andere Form der Darstellung der Transaktionen findet Ihr im Programm BitcoinJ 07 Zeige Transaktionen Tab – dort werden die wichtigsten Daten in tabellarischer Form dargestellt.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 |
BitcoinJ 07 Zeige die Transaktionen eines Wallets Das Programm arbeitet im Netzwerk: org.bitcoin.test Startzeit des WalletAppKit : 18.03.2020 09:52:15 Bitte warten, das Wallet App Kit geht online und aktualisiert das Wallet ********************************************************************************************************************************************** Ausgabe der Transaktionen des Wallets Es befinden sich 24 Transaktionen im Wallet, die aktuellste steht oben --------------------------------------------------------------------------------- Transaktion Nummer 24 Zahlungseingang Transaktions-Id: 951b6137b3b3a04b78486ae5e6d2564b01c4fef59d20ca8927a07ca1e1231175 Transaktionsdatum : Tue Mar 17 17:04:39 CET 2020 Transaktionsbetrag (getValue) : 0.01519059 BTC Transaktionsgebuehr (fee) : wegen Zahlungseingang keine Fee Grund der Transaktion (purpose) : UNKNOWN Confidence (Bestaetigungen) : Appeared in best chain at height 1670200, depth 109. Source: NETWORK Confidence (Bestaetigungen) (Depth/Tiefe): 109 Confidence (Bestaetigungen) (Type) : BUILDING Confidence (Bestaetigungen) (ChainHeight): 1670200 --------------------------------------------------------------------------------- Transaktion Nummer 23 Zahlungsausgang Transaktions-Id: 4e7c11ec81b28a5adfb4807341df2647dde56121ecb4c106603e45b4066e2c18 Transaktionsdatum : Tue Mar 17 16:44:29 CET 2020 Transaktionsbetrag (getValue) : -0.001225 BTC Transaktionsgebuehr (getFee) : -0.000225 BTC Transaktionsbetrag (getValueSendFromMe) : -0.01488305 BTC Transaktionsbetrag (getValueSendToMe) : 0.01365805 BTC Transaktionsbetrag an Empfaenger : -0.001 BTC Grund der Transaktion (purpose) : UNKNOWN Confidence (Bestaetigungen) : Appeared in best chain at height 1670199, depth 110. Source: NETWORK Confidence (Bestaetigungen) (Depth/Tiefe): 110 Confidence (Bestaetigungen) (Type) : BUILDING Confidence (Bestaetigungen) (ChainHeight): 1670199 --------------------------------------------------------------------------------- Transaktion Nummer 22 Zahlungseingang Transaktions-Id: 27df279e8721cd30394e16f5181e508d8f57689715a6a9f43410bbd6623314e4 Transaktionsdatum : Tue Mar 17 14:15:39 CET 2020 Transaktionsbetrag (getValue) : 0.0001 BTC Transaktionsgebuehr (fee) : wegen Zahlungseingang keine Fee Grund der Transaktion (purpose) : UNKNOWN Confidence (Bestaetigungen) : Appeared in best chain at height 1670187, depth 122. Source: NETWORK Confidence (Bestaetigungen) (Depth/Tiefe): 122 Confidence (Bestaetigungen) (Type) : BUILDING Confidence (Bestaetigungen) (ChainHeight): 1670187 --------------------------------------------------------------------------------- Transaktion Nummer 21 Zahlungsausgang Transaktions-Id: 59ffadf84d1b17ab0ec655756d361b71d549d4901d4a2ece4addb4c9edb801be Transaktionsdatum : Tue Mar 17 14:12:59 CET 2020 Transaktionsbetrag (getValue) : -0.001374 BTC Transaktionsgebuehr (getFee) : -0.000374 BTC Transaktionsbetrag (getValueSendFromMe) : -0.00240638 BTC Transaktionsbetrag (getValueSendToMe) : 0.00103238 BTC Transaktionsbetrag an Empfaenger : -0.001 BTC Grund der Transaktion (purpose) : UNKNOWN Confidence (Bestaetigungen) : Appeared in best chain at height 1670186, depth 123. Source: NETWORK Confidence (Bestaetigungen) (Depth/Tiefe): 123 Confidence (Bestaetigungen) (Type) : BUILDING Confidence (Bestaetigungen) (ChainHeight): 1670186 --------------------------------------------------------------------------------- Transaktion Nummer 20 Zahlungsausgang Transaktions-Id: 7b1a8fa596536be249631737cefd706fbea9239dc35449a53dfe2b2d0bdd6177 Transaktionsdatum : Tue Mar 17 14:12:59 CET 2020 Transaktionsbetrag (getValue) : -0.001374 BTC Transaktionsgebuehr (getFee) : -0.000374 BTC Transaktionsbetrag (getValueSendFromMe) : -0.002 BTC Transaktionsbetrag (getValueSendToMe) : 0.000626 BTC Transaktionsbetrag an Empfaenger : -0.001 BTC Grund der Transaktion (purpose) : UNKNOWN Confidence (Bestaetigungen) : Appeared in best chain at height 1670186, depth 123. Source: NETWORK Confidence (Bestaetigungen) (Depth/Tiefe): 123 Confidence (Bestaetigungen) (Type) : BUILDING Confidence (Bestaetigungen) (ChainHeight): 1670186 --------------------------------------------------------------------------------- Transaktion Nummer 19 Zahlungsausgang Transaktions-Id: ae1e70df67155e208e6013d15433ea5aaaa965dbecdc81aca81fa16513b50466 Transaktionsdatum : Tue Mar 17 14:12:59 CET 2020 Transaktionsbetrag (getValue) : -0.001225 BTC Transaktionsgebuehr (getFee) : -0.000225 BTC Transaktionsbetrag (getValueSendFromMe) : -0.00798084 BTC Transaktionsbetrag (getValueSendToMe) : 0.00675584 BTC Transaktionsbetrag an Empfaenger : -0.001 BTC Grund der Transaktion (purpose) : UNKNOWN Confidence (Bestaetigungen) : Appeared in best chain at height 1670186, depth 123. Source: NETWORK Confidence (Bestaetigungen) (Depth/Tiefe): 123 Confidence (Bestaetigungen) (Type) : BUILDING Confidence (Bestaetigungen) (ChainHeight): 1670186 --------------------------------------------------------------------------------- Transaktion Nummer 18 Zahlungsausgang Transaktions-Id: 5d5d22c35ef0d9ba0588a944b9bdcbc1fd191d4a6ba5184a586019f4e5a62e53 Transaktionsdatum : Tue Mar 17 14:12:59 CET 2020 Transaktionsbetrag (getValue) : -0.001225 BTC Transaktionsgebuehr (getFee) : -0.000225 BTC Transaktionsbetrag (getValueSendFromMe) : -0.00310538 BTC Transaktionsbetrag (getValueSendToMe) : 0.00188038 BTC Transaktionsbetrag an Empfaenger : -0.001 BTC Grund der Transaktion (purpose) : UNKNOWN Confidence (Bestaetigungen) : Appeared in best chain at height 1670186, depth 123. Source: NETWORK Confidence (Bestaetigungen) (Depth/Tiefe): 123 Confidence (Bestaetigungen) (Type) : BUILDING Confidence (Bestaetigungen) (ChainHeight): 1670186 --------------------------------------------------------------------------------- Transaktion Nummer 17 Zahlungsausgang Transaktions-Id: ee9bc13d7f0f41d8eed8014a59085bfc6ca55d266e33ff36bb5ad3614fead1d2 Transaktionsdatum : Tue Mar 17 14:12:59 CET 2020 Transaktionsbetrag (getValue) : -0.001225 BTC Transaktionsgebuehr (getFee) : -0.000225 BTC Transaktionsbetrag (getValueSendFromMe) : -0.01610805 BTC Transaktionsbetrag (getValueSendToMe) : 0.01488305 BTC Transaktionsbetrag an Empfaenger : -0.001 BTC Grund der Transaktion (purpose) : UNKNOWN Confidence (Bestaetigungen) : Appeared in best chain at height 1670186, depth 123. Source: NETWORK Confidence (Bestaetigungen) (Depth/Tiefe): 123 Confidence (Bestaetigungen) (Type) : BUILDING Confidence (Bestaetigungen) (ChainHeight): 1670186 --------------------------------------------------------------------------------- Transaktion Nummer 16 Zahlungsausgang Transaktions-Id: 6ba9adf42b9c4463984531db8b12bc6840567341ebb19b9df24bdcc284a630b2 Transaktionsdatum : Tue Mar 17 13:52:43 CET 2020 Transaktionsbetrag (getValue) : -0.001225 BTC Transaktionsgebuehr (getFee) : -0.000225 BTC Transaktionsbetrag (getValueSendFromMe) : -0.01733305 BTC Transaktionsbetrag (getValueSendToMe) : 0.01610805 BTC Transaktionsbetrag an Empfaenger : -0.001 BTC Grund der Transaktion (purpose) : UNKNOWN Confidence (Bestaetigungen) : Appeared in best chain at height 1670185, depth 124. Source: NETWORK Confidence (Bestaetigungen) (Depth/Tiefe): 124 Confidence (Bestaetigungen) (Type) : BUILDING Confidence (Bestaetigungen) (ChainHeight): 1670185 --------------------------------------------------------------------------------- Transaktion Nummer 15 Zahlungsausgang Transaktions-Id: 69b2f6ed69fa6afa9a23444f25eb239b165b092fe96805178107421ec18bc03e Transaktionsdatum : Tue Mar 17 13:52:43 CET 2020 Transaktionsbetrag (getValue) : -0.001225 BTC Transaktionsgebuehr (getFee) : -0.000225 BTC Transaktionsbetrag (getValueSendFromMe) : -0.00920584 BTC Transaktionsbetrag (getValueSendToMe) : 0.00798084 BTC Transaktionsbetrag an Empfaenger : -0.001 BTC Grund der Transaktion (purpose) : UNKNOWN Confidence (Bestaetigungen) : Appeared in best chain at height 1670185, depth 124. Source: NETWORK Confidence (Bestaetigungen) (Depth/Tiefe): 124 Confidence (Bestaetigungen) (Type) : BUILDING Confidence (Bestaetigungen) (ChainHeight): 1670185 --------------------------------------------------------------------------------- Transaktion Nummer 14 Zahlungsausgang Transaktions-Id: fd5a14fd75cbaf0d3ad017a1d7a3935bdc5e33005bbd5c5d02fac4248bb7dace Transaktionsdatum : Tue Mar 17 13:32:39 CET 2020 Transaktionsbetrag (getValue) : -0.001225 BTC Transaktionsgebuehr (getFee) : -0.000225 BTC Transaktionsbetrag (getValueSendFromMe) : -0.01855805 BTC Transaktionsbetrag (getValueSendToMe) : 0.01733305 BTC Transaktionsbetrag an Empfaenger : -0.001 BTC Grund der Transaktion (purpose) : UNKNOWN Confidence (Bestaetigungen) : Appeared in best chain at height 1670184, depth 125. Source: NETWORK Confidence (Bestaetigungen) (Depth/Tiefe): 125 Confidence (Bestaetigungen) (Type) : BUILDING Confidence (Bestaetigungen) (ChainHeight): 1670184 --------------------------------------------------------------------------------- Transaktion Nummer 13 Zahlungsausgang Transaktions-Id: 41063813cac83e28233d9facc2df05f1ded2faa66b042ea7ffb3eabc020a87b3 Transaktionsdatum : Tue Mar 17 13:32:39 CET 2020 Transaktionsbetrag (getValue) : -0.001225 BTC Transaktionsgebuehr (getFee) : -0.000225 BTC Transaktionsbetrag (getValueSendFromMe) : -0.01043084 BTC Transaktionsbetrag (getValueSendToMe) : 0.00920584 BTC Transaktionsbetrag an Empfaenger : -0.001 BTC Grund der Transaktion (purpose) : UNKNOWN Confidence (Bestaetigungen) : Appeared in best chain at height 1670184, depth 125. Source: NETWORK Confidence (Bestaetigungen) (Depth/Tiefe): 125 Confidence (Bestaetigungen) (Type) : BUILDING Confidence (Bestaetigungen) (ChainHeight): 1670184 --------------------------------------------------------------------------------- Transaktion Nummer 12 Zahlungsausgang Transaktions-Id: ff71b0c15b87a295b4a59bc7db1e96c52e46b4a4e269c8c88b95b27ce60e7f7e Transaktionsdatum : Tue Mar 17 13:19:33 CET 2020 Transaktionsbetrag (getValue) : -0.000674 BTC Transaktionsgebuehr (getFee) : -0.000674 BTC Transaktionsbetrag (getValueSendFromMe) : -0.0022 BTC Transaktionsbetrag (getValueSendToMe) : 0.001526 BTC Transaktionsbetrag an Empfaenger : 0.00 BTC Grund der Transaktion (purpose) : UNKNOWN Confidence (Bestaetigungen) : Appeared in best chain at height 1670183, depth 126. Source: NETWORK Confidence (Bestaetigungen) (Depth/Tiefe): 126 Confidence (Bestaetigungen) (Type) : BUILDING Confidence (Bestaetigungen) (ChainHeight): 1670183 --------------------------------------------------------------------------------- Transaktion Nummer 11 Zahlungsausgang Transaktions-Id: bd630add4ca45435c5ad29313d29efee53f990c551b16dee343f6dc0510806bc Transaktionsdatum : Tue Mar 17 13:19:33 CET 2020 Transaktionsbetrag (getValue) : -0.000227 BTC Transaktionsgebuehr (getFee) : -0.000227 BTC Transaktionsbetrag (getValueSendFromMe) : -0.01165784 BTC Transaktionsbetrag (getValueSendToMe) : 0.01143084 BTC Transaktionsbetrag an Empfaenger : 0.00 BTC Grund der Transaktion (purpose) : UNKNOWN Confidence (Bestaetigungen) : Appeared in best chain at height 1670183, depth 126. Source: NETWORK Confidence (Bestaetigungen) (Depth/Tiefe): 126 Confidence (Bestaetigungen) (Type) : BUILDING Confidence (Bestaetigungen) (ChainHeight): 1670183 --------------------------------------------------------------------------------- Transaktion Nummer 10 Zahlungsausgang Transaktions-Id: 1915fc8e81695ed196b45cde18b39ea1e19627c091aa26837c52132453bcb1c9 Transaktionsdatum : Tue Mar 17 13:19:33 CET 2020 Transaktionsbetrag (getValue) : -0.000227 BTC Transaktionsgebuehr (getFee) : -0.000227 BTC Transaktionsbetrag (getValueSendFromMe) : -0.00433238 BTC Transaktionsbetrag (getValueSendToMe) : 0.00410538 BTC Transaktionsbetrag an Empfaenger : 0.00 BTC Grund der Transaktion (purpose) : UNKNOWN Confidence (Bestaetigungen) : Appeared in best chain at height 1670183, depth 126. Source: NETWORK Confidence (Bestaetigungen) (Depth/Tiefe): 126 Confidence (Bestaetigungen) (Type) : BUILDING Confidence (Bestaetigungen) (ChainHeight): 1670183 --------------------------------------------------------------------------------- Transaktion Nummer 9 Zahlungsausgang Transaktions-Id: 207bd90e41dd34e22faa639ba6b2608ef0a50fc00de6c4246df680cd0913cf0c Transaktionsdatum : Tue Mar 17 13:19:33 CET 2020 Transaktionsbetrag (getValue) : -0.000227 BTC Transaktionsgebuehr (getFee) : -0.000227 BTC Transaktionsbetrag (getValueSendFromMe) : -0.01978505 BTC Transaktionsbetrag (getValueSendToMe) : 0.01955805 BTC Transaktionsbetrag an Empfaenger : 0.00 BTC Grund der Transaktion (purpose) : UNKNOWN Confidence (Bestaetigungen) : Appeared in best chain at height 1670183, depth 126. Source: NETWORK Confidence (Bestaetigungen) (Depth/Tiefe): 126 Confidence (Bestaetigungen) (Type) : BUILDING Confidence (Bestaetigungen) (ChainHeight): 1670183 --------------------------------------------------------------------------------- Transaktion Nummer 8 Zahlungsausgang Transaktions-Id: db6ccf60d1953a24fb184c63f08976e569eb91ab6aa61f6be13bda0f4d6fd8ec Transaktionsdatum : Sun Mar 15 19:25:46 CET 2020 Transaktionsbetrag (getValue) : -0.000276 BTC Transaktionsgebuehr (getFee) : -0.000225 BTC Transaktionsbetrag (getValueSendFromMe) : -0.01193384 BTC Transaktionsbetrag (getValueSendToMe) : 0.01165784 BTC Transaktionsbetrag an Empfaenger : -0.000051 BTC Grund der Transaktion (purpose) : UNKNOWN Confidence (Bestaetigungen) : Appeared in best chain at height 1669850, depth 459. Source: NETWORK Confidence (Bestaetigungen) (Depth/Tiefe): 459 Confidence (Bestaetigungen) (Type) : BUILDING Confidence (Bestaetigungen) (ChainHeight): 1669850 --------------------------------------------------------------------------------- Transaktion Nummer 7 Zahlungseingang Transaktions-Id: f1385570beffb71aa075ac92311b722a09b31b0d85a19481014b9fd898ed2489 Transaktionsdatum : Sun Mar 15 19:25:46 CET 2020 Transaktionsbetrag (getValue) : 0.01978505 BTC Transaktionsgebuehr (fee) : wegen Zahlungseingang keine Fee Grund der Transaktion (purpose) : UNKNOWN Confidence (Bestaetigungen) : Appeared in best chain at height 1669850, depth 459. Source: NETWORK Confidence (Bestaetigungen) (Depth/Tiefe): 459 Confidence (Bestaetigungen) (Type) : BUILDING Confidence (Bestaetigungen) (ChainHeight): 1669850 --------------------------------------------------------------------------------- Transaktion Nummer 6 Zahlungseingang Transaktions-Id: 147ceb133fb04577e6e724e46e8792042ba02bdd01086792505aec6583ffb9f5 Transaktionsdatum : Fri Mar 13 15:03:06 CET 2020 Transaktionsbetrag (getValue) : 0.0001 BTC Transaktionsgebuehr (fee) : wegen Zahlungseingang keine Fee Grund der Transaktion (purpose) : UNKNOWN Confidence (Bestaetigungen) : Appeared in best chain at height 1669682, depth 627. Source: NETWORK Confidence (Bestaetigungen) (Depth/Tiefe): 627 Confidence (Bestaetigungen) (Type) : BUILDING Confidence (Bestaetigungen) (ChainHeight): 1669682 --------------------------------------------------------------------------------- Transaktion Nummer 5 Zahlungseingang Transaktions-Id: 60cf0367187eb8d324a1e692e47e6aabc60c327ca87ebb2b0114e8b30168db3e Transaktionsdatum : Thu Mar 12 12:23:07 CET 2020 Transaktionsbetrag (getValue) : 0.0001 BTC Transaktionsgebuehr (fee) : wegen Zahlungseingang keine Fee Grund der Transaktion (purpose) : UNKNOWN Confidence (Bestaetigungen) : Appeared in best chain at height 1669603, depth 706. Source: NETWORK Confidence (Bestaetigungen) (Depth/Tiefe): 706 Confidence (Bestaetigungen) (Type) : BUILDING Confidence (Bestaetigungen) (ChainHeight): 1669603 --------------------------------------------------------------------------------- Transaktion Nummer 4 Zahlungsausgang Transaktions-Id: 3b04ff0742625ad5123e3a6bc74b407fde68e098c97244bd6a413b9550effe34 Transaktionsdatum : Thu Mar 12 11:07:00 CET 2020 Transaktionsbetrag (getValue) : -0.001425 BTC Transaktionsgebuehr (getFee) : -0.000225 BTC Transaktionsbetrag (getValueSendFromMe) : -0.00575738 BTC Transaktionsbetrag (getValueSendToMe) : 0.00433238 BTC Transaktionsbetrag an Empfaenger : -0.0012 BTC Grund der Transaktion (purpose) : USER_PAYMENT Confidence (Bestaetigungen) : Appeared in best chain at height 1669600, depth 709. Source: NETWORK Confidence (Bestaetigungen) (Depth/Tiefe): 709 Confidence (Bestaetigungen) (Type) : BUILDING Confidence (Bestaetigungen) (ChainHeight): 1669600 --------------------------------------------------------------------------------- Transaktion Nummer 3 Zahlungseingang Transaktions-Id: aa844f9e5f93716e5207b1479ba9c1209a3660a1a1514f9f0d6b3fa0164e1770 Transaktionsdatum : Thu Mar 12 11:03:18 CET 2020 Transaktionsbetrag (getValue) : 0.01193384 BTC Transaktionsgebuehr (fee) : wegen Zahlungseingang keine Fee Grund der Transaktion (purpose) : UNKNOWN Confidence (Bestaetigungen) : Appeared in best chain at height 1669600, depth 709. Source: NETWORK Confidence (Bestaetigungen) (Depth/Tiefe): 709 Confidence (Bestaetigungen) (Type) : BUILDING Confidence (Bestaetigungen) (ChainHeight): 1669600 --------------------------------------------------------------------------------- Transaktion Nummer 2 Zahlungsausgang Transaktions-Id: 905277665a3eb6cd1cf0af30b00f15db3ec6fc7ae86b3c150aa2fdcdb589d0b1 Transaktionsdatum : Wed Mar 11 14:41:17 CET 2020 Transaktionsbetrag (getValue) : -0.005225 BTC Transaktionsgebuehr (getFee) : -0.000225 BTC Transaktionsbetrag (getValueSendFromMe) : -0.01098238 BTC Transaktionsbetrag (getValueSendToMe) : 0.00575738 BTC Transaktionsbetrag an Empfaenger : -0.005 BTC Grund der Transaktion (purpose) : USER_PAYMENT Confidence (Bestaetigungen) : Appeared in best chain at height 1669539, depth 770. Source: NETWORK Confidence (Bestaetigungen) (Depth/Tiefe): 770 Confidence (Bestaetigungen) (Type) : BUILDING Confidence (Bestaetigungen) (ChainHeight): 1669539 --------------------------------------------------------------------------------- Transaktion Nummer 1 Zahlungseingang Transaktions-Id: 18866d7e03a0b8958769382afe24ff7671fbc911cbdf3006fd1fbb3a3c49c4cf Transaktionsdatum : Wed Mar 11 13:45:06 CET 2020 Transaktionsbetrag (getValue) : 0.01098238 BTC Transaktionsgebuehr (fee) : wegen Zahlungseingang keine Fee Grund der Transaktion (purpose) : UNKNOWN Confidence (Bestaetigungen) : Appeared in best chain at height 1669535, depth 774. Source: NETWORK Confidence (Bestaetigungen) (Depth/Tiefe): 774 Confidence (Bestaetigungen) (Type) : BUILDING Confidence (Bestaetigungen) (ChainHeight): 1669535 ********************************************************************************************************************************************** Endezeit des WalletAppKit : 18.03.2020 09:52:28 |
Hier der Quellcode des Programms:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 |
/* * Herkunft/Origin: http://javacrypto.bplaced.net/ * Programmierer/Programmer: Michael Fehr * Copyright/Copyright: Michael Fehr * Lizenttext/Licence: verschiedene Lizenzen / several licenses * getestet mit/tested with: Java Runtime Environment 11.0.5 x64 * verwendete IDE/used IDE: intelliJ IDEA 2019.3.1 * Datum/Date (dd.mm.jjjj): 18.03.2020 * Funktion: 07 Zeigt die Transaktionen eines Wallets in tabellarischer Form an * Function: 07 shows transaction tabbed data from our wallet * * Sicherheitshinweis/Security notice * Die Programmroutinen dienen nur der Darstellung und haben keinen Anspruch auf eine korrekte Funktion, * insbesondere mit Blick auf die Sicherheit ! * Prüfen Sie die Sicherheit bevor das Programm in der echten Welt eingesetzt wird. * The program routines just show the function but please be aware of the security part - * check yourself before using in the real world ! * * Sie benötigen diverse Bibliotheken (alle im Github-Archiv im Unterordner "libs") * You need a lot of libraries (see my Github-repository in subfolder "libs") * verwendete BitcoinJ-Bibliothek / used BitcoinJ Library: bitcoinj-core-0.15.6.jar * my Github-Repository: https://github.com/java-crypto/BitcoinJ * libs in my Github-Repo: https://github.com/java-crypto/BitcoinJ_Libraries * */ import org.bitcoinj.core.Coin; import org.bitcoinj.core.ECKey; import org.bitcoinj.core.NetworkParameters; import org.bitcoinj.core.Transaction; import org.bitcoinj.kits.WalletAppKit; import org.bitcoinj.params.RegTestParams; import org.bitcoinj.params.TestNet3Params; import org.bitcoinj.utils.BriefLogFormatter; import org.bitcoinj.wallet.UnreadableWalletException; import org.bitcoinj.wallet.Wallet; import javax.swing.*; import java.io.File; import java.io.IOException; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.ArrayList; public class BitcoinJ07ViewTransactions { public static void main(String[] args) throws IOException, UnreadableWalletException { // redirect the console to two windows RedirectedFrame outputFrameErrors = new RedirectedFrame("Logfileausgaben Fenster", true, false, true, "BitcoinJ07Transactions_Logfile_" + getActualDateReverse() + ".txt", 700, 600, JFrame.DO_NOTHING_ON_CLOSE); RedirectedFrame outputFrameOutput = new RedirectedFrame("Programmausgaben Fenster", false, true, true, "BitcoinJ07Transactions_Output_" + getActualDateReverse() + ".txt", 700, 600, JFrame.DO_NOTHING_ON_CLOSE); System.out.println("BitcoinJ 07 Zeige die Transaktionen eines Wallets"); NetworkParameters netParams = TestNet3Params.get(); // preset String filenameWallet = "bitcoinj02createwallet"; // choose network type (TEST or REG) String networkType = "TEST"; //String networkType = "REG"; switch (networkType) { case "TEST": { netParams = TestNet3Params.get(); break; } case "REG": { netParams = RegTestParams.get(); break; } default: { System.out.println("Es ist kein networkType angegeben, das Programm wird nicht gestartet"); JOptionPane.showMessageDialog(null, "Das Programm wird beendet sobald der OK-Button betaetigt wird", "Programmende", JOptionPane.WARNING_MESSAGE); System.exit(0); } } System.out.println("Das Programm arbeitet im Netzwerk: " + netParams.getId()); // init wallet app kit WalletAppKit kit = null; BriefLogFormatter.init(); kit = new WalletAppKit(netParams, new File("."), filenameWallet) { @Override protected void onSetupCompleted() { if (wallet().getKeyChainGroupSize() < 1) { wallet().importKey(new ECKey()); } } }; System.out.println("Startzeit des WalletAppKit : " + getActualDate()); System.out.println("Bitte warten, das Wallet App Kit geht online und aktualisiert das Wallet"); if (netParams == RegTestParams.get()) { kit.connectToLocalHost(); // neccessary for regtest-mode } kit.startAsync(); kit.awaitRunning(); System.out.println("**********************************************************************************************************************************************"); System.out.println("Ausgabe der Transaktionen des Wallets"); Wallet wallet = kit.wallet(); // transaktionen ArrayList<Transaction> txList = new ArrayList(kit.wallet().getTransactions(true)); txList.sort((tx1, tx2) -> { return tx2.getUpdateTime().compareTo(tx1.getUpdateTime()); }); int txListSize = txList.size(); System.out.println("Es befinden sich " + txListSize + " Transaktionen im Wallet, die aktuellste steht oben"); for (int txIterator = 0; txIterator < txListSize; txIterator++) { Transaction tx = txList.get(txIterator); System.out.println("---------------------------------------------------------------------------------"); String txDirection = ""; if (tx.getValue(wallet).isNegative()) txDirection = " Zahlungsausgang"; else txDirection = " Zahlungseingang"; System.out.println("Transaktion Nummer " + (txListSize - (txIterator)) + txDirection); System.out.println("Transaktions-Id: " + tx.getTxId()); System.out.println("Transaktionsdatum : " + tx.getUpdateTime()); System.out.println("Transaktionsbetrag (getValue) : " + tx.getValue(wallet).toFriendlyString()); try { System.out.println("Transaktionsgebuehr (getFee) : -" + tx.getFee().toFriendlyString()); System.out.println("Transaktionsbetrag (getValueSendFromMe) : -" + tx.getValueSentFromMe(wallet).toFriendlyString()); System.out.println("Transaktionsbetrag (getValueSendToMe) : " + tx.getValueSentToMe(wallet).toFriendlyString()); // berechnung der netto-zahlung an den empfänger Coin txGetValue = tx.getValue(wallet); // ist negativ bei ausgehender zahlung Coin txGetFee = tx.getFee(); // ist positiv ! Coin txEmpfaenger = txGetValue.add(txGetFee); System.out.println("Transaktionsbetrag an Empfaenger : " + txEmpfaenger.toFriendlyString()); } catch (NullPointerException e) { System.out.println("Transaktionsgebuehr (fee) : " + "wegen Zahlungseingang keine Fee"); } System.out.println("Grund der Transaktion (purpose) : " + tx.getPurpose()); System.out.println("Confidence (Bestaetigungen) : " + tx.getConfidence()); System.out.println("Confidence (Bestaetigungen) (Depth/Tiefe): " + tx.getConfidence().getDepthInBlocks()); System.out.println("Confidence (Bestaetigungen) (Type) : " + tx.getConfidence().getConfidenceType()); try { System.out.println("Confidence (Bestaetigungen) (ChainHeight): " + tx.getConfidence().getAppearedAtChainHeight()); } catch (IllegalStateException e) { System.out.println("Confidence (Bestaetigungen) (ChainHeight): " + "keine Bestaetigung da die Transaktion nicht im BUILDING-Typ ist"); } } System.out.println("**********************************************************************************************************************************************"); kit.stopAsync(); // wait for completion System.out.println("\nEndezeit des WalletAppKit : " + getActualDate()); JOptionPane.showMessageDialog(null, "Das Programm wird beendet sobald der OK-Button betaetigt wird", "Programmende", JOptionPane.WARNING_MESSAGE); outputFrameErrors.dispose(); outputFrameOutput.dispose(); } private static String getActualDateReverse() { // provides the actual date and time in this format yyyy-MM-dd_HH-mm-ss e.g. 2020-03-16_10-27-15 DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd_HH-mm-ss"); LocalDateTime today = LocalDateTime.now(); return formatter.format(today); } private static String getActualDate() { // provides the actual date and time in this format dd-MM-yyyy_HH-mm-ss e.g. 16-03-2020_10-27-15 DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd.MM.yyyy HH:mm:ss"); LocalDateTime today = LocalDateTime.now(); return formatter.format(today); } } |
Den Quellcode der Klasse „RedirectFrame.java“ findet Ihr in meinem Github-Archiv oder im vorigen Beispiel.
Alle Quellcodes zum Bitcoin findet Ihr zum Download in meinem Github-Repository BitcoinJ, welches Ihr über diesen Link erreicht: https://github.com/java-crypto/BitcoinJ. Alle Programme sind unter Java 11 lauffähig (vermutlich auch unter Java 8) und wurden mit intelliJ IDEA entwickelt, welches für dieses Programm aber nicht notwendig ist.
Noch ein Wort zum Thema „Lizenz“: Die von mir erstellten Beispiele selber stehen unter der „Unlicense“-Lizenz, allerdings werden zur Laufzeit diverse Bibliotheken eingebunden, welche zum Teil ganz eigene Lizenzen mitbringen. Darauf kann ich in meinen Lizenzhinweisen nicht hinweisen.
Letzte Bearbeitung: 21.03.2020