RPC command to sign text with wallet private key #8

issue gavinandresen opened this issue on December 20, 2010
  1. gavinandresen commented at 1:59 PM on December 20, 2010: contributor

    I'm imagining an RPC call something like:

    signtext <bitcoinaddress> "MESSAGE..." ... returns signature, in some standards-compliant format, assuming bitcoinaddress corresponds to a public key in our wallet.

    There should also be: verify <bitcoinaddress> "MESSAGE" "SIGNATURE" ... which return true or false or "I have no idea what the public key for <bitcoinaddress> is".

  2. jhyslop commented at 6:43 AM on March 6, 2011: none

    I disagree with this. Bitcoin keys should be used for one purpose only - creating bitcoins. Any other use will erode the anonymity that the system can afford.

    Sounds like what you really want is GPG.

  3. gavinandresen commented at 9:20 PM on March 6, 2011: contributor

    I don't see how this erodes anonymity if you don't use it.

    And being able to prove that you own a given bitcoin address can be used for all sorts of interesting things for cases where you specifically do NOT want to be anonymous.

  4. jhyslop commented at 2:07 AM on March 7, 2011: none

    OK, I'll go along with that.

  5. jhyslop commented at 11:59 PM on March 7, 2011: none

    I've been thinking about this some more. Rather than sign an arbitrary message (which is generally frowned on by those smarter than me at cryptography; as I recall, a carefully-crafted message can make it easier to perform certain types of known-plaintext attacks)... um, where was I? Oh, yeah, what about adding specific RPC commands to issue a specific message? For example, if you want to prove you own(ed) a particular coin, you could issue a command something like "getproofofownership <address>". Of course, under the hood that would be implemented using a routine that signs a message string, but the contents of the message string would be under the program's control.

    That would also force us to think through the specific use-cases for which this feature is needed.

  6. JonnyLatte commented at 8:04 AM on September 7, 2011: none

    What if you created a temporary key, signed the message with that and then signed the signature or the address of the temp key with your main key. Would this be more secure?

  7. laanwj referenced this in commit f8be324ace on Sep 18, 2011
  8. devurandom cross-referenced this on Dec 1, 2011 from issue bitcoin-qt crashes in db on startup by devurandom
  9. laanwj closed this on Dec 3, 2011

  10. luke-jr cross-referenced this on Mar 25, 2012 from issue Startup blocks on mutex at "Loading Addresses" by luke-jr
  11. gavinandresen cross-referenced this on Apr 8, 2012 from issue addrMan crash on CentOS by gavinandresen
  12. luke-jr cross-referenced this on Apr 28, 2012 from issue Addrman crash by luke-jr
  13. rebroad cross-referenced this on May 2, 2012 from issue bitcoin-qt usually SEGVs when exited using unix signals by rebroad
  14. grarpamp cross-referenced this on Jun 16, 2012 from issue detachdb - coredump backtrace by grarpamp
  15. grarpamp cross-referenced this on Jun 22, 2012 from issue Boost exceptions in ReadConfigFile() not caught by grarpamp
  16. rebroad cross-referenced this on Mar 21, 2013 from issue ReserveKeyFromKeyPool(): read failed by rebroad
  17. dvdkhlng cross-referenced this on Mar 28, 2013 from issue Bitcoind aborts on startup: ./db/skiplist.h:152 Assertion `n >= 0' failed. by dvdkhlng
  18. wtogami cross-referenced this on May 27, 2013 from issue bitcoin-qt hangs during shutdown by wtogami
  19. sipa referenced this in commit 39db881543 on Jun 2, 2013
  20. nelisky referenced this in commit 1fd6e43976 on Aug 19, 2013
  21. justmoon referenced this in commit 3de48d4a52 on Apr 7, 2014
  22. justmoon referenced this in commit 6f47e4e9fc on Apr 7, 2014
  23. pstratem cross-referenced this on Jun 15, 2014 from issue libsecp256k1 integration by theuni
  24. rebroad cross-referenced this on Jun 25, 2014 from issue bitcoin-qt core dumping by rebroad
  25. rebroad cross-referenced this on Sep 11, 2014 from issue . by rebroad
  26. kac- referenced this in commit 35f0a4e2e9 on Oct 8, 2014
  27. rdponticelli referenced this in commit 78fb796997 on Nov 26, 2014
  28. eduffield222 cross-referenced this on Jan 23, 2015 from issue Code vulnerable to segfault after a network fork by eduffield222
  29. lecbee cross-referenced this on Feb 16, 2015 from issue core dumped when closing bitcoin-qt by lecbee
  30. rustyrussell cross-referenced this on Mar 26, 2015 from issue Add autoprune functionality by sdaftuar
  31. dexX7 referenced this in commit 3cbf3c37cb on Apr 9, 2015
  32. primezeta cross-referenced this on Jun 24, 2015 from issue Segmentation fault on bitcoind or bitcoin-qt startup (64bit Linux) by primezeta
  33. seigneur cross-referenced this on Jul 7, 2015 from issue After upgrading to 0.10.2 bitcoind hangs at Opened LevelDB successfully by seigneur
  34. TheBlueMatt cross-referenced this on Jul 9, 2015 from issue connection limit calculation for select() is overly ambitious with -txindex by TheBlueMatt
  35. braydonf referenced this in commit 45acaafb9e on May 12, 2016
  36. Celean cross-referenced this on Mar 8, 2017 from issue v0.14.0 shutdown hangs by Celean
  37. gmaxwell cross-referenced this on Mar 15, 2017 from issue Running out of disk space during GUI init results in hang and non-drawing windows by gmaxwell
  38. gmaxwell cross-referenced this on May 22, 2017 from issue Switch chainstate db and cache to per-txout model by sipa
  39. AkioNak referenced this in commit 74fd8c3c56 on Jul 24, 2017
  40. dooglus cross-referenced this on Aug 25, 2017 from issue gui, wallet: random abort (segmentation fault) running master/HEAD by dooglus
  41. MarcoFalke referenced this in commit fa79339ed4 on Sep 29, 2017
  42. MarcoFalke referenced this in commit 351fadd68a on Dec 19, 2017
  43. MarcoFalke referenced this in commit 88411e98e5 on Dec 19, 2017
  44. classesjack referenced this in commit b805940759 on Jan 2, 2018
  45. hkjn referenced this in commit 3aab98f8dc on Jan 13, 2018
  46. hkjn referenced this in commit 7e80175d2b on Feb 23, 2018
  47. KrzysiekJ referenced this in commit 42e2cef149 on Mar 28, 2018
  48. jc23424 referenced this in commit 0fead66ff5 on Jun 9, 2018
  49. effectsToCause referenced this in commit 652f0741d2 on Jun 22, 2018
  50. MarcoFalke referenced this in commit 4d550ffab6 on Jul 30, 2018
  51. Empact referenced this in commit 5bed076cd1 on Aug 1, 2018
  52. girishvg cross-referenced this on Aug 11, 2018 from issue tinyformat.h porting problem? by girishvg
  53. funasty1985 cross-referenced this on Aug 13, 2018 from issue bitcoind Segmentation fault (core dumped) by funasty1985
  54. ashishchandr70 cross-referenced this on Sep 13, 2018 from issue bitcoind aborts with boost exception in WSL guest by ashishchandr70
  55. Rspigler cross-referenced this on Oct 13, 2018 from issue Bus error (core dumped) crash on Fedora (txindex migration?) by Rspigler
  56. dooglus referenced this in commit 8cefe25b4e on Oct 20, 2018
  57. cryptapus referenced this in commit bf8e566103 on Jan 14, 2019
  58. farrilis cross-referenced this on Mar 29, 2019 from issue v0.18.0 testing by Sjors
  59. kayront cross-referenced this on Apr 18, 2019 from issue bitcoin core does not compile on Solaris by kayront
  60. stefanwouldgo cross-referenced this on Sep 23, 2019 from issue strange behavior on termux by stefanwouldgo
  61. DigiGreenCoin referenced this in commit a7fa7e6603 on Oct 29, 2019
  62. MarcoFalke referenced this in commit cf43f3f0a8 on Dec 5, 2019
  63. KolbyML referenced this in commit ae99d03c01 on Aug 1, 2020
  64. KolbyML referenced this in commit ea23911103 on Sep 4, 2020
  65. laanwj referenced this in commit 924a4ff7eb on Oct 29, 2020
  66. jonasschnelli referenced this in commit c33662a0ea on Dec 2, 2020
  67. KolbyML referenced this in commit 3d9f0283ff on Dec 5, 2020
  68. rajarshimaitra referenced this in commit 829697f1eb on Mar 23, 2021
  69. MarcoFalke referenced this in commit 590e49ccf2 on Apr 4, 2021
  70. rednil cross-referenced this on Apr 5, 2021 from issue wallet: Segmentation fault during sync by rednil
  71. MarcoFalke referenced this in commit fa00bb2c5c on Apr 20, 2021
  72. MarcoFalke referenced this in commit bce09da122 on Apr 28, 2021
  73. MarcoFalke referenced this in commit eb9a1fe037 on May 7, 2021
  74. laanwj referenced this in commit ee9befe8b4 on May 12, 2021
  75. MarcoFalke referenced this in commit c857148636 on May 15, 2021
  76. bitcoin locked this on Sep 8, 2021
  77. promag referenced this in commit 11df49c8de on Sep 28, 2021
  78. DrahtBot added the label CI failed on Apr 2, 2023
  79. DrahtBot removed the label CI failed on Apr 2, 2023
  80. DrahtBot added the label CI failed on Apr 2, 2023
  81. DrahtBot removed the label CI failed on Apr 3, 2023
  82. DrahtBot added the label CI failed on Apr 5, 2023
  83. MarcoFalke removed the label CI failed on Apr 5, 2023
  84. DrahtBot added the label CI failed on Apr 11, 2023
  85. MarcoFalke removed the label CI failed on Apr 11, 2023
Labels
Linked (view graph)
#340 bug introduced in 0.3.23, crash when no network interfaces up.#672 bitcoin-qt crashes in db on startup#737 Deadlock during startup (Appears to be AddAddress / DNSSeed related)#982 Startup blocks on mutex at "Loading Addresses"#999 v0.6.0rc5 segfault on initial blockchain download when out of diskspace#1065 addrMan crash on CentOS#1098 segfault in qrcode message dialog#1156 Addrman crash#1182 bitcoin-qt usually SEGVs when exited using unix signals#1472 detachdb - coredump backtrace#1505 Boost exceptions in ReadConfigFile() not caught#2397 ReserveKeyFromKeyPool(): read failed#2416 Bitcoind aborts on startup: ./db/skiplist.h:152 Assertion `n >= 0' failed.#2472 System error: database corrupted: void boost::recursive_mutex::lock(): Assertion `!pthread_mutex_lock(&m)' failed#2690 bitcoin-qt hangs during shutdown#4312 libsecp256k1 integration#4410 bitcoin-qt core dumping#4502 GetMyExternalIP hangs shutdown when waiting for response#4895 .#5330 cs_main lock not held when reindexing blocks on disk?#5633 core dumped when closing bitcoin-qt#5698 Code vulnerable to segfault after a network fork#5795 Bizarre test_bitcoin crash, but passes in debugger#5863 Add autoprune functionality#5910 Gitian 64-bit bitcoin-qt segfaults on Ubuntu 14.04#6332 Segmentation fault on bitcoind or bitcoin-qt startup (64bit Linux)#6386 After upgrading to 0.10.2 bitcoind hangs at Opened LevelDB successfully#6411 connection limit calculation for select() is overly ambitious with -txindex#6540 scheduler_tests (currently disabled) occasionally deadlocks#6775 Bitcoind v0.11.0 segfaults on startup trying to read wallet.#8984 GUI hangs during sync#9348 Node crashed with assertion failure in network code#9683 gui, wallet: random abort (segmentation fault) running master/HEAD#9687 bitcoin-qt crashed in FinalizeNode()#9759 Setting -maxsigcachesize to zero causes segfault#9881 v0.14.0rc2 crash on shutdown#9883 [Qt] Segfault on startup#9950 v0.14.0 shutdown hangs#9997 Running out of disk space during GUI init results in hang and non-drawing windows#10195 Switch chainstate db and cache to per-txout model#10209 Stalled shutdown#10210 Frozen (for 15 minutes) on shutdown [dnsseed thread]#10293 SEGV in segwit fundrawtransaction#10611 Gitian build (current master) crashes on OSX#10861 Segfault on shutdown after pressing 'q' to postpone utxo db upgrade#11355 LevelDB read failure: Corruption: block checksum mismatch#11763 deadlock on shutdown#12038 deadlock on database corruption#12229 Shutdown deadlock in SyncWithValidationInterfaceQueue#12279 shutdown took 8 minutes in v0.15.0.1#12690 LevelDB "corrupted compressed block contents" errors#12915 Segmentation fault in util: ScheduleBatchPriority#13316 make check fails for configure option --with-incompatible-bdb and Berkeley DB 5.3#13806 qa: Fix bench/block_assemble assert failure#13933 tinyformat.h porting problem?#13934 bitcoind Segmentation fault (core dumped)#14200 bitcoind aborts with boost exception in WSL guest#14330 [tests] segfault during`DEBUG=1` run of existing_data_no_obfuscate locally#14349 mac: make check failure on macOS 10.14#14359 bitcoin-qt hangs in futex() / __cxa_guard_acquire()#14466 Bus error (core dumped) crash on Fedora (txindex migration?)#14754 bitcoin-qt hangs on startup on Ubuntu 18.10/Debian Buster#14923 segmentation fault on gui startup#14967 TSAN issue in cuckoocache_erase_parallel_ok test after 14935#15227 bitcoind terminated with uncaught exception if configure --debug-enabled#15310 gui: crash if encrypt / change passphrase window is open and wallet is unloaded#15379 bitcoind crashes after exception in scheduler thread#15555 v0.18.0 testing#15674 Segmentation fault on Ubuntu Linux with trickle#15708 bitcoin core does not compile on Solaris#15819 macOS: crash while loading wallet with berkeley-db@4#16307 scheduler: crash after releasing wallet#16751 strange behavior on termux#16815 wallet: CPU use proportional to wallet transaction count when idle#16875 gui: Avoid calling processEvents#16904 Bus error (core dumped) after "Using obfuscation key for" log line#17540 ci build fails in ./qt/test/test_bitcoin-qt on aarch64 native tsan#17620 MemorySanitizer complains about unitialized variable in RPC method names#17627 Suppress false positive warning about uninitialized entropy buffers#17674 tests: Add initialization order fiasco detection in Travis#17729 Fuzzing Bug undefined-behavior pubkey.cpp:210:38#18046 Some fuzzing crashes when running under ASan and/or UBSan#18090 gui: Crash if shutdown during processNewTransaction#18362 gui: segfault unloading and immediately reloading wallet with gui#18372 sanitizer: heap-use-after-free in checkinputs_test#18706 crash briefly after launching binaries compiled using --without-gui and --with-incompatible-bdb#18762 fuzz: AddressSanitizer: SEGV on unknown address in /strprintf#18763 fuzz: AddressSanitizer: container-overflow in /script fuzzer#18913 ci: fuzz/process_message fails#18924 QT Crash when using open wallet dialog#18948 qt: Call setParent() in the parent's context#19024 UB: double lock of mutex in init.cpp#19049 test: Potential deadlock in wallet_tests/CreateWalletFromFile#19211 feature_reindex.py triggers data race#19417 Intermittent CI failure: ThreadSanitizer failure (data race) when running wallet_multiwallet.py --usecli#19448 qa: Data race detected when running `mempool_expiry.py`#19678 UBSan warning when fuzzing with -fsanitize=integer#19715 ThreadSanitizer: data race in feature_reindex.py#19789 fuzz: ASAN complaint on macOS with -fsanitize=fuzzer,address,undefined#19955 test: Potential deadlock in wallet_tests#20163 TSAN race after merge of #20090#20242 fuzz: Properly initialize PrecomputedTransactionData#20334 ci: fuzz/decode_tx fails#20542 Unexpected test fail: wallet/wallet.cpp:3113:51: runtime error: division by zero#20618 Data race in interface_zmq.py#21277 wallet: listdescriptors uses normalized descriptor form#21466 Avoid use of "socket" syscall when formatting IP addresses in CNetAddr::ToString#21479 fuzz: UndefinedBehaviorSanitizer warnings in netbase.cpp#21584 Fix assumeutxo crash due to invalid base_blockhash#21586 test: Add missing suppression for signed-integer-overflow:txmempool.cpp#21605 wallet: Segmentation fault during sync#21632 MemorySanitizer: use-of-uninitialized-value in sqlite3BtreeOpen#21773 fuzz: Ensure prevout is consensus-valid#21802 refactor: Avoid UB in util/asmap (advance a dereferenceable iterator outside its valid range)#21948 test: Fix off-by-one in mockscheduler test RPC#22233 fuzz: UndefinedBehaviorSanitizer warnings in consensus/tx_verify.cpp#22537 UndefinedBehaviorSanitizer: implicit-integer-sign-change consensus/tx_verify#22548 CheckQueue_Correct_Random data race#22588 Cirrus CI showed error in netaddress.cpp file when checking PR#22592 LeakSanitizer detects memory leak if CDBWrapper ctor fails#23160 test_bitcoin-qt error: "Unable to init server: Could not connect: Connection refused"#23248 Bitcoin Core crashes under clang-13 libc++ with "Bad system call (core dumped)"#23321 bitcoind segfault's while loading tr descriptor on regtest v22.0#24290 segfault when compiled with depends DEBUG=1 and libc++#24426 test: Fix intermittent Tsan issue#24819 data race in SimpleRoundTripTest logging for macOS#24897 [Draft / POC] Silent Payments#25077 Fix chain tip data race and corrupt rest response#25146 Starting with an unsupported wallet configured leads to a segfault (master only?)#25323 miniscript fuzzer failing after qa-assets update#25365 ThreadSanitizer: data race on vptr (ctor/dtor vs virtual call) in BaseIndex#25632 SUMMARY: ThreadSanitizer: SEGV src/index/base.cpp:388:9 in BaseIndex::SetBestBlockIndex(CBlockIndex const*)::$_1::operator()() const#25692 psbt.h:896:51: runtime error: unsigned integer overflow: 0 - 1 cannot be represented in type 'unsigned long'#25824 UndefinedBehaviorSanitizer: stack-overflow in miniscript (descriptor_parse)#25857 IBD core dumped during recursive call to CCoinsViewCache::FetchCoin (while connecting best chain tip)#26068 Segmentation fault in the scheduler thread when an index fails to commit to the db#26274 bitcoind dumps core when deriveaddresses is called with index 2147483647 (2^31-1)#26477 validation: fix broken maxtipage comparison#27222 test: use-of-uninitialized-value in sqlite3Strlen30#27354 wallet: Data race in GetOrCreateLegacyScriptPubKeyMan vs IsMine#27355 index: ThreadSanitizer: data race on vptr #27360 ci: use LLVM/clang-16 in native_asan job#27492 ci: failure in Docker build step#27582 TSAN: lock-order-inversion (potential deadlock) in ZapSelectTx test#27659 "Create Unsigned" should not show the message: "The amount exceeds you balance" without suggesting alternatives#27922 ci: fix llvm-symbolizer in MSAN jobs#27924 fuzz: banman, Assertion `banmap == banmap_read' failed#28510 migratewallet crashes on an freshly created datadir ( wallet/wallet.h:959: int wallet::CWallet::GetLastBlockHeight() const: Assertion `m_last_block_processed_height >= 0' failed.)#28570 fuzz: msan fuzz CI currently broken on x86_64#28665 'std::out_of_range' crash in I2P fuzz test#28882 fuzz: Delete wallet_notifications#28917 fuzz, parse_iso8601: attempt to dereference an end-of-stream istreambuf_iterator#28918 fuzz, coinselection: Assertion 'result_bnb->GetChange(coin_params.m_cost_of_change, CAmount{0}) == 0' failed#28966 test: Add missing CBlockPolicyEstimator::processBlockTx suppression#28969 fuzz: Avoid signed-integer-overflow in wallet_notifications fuzz target#29153 new crash in v26.0#29178 ubsan: misaligned-pointer-use in crc32c/src/crc32c_arm64.cc#29767 ThreadSanitizer: data race src/flatfile.cpp:47:13 in FlatFileSeq::Open(FlatFilePos const&, bool)#29908 test: SegFault in `ismine_tests` on SunOS / illumos#30284 Mini miner `AncestorFeerateComparator` Signed Integer Overflow#30402 Illegal Instruction in `CoinStatsIndex::CustomAppend`#31026 ci: set a ctest test timeout of 1200 (20 minutes)#31203 fuzz: fix `implicit-integer-sign-change` in wallet_create_transaction#31234 fuzz: connman target: terminate called after throwing an instance of 'std::bad_alloc'#32089 Failure to run Fuzz tests when running with corpus#32111 wallet: migratewallet crashes "Assertion `m_wallet_flags == 0' failed"#32112 wallet: migratewallet crashes "Assertion `legacy_spkm' failed"#32173 validation: `CheckBlockIndex` crashes during block reconsideration#32780 lsan: add more Qt suppressions#32957 SegFault in QSortFilterProxyModelPrivate::build_source_to_proxy_mapping#33063 util: Revert "common: Close non-std fds before exec in RunCommandJSON"#33097 fuzz: `txgraph`: Assertion `cmp == 0' failed#33150 intermittent TSAN failure in lockmanager_tests::blockmanager_readblock_hash_mismatch#33245 integer sanitizer warning, when running with -natpmp=1 enabled#33265 Zero output not cleared#33277 intermittent Segmentation fault in mptest IPC path (callFnAsyncParams)#33548 `test_bitcoin-qt`: segfault under LTO (CMAKE_INTERPROCEDURAL_OPTIMIZATION=ON)#33949 ubsan: add another suppression for InsecureRandomContext#33964 Startup crash on macOS with GCC 15.2: `std::source_location::file_name()` is `nullptr`#34014 mptest hangs, when run in a loop#34109 refactor: Use uint64_t over size_t for serialize corruption check in fees.dat#34110 scriptpubkeyman fuzz target creates Base58 too large; Fails on 32-bit (armhf, ...)#34645 oss-fuzz: coins_view_overlay: ASSERT: m_dirty_count == 0#34655 fuzz: keep `coins_view` fuzzers within caller contracts#34711 src/ipc/libmultiprocess/src/mp/proxy.cpp:416:44: runtime error: member access within null pointer of type 'mp::Waiter'#34732 i386 segv in #0 0xf7a49ce0 in kj::operator*(kj::_::Stringifier, kj::Exception const&) (/lib/i386-linux-gnu/libkj-1.1.0.so+0x38ce0)#34734 test: Fix shutdown vptr race in BlockFilterIndexSync bench#34756 ipc: AddressSanitizer: SEGV nptl/pthread_mutex_lock.c:80:23 in __pthread_mutex_lock#34777 ipc: AddressSanitizer: heap-use-after-free in `capnp::CallContext<ipc::capnp::messages::BlockTemplate::GetBlockParams, ipc::capnp::messages::BlockTemplate::GetBlockResults>::getParams()`#34782 mptest: mp::CancelMonitor: AddressSanitizer: stack-use-after-return#35207 tx_package_eval: Timeout in tx_package_eval#35293 kernel: btck_chainstate_manager_get_best_entry returns null after SetWipeDbs(true, true), accessors then SEGV

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-05-20 06:56 UTC