texts: How to decrypt Bitcoin private key that is encrypted with PKBDF2-SHA256 and iterations and salt

texts:
I have exported wallet with encrypted keys and that wallet provider is closed. Is there a way to decrypt priv that is encrypted with PKBDF2-SHA256, iterations and salt. I think I remember the password I have used to encrypt the wallet.
The wallet provider is coinprism. The back-up is in the following format (JSON file)
{
  "keys": [
    {
      "addr": "<BTC_address>",
      "priv": "<97 length encrypted private key>",
      "encryptionMode": "PKBDF2-SHA256",
      "iterations": 2000
    }
  ],
  "salt": "<salt>"
}


texts: I had bitcoin in my blockchain.info wallet when the hard fork happened but I transferred it since to gemini exchange can i still get bch.


texts: If there a formula to decide when more decimal places will be added to Bitcoin?

texts:
I know it is possible to allow for more than 8 decimal places in Bitcoin. We all hope that Bitcoin will become extremely valuable one day and increments smaller than 0.00000001 BTC will be helpful.

Has the decision of when this will occur already codified? Is there any reason why it cannot be decided now a long time before it matters?

It would be nice to solve a potentially important issue like this now in code instead of one day needing to debate the issue after it becomes contentious (like the blocksize today).


texts: Is there a multi Sig Explorer or Stats provider?

texts: Is there a resource where I can get the past and current number of multi sig transactions, all types?


texts: I'm having trouble understanding HD wallet privacy... for one thing, what if I want to send more money than I have in any of my individual derived addresses? Then I would have to use more than one, right? Which would compromise privacy, because it would show that at least two of my addresses are connected, exposing information about me, right? Like if I get money from A and money from B, then when I send C a payment she would know I was involved with both A and B. Can someone explain me exactly how much privacy HD wallets give compared to using the same address for everything?


texts: ASIC resistant PoW mechanism that generates new hash functions. How does that work?

texts:
From Vitalik Buterin's post regarding "On Mining", he mentions:

  The second approach is somewhat different: create a mechanism for
  generating new hash functions, and make the space of functions that it
  generates so large that the kind of computer best suited to processing
  them is by definition completely generalized, ie. a CPU. This approach
  gets close to being “provably ASIC resistant” and thus more
  future-proof, rather than focusing on specific aspects like memory...

My question is how would such a mechanism work and how might it be implemented or realized?

What's unclear to me is how can you have a PoW mechanism that's able to just create new never-before-seen hash functions on its own and somehow have all the nodes on the network derive this hashing algorithm in an independent, trustless manner? A second major concern is how can you be sure that this derived algorithm is even cryptographically secure?

Note, I found a similar question here. But there is a crucial difference: that question is in regards to picking from a finite set of predefined cryptographically vetted hash functions and changing their call orders dynamically. The method Vitalik is suggesting, the mechanism is deriving a new hash function that never existed before and using that as the PoW function for a given block at that point in time.


texts: How To Solo Mine Bitcoin With a Full Node?

texts:
I have a full node running bitcoind, and I am wondering how to solo mine using BFGMiner, CGminer or similar software.
since my reputation does not allow me to post my answer to another question... I want to add my answer here to help other people in my situation.
FROM THE BFGMINER README...
SOLO MINING
BFGMiner supports solo mining with any GBT-compatible bitcoin node (such as
bitcoind). To use this mode, you need to specify the URL of your bitcoind node
using the usual pool options (--url, --userpass, etc), and the --generate-to
option to specify the Bitcoin address you wish to receive the block rewards
mined. When you run Bitcoin Core on the same computer as your miner, the pool
itself will be automatically configured for you (on the default goal). Please be
aware that solo mining via GBT is at this time only supported for Bitcoin.
IMPORTANT: If you are solo mining with more than one instance of BFGMiner (or
any other software) per payout address, you must also specify data using the
--coinbase-sig option to ensure each miner is working on unique work. Note
that this data will be publicly seen if your miner finds a block using any
GBT-enabled pool, even when not solo mining (such as failover).
If your bitcoin node does not support longpolling (for example, bitcoind 0.8.x),
you should consider setting up a failover pool to provide you with block
notifications. Note that solo mining does not use shares, so BFGMiner's adjusted
hashrate (third column) may suddenly drop to zero if a block you submit is
rejected; this does not indicate that it has stopped mining.
Example solo mining usage:
bfgminer -o http://localhost:8332 -u username -p password
--generate-to 1QATWksNFGeUJCWBrN4g6hGM178Lovm7Wh
--coinbase-sig "rig1: This is Joe's block!"
If you want to solo mine on multiple GBT-compatible Bitcoin blockchains, you can
specify --generate-to multiple times with a goal name prefix followed by a
colon. Note that at this time, the coinbase sig is always shared across all
goals/pools.
Example multi-blockchain solo mining usage:
bfgminer -o http://localhost:8332 -u username -p password
--generate-to 1QATWksNFGeUJCWBrN4g6hGM178Lovm7Wh
-o http://localhost:7221 -u user2 -p password --pool-goal mychain
--generate-to mychain:1QATWksNFGeUJCWBrN4g6hGM178Lovm7Wh
--coinbase-sig "rig1: This is Joe's block!"


texts: Arbitrary access to already confirmed transactions

texts:
This link mentions that

"[getdata] can be used to retrieve transactions, but only if they are in the memory pool or relay set - arbitrary access to transactions in the chain is not allowed..."

But can't an SPV node do the following to have the arbitrary access to a transaction T (I am assuming that the SPV node knows the block hash H of the block B containing T):

set a bloom filter using filterload for T at some full node
send getdata request with type MSG_FILTERED_BLOCK and block hash H
then in response, the full node will generate two messages for the SPV node: first, a merkleblock of B; and second, the transaction T (as mentioned here and here)

Doesn't this mechanism actually gives arbitrary access to transactions?


texts: PBFT algorithm - how do we know how many nodes are faulty?

texts:
I am reading this article about PBFT and I have trouble understanding how it can be used in practice. If we don't how many nodes are faulty (which I believe is a valid assumption), then how can we calculate the number of rounds during which processes send messages to each other?

The linked article shows an example with n = 7 and m = 2 and in that example two rounds of messaging are executed and then the output values are calculated. But how can we know that m = 2 in the first place? Can the algorithm itself figure it out during execution?


texts: Unable to find peers when connecting through tor proxy

texts:
I have tor running as a service on my computer and start bitcoind with -proxy=127.0.0.1:9050 but it fails to find any seeds through DNS or anything during startup, and even after leaving it on for more than a day it still not finding peers. I'm not getting any errors with connection or anything, and if I change port to for example 9051, it complains indicating that tor is running ok.
Also, if I run it without the proxy option I get peers immediately and syncing starts right away. Can someone please help me? I'm running 0.17.1.

Here is also a little bit of the console print during startup. I was running it without proxy right before this so it got a few blocks:

2019-03-12T00:45:31Z Loaded 8954 addresses from peers.dat  23ms
2019-03-12T00:45:31Z init message: Loading banlist...
2019-03-12T00:45:31Z init message: Starting network threads...
2019-03-12T00:45:31Z addcon thread start
2019-03-12T00:45:31Z init message: Done loading
2019-03-12T00:45:31Z net thread start
2019-03-12T00:45:31Z opencon thread start
2019-03-12T00:45:31Z dnsseed thread start
2019-03-12T00:45:31Z msghand thread start
2019-03-12T00:45:42Z Loading addresses from DNS seeds (could take a while)
2019-03-12T00:45:42Z 0 addresses found from DNS seeds
2019-03-12T00:45:42Z dnsseed thread exit
2019-03-12T00:46:02Z Syncing txindex with block chain from height 13187


texts: I sent litecoin to my bitcoin address, on my nano ledger

texts:
So I am very new to cryptocurrencies and have already made my first mistake.

I used shapeshift.io to transfer bitcoin to litecoin, and entered a bitcoin address as the recipient to receive the litecoin. This bitcoin address is on my nano ledger s.

Is there a way to somehow fix this? The only things close to answers I have found are the reddit thread: https://www.reddit.com/r/Bitcoin/comments/6sfnl2/segwit_has_been_locked_in_congratulations_everyone/dleu77d/

and this stack exchange question
What happens if you send Bitcoin to a Litecoin address?

However I am not sure if these will apply to me.

I am feeling very stupid, and any help would be much appreciated!


texts: Why does my wallet say that I have 0.00BTC and 8.91 unconfirmed, when I had done nothing with them?

texts: Here is my BTC wallet page. Is it normal that I have 0.00 ?


texts: What is the minimum hash rate power should I have to get rewarded in btc.com?

texts: I just want to know how much minimum hash rate power should someone have to receive reward in btc.com or other pools?


texts: Do I really have to place my wallet file in the data directory?

texts:
I run bitcoin-core QT and I downloaded the full ledger data to an external HD so I can move between machines. My wallet.dat file is secured someplace else.
I start-up the QT client giving the external hard disk as the data root.
So after I put my real wallet.dat file in the data directory (and restart the client with -rescan):
Do I really have to keep it in the directory where the ledger data is saved? Is that safe?


texts: What is Mastercoin? What is its raison d'être? Have there been any real world examples of its use?


texts: Error compiling litecoin clone, boost error

texts:
I am trying to clone litecoin for practice and for some reason this time around my build system isn't working right.

Here is the error I am having after trying to compile my clone AND litecoin 8.7.4 source

bitcoinrpc.cpp:984:52:   required from here
/usr/include/boost/thread/once.hpp:38:18: error: no matching function for     call to ‘call_once(boost::once_flag&, void (*&)())’
     call_once(flag,func);
              ^
In file included from /usr/include/boost/thread/once.hpp:20:0,
             from /usr/include/boost/thread.hpp:17,
             from util.h:24,
             from bignum.h:12,
             from main.h:8,
             from wallet.h:13,
             from init.h:8,
             from bitcoinrpc.cpp:6:
/usr/include/boost/thread/pthread/once_atomic.hpp:121:15: note: candidate: template<class Function, class ... ArgTypes> void boost::call_once(boost::once_flag&, boost::detail::thread_move_t<T>, boost::detail::thread_move_t<Args>...)
   inline void call_once(once_flag& flag, BOOST_THREAD_RV_REF(Function) f, BOOST_THREAD_RV_REF(ArgTypes)... args)
           ^
/usr/include/boost/thread/pthread/once_atomic.hpp:121:15: note:   template argument deduction/substitution failed:
In file included from /usr/include/boost/thread.hpp:17:0,
             from util.h:24,
             from bignum.h:12,
             from main.h:8,
             from wallet.h:13,
             from init.h:8,
             from bitcoinrpc.cpp:6:
/usr/include/boost/thread/once.hpp:38:18: note:   mismatched types ‘boost::detail::thread_move_t<T>’ and ‘void (*)()’
     call_once(flag,func);
              ^
