Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

JSON-RPC support for mobile devices ("ultra-lightweight" clients) #1

Closed
gavinandresen opened this issue Dec 19, 2010 · 3 comments
Closed
Labels

Comments

@gavinandresen
Copy link
Contributor

The idea is to enable mobile or other not-always-connected-to-the-network clients, where the wallet is kept (encrypted, probably) on the mobile device, and the device periodically communicates with a bitcoin-network-connected node to:

  • Update balance for keys in its wallet
  • Submit signed transactions to the network
@rasos
Copy link

rasos commented Feb 7, 2011

Yes, very important. If we enable mobile devices, pocket wallets will be soon obsolete ;-) GUI for smart-phones should include some QR reader, such as portapayment.com

@thiloplanz
Copy link

"Submit signed transactions to the network"

I want that as well, for Google App Engine, where you cannot participate in the regular peer-to-peer protocol, because you cannot open sockets. Having something like an XMPP proxy that pushes signed transactions into the peer network would be cool. Maybe the existing IRC channel can also be used for that.

mhanne pushed a commit to mhanne/bitcoin that referenced this issue Jul 20, 2011
@Stemby
Copy link

Stemby commented Sep 15, 2011

I offer 1 BTC bounty.

Regards,
Carlo

@luke-jr luke-jr mentioned this issue Apr 28, 2012
@luke-jr luke-jr mentioned this issue Dec 20, 2012
nining pushed a commit to nining/bitcoin that referenced this issue Jan 3, 2018
Merge Bitcoin Core branch "0.15"
nining pushed a commit to nining/bitcoin that referenced this issue Jan 3, 2018
nining pushed a commit to nining/bitcoin that referenced this issue Jan 3, 2018
DaElf referenced this issue in DaElf/bitcoin Jan 10, 2018
…BitcoinMiner().

This fixes an assertion failure crash when starting ppcoin-qt. The assertion
failure is caused by a static call to the _() function. The issue is fixed by
making strMintMessage a non-static local variable inside BitcoinMiner().

Assertion failure message (from Sunny):