/usr/include/boost/thread/once.hpp:35:13: note: candidate: template<class         Function> void boost::call_once(Function, boost::once_flag&)
inline void call_once(Function func,once_flag& flag)
         ^
/usr/include/boost/thread/once.hpp:35:13: note:   template argument deduction/substitution failed:
/usr/include/boost/thread/once.hpp:38:18: note:   cannot convert ‘func’   (type ‘void (*)()’) to type ‘boost::once_flag&’
     call_once(flag,func);
              ^
make: *** [obj/bitcoinrpc.o] Error 1

Could someone please let me know what this is? I tried an issue and change a line in rpcrawtransaction.cpp

<const CScriptID &>

to

<CScriptID>

and also tried code snippet from feathercoin, both unsuccussful.

Would be greatly appreciated if someone could help get my system buildable again.


texts:
How can a block withholding attack be performed, what would be its purpose and who is it a danger to?

Edit: when I posted this I was thinking about withholding a block you mined in a pool. But withholding blocks can form the basis for many different attacks. I think this is still useful as a broad question. It is a central concept in bitcoin security.


texts: I recently had an unconfirmed transaction on my btc qt wallet. I am upgrading my btc qt now and it is syncing. In the meantime I imported my keys from all my receiving addresses to a software wallet. I am still short my whole balance. Can someone explain this to me? Btc qt had X-an unconfirmed transaction. Now I have about X+half my unconfirmed transaction. Any suggestions?


texts: Delay of shipping mining equipment on purpose?

texts:
Is the delay in shipping mining equipment on purpose?
Couldnt the manufacturer mine with the new hardware and deliver it in a few month, as said to be a production problem, but mining itself until the difficult level is too high, all on purpose, and then getting rid of the hardware? Its perfect, altough morally really weak, to mine with the equipment others pay for.


texts: Which wallet applications implement BIP38 - Private Key password encryption

texts: I just learned about bip38 as it has to do with bitcoin private key encryption by putting a password to the key on the QR code. My question is which wallet apps support this decryption feature?


texts:
Have any observations been made to conclude the accuracy of Bitcoin network time?

It would be interesting to know if NIST or any other authority has tracked the phenomenon.


texts:
Since the early days of cryptocurrencies, we have seen attempts to utilize ASIC-resistant mining puzzles. The idea behind that was to keep rich influential custom-hardware manufacturers out of game and make mining viable on commodity hardware. But as it turnd out lately, all such current attempts are doomed to fail. And the actual higher difficulty of producing ASICs for ASIC-resistant puzzles brings even more corruption and controversy.

It feels like there's no point in trying to come up with some memory hardness anymore. There will always be one company willing to spend $200M on custom hardware, because in the end it does not really matter whether it's 10x or 100000x more effective. It's frankly not possible to stay competetive against it. Wasn't it better if all currencies just utilized Blake2, or dSHA256 right now? How did we even arrive in this situation? Did nobody anticipate it to happen if the Market-cap raises this significantly? Are there any new ideas or Mining-puzzles being provably nonASICable, e. g. some memory-superhardness or whatever, or is the era of evading ASICs over?


texts: What exaclty does owning cryptocurrency mean?

texts: Assuming owning mean individual custody of valuable asset, does owning cryptocurrency mean owning the tokens/coins? Does it mean owning a private key and owning a record in the "public ledger" and owning the software code associated with the particular cryptocurrency?


texts: In the spec for the ledger format, there's a flag called "lsfDisallowXRP" in the account root entry. It says: "Indicates that this account does not want to receive XRP." But why wouldn't an account want to receive XRP, given that it's necessary for doing any transactions?


texts: How to determine the remaining Bitcoin Cash after the hardfork?

texts:
This is some thought I had in mind for sometime which I couldn't come up with a proper explanation. Please excuse me if this is a stupid question.

I have read the following on few articles on the internet,

That Bitcoin Cash (BCH) has the same amount of limit like bitcoin (BTC), which is 21 million
When the Bitcoin Cash hard fork happened, people who owned Bitcoin by the date of hard fork, continued to own the same amount of Bitcoin Cash

My Questions are?

Is it correct that Bitcoin Cash has already been mined the same amount that Bitcoin had been mined by 1st of August 2017, so the remaining Bitcoin Cash amount was equal to the remaining amount of Bitcoin at that point?
Did it create new transaction id s for Bitcoin Cash in the Bitcoin Cash block chain? OR did it duplicate the same transaction ids on the bitcoin cash block chain?
Can the people owned bitcoin at the point of hard fork exchange their bitcoin cash to bitcoin and vise versa? which I doubt has a clash with the bitcoin limit and mining

OR is my understanding wrong? Please clarify?


texts: Specify which CPU threads are used using cpuminer

texts: I'm using the latest version of cpuminer on a quad core cpu. How can I tell it which physical cores to use, 2 threads uses 1 and 2 but I want it to use 3 and 4 instead as I have other things using core 1 and 2 which are not optimised for more than 1 cpu core.


texts: What is Bitcoin's locktime feature exactly? How can it be used?

texts:
What is Bitcoin's locktime feature and what are some example use cases?

And how can a user make use of this new feature? Is it in any gui wallet? And how would one use it in the command line if its the only option?


texts:
I have successfully installed and synced my lightning node (Raspiblitz). I see my public ip on port 8333 has 8 conns.
However, when I check my node on 1ml.com my node is not found.
I did forward port 8333 and 9735 on my router.

Should I connect to a peer or create a channel before my node is visible for the outside?


texts: Where can I find a full list of all Bitcoin mining hardware ever used?

texts:
I want to know where I can find a full list of Bitcoin mining hardware. I don't want a list of the most profitable hardware, I just want a list with the greatest number of Bitcoin miners (don't care if it mine at low hashes p/ second or is very old).

The objective is to include this list in a tutorial where I explain mining to newbies and where I can show the viewers a "complete list of Bitcoin mining history".

Have some ideas about that?


texts: Is it possible to track stolen Bitcoin after exchange

texts:
I don't know if someone can help me but I found out someone has stolen several times some crypto of me, mostly bitcoins. He had access to my computer and my phone to do the Google Authenticator because he is my IT guy.
I know who it is and everything is on police investigation but they can not do much on it at this moment.
So I would like to know if there is a possibility to track my Bitcoin transfers after they have been exchanged to another crypto.
When I look on the blockchain we just see 1 transfer and after this no trace anymore.
We already know he exchanged some Bitcoins to Ethereum, but how can we track or trace this exchange?
Is there a possibility to know which Crypto Wallet Company received my stolen Bitcoins?
Thanks for your help.


texts:
BIP65 has several examples where OP_CHECKLOCKTIMEVERIFY interprets the time value underneath it in the stack, for example:

<expiry time> CHECKLOCKTIMEVERIFY DROP DUP HASH160 <pubKeyHash> EQUALVERIFY CHECKSIG

How is the time value encoded in this script? It's a CScriptNum object, but I'm unsure if that equates to little endian bytes


texts: I do realize that in the early stages bitcoin has to download a lot (How long does it take to download the blockchain?), however, I assume this is like wget or rsync where it displays the progress. Right now, when I issue the command bitcoind, it just hangs and outputs nothing. Could this be due to closed ports? Is it sufficient that I opened ports on my Ubuntu router, or must I forward those ports? Alternatively, is there a command line parameter I have to issue to get the output of bitcoind?


texts: Sign a tx with "low s" value using OpenSSL

texts:
I currently try to sign a tx using OpenSSL. After some tinkering I think I got most of the tx right but Electrum complains with mandatory-script-verify-flag-failed (Non-canonical signature: S value is unnecessarily high) which is probably because of BIP62.

Is there a way to create proper signatures with OpenSSL except trying and hoping to get a small s value?

The rest of my code is in Golang and I couldn't find a proper packages for the used ECDSA curve and so wrapped around OpenSSL.


texts: Is Bitcoin a decentralized time-stamping authority?

texts: Can Bitcoin/blockchain be thought of as a decentralized time-stamping authority (TSA)? Is there true consensus in the Bitcoin network on a mined block's time, or just that the block was mined?


texts: How to segregate wallet from bitcoin core | Run multiple wallets in different servers on one centralized bitcoin node

texts: I am running bitcoin full node in a centralized server. I have many web applications running in various places. I want to connect this web applications with centralized full bitcoin node. How to install wallet in these web application server which will be connected to one centralized bitcoin full node. I want to generate address, make transactions and sign transaction independently in these web application server using wallet and send it to the application server. Application server need to communicate with wallet using rest apis. Finally this singed transaction should send to centralized bitcoin full node. How to do this?


texts: Is it possible to attain information regarding individual bitcoin wallets (including the ones of the miners)?

texts:
If yes, how can I do it?

(The information in concern is such as the transaction which the wallets involved in.)


texts: How can I be sure that anyone (i.e miner) will not change outputs from transaction?

texts:
I am wondering if ie. miner cannot change outputs from transaction. We have example of transaction:
      {
"version": 1,
"locktime": 0,
"vin": [
{
"txid":
"7957a35fe64f80d234d76d83a2a8f1a0d8149a41d81de548f0a65a8a999f6f18",
"vout": 0,
"scriptSig" :
"3045022100884d142d86652a3f47ba4746ec719bbfbd040a570b1deccbb6498c75c4ae24cb02204
b9f039ff08df09cbe9f6addac960298cad530a863ea8f53982c09db8f6e3813[ALL]
0484ecc0d46f1918b30928fa0e4ed99f16a0fb4fde0735e7ade8416ab9fe423cc5412336376789d1
72787ec3457eee41c04f4938de5cc17b4a10fa336a8d752adf",
"sequence": 4294967295
}
],
"vout": [
{
"value": 0.01500000,
"scriptPubKey": "OP_DUP OP_HASH160
ab68025513c3dbd2f7b92a94e0581f5d50f654e7 OP_EQUALVERIFY OP_CHECKSIG"
},
{
"value": 0.08450000,
"scriptPubKey": "OP_DUP OP_HASH160
7f9b1a7fb68d60c536c2fd8aeaa53a8f3cc025a8 OP_EQUALVERIFY OP_CHECKSIG",
}
]
}

I signed UTXO from txr 7957a35fe64f80d234d76d83a2a8f1a0d8149a41d81de548f0a65a8a999f6f18 by my private key. I put this signature to scriptSig and added my targets addresses to vout and send transaction to bitcoin network. How can I be sure that anyone can't change vout values? Maybe I am wrong and my scriptSig includes additional data from transaction. How this scriptSig is created?


texts: If anyone can mine how does inflation not occur?

texts: If you can mine money whenever you want how does the price of every bitcoin not diminish?


texts:
Is it safe to use HD Key Derivation with bip-schnorr? The bip mentions that you should not throw away the first byte of a generated key.

  It is important to not mix up the 32-byte bip-schnorr public key format and other existing public key formats (e.g. encodings used in Bitcoin's ECDSA). Concretely, a verifier should only accept 32-byte public keys and not, for example, convert a 33-byte public key by throwing away the first byte.

Later in the bip, it mentions that you should do this when doing HD key derivation.

Link: https://github.com/sipa/bips/blob/bip-schnorr/bip-schnorr.mediawiki#public-key-generation

  Alternatively, the public key can be created according to BIP32 which describes the derivation of 33-byte compressed public keys. In order to translate such public keys into bip-schnorr compatible keys, the first byte must be dropped.

It sounds like its safe for the prover to drop the extra byte but not the verifier. Is this correct?


texts: Web Wallet Creation with PHP and bitcoind

texts:
How would one start creating a web wallet?  What I have so far:

Generate an address per user of the wallet using bitcoind

How can I secure the private key?

Tell user deposit address using bitcoind and php
Get balance of address after a deposit using more php? (what RPC call must I use?)
Here's where I am stuck - How can I allow the user to send to somewhere else?

Thank you


texts: Is it possible to create a Dapp on top of Bitcoin?

texts: Is it possible to create a dapp on top of bitcoin similar to how it can be done with ethereum? Can it be just as capable as ethereum?


texts: Correlation of number of (non mining) full nodes to internet bandwidth

texts:
Are there any correlation studies showing the number of (non mining) full nodes per country (total or per/capita) compared to average internet connection speeds?

I know there are great differences between connection speeds depending on ISP and if the users are in rural or urban areas.

The time to download an entire blockchain from scratch for maximum security can take a very long time in some places. I want to know how much this discourages people from using full nodes (in favor or SPV wallets).

Comparing average connection speed to number of full nodes (per capita) in each country is what I am looking for.


texts:
The bitcoin wiki  says this:

How to create Bitcoin Address

0 - Having a private ECDSA key

18E14A7B6A307F426A94F8114701E7C8E774E7F9A47E2C2035DB29A206321725

1 - Take the corresponding public key generated with it

0450863AD64A87AE8A2FE83C1AF1A8403CB53F53E486D8511DAD8A04887E5B23522CD470243453A299FA9E77237716103ABC11A1DF38855ED6F2EE187E9C582BA6

2 - Perform SHA-256 hashing on the public key

600FFE422B4E00731A59557A5CCA46CC183944191006324A447BDB2D98D4B408

but when I run a sha256 on

0450863AD64A87AE8A2FE83C1AF1A8403CB53F53E486D8511DAD8A04887E5B23522CD470243453A299FA9E77237716103ABC11A1DF38855ED6F2EE187E9C582BA6

I don't get

600FFE422B4E00731A59557A5CCA46CC183944191006324A447BDB2D98D4B408

What I get is

32511e82d56dcea68eb774094e25bab0f8bdd9bc1eca1ceeda38c7a43aceddce

what am I doing wrong?


texts:
I got some newbie questions;

I bought some bitcoin on Coinbase.

I want to download the wallet, I'll probably put it on a USB then throw it in the safe. Could someone advise how I can download the wallet?

Once downloaded is it still also mirrored on coinbase?


texts: How to get private key from bitcoin wallet?

texts: My wallet just won't synchronize and I have 10 bitcoins there. I need to use blockchain but I cannot get my import key. Can anyone please help me?


texts: Should Account-level in BIP32/BIP44 be Hardened?

texts:
Let's say we have an ETH trading exchange where we employ BIP32/BIP44 to generate a unique wallet address for each user. For simplicity, each user uses the same wallet address
(unique to each user) for all subsequent deposits/withdrawals.

For safety reasons, we have a hot/online wallet and a cold/offline wallet, where the hot/online wallet is handled by a service (say a NodeJS app) that only contains an extended public key and not the mnemonic/seed of the HD Wallet root node.

We also use the derivation path structure similar to BIP44

  m / purpose' / coin_type' / account' / address_index

Question 1: Is it generally practised to let each user have a different account level node? Eg: User 1 has m/44'/20'/1, user 2 has m/44'/20'/2', etc.

Question 2: Assuming the above question is correct, should the account level key be hardened or not hardened?

From my (poor) understanding so far, If we use m/44'/20'/0 instead of m/44'/20'/0', we only need to the extended public key for m/44'/20' to generate deposit addresses for each user m/44'/20'/0, m/44'/20'/1, etc.

However if we use m/44'/20'/0', we need the extended private key for m/44'/20' to generate deposit addresses for each user, and this is less secure because if the extended private key on the online/hot wallet app is compromised instead of the extended public key, all the funds can be stolen.

Lastly, what is the best practice for implementing BIP32 in such an application (trading exchange, marketplace, etc)? Does the app that handles the wallet and holds the keys communicate via a REST/websockets/jobqueue method with the other services that accepts user input to request withdrawal/deposits?


texts: Why does my wallet size increase over time?

texts:
Why does the size of the output of

     bitcoin-clibackupwallet

or, equivalently, wallet.dat

increase over time?


texts: How can other currencies be "issued" via Bitcoin?

texts: I've heard a few prominent bitcoiners (Andreeseen, ppl from BitPay) say that currencies such as US Dollars can be "issued" over the bitcoin network. I'm not exactly sure how this is possible, and I don't think this has to do with the exchange rate necessarily. Can someone explain?


texts: Computer Advice to Meet Bitcoin Core Requirements

texts:
I am interested in running bitcoin core to help support the network and also get more involved in bitcoin. I read the minimum requirements here that say:

Desktop or laptop hardware running recent versions of Windows, Mac OS
X, or Linux.
350 gigabytes of free disk space, accessible at a minimum read/write
speed of 100 MB/s.
2 gigabytes of memory (RAM)
A broadband Internet connection with upload speeds of at least 400
kilobits (50 kilobytes) per second
An unmetered connection, a connection with high upload limits, or a
connection you regularly monitor to ensure it doesn’t exceed its
upload limits. It’s common for full nodes on high-speed connections to
use 200 gigabytes upload or more a month. Download usage is around 20
gigabytes a month, plus around an additional 340 gigabytes the first
time you start your node.
6 hours a day that your full node can be left running. (You can do
other things with your computer while running a full node.) More hours
would be better, and best of all would be if you can run your node
continuously.

As I suspected, my current machine (MacBook Air, lol) is not going to work. It looks like I only have 61 gigs of 120 available disk space. Although I have some programming experience, I really don't know a lot about computers. I think I would like to get something a little more powerful, so I can run bitcoin core and also some other projects that require a better machine. I honestly don't even know how to check the read/write speed (processor?) or what an unmetered connection is. Does anyone have advice for shopping for a machine that can meet these requirements? Does not need to be a mac.


texts: Can the genesis block of bitcoin be put to qr codes?

texts:
I Think I own the genesis block it really eats my name.it has my real name on it
with QR codes.WHen I check it from Blockchain site its the same as the one I got.


texts: When making an altcoin copy of Bitcoin, where should one start?

texts: In attempting to create a clone, a few things have to be considered... things like block time, reward, etc are often changed. What other things should be considered when messing with the source code?


texts: Is there only ever 1 send address for a wallet

texts:
I know you can create label / address pairs to receive coins and also that a wallet automatically generates a new address when you need change from a transaction for the receive operation.

Will there only ever be one send address for any given wallet?

So on the blockchain all my send transactions will only ever have the one address even though I can and will have multiple receive addresses?


texts: with what number do multisig addresses (non-P2SH) start?

texts:
I have never seen a n-m address implemented as multisig (not P2SH). What number does it start with (i.e., regular addresses start with 1, p2sh start with 3 ...) ?

In other words, where do they fit in this table: https://en.bitcoin.it/wiki/List_of_address_prefixes?


texts: What is a good way to concisely explain Bitcoin?

texts:
Often I'm asked to explain Bitcoin to someone and occasionally I come up with something stellar that really nails it, but most times it's a rambling incoherent mess.

What I would like to see is a short and simple explanation of what Bitcoin is that is suitable for someone non-technical to understand.


texts: Relative performance of various mining software?

texts: Has any measured the relative performance of various mining software? I figure such a study would be very beneficial for all the miners to choose the most optimal software out there to squeeze out the most bang for their buck.


texts: Destination address(es) when redeeming an HTLC

texts:
Starting from this text at https://en.bitcoin.it/wiki/Script:

"The script for a typical Bitcoin transfer to destination Bitcoin address D simply encumbers future spending of the bitcoins with two things: the spender must provide 1. a public key that, when hashed, yields destination address D embedded in the script ..."

and then looking at the HTLC script:

OP_IF
    [HASHOP] <digest> OP_EQUALVERIFY OP_DUP OP_HASH160 <seller pubkey hash>
OP_ELSE
    <num> [TIMEOUTOP] OP_DROP OP_DUP OP_HASH160 <buyer pubkey hash>
OP_ENDIF
OP_EQUALVERIFY
OP_CHECKSIG

My original thought was that the HTLC could only be redeemed to the address behind <seller pubkey hash> or <buyer pubkey hash>: they are the only data relating to addresses embedded in the script so must be the "destination address" referred to above. I understand this to be wrong.

Am I now correct in thinking:

That the two pubkey hashes merely establish the right of the redeemer to take the respective branch;
There is in fact no "destination address D embedded in the script" for an HTLC;
That the seller or buyer may redeem to any address they like;
And that address can remain undecided through the funding and life of the HTLC until the moments before redemption?


texts: I heard bitcoin-core 0.11 allows 80 byte OP_Returns, but I know miners operate different implementations and was wondering when it would be likely that 80 byte OP_Returns will be swiftly included in blocks.


texts: Get balance for an array of addresses with bitcoin core

texts: I am searching for a command to get balance for imported addresses in bitcoin (not my wallet addresses) and I don't wanna do this with blockchain explorer API's. Is it possible to do this through bitcoin core? if not, is there any alternative option like bitcore?


texts: Can a full node understand the transactions it downloads from the Bitcoin network?

texts:
I understand a full node downloads and validates the entire transaction history. Can a full node read and understand these downloaded transactions, or is it just just keeping a copy of encoded information?
I'd appreciate if you could mention your sources' links in this regard.


texts: How to tell if Lightning nodes are lnd, c-lightning, eclair

texts:
I am performing some experiments on the Lightning Testnet Network. I would like to perform the experiment on the 3 main lightning implementations, for which I would like to be able to connect and open a channel with an lnd, c-lightning and eclair node.

Is there a list of lnd, c-lightning, eclair nodes that are announced? even if just in testnet?
Is there a way of knowing this?


texts: Any statistics on usage of Bitcoins by region or country?

texts: I would like to know if there are any statistics on turnover of Bitcoins for each country in the world. A very rough way would be to get a statistic on which traffic to Bitcoin.org by country.


texts:
How can I delete all addresses from my Qt wallet without having to download the blockchain all over again from the scratch? I would like to find a bulk way to do it as there are a few thousand addresses I need to get rid of. These addresses are empty and they only cause significant delays to my interactions with the wallet.

I found a similar question indicating Pywallet (https://bitcointalk.org/index.php?topic=34028.0) as a solution but I have to manually remove each address one by one with it, which is not efficient in my case.


texts: Bitcoin Client - How do I find the destination address of an incoming transaction?

texts:
I'm mining Bitcoins and have multiple incoming addresses in my bitcoin-qt wallet.

When I get a payout for mining in the "Transactions" tab it shows the amount of BTC I received and the type is set to "Mined".

Now I see a lot of transactions, but I have no clue for which incoming wallet address these payments were originally made for.

How can I figure out the destination address in the wallet for incoming transactions? And if I can't; why?


texts:
net_processing.cpp contains

    // If this set of headers is valid and ends in a block with at least as
    // much work as our tip, download as much as possible.

why are we interested in chain that's only equal in work to what we already have? would it make not better sense to download only when chain is better? what is the benefit in this <= logic compared to if it was just <?


texts: Does blockchain.info backup wallet include also the next addresses

texts:
The standard client's wallet includes a key pool of 100 extra pre-generated addresses, which are the next ones to be "generated" when you ask an extra address.

Does the blockchain.info's backup wallet do such a thing, too?


texts: Are there any online wallet services that offer services for alternative cryptocoins, such as Namecoins, Litecoins, etc?


texts: Is routing approach of Bitcoin Lighning Network "decentralized" and "trust-less"?

texts:
From the Bitcoin Lightning Network:

  it is possible to find a path across the network similar to routing
  packets on the internet.

Is routing approach of Bitcoin Lighning Network performed in a "decentralized" and "trust-less" manner ?

Also, the fact that in the Bitcoin network there is no routing table does not matter ?


texts: Lightning close-channel transaction example?

texts:
From this article, I can understand that a punishment-based bidirectional payment channel (the type used by Lightning) would contain roughly this bitcoin script as one of the outputs:

OP_IF
“+7 days” OP_CHECKSEQUENCEVERIFY OP_DROP
<Bob pubkey> OP_CHECKSIG
OP_ELSE
OP_SHA256 <sha256(Bob secret)> OP_EQUALVERIFY
<Alice pubkey> OP_CHECKSIG
OP_ENDIF

I guess there are some block explorers that let you visualize the real script being used in a transaction, so can anyone point me to a real LN transaction (in mainnet) that follows the template above?

Thanks


texts: How do I connect my online store to the blockchain?

texts:
I have an online store for which I want to be able to accept bitcoin.

I believe that what I need is an API that will connect my store to the blockchain. If not, the question below would relate to what I need.

I need a developer who can handle both ends of the project, that is identifying or building the right API to connect to the blockchain, and connecting the API to my storefront. How would I find the right application and a reasonably good developer?


texts: I use Litecoin Core wallet on my PC and need to have it on laptop to take away on holiday

texts:
I am using Litecoin Core wallet on my PC,  and I need daily access to it.

I am travelling away from home at Easter and taking my laptop with me.
I downloaded Litecoin Core Wallet to my laptop,  but there is no balance showing up.  Is there a way to sync the two wallets?
Or if not,  can I transfer the balance to a Receive Wallet on the Laptop Wallet?

Thank you
Margaret.


texts: Online tool for calculating trading profits on multiple cypro currency pairs

texts:
I'm looking for a tool (preferably online) which would help me follow profits earned on muti crypto currency pairs.

Take a look at the example below

buy x_1 btc for y_1 usd
buy x_2 eth for y_2 btc
buy x_3 zec for y_3 btc
sell x_4 eth for y_4 btc

Kraken only shows the current total value of all crypto and how much of each crypto I own. It's kind of hard to keep track which pairs are profiting and by how much.

I'd like to

Be able to enter every transaction I make
See the list of all pairs with profits on a pair
See the list of currencies with profits on usd


texts: Closed wallet on MultiBit, found it in AppData, but when I click "open" nothing happens

texts:
I have clicked on "close wallet" by mistake, and thought it was lost, and then found it in C:\user\<my name>\AppData\Roaming... but, when I click to open the wallet nothing happens.

I have saved my private keys to a USB stick, and my public address is written down (this wallet is in MultiBit). I have Windows 8.

Is it possible to recover my wallet?


texts: Can the Bitcoin blockchain eliminate the need for Trusted Computing in Smart Contracts?

texts:
Let me preface this by saying that I'm a novice, but this is my rough understanding of how Bitcoin's blockchain works.  (This is largely based on blog posts like this one.)  If person A wants to transfer a certain amount of Bitcoin to person B, he signs a message authorizing the transfer using his private key.  A minor can examine the message, and using a program that performs a certain mathematical operation, can verify that person A really did sign the message.  But there's the issue of, how do we know that the miner really did do the computational work needed to verify the signature?  This is solved by something called a "proof-of-work" protocol, by which the miner can demonstrate that he did the verification computation.

I was reminded of all this when hearing about the notion of "external state contracts", a type of Smart Contract described briefly at the 35 minute mark of this video and in more detail in this Bitcoin wiki article.  In an external state contract,  certain disputes about objective features of the world can be resolved automatically, instead of trusting a third-party human arbitrator to decide fairly.  For instance, contract could specify that in the event of a dispute about a sports bet, a computer program (with source code specified in the contract) would be automatically run that consults a sports database, determines who won the bet, and the bitcoin is automatically transferred accordingly.  But the Bitcoin wiki article describes an issue with this: how do you determine that the computer program that's supposed to resolve the dispute has actually been run, and if so whether the output of the program is being reported fairly by the computer that ran it?  The article suggests using one or more "Trusted Computers" known as oracles, which both parties trust to run the code properly and not misrepresent the output.

But it occurs to me that the issue with external state contracts is analogous to the issue I described above that's solved with the blockchain.  So why can't you solve it the same way in this case?  That is to say, just as proof-of-work protocols can be used to demonstrate that a miner ran the code that determines whether a signature is authentic, why can't you make miners run dispute-resolution code for external state contracts, and then determine whether they really ran the code using proof-of-work protocols?  That would eliminate the need for a Trusted Computer.

Is there any significant difference between the two cases that would make this unworkable?  Has this been done already?

Any help would be greatly appreciated.

Thank You in Advance.


texts: How I should pay tax if I buy Bitcoin from an overseas friend

texts:
Assume I buy 1 bitcoin from an overseas friend which is USD$10 and I sell it in US for $11.

is it legal? I am afraid, it would be considered money laundry
I will not be able to have official receipt from my friend, do I pay tax as for the earning of $1 or sell price $11?


texts: Running bitcoin core in a low storage system

texts:
I have a machine with ~40GB in storage. The Bitcoin block chain is ~75GB in size, is there any chance to run bitcoind in my system? I mean, can I somehow skip downloading some part of the block chain?

Thanks in advance for any answers.


texts: How to provide a proof-of-payment to an offline Lightning Network vending machine?

texts:
I'm considering building a Lightning Network vending machine that is offline but has the capability to create LN invoices and verify payments.

As an example the scheme has:

One offline vending machine.
One online node to validate payments.
One user (online with a cellphone).

For that there must be:

A way for the vending machine to provide valid invoices that can be paid to the online node.
A way for the user to communicate a prof-of-payment to the vending machine.

Is this currently viable? Is this something that can/should be standardized so every wallet can implement it?


texts: Running full node on OSX, how to tell if its working correctly?

texts:
I'm running Bitcoin-QT 0.15.01 on an iMac (4 GHz Intel Core i7, 40GB RAM). It seems I am receiving the latest blocks, but is the rest working as it should?

I have opened port 8333 on my router and bitnodes is reporting that my node is accepting incoming connections.

Core reports 19 connections to the network but the log has a lot of errors like these:

09:20:08' progress=1.000000 cache=64.8MiB(478821txo)
2017-10-01 09:21:26 connect() to 65.130.52.89:8333 failed after select(): Connection refused (61)
2017-10-01 09:21:36 receive version message: /Satoshi:0.14.1/: version 70015, blocks=487780, us=N.N.N.N:8333, peer=1634
2017-10-01 09:21:44 receive version message: /Snoopy:0.2.1/: version 70001, blocks=0, us=N.N.N.N:8333, peer=1635
2017-10-01 09:21:44 socket recv error Connection reset by peer (54)
2017-10-01 09:21:46 receive version message: /Satoshi:0.14.1/: version 70015, blocks=487780, us=N.N.N.N:8333, peer=1636
2017-10-01 09:22:28 receive version message: /bitnode.lee/: version 70015, blocks=487780, us=N.N.N.N:8333, peer=1637
2017-10-01 09:22:49 UpdateTip: new best=000000000000000000792640fb97fb9a8ed07ba99b37479a48ebbeff3b1c1044 height=487782 version=0x20000000 log2_work=87.201974 tx=258394764 date='2017-10-01 09:22:42' progress=1.000000 cache=64.8MiB(479294txo)
2017-10-01 09:23:27 ProcessMessages(version, 111 bytes) FAILED peer=1638
2017-10-01 09:23:37 receive version message: /bitnodes.21.co:0.1/: version 70015, blocks=487780, us=N.N.N.N:8333, peer=1639
2017-10-01 09:23:39 Pre-allocating up to position 0x7000000 in blk01013.dat
2017-10-01 09:23:39 UpdateTip: new best=000000000000000000a86b2c788d7d3acd3493b05b2e8a626d7a5aca20a3ecc1 height=487783 version=0x20000000 log2_work=87.202013 tx=258397039 date='2017-10-01 09:23:00' progress=1.000000 cache=65.1MiB(482014txo)
2017-10-01 09:23:51 UpdateTip: new best=0000000000000000004927be61b84dc22202b49e55e635ce746023436c1ed14d height=487784 version=0x20000000 log2_work=87.202051 tx=258397146 date='2017-10-01 09:23:51' progress=1.000000 cache=65.2MiB(482144txo)
2017-10-01 09:24:04 socket recv error Connection reset by peer (54)
2017-10-01 09:24:07 receive version message: /bitcoin-seeder:0.01/: version 60000, blocks=350000, us=N.N.N.N:8333, peer=1640
2017-10-01 09:24:18 receive version message: /bitcoinj:0.14.4/: version 70014, blocks=437811, us=127.0.0.1:8333, peer=1641


texts: Multibit crashes on startup with PCA2 error (Program Compatibility Assistant)

texts:
I double clicked on the Multibit Icon which I normally do but this time the program does not launch.  I don't even see in in the task manager.  I went to the file location folder and double clicked it from there but nothing.  I even tried to run it as an administrator, still no luck.  Error reporting gives me this but I have no idea what any of this means.

Fault bucket , type 0
Event Name: PCA2
Response: Not available
Cab Id: 0

Problem signature:
P1: multibit.exe
P2: 0.0.0.0
P3: multibit.exe
P4: unknown
P5: unknown
P6: 200
P7: -1
P8:
P9:
P10:

Attached files:
C:\Users\Corry\AppData\Local\Temp\{2e873e3e-224a-4e49-a645-3085d257487a}\appcompat.txt
C:\Users\Corry\AppData\Local\Temp\Tab6C87.tmp

These files may be available here:

Analysis symbol:
Rechecking for solution: 0
Report Id: 9b901d74-78d6-11e4-8e09-c8600014cfa9
Report Status: 0


texts: Difference between Sign Message and Sign Transaction

texts:
Using "Sign Message" one can prove ownership of an address.
This happens by signing a human-readable string using the private key belonging to the address.
The owner then provides the address, message and signature, and anyone can verify that they indeed hold the private key of the address.
The ECDSA signature is normally provided in 65-byte format (Recovery byte + 32-byte R + 32-byte S) and base64 encoded.

However, there is also another type of signature, which is used for "Sign Transaction".
For each input of a transaction, there is some data to be signed. This data is binary data, normally provided in hex format.
The corresponding signature is provided in 70-, 71-, or 72-byte DER format.

In both cases, the message (message string in the first case, and binary per-input data in the second case) is transformed into a byte array, and the private key is used to generate an ECDSA signature for that message byte array.
The output format is different, but the 65-byte format can easily be converted into DER.

Consequently, I thought that I could just use "Sign Message" (with a minor modification, so that it takes a hex string instead of an ASCII/UTF-8 string) to sign a transaction's hex-encoded binary per-input data.
I did that, converted the signature to DER format and tried to send the transaction, but it didn't work, because the signature was wrong.

So my question is, what is the difference between how "Sign Message" and "Sign Transaction" generate signatures, and why aren't they compatible?

Is the difference that for "Sign Message", first a digest is created, which is then signed, while for "Sign Transaction" (in the meaning written above), the input is already a digest, so it shouldn't be hashed again?

Thank you!


texts:
When browsing the blockchain.info I came across this address. It seemed peculiar to me, that the amount of 0.6 BTCs has allegedly been spend before received.

Is it because the "receiving transaction" somehow occurred in a side-chain and has only afterwards been merged into the Blockchain? Or what other explanations might there be for this behavior?


texts: What is the risk of waiting for just one confirmation to validate a transaction, assuming the counterparty is not a miner?

texts:
I am trying to determine how many confirmations would be reasonably safe to wait before accepting a Bitcoin transaction from an attacker that is not a miner and hence cannot rely on Finney attacks, but that could try to freely double spend based on his observation of the state of the blockchain.

I understand that at 0-confirmation, attempting a double spend may well work if for example the transaction fee of the second transaction is higher, and the first transaction has not been widely disseminated yet (so nodes would not reject it as a double spend).

At 1-confirmation, any double-spend would automatically be rejected by all nodes accepting the first confirmed block. However, should (i) the blockchain be "reorganized" with a minor fork taking over, as I understand happens regularly (are there statistics on this?), and (ii) the initial transaction not be included in the fork, the attacker could immediately retry double-spending in the hope it gets included in the next block.

Should I be worried of such blockchain reorganizations when accepting n-confirmation transactions? Am I right to say that any successful 6-block fork would open the risk of free riding the double spending of ALL transactions not included in the fork, not just those targeted by the rogue miner? Or would most nodes (including the rogue miner) most likely reject the free-riding double spend attempts anyway (even if its transaction fees are set way higher), as the first transaction would by that time be fully disseminated?


texts: Why does my c-lightning node pay more than the invoice plus routing fees?

texts:
A friend sent me an invoice for 500,000 Satoshis. To my surprise, I sent 502294 Satoshis.

Here's what I see from my c-lightning console:

"msatoshi": 500,000,000
"msatoshi_sent": 502,294,595

My friend received a different amount on lnd:

"value": "500000"
"amt_paid_sat": "501791"

Any reasons why I am not sending the amount requested on the invoice? Also is my understanding correct that I paid 503 satoshis in fees for this transaction? It's more than I expected on the lightning network.

Thanks,

Francois


texts: Is it safe to store bitcoins on p2sh (no multisig)?

texts:
I've just generated p2sh btc address and look in the output script:

HASH160 PUSHDATA(20)[e5c32bdc7f7fb1e6ae7aa1baf42a429803054d2c] EQUALVERIFY

while normal (legacy btc address) transaction has signature check

DUP HASH160 PUSHDATA(20)[e5c32bdc7f7fb1e6ae7aa1baf42a429803054d2c]
EQUALVERIFY CHECKSIG

Is it safe to store bitcoins in this address with this scriptsig ?

Or it use a same key for the signature check?
If yes, what a reason to check the signature ?

Thanks


texts:
I know that you can mine bitcoins and that you can buy them, but what about places where you can earn them by doing a bit of work?

I've only heard of http://bfg.swfchan.com/ where you get BTC for linking to the site.

Are there any other places where you can earn bitcoins?

I tried to find a list of such places but I can't find one. Is there such a list?


texts:
I wonder if I can do mining with Bitcoin-0.16.1 in regtest mode, just for simulating mainnet situation where there are new blocks coming in constantly.

I am aware that I can use generate to generate blocks almost instantly after every transaction and thus confirm the transaction. But can I use a miner program to automate that process and simulate better the real-world situation, i.e. new block coming in constantly in small number?

I have tried cgminer connecting to my regtest solo mining but it does not seem to mine anything, it just sits there and hash rate is always 0. Any advice on how I can mine on regtest or should I set up some automated scripts to call generate from time to time?


texts: The probability that the entire network generates at least two blocks within 10 minutes?

texts:
We know that Bitcoin network on average generates one block per 10 minutes.

Is there a formula to compute the probability that the entire network generates at least two blocks within 10 minutes by using current hashrate of the network and current difficulty level ?

Thanks


texts:
Why does satoshidice have to re-hash the transaction details in order to determine your "lucky" number?

Are there no publicly viewable randomized numbers or hashes that are impossible for the sender to duplicate without broadcasting the transaction?


texts: Who are the stakeholders and what are their key drivers?

texts:
Currently, I'm doing my masters in Computing Science and I'm working on a project in which I have to analyze the Bitcoin repository. I have a bit of trouble in identifying the stakeholders for the repository, so maybe anyone of you can help me?

A list of stakeholders (so far):

The people that use the Bitcoin blockchain (users).

And a list of negative stakeholders (so far):

The authorities, as system is anonymous.
The banks, as their number of transactions will decrease (in a perfect world, everyone uses cryptocurrency)

Secondly, to obtain a list of the key drivers of the system. I would like to now what the concerns of every stakeholder are. Example of concerns are: Security, Reliability, Performance, Extensibility, Efficiency and Adaptability.

Thanks in advance,

Patrick


texts:
I have some questions about Lightning Network.  I'm already banned from r/bitcoin so I'm posting here.  My first questions are about dispute costs:

Lets say I open a payment channel on the lightning network.  I need to have some balance in the channel, so lets say I have put in 1 bitcoin.  I make a purchase for .5 bitcoin.  There is then a dispute:  the seller is claiming my entire bitcoin from me.  Now what?

Per the whitepaper I can "dispute" this by broadcasting the transaction to the blockchain.  (Are there other options?)

1) Who pays for that, and how much?  Do I pay per bit whatever the market value is for block space at that time?

1a) With the claim on my entire bitcoin where do the transaction fees come from?