ppcoin-qt: /usr/include/boost/smart_ptr/shared_ptr.hpp:412: boost::shared_ptr<T>::reference boost::shared_ptr<T>::operator*() const [ with T = <snip> ]: Assertion `px != 0' failed.

Backtrace of the crash:

 #0  0x0000003565435309 in raise () from /lib64/libc.so.6
 #1  0x0000003565436668 in abort () from /lib64/libc.so.6
 bitcoin#2  0x000000356542e476 in __assert_fail_base () from /lib64/libc.so.6
 bitcoin#3  0x000000356542e522 in __assert_fail () from /lib64/libc.so.6
 bitcoin#4  0x0000000000475dbe in operator* (this=<optimized out>) at /usr/include/boost/smart_ptr/shared_ptr.hpp:646
 bitcoin#5  operator() (arg1=0x649fd8 "Info: Minting suspended due to locked wallet.", this=<optimized out>) at /usr/include/boost/signals2/detail/signal_template.hpp:695
 bitcoin#6  _ (psz=psz@entry=0x649fd8 "Info: Minting suspended due to locked wallet.") at src/ui_interface.h:106
 bitcoin#7  0x000000000049f5f7 in __static_initialization_and_destruction_0 (__initialize_p=__initialize_p@entry=1, __priority=__priority@entry=65535) at src/main.cpp:3345
 bitcoin#8  0x00000000004af11a in _GLOBAL__sub_I_cs_setpwalletRegistered () at src/main.cpp:5303
 bitcoin#9  0x0000000000620d0d in __libc_csu_init ()
 bitcoin#10 0x0000003565421aa5 in __libc_start_main () from /lib64/libc.so.6
 bitcoin#11 0x000000000042b9f8 in _start ()
HashUnlimited referenced this issue in chaincoin/chaincoin Mar 9, 2018
c521b3a Merge #11: fixup define checks. Cleans up some oopses from #5.
8b1cd37 fixup define checks. Cleans up some oopses from #5.
6b1508d Merge #6: Fixes typo
fceb805 Merge #10: Clean up compile-time warnings (gcc 7.1)
0ec2a34 Clean up compile-time warnings (gcc 7.1)
d4c268a Merge #5: Move helper functions out of sse4.2 object
8d4eb08 Add HasAcceleratedCRC32C to port_win.h
77cfbfd25 crc32: move helper functions out of port_posix_sse.cc
4c1e9e0 silence compiler warnings about uninitialized variables
4953164 Merge #2: Prefer std::atomic over MemoryBarrier
2953978 Fixes typo
f134284 Merge #1: Merge upstream LevelDB 1.20
ba8a445 Prefer std::atomic over MemoryBarrier

git-subtree-dir: src/leveldb
git-subtree-split: c521b3a
fruit37 added a commit to fruit37/bitcoin that referenced this issue Jul 1, 2018
maflcko pushed a commit that referenced this issue Jul 30, 2018
6f53edb Acquire cs_main before ATMP call in block_assemble bench (James O'Beirne)

Pull request description:

  Calling `bench_bitcoin` currently fails due to calling ATMP without acquiring cs_main first in the recently added block_assemble bench (#13219).

  ```
  $ cat <(uname -a) <(gcc --version)

  Linux james 4.4.0-119-generic #143+jamesob SMP Mon Apr 16 21:47:24 EDT 2018 x86_64 x86_64 x86_64 GNU/Linux
  gcc (Ubuntu 5.4.0-6ubuntu1~16.04.9) 5.4.0 20160609

  $ ./src/bench/bench_bitcoin

  WARNING: This is a debug build - may result in slower benchmarks.
  # Benchmark, evals, iterations, total, min, max, median
  Assertion failed: lock cs_main not held in validation.cpp:566; locks held:
  [1]    19323 abort (core dumped)  ./src/bench/bench_bitcoin
  ```

  ```
  (gdb) bt
  #0  0x00007fbdc9cf5428 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54
  #1  0x00007fbdc9cf702a in __GI_abort () at abort.c:89
  #2  0x0000555a19580dc5 in AssertLockHeldInternal (pszName=pszName@entry=0x555a19834549 "cs_main",
      pszFile=pszFile@entry=0x555a1988a001 "validation.cpp", nLine=nLine@entry=566, cs=cs@entry=0x555a19ba55c0 <cs_main>) at sync.cpp:157
  #3  0x0000555a194b395f in AcceptToMemoryPoolWorker (chainparams=..., pool=..., state=...,
      ptx=std::shared_ptr (count 1, weak 0) 0x555a1bb819b0, pfMissingInputs=pfMissingInputs@entry=0x0, nAcceptTime=1532964079,
      plTxnReplaced=0x0, bypass_limits=false, nAbsurdFee=@0x7ffcbc1719d8: 0, coins_to_uncache=std::vector of length 0, capacity 0,
      test_accept=false) at validation.cpp:566
  #4  0x0000555a194ba661 in AcceptToMemoryPoolWithTime (chainparams=..., pool=..., state=...,
      tx=std::shared_ptr (count 1, weak 0) 0x555a1bb819b0, pfMissingInputs=pfMissingInputs@entry=0x0, nAcceptTime=<optimized out>,
      plTxnReplaced=0x0, bypass_limits=false, nAbsurdFee=0, test_accept=false) at validation.cpp:998
  #5  0x0000555a194ba7ce in AcceptToMemoryPool (pool=..., state=..., tx=std::shared_ptr (count 1, weak 0) 0x555a1bb819b0,
      pfMissingInputs=pfMissingInputs@entry=0x0, plTxnReplaced=plTxnReplaced@entry=0x0, bypass_limits=bypass_limits@entry=false, nAbsurdFee=0,
      test_accept=false) at validation.cpp:1014
  #6  0x0000555a19363fbe in AssembleBlock (state=...) at bench/block_assemble.cpp:102
  #7  0x0000555a193654d3 in std::_Function_handler<void (benchmark::State&), void (*)(benchmark::State&)>::_M_invoke(std::_Any_data const&, benchmark::State&) (__functor=..., __args#0=...) at /usr/include/c++/5/functional:1871
  #8  0x0000555a193501d7 in std::function<void (benchmark::State&)>::operator()(benchmark::State&) const (this=this@entry=0x555a1ba2cda0,
      __args#0=...) at /usr/include/c++/5/functional:2267
  #9  0x0000555a1934ec4c in benchmark::BenchRunner::RunAll (printer=..., num_evals=5, scaling=<optimized out>, filter=..., is_list_only=false)
      at bench/bench.cpp:121
  #10 0x0000555a1934ade9 in main (argc=<optimized out>, argv=<optimized out>) at bench/bench_bitcoin.cpp:92
  ```

Tree-SHA512: fdd7b28ff123ccea7a4f334d53f735d0c0f94aa9cc52520c2dd34dca45d78c691af64efcd32366fc472fedffbd79591d2be2bb3bfc4a5186e8712b6b452d64e3
hashtobewild referenced this issue in genesisofficial/genesis Aug 26, 2018
laanwj added a commit that referenced this issue Sep 17, 2018
…eprecated zeromq api functions

f1bd03e [depends, zmq, doc] upgrade zeromq to 4.2.5 and avoid deprecated zeromq api functions (mruddy)

Pull request description:

  Upgrade the ZeroMQ dependency from version 4.2.3 to the latest stable version 4.2.5.

  This PR Follows the lead of #11986.

  I upgraded both patch files to correspond to the version `4.2.5` libzmq files.
  I assume doing so is still necessary and correct.

  Without updating the patch line numbers, things appear to work, but you get extra log messages while building `depends` because things don't exactly match, e.g.:
  ```
  /bitcoin/depends> make zeromq
  Extracting zeromq...
  /bitcoin/depends/sources/zeromq-4.2.5.tar.gz: OK
  Preprocessing zeromq...
  patching file src/windows.hpp
  Hunk #1 succeeded at 58 (offset 3 lines).
  patching file src/thread.cpp
  Hunk #1 succeeded at 307 with fuzz 2 (offset 87 lines).
  Hunk #2 succeeded at 323 with fuzz 2 (offset 90 lines).
  ```
  Updating the patches seemed cleaner, so I did it. Note that libzmq had some whitespace changes, so that's why the updated patches do too.

  More info: https://github.com/zeromq/libzmq/releases/tag/v4.2.5

  tags: libzmq, zmq, 0mq

Tree-SHA512: 78659dd276b5311e40634b1bbebb802ddd6b69662ba3c84995ef1e3795c49a78b1635112c7fd72a405ea36e2cc3bdeb84e6d00d4e491a349bba1dafff50e2fa5
dooglus pushed a commit to dooglus/bitcoin that referenced this issue Oct 19, 2018
@bitcoin bitcoin locked and limited conversation to collaborators Jan 27, 2019
stplaydog added a commit to triasteam/bitcoin that referenced this issue Jun 25, 2019
maflcko pushed a commit that referenced this issue Nov 18, 2020
…::Decrypt

4146a31 qt, wallet: Drop unused parameter in WalletModel::setWalletEncrypted (Hennadii Stepanov)
f886a20 qt, wallet: Drop unused parameter in Wallet{Frame|View}::encryptWallet (Hennadii Stepanov)
6e95011 qt, wallet: Remove unused AskPassphraseDialog::Decrypt (Hennadii Stepanov)

Pull request description:

  Grabbed from #42 with an additional commit.

  Fix #1.

ACKs for top commit:
  MarcoFalke:
    ACK 4146a31
  promag:
    Code review ACK 4146a31.

Tree-SHA512: 6070d8995525af826ad972cf1b8988ff98af0528eef285a07ec7ba0e2e92a7a6173a19dc371de94d4b437fa10f7921166e45a081de6ed2f4306e6502aafc94ee
@maflcko maflcko removed the CI failed label Apr 5, 2023
@maflcko maflcko removed the CI failed label Apr 11, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

6 participants