1b) What would prevent somebody from using this "pay to take it to court at auction prices" model as a denial of service or theft?  For example, a large actor opens many channels and funds them so they are used as hubs....then when well established he "outright disconnects" some large number of those channels.
Now there is very high demand for limited blockspace as everybody tries to dispute before the deadline.  What happens next?  What if there is so much congestion that disputes can not be made fast enough?

Either ELI5 or point me at the right page(s) and sections of the whitepaper.

Much appreciated,
Blade.


texts: Binance API SIGNED GET request error code -1100 on signature parameter

texts:
I am trying to load my crypto portfolio into Excel so I can use its easy analysis functionality on my trades. However, I'm having trouble connecting to the API using VBA's WinHttpRequest.

I use the following code to try to GET account info (balances) /api/v3/account:

Sub GetBalances()
Dim tNow As String
tNow = CStr(Date2Long(Now()))
Dim sUrl As String
sUrl = "https://api.binance.com/api/v3/account?timestamp=" & tNow & "&signature=[signature here]"

Dim oRequest As WinHttp.WinHttpRequest
Dim sResult As String

On Error GoTo Err_DoSomeJob

Set oRequest = New WinHttp.WinHttpRequest
With oRequest
    .Open "GET", sUrl, True
    .SetRequestHeader "Content-Type", "application/json; charset=UTF-8"
    .SetRequestHeader "X-MBX-APIKEY", "[API key here]"
    .Send "{}"
    .WaitForResponse
    sResult = .ResponseText
    Debug.Print sResult
    sResult = oRequest.Status
    Debug.Print sResult
End With

Exit_DoSomeJob:
    On Error Resume Next
    Set oRequest = Nothing
    Exit Sub

Err_DoSomeJob:
    MsgBox Err.Description, vbExclamation, Err.Number
    Resume Exit_DoSomeJob

End Sub

Private Function Date2Long(dtmDate As Date) As Long
    Date2Long = (dtmDate - #1/1/1970#) * 86400
    Exit Function
End Function

However it gives the following error message:

  {"code":-1100,"msg":"Illegal characters found in parameter 'signature'; legal range is '^[A-Fa-f0-9]{64}$'."}

Which seems strange as the secret key's character range is only A-F, while the secret provided seems to contain A-Z. Anyone else know how to solve this problem? Might it be a problem caused by VBA? Or might the problem lie somewhere else?


texts: How to see highest available block number in "Bitcoin Wallet" app for Android (Schildbach wallet)?

texts: If I have downloaded the "Bitcoin Wallet" by "Bitcoin Wallet Developers" (Schildbach wallet) onto an Android phone from the Google Play store, how can I see the latest block number that the wallet knows about?


texts: Is there a way to provide the walletpassphrase to bitcoind without exposing it on the cmdline?

texts:
With bitcoin 0.4.0 I have encrypted my wallet. Now when I would want to use bitcoind, the only way to send money is to provide my wallet decryption key on the cmd line first. I do not want to do that as my password will show up in the shell history.

Is there a way to let bitcoind ask for the wallet passphrase?


texts: Transactions not showing in Copay wallet until confirmed?

texts: when i sent btc to my copay wallet, the transaction would show up before being confirmed, but wouldnt let you spend it. seems that isnt true anymore, anyway to have this happen again? havent found anything in settings


texts: Why does apple disallow certain crypto apps on their app store? And how does one pass this verification?

texts:
I created an app for an NXT/Ardor cryptocurrency and tried to submit this to the apple app store, but got denied. After doing some research I came across this post stating there is an "approved" list of coins they support.

https://www.ios-blog.co.uk/resources/apples-approved-list-of-virtual-currencies/#official-list

How does one get on this approved list? What does one need to do to get on this approved list? The core devs of this platform is willing to help get on this list.


texts:
The domain name is listed for sale on a marketplace namely Uniregistry Market. Thus, it is Ethereum(dot)com for sale about $10 million.

Check here to read more: Ethereum(dot)com for sale


texts: Could a large group of miners theoretically lower the network hashrate to manipulate difficulty?

texts:
I am relatively new to understanding the fundamentals of the Bitcoin network, so I am still trying to learn how the actions of miners can influence the direction of the blockchain.

Back to my main question, since the difficulty adjusts at a fixed rate of every 2016 blocks (~2 weeks), what would prevent a large hashrate miner or pool from entirely shutting down their mining power minutes before the 2016th block was found? The incentive here would be that the next difficulty would become significantly lower until it is readjusted in 2016 more blocks. This process of course, could be repeated.

Is there some sort of method in place which averages transaction times preventing this from happening? If so, would such an action still have any affect?

Thanks :)


texts:
Is there a library which provides all the same address/transaction querying information as blockchain.info, depending only on having a bitcoind synchronised database?

There are a number of queries which bitcoind cannot answer. For example, bitcoind only indexes transactions which are unspent.

I realize blockchain.info has a public API, but it isn't an option for us to use this. I doubt they'd want us to spider the entire blockchain over their API anyway.


texts: Is the time taken for the verification of a transcation not much relevant?

texts:
By verification I do not mean the puzzle solving/hash calculating part but the part involving searching all of the blocks to check if the transaction is valid or not?

For example if A transferred some coins to B ten years ago and after that A didn't make any transaction. Now A wants to make some transaction. To verify this transaction, the miners need to know A's balance which was last updated ten years ago. To do this the miners have to traverse through huge number of blocks to the block of then, won't it take much time?


texts: How do I download the blockchain from a specific height (409668)

texts:
I'd like to download the blockchain from height 409668 (first block on May 1st). I need data on time it was mined, and the amount of transactions it included.

If I don't need to download the blockchain to get this data, that would be 10x better. Where can I get a CSV of this? Otherwise, where can I download the blockchain and get this data from?


texts: Is there a mobile app that I can use to buy/sell bit coins? Would it be useful if I create one?


texts: What does the Bitcoin RPC mean and how is it used?

texts: What does Bitcoin RPC mean and how is it used? I see the term RPC referenced multiple times, but not show what it means and how its used. I see it in JSON-RPC. I know json is just a data format, meaning it looks something like this: { apple: red, banana: yellow }


texts: Is there any cross-platform multi-currency wallet?

texts:
I know about http://ufasoft.com/coin/
but this is only for windows.

main goal is to put in on dropbox (or same syncing service) and have access to wallet from any of my PC's with any system on it.

and yes, there are a lot of web wallets, but i'm looking for something local


texts: Connect to Bitcoin Node behind tor network

texts:
I configured my full bitcoin node behind tor (nowadays there aren't much bitcoin nodes behind tor network, this website: https://bitnodes.21.co/nodes/?q=Tor%20network tell us that there are just 323 nodes), for the moment I hadn't any problem configuring it behind tor. But the problem comes when I want to connect through a rpc client to my bitcoin node. I am using this project as code base: https://github.com/aceat64/EasyBitcoin-PHP and I modify the function __call in the following way:

$options = array(
            CURLOPT_HTTPAUTH       => CURLAUTH_BASIC,
            CURLOPT_USERPWD        => $this->username . ':' . $this->password,
            CURLOPT_PROXY          => '127.0.0.1:9050',
            CURLOPT_PROXYTYPE      => 7,
            CURLOPT_RETURNTRANSFER => TRUE,
            CURLOPT_FOLLOWLOCATION => TRUE,
            CURLOPT_MAXREDIRS      => 10,
            CURLOPT_HTTPHEADER     => array('Content-type: application/json'),
            CURLOPT_POST           => TRUE,
            CURLOPT_POSTFIELDS     => $request
        );

I am very stuck with this issue, due to that I am getting all time Can't complete SOCKS5 connection to 0.0.0.0:0., I have the tor service running and I didn't find any tutorial about how to connect and authenticate to a bitcoin node using php and curl.

Best regards and thanks in advance


texts:
I used to run bitcoin on Ubuntu and I have a wallet with 1 coin in it.

I took a backup of my ~/.bitcoin directory which includes a wallet.dat file.

Now I'm running on a mac, using the bitcoint-qt client.

How do I get back the money from that wallet?

Can I just copy it over the existing wallet that the mac client generated?

Is there a way to run a command line client and point to my wallet then transfer coins from it to the new wallet?


texts: how to know electrum wallet is synchronised?

texts:
I installed electrum wallet 3.1.1 on my amazon linux server today. electrum daemon is running.

  [ec2-user@ip-xxx-xx-xx-xxx electrumwallet]$ electrum is_synchronized
  true
  [ec2-user@ip-xxx-xx-xx-xxx electrumwallet]$ electrum daemon status
  {
      "auto_connect": true,
      "blockchain_height": 514484,
      "connected": true,
      "fee_per_kb": 3858,
      "path": "/home/ec2-user/.electrum",
      "server": "electrum-server.ninja",
      "server_height": 514484,
      "spv_nodes": 10,
      "version": "3.1.1",
      "wallets": {
          "/home/ec2-user/.electrum/wallets/default_wallet": true
      }
  }

As far as I understand sending bitcoins to addresses of unsynchronized blockchain cannot be seen. How to know if the electrum wallet is fully synchronized and i can send bitcoins to electrum wallet addresses generated.?

Can someone explain fields of electrum daemon status result? Thanks in advance.


texts: How to set the language/localization in the standard client?

texts:
Version 0.6 introduced automatic client localizations. Personally, I hate using programs in Hebrew, and prefer English, but the client didn't ask for my preferences on this matter and just switched to Hebrew.

How can I change the interface language back to English?


texts: Hi I have a blockchain wallet and my wallet ID is saved but I lost my password, therefore,strong text I can't access my wallet to carry out any transaction can somebody help me.


texts:
I'm studyng the transactions and how they work.
Suppose I would track some bitcoins that I spent.
This is a scenario:
My pubblic addresses are: addr1 and addr2.
I made a transaction tr1 (output like blockchain.info):

tr1
input addr1 2BTC        output  addrX 1.5BTC
                                addr2 0.4BTC
                                addrY 0.1BTC

Now I would know where will be spent the 1.5BTC that I sent to addrX.
Suppose I use the blockchain.info explorer and the addrX makes another transaction tr2.
What I do is:

1 - search for the addrX,
   2 - find the tr2 where my input of 1.5BTC is spent
   3 - reapet the first step but with the addresses specified in output of the previous transaction

Am I correct? In this way can I "follow" the bitcoin that I spent?
Many thanks.


texts: How complex can bitcoin multi-signature addresses be?

texts:
From what I've read, M-of-N multisig addresses are possible in bitcoin. But nothing I've read talks about the limits of that (eg I'm not sure if there are limits to M and N) nor whether there are more complex forms of multisig.

For example, something I think I would like to do is have an address that can be spent on in the following conditions:

Address A signs it, or
At least 3 of B,C,D,E,F and G sign it and H also signs it

This would allow me to have an address I can use normally that also can be accessed by a number of trusted 3rd parties in the case that Address A gets lost or destroyed. This would be useful to back up your bitcoins by distributing some keys to a number of friends (B,C,D,E,F,G) with an explanatory note and final key in your will (H).

Is this kind of thing at all possible in Bitcoin?


texts: bitcoin node: what is the difference between simnet and regtest?

texts:
btcd, and presumably other bitcoin node implementations, seem to have 4 network options:

mainnet
testnet
regtest
simnet.

I get that mainnet and testnet both are "public" in that your node will communicate with other nodes and that both have an existing blockchain and genesis block.

However, from what I can tell, both simenet and regtest both create a local only blockchain, and both will create a new genesis block. I this case, what is the difference, and which is better (easier) for developing bitcoin applications?

This is what the documentation has to say:

--regtest             Use the regression test network
--simnet              Use the simulation test network


texts:
I've used a few different apps to create wallets and have decided to narrow down to a single web-based wallet software.  Is there some way that I can take the addresses from my other apps and import them to my new favorite service?

I'm not concerned about moving currently "owned" value, but rather leaving an orphaned address out there.  I'd hate for someone to send coins to an address that I can no longer access because I've uninstalled a particular app from a particular computer.


texts: What would happen to bitcoin in a world with no electricity/internet?

texts:
Many people discuss gold as an 'apocalyptic' currency because it will be what's used (supposedly) if the world ends, or there is some cataclysmic event that wipes out the power grid and internet connectivity.

In such a scenario, would bitcoin still maintain value, could a blockchain be maintained, would paper wallets still contain bitcoin, etc?


texts: hardened derivation path with several ' in path

texts:
Is it possible to get a path like that : m/0'/0/1' ? I mean a path with sometimes ' in a node and sometimes not.
What a common BIP32 path has several ' in it ? Only one has the start could not be suffisant ?


texts: Why are the first 514 blocks on testnet3 dated much earlier?

texts:
This is kind of an obscure question, but I'm curious.

In playing with Testnet (version 3), I noticed an odd jump in the block times.  Blocks 0 through 513 have block times from 2-3 February 2011.  Block 514 is dated 25 May 2012 - over 15 months later.

Did the bitcoin developers mine blocks 0-513 in 2011 and then sit on them for over a year, or were they mined in 2012 and backdated for some reason?

For reference, as I learned from this answer, testnet3 was adopted by this commit.  I'm a little confused as to the exact date; git log appears to show it as 12 April 2012, while github gives 25 May 2012.  (Maybe the discrepancy has to do with when the change was made in whose repo?)  The first release with testnet3 was 0.7.0, released 17 September 2012.


texts: How the blockchain knows that its been tampered with?

texts:
I know that the transactions stay in the block and hashed alongside few other things and that hash is stored in the next block. And I understand that if you try to tamper with one of the transactions, the hash will change and it will affect all the blocks that come after it.

However, how does a block know that its transactions have tampered with in the first place?

Assume that block #1000 has 10 transactions.
Now, the hash has been calculated and stored in block #1001

so, if I go back to block #1000 and add one more transaction, this will change the hash and it wont be the same one stored in #1001.
However, how the hash of block #1000 changes in the first place if it was already calculated? does this mean that the hash of each block is recalculated regularly?


texts: What should I tell someone so they can restore my bitcoin from a seed in 20 years?

texts:
I'm making a metal backup of my bitcoin wallet. It's tedious to do by hand, so I want to add the right info but not to much. This is my current idea, I want someone else to understand it 20 years from now, if i'm dead. This is what i've come up with so far.

Seed:

This is a wallet seed generated with a Trezor wallet in 2017 using bip39.
It can be used to get access to bitcoin. Keep it Safe.

Pass-phrcace (on other location):

This is a wallet seed passphrace generated with a Trezor wallet in
2017, using bip39. Use it with a wallet seed stamped on a similar plate.
It can be used to get access to bitcoin, Ethereum and Litecoin and maybe
other currencies.
Keep it Safe.

The bitcoin seed will contain a small amount of bitcoin and the most will be decrypted with the passphrase.

I'll probably attatch the bip39 specc on paper aswell(anything else) but that might burn up or whatnot so the vital info should be in the metal-stamp.


texts: Which of the open-source Bitcoin clients has the most thoroughly commented source code?

texts: Learning from a source code is very useful at times, but it is a pain if the code is not commented well. Which of the open source Bitcoin software have the most thoroughly and understandably commented source code? That is, if someone wanted to understand how the main client, miner, pool or other Bitcoin software works, which projects should one look at?


texts: Why do I need a private key to send some my bitcoins?

texts: Why do I need a private key to send someone my bitcoins?


texts: Connect to regnet from my WalletAppKit Android app

texts:
I'm developing a simple app to learn how to use the bitcoinj library. I'm using the WalletAppKit object to simplify the process and I'm following the official documentation.

When developing I prefer to use bitcoind regtest mode as it's faster than the testnet3 and I don't need to be connected to the i

if (params == RegTestParams.get()) {
    // Regression test mode is designed for testing and development only, so there's no public network for it.
    // If you pick this mode, you're expected to be running a local "bitcoind -regtest" instance.
    kit.connectToLocalHost();
}

I was playing with the WalletTemplate example desktop app and it works just fine on the regnet. Now I'm trying to do the same on my Android app but I don't know how to connect it to my regnet instance running on my machine.

Does anyone know how can I do that?

Thanks in advance,

Felipe


texts: Is it possible to transfer money from another country to the U.S.?

texts:
I came from China and am a international student in U.S.. My family would like to transfer some money to me for my tuition and living expenses.

Transferring via banks incurs fees, and loss of money value due to the difference between change rates from RMB to U.S. dollars and the other way around.

Can bitcoin be used for transferring money with less cost? I am totally new to Bitcoin, and will appreciate your advice.

Thanks!


texts: How is the wallet balance split across keys?

texts:
I suppose it's advisable to use a new key frequently for bitcoin receive address for anonymity. If each received amount goes to a new key, will my wallet size become unmanageable if I receive a number of small amounts per month ?

If yes, how can I consolidate all the coins split across 100s of keys in case my wallet is compromised and move it to a new wallet?


texts: How is blockchain not responsible for someone stealing my Bitcoin?

texts: I'm new so please forgive me if I'm just not getting this. I have done nothing wrong. I did all the 2fa all recovery phrase I was told to do. I wake up to see 1200 dollars in crypto just gone from my account. It's weird the moment I set my recovery phrase was when my money disappeared. Blockchain hasn't said anything but oh well this is what happens. So I do all the things I'm supposed to and I lose money that I don't have with noone to help me get it back? I mean if I have to send in all my identity documents doesn't everyone? I see where it was sent cause it's public and NOONE can tell this thief that they need to give my funds back? I'm not well and my husband isn't well at all. We received this money as  payment for work my husband done on a house we been waiting for and it's just gone and nobody can tell me anything. I didn't get an approval from blockchain for entering my account no sms verification code sent to my phone. So is it blockchain itself? Just glancing at messages I see blockchain alot with this issue. I'm devastated I don't know what to do. I hoped maybe I sent to a offline storage or something but I have no idea. Can anyone please tell me what happens when you set up the recovery phrase did that automatically send my coins somewhere or did I just get robbed? I just want to stop wondering and get past this and leave cryptocurrency alone


texts: Integrity of ensuring the correct recipient of a BTC public address?

texts: If a hacker gains access to a website and proceeds to vandalize the website, including changing the public-key of a BTC wallet, this would direct all payments to the hacker. Is this a security risk inherent to the use of BTC or is there something implemented that could prevent this? I am new to BTC/crypto-currency, so I don't fully understand all the details.


texts: Two different bitcoin payment was sent I sent into one Wallet Address requested, But only one came into my wallet successfully. But I am yet to receive the second one, and when I try to look it up on blockchain explorer. The only information that comes up, is the bitcoin that came in successfully, But nothing can be found about the second transaction.


texts:
I am currently working on a cloud based project that will be accepting payments using bitcoins.
I intend to use BitCoinJ to handle the payment. Unfortunately the only help I am able to get is from the JavaWorld demo, which seems to be out of sync with the current code. Could you please point me to some better/updated helping links/material.


texts: How big is the Dogecoin blockchain as of 2018 Feb?

texts: What is the size of the Dogecoin blockchain as of 2018 Feb? And where would I find this data in cyberspace?


texts: Can I send BTC from other node or wallet with my address?

texts:
I'm trying to send bitcoins from node2 with my address using private key noted that my address is created in node1.I followed this link:
"https://en.bitcoin.it/wiki/How_to_import_private_keys"
I dump private key in node1 using this command:

bitcoin-cli -testnet -rpcuser=test -rpcpassword=test123 dumpprivkey "2N7YvA6ZBjFvXE3wuNQH4csev1QUWtrzYgA"

Then I imported private key in node2 through this command:

bitcoin-cli -testnet -rpcuser=test -rpcpassword=test123 importprivkey cNKbGVQvQgJsJuRy25ggZ71BRA9UZyEPCMekdntnZDWjYTg9TpRu

now I want to send bitcoin from node2 with my address to different address

can anyone please give me solution to make transaction using my address private key
  thanking you in advance


texts:
Im hoping i could get some assistance, im a newbie to cryptocurrency but will try my best to outline my Query,

I have transferred 0.06685156 BTC (incl. fees) from my Coinjar cash account to my Exodus Bitcoin cash Wallet 1HL3xwinsGfnNmTPsMrtzGgL3fud9pWDv1 on the 15th of November 2017.

It has now been 6 days and the funds have not yet come up on my Exodus Account.

I have checked on the blockchain but dont really understand what im looking for, i note this is showing up as  unspent, how can i fast track this particular transaction or what other options do i have.

Im happy to transfer a reasonable fee in BTC if someone can either clear this on my behalf  or provide a step by step guide for me to do it.

Transaction ID:
2d88911d1823c32ecd4dc951f87a830b680118f5b50c77fbb9b60fd02d22b83e

many thanks in advance


texts: Does a Bitcoin qr code become invalid after 1 Year?

texts: I have been trying to figure out if there exist a software which preserves a BTC QR code for more than one year.


texts: How do I start a bitcoind server in deprecated mode for multiple functions

texts:
I have a bitcoind server running bitcoin-core version 0.17. Now since I need to use deprecated RPC methods I need to start the bitcoind server in deprecated mode, so I am already able to run it to support the accounts rpc methods by running the following command

bitcoind -deprecatedrpc=accounts

However, I found that signrawtransaction has also been deprecated, so I ran the bitcoind server with the following command :

bitcoind -deprecatedrpc=accounts,signrawtransaction

The server started successfully, however I was still getting this error :

"signrawtransaction is deprecated and will be fully removed in v0.18. To use signrawtransaction in v0.17, restart bitcoind with -deprecatedrpc=signrawtransaction.\nProjects should transition to using signrawtransactionwithkey and signrawtransactionwithwallet before upgrading to v0.18"

So I started the server again with the following command :

bitcoind -deprecatedrpc=signrawtransaction

And this time the transaction went through, however I need to start the bitcoind server to support both the deprecated methods. How can I do that?


texts: Can we report a fraudster by their bitcoin wallet address?

texts: I was recently notified by a friend that someone sent her a message (posing as me) on an app asking her to send them some bitcoin so they could make a purchase. Luckily she knew it was not me and let me know right away. I am trying everything to figure out where they swiped my picture from. Since obviously their account is fraudulent, I was wondering if there was at least someone I can report their bitcoin wallet address as being used for fraud? It may not help me, as Im sure the damage is done with them using my picture for a fraud account, but Im hoping maybe this will help to stop them or somehow make it catch up to them


texts: Is it possible to transfer BitCoins from BlockChain to CoinBase?

texts: I have BitCoins in BlockChain - is it possible to transfer these into my CoinBase account?


texts: How to convert script hash to base58 address?

texts:
For example :

take a look at this  37d1d453311ea5682cdb31468826178db15fa731722a5dbb09525ea901f1c41c scripthash.

I need help converting it to base58 address.

Thank you.


texts: Do unsynced Bitcoin ABC nodes send Bitcoin transactions instead of Bitcoin Cash transactions?

texts: Bitcoin ABC is fully compatible to Bitcoin up to the fork. Does that mean that an unsynchronized Bitcoin ABC node sends Bitcoin transactions instead of Bitcoin Cash?


texts:
It's possible to send shares both to a localhost GBT "pool" (e.g., Bitcoin Core's) and to a remote Stratum pool.* Now, if I discover a block, won't both my localhost GBT "pool" and the remote pool claim it as theirs? This appears to be known as the "selfish mining attack."

*using, e.g., bfgminer's #allblocks option, which offers "Support for submitting found blocks to a local Bitcoin GBT server (bitcoind or Bitcoin-Qt with -server flag): just append #allblocks to the end of your bitcoind's URI." (source)


texts: difference between litecoin and bitcoin transaction id format

texts: i will be storing litecoin and bitcoin transaction ids in the same table in my database, and i want to make the transaction id into a primary key. if litecoin and bitcoin transaction ids overlap then i can work around this by appending a BTC or LTC to each transaction id. can someone tell me if they do overlap?


texts: Submitted blocks get rejected on Litecoin testnet

texts:
I'm trying to submit blocks to the Litecoin Testnet, however everything gets rejected.

I got my raw value as
000000026af779be9f0cdadfa71cc8fff6b0dac590fc3cc511f78523c40100a16147d5f478f8bdae4d3f1a8f58a0872248c98794b525ce18dd7d2ce6a905db27a368794e5329d0c31d502b23007b9f7e

which hashed and reversed becomes
000000026ccd88a7df4a643e7fb4a27301a36f750e94d6cb4c9dce5736f35783

Should be enough to work on testnet. Diff checks out fine.
Since there are no transactions at the moment, I get 0 transactions in my merkle tree, which should result in a 00 as the amount of transactions, and a total of 5000000000 satoshi as output value.

Now, when I add
raw + count + outvalue and submit, I get "rejected".

On BIP_0022, which gives an overview of the error messages, it says rejected: a generic rejection without details. That doesn't help me.

Can somebody tell me what I am missing?


texts: How is the lightning network secured against hacking and double spends?

texts: As I understand payment-channels, like the lightning network, they are working off chain (no record in the blockchain). The only record to the blockchain is the deposit transaction to open the payment-channel and by closing the payment channel. But later all the transactions inside the payment-channel running on centralized servers, like traditional bank transfers. This is very fast, and could be very cheap if there is competition. But how the banks, who would run such payment-channels can secure that inside the payment-channel the transactions are not hacked and safe? And how the bank guarantee the customers that they dont double spend the funds if inside the channel all transaction are totally anonymous?


texts:
I am trying to create a new crypto currency and i am struggling with creating genesis block with the bitcoin code. I am following this tutorial https://bitcointalk.org/index.php?topic=225690.0 and i believe the code is quite old.

I have changed the parameters and

genesis = CreateGenesisBlock(1515428732, 2018236893, 0x1d00ffff, 1, 50 * COIN);
   consensus.hashGenesisBlock = genesis.GetHash("");
   assert(consensus.hashGenesisBlock == uint256S(""));
   assert(genesis.hashMerkleRoot == uint256S(""));

but it is not compiling

chainparams.cpp:240:54: error: too many arguments to function call, expected 0, have 1
        consensus.hashGenesisBlock = genesis.GetHash("");
                                     ~~~~~~~~~~~~~~~ ^~
./primitives/block.h:63:5: note: 'GetHash' declared here
    uint256 GetHash() const;
    ^
chainparams.cpp:333:54: error: too many arguments to function call, expected 0, have 1
        consensus.hashGenesisBlock = genesis.GetHash("");
                                     ~~~~~~~~~~~~~~~ ^~
./primitives/block.h:63:5: note: 'GetHash' declared here
    uint256 GetHash() const;

I have checked the debug.log but i dont see new values for hashGenesis and Merkel root.

229tx)
2017-09-07 13:40:39 UpdateTip: new best=00000000000008838dc29dd8f585e69dc53731d6de106179c6a76b1b20c31396 height=177243 version=0x00000001 log2_work=68.044269 tx=2915938 date='2012-04-26 03:22:53' progress=0.011538 cache=210.7MiB(789124tx)
2017-09-07 13:40:39 UpdateTip: new best=0000000000000729fce8abd24f2abb7f1080f603a7d5f75794c79afec3efbadd height=177244 version=0x00000001 log2_work=68.044301 tx=2915981 date='2012-04-26 03:11:31' progress=0.011539 cache=210.7MiB(789104tx)
2017-09-07 13:40:39 UpdateTip: new best=000000000000016217c799e6d414cbd420da4a134a3b1a9b30f728b7da81d6d9 height=177245 version=0x00000001 log2_work=68.044333 tx=2916006 date='2012-04-26 03:09:07' progress=0.011539 cache=210.7MiB(789117tx)


texts: Strongest vs Longest chain and orphaned blocks

texts:
Satoshi writes at the bottom of page 3 of his white paper that "If two nodes broadcast different versions of the next block simultaneously, some nodes may receive one or the other first. In that case, they work on the first one they received, but save the other branch in case it becomes longer." It seems here that the correct chain is the longest one, although maybe satoshi was just being a little careless with phrasing.

However, I have read other places that nodes choose the correct chain in Bitcoin by selecting the chain that represents the most work (or, in other words, the chain that would be hardest to undo). I'll call this the strongest chain. This is not necessarily the same as the longest chain since, for example, it is conceivable to have a block which took many more hashes to find a valid nonce than two other blocks with a much easier difficulty level. This stack exchange is one place that I have read this.

Question 1: Which is the correct method that nodes use to determine the correct chain, longest chain or strongest chain?

My second question is more relevant if the answer to question 1 is that the correct chain is the strongest chain. It relates to orphaned blocks.

If the correct chain is the one that represents the most work then why are orphaned blocks such a problem? It seems like if a node solves a block and broadcasts it then everyone will know about it in a matter of seconds and then can start mining on the new block without any wasted work. Even if 2 miners solve a block at (near to) the same time, most blocks will see the two new blocks and choose the one with the lower header hash (because it is harder to find lower hashes). It seems that the nodes should come to a consensus in a matter of seconds then, if the correct chain is chosen by strongest (rather than longest) chain. The only time that a miner could spend working on the wrong chain would be time spent mining between receiving a solved block which is soon after replaced by a different solved block with a slightly lower hash. How long could that be, 10 sec?

Question 2: Are orphaned blocks a big problem for miners? If the block generation time were 1 minute, instead, would orphaned blocks be a much bigger problem?


texts: How is the difficulty of bitcoin mining propagated?

texts:
Let's say the current difficulty is set as finding a hash with 4 leading zeroes; once this is found, a block with this hash is propagated. Every client that receives this block checks that it has 4 leading zeroes and accepts this block as valid, adding it to their own chain.

My understanding is that the only information a miner sends out, when he solves his hash, is this block he has created (containing the solved hash and details of all the transactions that he used when creating the hash). This information, and only this information, then propagates to the rest of the network.

Now, how does the "central bitcoin server", or whatever it is, then propagates the change in difficulty every 2 weeks? Would it require everybody to update their client software to recognize that new blocks are only valid if they now have 5 leading zeroes, or is there some genius mechanism that I'm missing? On a side note, I don't really understand how forks are resolved; is this relevant to how this issue is dealt with?


texts: How do I get started in finance & market analysis?

texts:
I'am currently new to bitcoin & doesn't any finance or market background, currently I got huge interest to how this currency system will affect our life, as I spend more and more time reading about bitcoin, then I feel I need more knowledge about how finance world work, and how to do market analysis.

Can you give me a point where I should start learning about finance especially the one is connected to this bitcoin things?


texts: I had a business send me BTC to my exodus wallet.  The transaction is confirmed but about half of the transactions including mine say unspent.  It's been 4 days now.  Can I do anything to help the process?


texts:
I have a wallet.dat file from an old computer which was last accessed around February 23, 2012 which I need to restore into a newly installed Bitcoin Core program on a new computer.

Can I just install the latest version of Bitcoin Core on the new computer (making sure the program is not running) and copy the wallet.dat file over the new empty wallet.dat file in the C:\users\username\AppData\Roaming\Bitcoin\wallets  folder and restart Bitcoin Core?
Must I install the same old version of Bitcoin Core I had previously had installed on an old Windows Vista machine back on February 23, 2012 prior to restoring the wallet.dat file as described above?   If so, what files will help me figure out exactly what version of Bitcoin Core I had been running back on February 23, 2012 and where can I find that version of Bitcoin Core to install on Windows 10?

Thank you!


texts: Is Google Authenticator really useful on blockchain.info?

texts:
blockchain.info hosts encrypted wallets, and all decryption is done locally, so having a Google Authenticator bound to a wallet only prevents an attacker from downloading that encrypted wallet.

Now, assuming the passphrase is good, having an encrypted wallet is perfectly useless if you do not know the passphrase.

So the two-factor authentication would provide any benefit only to people with non-good passphrases... but that wouldn't be a real solution: they ought to change passphrase anyway!

Hence, I can't come up with any situation were enabling two-factor authentication on blockchain.info provides any meaningful benefit.

Am I missing something?


texts: How can I get the transaction version from a hex dump?


texts: cgminer: how to read the ASIC temperture

texts: I don't mind buying an IR thermometer but it there a way to read the temperature of the ASIC from the command line? I am using cgminer.


texts: An App for Crypto Currency Tax Declaration

texts:
For my tax declaration, I would like to use an app that allows me to scan all my transaction.
Do you know one ? Or are you interested to use one ?

Thanks


texts:
This NY Times article says a Chicago law firm is representing Mt. Gox customers in a lawsuit against that company.  I had a small about of bitcoin in a Mt. Gox account.  The law firm has not contacted me to sign me up as a member of the class.  Would it be worthwhile to contact them in order to be included?

http://dealbook.nytimes.com/2014/03/05/plaintiffs-in-suit-seek-to-freeze-mt-goxs-u-s-assets/?_php=true&_type=blogs&_r=0


texts: How to integrate bitcoin payment in ASP.Net?

texts:
I am new to Bitcoin. How to integrate Bitcoin payment into my one of website which is designed using ASP.Net.

Also how to test it using Sandbox mode as provided by other gateways like PayPal?

Regards


texts: How will internet "take-down" affect bitcoin value?

texts: What will happen to the value of bitcoin in the immediate aftermath of an internet "take-down?"  I assume that it will be temporary, but wouldn't this cause the comparative price of bitcoin be adversely affected due to the panic?


texts: What is the benefit of having a fixed target block interval?

texts:
By design Bitcoin targets a block interval of 10 minutes.

How does the blockchain benefit from maintaining a bounded block time?


texts: In the case of a criminal investigation, how does one knows which exchange or wallet service a bitcoin address belongs to?

texts:
How it was found that the Dao hackers used shapeshift?

In a more practical exemple, how to find that 13qCK9VzJCicXeh47W59rh7A6tfun92Sr5 belongs to https://www.blockchain.com using only block explorer data?


texts: Electrum-personal-server isn't seeing any historical transactions; using a Trezor

texts:
I followed the instructions in the Electrum Personal Server guide. I know that the transactions are there because I checked wallet.trezor.io. But none are showing up in Electrum. I have run --rescan. I have bitcoind running in the background as a full node.

The instructions are here: https://github.com/chris-belcher/electrum-personal-server


texts:
I am not very familiar with php but I just want to know how this works. I am trying to use the blockchain API to send some money for testing purposes but the transaction isn't taking place. My current code is this :-

<?

$guid="xxxxxxxx";
$main_password="xxxxxxxx";
$amount = "50000";
$to = "xxxxxxxx";

$json_url = "https://blockchain.info/merchant/$guid/payment?password=$main_password&second_password=$second_password&to=$address&amount=$amount&from=$from&shared=$shared&fee=$fee&note=$note";

$json_data = file_get_contents($json_url);

$json_feed = json_decode($json_data);

$message = $json_feed->message;
$tx_hash = $json_feed->tx_hash;

?>

Please tell me what is the error in my code and also how to print out the response on the screen.


texts: What coin offers a decentralized ledger, without mining and transaction costs?

texts: How much will transaction fees eventually be? describes that current transaction fees are untenable. The transaction cost for users, I think should be the only upward driver for the price of bitcoin. Ripple has played out the transaction cost economy by centralizing the transaction processing (if I understand correctly). But, this is because traditional banks already have a real 'reputation to uphold', which is of course a reputation of paying enormous fines for untoward doings. Anyway, what coin offers a decentralized ledger, without the mining and transaction costs?


texts: what will happen to coins on the other fork?

texts:
I've received at least one notification about a company that will/will not support the hard fork. does that mean if their side of the fork falls out of favor, I will lose any coins kept with them?
if so how should I move my coins so that they won't be lost?


texts: What happens between submitting a transaction to the network and it being confirmed?

texts:
I am very new to bitcoin, appreciate any help that I can get for below queries.
1) Is there any way (site or app) to know, to which node my current (latest) transaction is headed to? Does it go to one node or many before included into block? Probably it is going to the pool, where it will be picked to included in the block. So do we know which pool it landed in?

2) How to know, how many miner are currently working with my latest transaction, which is yet to be included into the block? Here is my understanding, more than one miner can include one transaction and all may not have same transactions. So how to know who all are working on this

Kind Regards


texts: How do I deposit money to a bitcoin account from a credit card?  I just need to pay an acquaintance something I owe him and he wants it added to his bitcoin account