texts: What's the deal with "legacy" and "segwit" wallets?

texts:
I'm new to bitcoin, but I've already read about "legacy" and "segwit" wallets. At the beginning, I created a segwit wallet, given that it was described as a new standard. But then I found out that a market that I use can't send me bitcoin to this wallet because they use a legacy wallet. Later I read that it's impossible to transfer bitcoin between those two kinds of wallets. Is it true? If so, what's the idea? Because to me it doesn't make any sense. Especially that a new standard is probably created in order to obsolete the old standard and develop whole network using the new standard. Does it mean that my bitcoin in a legacy wallet in a certain point of time will be useless?
I tried this kind of transfer (legacy -> segwit) using Electrum and it didn't work. Does software matter?
When it comes to paper wallet created on bitaddress.org, which type is it? What kinds of problems with compatibility can it create?
Here it is said: "there is no general issue preventing a wallet from generating addresses of various output formats". But Electrum asks you what kind of wallet you want to use in the beginning, when you create the wallet. So... there must be some issue.


texts: How to block a Ripple account from a Gateway's perspective?

texts: I heard a few months back that Ripple enabled users to set their account to block other accounts from holding their IOUs. A feature probably aimed at Gateways to be able to freeze balances of blocked users and so forth. I am wondering, is there a documentation and a step-by-step guide for this functionality available anywhere?


texts:
I have BAMT running on my rig but I don't think the email alerts are working, possibly due to a bad config.

I would like to use Google's SMTP server if possible (or any other free SMTP provider) but Google's uses TLS, which isn't supported in the BAMT configs I believe, so if this isn't possible (and no other free SMTP servers are available), how would I go about setting up my own SMTP server on the rig?

Thanks


texts: Recover old ufasoft coin wallet from a wallet.db file

texts: I found a wallet.db on my computer which was used with the Ufasoft Coin application. Of course I want to see if there is anything left in this wallet so I downloaded the Ufasoft software from some shady download page but I can't find any way to open the old .db file, anyone tips?


texts: Error: Unknown network starting a bcoin node

texts:
Getting an error Unknown Network running a bcoin node, but I'm not sure what's causing it since I'm defining the network very quickly.

Error Message:

(node:10579) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: Unknown network.
(node:10579) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

Here is the bcoin script

var bcoin = require('bcoin').set('testnet');

(async () => {
  var full = new bcoin.node.FullNode({
    network: bcoin.network.get().toString(),
    httpPort: 18332,
    httpHost: '127.0.0.1',
    bip37: true,
    listen: true,
    passphrase: "secret",
    logLevel: "info",
    loader: require
  });

  if (!full.config.bool('no-wallet') && !full.has('walletdb')) {
    const plugin = require('/Users/<user>/Projects/bcoin/lib/wallet/plugin');
    full.use(plugin);
  }
  await full.open();

  setUpWalletWatcher(full.pool, full.walletdb);
  await full.connect();
  await full.http.open();

  full.startSync();

})();


texts:
How many bitcoin clones are out there?

I mean people changing the name, the hashing algorithm and a few more parameters and creating a new coin that just keeps on copying bitcoin's source code in eternity?

Is there a list of those somewhere?


texts: Unconfirmated bitcoin transaction, 1 day ago. Need Help

texts:
A friend have sent me money trough bitcoin.
My transaction address is the next:https://blockchain.info/fr/tx/0e1d1862c344c6ea6c2036bdc85f1dd1a6e366b7ba1db2716d063b96d7290fb0

I don't understand why I have 0 confirmation. If someone can help I can send 10$ free. Thanks


texts: Is there a list of provable solvency implementations? It appears to be that each company is taking their own unique swing at the problem. This strikes me as an area that could benefit from standardization.


texts: Need to access remote bitcoin node for Lightning

texts:
I am running a full node on a static IP and I can open up whatever ports needed to communicate with that node.

I need to figure out how to communicate with that full node remotely.  I want to run an implementation of lightning but don't know what is best to use, LND, C-lightning, Eclair, etc.

I will be traveling and will have my lightning on a USB stick and then want to communicate with my remote full node.

Is this even possible ?


texts: BTC wallet: Missing the 4th word of my 12 word pass phrase

texts: I wrote down my 12 word phrase on a couple of separate sheets.  1 of those got tossed out. have it all put together from the remaining shreds, and from memory. I am literally only missing the 4th word in the sequence... DO I HAVE A REAL change at recovery my wallet??  Thank you.


texts: I mistakely pasted my own blockchain recieving address in the send slot

texts:
I mistakely pasted my own blocchain receiving address in my Send slot to send BTC to friend.  I usually recieve a Either send or recieve responds in my record, but this time I got a TRANSFERRED respond.  Even it was my own receiving address and took 100 confirmation blockhain never returned those BTC back to my own wallet.  You think that even if I used my own receiving address will i get back those BTC?
Thanks,
Albert


texts:
I have asked similar questions in the past, But I didn't get a clear answer yet. I have my bitcoins in a paper wallet, Everywhere I am reading that exchanges like yobit,hitbtc etc will support bitcoin gold if the bitcoins were in their wallet before the fork happened. Which in my case is still in my paper wallet. So now, to which wallet I should import/transfer so that I can claim bitcoin gold.

Regards,
Bince


texts:
When I start up my Bitcoin core, it says "loading block index". Does this indexing occur on my local machine or does this mean my wallet fetches the latest block info, more specifically the block height?
What is the purpose of this block indexing?
Thanks


texts: What's the longest chain of orphan blocks? (How many confirmations have been necessary?)

texts:
I believe my two title questions are the same (are they?):

Heretofore, what is the longest chain of orphan blocks (of N blocks), such that if someone didn't wait for N+1 confirmations, they may have assumed transactions to be completed when they were not.

For example, on the wiki's blockchain article, it shows orphan chains of two blocks (N=2). In this case, 3 confirmations would have sufficed to confirm transaction with absolute accuracy. https://en.bitcoin.it/wiki/File:Blockchain.png

I ask because it seems 120 confirmations is the gold standard, if you will, as generated bitcoins take that long to confirm. Most other transactions are considered irrevocable at 6 blocks, but what has been the minimum, thus far?

PS. Is this question even answerable!?


texts: Does Electrum use Bitcore Apis as it's backend?

texts:
Does Electrum use Bitcore Apis as it's backend or not?

If not, then what is the purpose of developing Electrum when Bitcore Apis provides all the features Electrum has (like HD wallets and master seeding)?


texts: Although I can see all transactions in my "wallet activity" I pasted my wallet address into Blockchain Explorer expecting to see the history of transactions in that wallet. It directs to a page that shows no transactions....what am I missing and how can I see this info on the Blockchain?


texts:
https://github.com/blockchain/api-v1-client-php <== php files im working with.

When i do my first test with this new api i start off with the inits

<?PHP
// Include the autoload.php from its vendor directory
require 'vendor/autoload.php'

// Create the base Blockchain class instance
$Blockchain = new \Blockchain\Blockchain();

// Needed before calling $Blockchain->Wallet or $Blockchain->Create
$Blockchain->setServiceUrl('http://localhost:3000');
?>

But when i do this it says...

"Parse error: syntax error, unexpected '$Blockchain' (T_VARIABLE) in C:\xampp\htdocs\bitcoin\index.php on line 6"

Composer package was compiled correctly and in the root folder.


texts: How can I spend my paper wallet directly?

texts: I am totally new to Bitcoin. Can you tell step by step, how I can spend a paper wallet directly? Or is it necessary to create a software wallet?


texts: Why is it harder to compute nonce for a hash with a certain number zero prefixes than it is for any other hash?

texts:
Based on my rudimentary understanding of Bitcoins and altcoins, network difficulty is adjusted by asking the network to target a hash smaller than a specific number, which translates to calculating nonce for a hash with a certain number of zeros prefixed to it.

Since hash values are supposed to be uniformly distributed, I don't understand why targeting a hash value with a specific number of zeroes is any more easy/difficult than targeting any other hash (not the hash value of the content without nonce obviously). I think targeting any of the possible hash values, except what the content already hashes to, should be equally difficult. Why is that not the case?

It's very likely that my understanding of Bitcoin network difficulty itself is wrong, in which case, could you please explain that to me?


texts: When trying to scan QR codes with Electrum 3.0.1 it asks for zbar software. I'm not sure which one to download as some of them might be unsafe. Which Zbar QR scanner should we download?


texts: How can a X-coin market cap go down while its value goes up?

texts:
Quoting Wikipedia, Market cap is given by the formula

MC = N × P
where N is the number of shares outstanding, and P is the closing price per share.

In the specific case of a crypto currency, one could assume that N is the amount of coins in circulation and P its current value.

How can the image below happen, given that Zcash, being a fork of Bitcoin, cannot (unless I missed something very important) be destroyed, thus N can only grow.

Source: coinmarketcap.com, a few minutes before this post


texts: Regarding Stellar as an Alternative currency transaction manager

texts:
I am working on an alternative currency.
We are not wedded to any particular software, but have definite term and conditions for participants.
Our own dispute resolution system, and standard of value.  One credit equals the median hourly wage for your community. We also impose a transaction fee of 2.5% to each party to support the institutions to manage dispute and legal documents and promote  the exchange.   We also are based on the lets system with equal positive and negative balances.

Could we potentially use your Stellar system to manage the transactions in a system such as this ?

Andrew Hill


texts: How to watch and use addresses generated from xpub

texts:
How to watch the addresses generated using xpub for incoming transactions? and Create transactions to send bitcoin to another address.

var bitcore = require('bitcore-lib');
var Address = bitcore.Address;
var PublicKey = bitcore.PublicKey;
var Networks = bitcore.Networks;

var xpub = 'tpubDFaw2mL2nZuxk9WeCTr5Y74xytQLqtxSet3FYigfTMX788gjZmd4juFYeLDchGMaXmjGeoy6FrULbZd9D8iogcPZyBeYfT5MAyqnaL8bMQb';
var hdPublickey = new bitcore.HDPublicKey(xpub);
var orderPublickey = hdPublickey.derive("m/44/0/4/0/0");
var pubkey = new PublicKey(orderPublickey.publicKey);
var address = Address.fromPublicKey(pubkey, Networks.mainnet);

console.log(address.toString());


texts: How profitable is mining with a ~1GH/s miner?

texts: I'm very new to bitcoin mining, so I just tried it out on my mac using MinerGate. I made about 0.000028 XMR in 7 minutes running at 200H/s, equating to $0.0008. I figured that at that rate of money flow, I could make around $9.7/sec with just a 1GH/s speed. This does not seem very possible at all. So where's the poop?


texts: What's the difference between sending and receiving address? I mean, if for mistake I asked to send a payment to my sending address, have I lost my bitcoin? TX


texts:
Does my Bitcoin-Qt wallet backup file have "everything" I need (private key)?

I mean, is that the file I would copy and store offsite in case my house burns down? Does it have my private key encoded in there?


texts: Would there be a problem introducing opening-balance transactions in bitcoin?

texts:
For example, every 10,000 blocks, the new block would propose an opening balance for all addresses that are still being mentioned in the blockchain with non-zero unspent outputs. It would be an opening-balance transaction.

All validating nodes must then recompute the opening-balance transaction and verify that it is correct, after which all previous transactions in the blockchain can be deleted/forgotten. It would effectively be a new genesis block.

It should allow validating nodes to free a lot of disk space and permit nodes with less capacity to participate in the network.

Is there a reason that prevents us from introducing this?


texts: Does full node store all valid forks and "alternative" blocks from blockchain history?

texts:
Forks are possible when mining the blockchain and happen "all the time" during mining.

This means the nodes monitoring the blockchain have recorded many forks during blockchain's lifetime, with some of non-main branches long several blocks.

Do nodes store all the branches from entire blockchain history?

EDIT: I read another question, and it is logical that the node should return the transactions from the "alternative" branch they were on to the memory pool (or discard them). But does this happen at the very same time when someone "shows" them longer branch, or they still somehow keep the alternative branches?


texts: Isracoin: What hashrate should I be getting with intel core i5?

texts: I'm only getting 13 kh/s using minerd with intel i5 and the lowfeemining.org pool. Shouldn't I be getting a better hashrate?


texts:
The current state of Bitstamps order book is available here:
https://www.bitstamp.net/api/order_book/

I want to analyze the history of the order book.

Do someone know if its available?


texts: If Btc2x doesn't have replay protection does that mean all transactions can be automatically replayed in btc2x?

texts:
I believe btc will have a lot higher economic activity at the time of the fork. If anyone sends funds in btc, what stops someone who don't like btc2x to just replay that same transaction on btc2x? This will shuffle around funds, to different adresses and cause lots of funds to end up in wallets that are never found.

One of the protections against replay attacks is to first move the other coin to a new wallet first, but if someone automatically moves the coins in the other wallet aswell by publishing the same transaction to the other network, this protection won't work.


texts: how does nEnforceBlockUpgradeMajority = * work in bitcoin?

texts: How does that forking mechanism work? Does it just check the last number of blocks and then does the fork? and what BIP # did they implement that?


texts: I know there are websites providing blockchain information, but I want to write some script to explore the blockchain on my own. How do I do it? Are there any document available online?


texts: What factors decides the number of tokens to generate?

texts: Tron has decided to generate 100B tokens with some initial price? What parameters do these centralised crypto owners consider before deciding the number and price of tokens?


texts:
The release notes of bitcoin-core suggest to just copy the bitcoind file, which appears on my system (Raspbian Butch) in /usr/local/bin.

Since I built from source using ./configure I wonder how this will influence my node. Is bitcoind really the only thing that gets changed with a new release?


texts: How many bytes does a Bitcoin address weight?

texts: One of the biggest issues of Bitcoin blockchain is the ever increasing size. Each address has a weight in bytes or bits. What’s holding someone from creating trillions of different addresses and breaking the block chain this way? Overflowing Bitcoin blockchain by creating addresses? Bitcoin blockchain is unbreakable so I heard. Can it be broken by forcing the size increase and making it unprofitable to run a full node?


texts: coinb.in wallet balance does not match "confirmed balance"?

texts: Coinb.in wallet amount is different from "confirmed balance"? Is this because an earlier incoming transaction hasn't actually completed?


texts: How did Nakamoto untraceably pay for registering bitcoin.org?

texts:
Wikipedia says "Nakamoto created a website with the domain name bitcoin.org" and "transferred several related domains", while bitcoin.org says it was "originally registered and owned by Bitcoin's first two developers, Satoshi Nakamoto and Martti Malmi".  A 2014 businessinsider.com article says bitcoin.org was first registered in 2008 via anonymousspeech.com, and that Malmi stated bitcoin.org was "originally created by Satoshi", and Malmi's first contact with Nakamoto was in 2011 when bitcoin.org was transferred to Malmi.
The article also says anonymousspeech.com accepted cash and E-gold.  Did Nakamoto pay for the original bitcoin.org registration, and used cash or E-gold (paid for with cash) to do that and keep his origins untraceable?  Or is it possible that somewhere in history is a non-anonymous payment of some kind that would finger Nakamoto?  For example, archive.org shows bitcoin.org was an actual hosted site at least by January 31, 2009.  Where was it hosted, and how and to whom was that hosting paid for?


texts: Who bitcoin get the transaction fee? part2

texts: I know this question asked before, but the answers give still make no sense to me.  The most common answer is "the transaction fee goes to the miner" I'm in a small mining community and nobody ever received a fee. So I'm curious who is are the people and companies who really receive the fees, because this seems to be real real big business.


texts:
Reading How does mining works and towards the end of the explanation,

  As more people start to mine, the difficulty of finding valid blocks is automatically increased by the network to ensure that the average time to find a block remains equal to 10 minutes.

But in Why do I have to wait for confirmation?

  Each confirmation takes between a few seconds and 90 minutes, with 10 minutes being the average.

Since "finding a block" is "confirmation" of a transaction, the above quotes seam like a contradiction.

The other question is why the difficulty increases when more mining power is available? one would thing the opposite should be true. I must be missing something. Any  explanation for this? Thanks


texts: Bitcoin Transaction Protocol Question (maybe specific to Coursera Bitcoin Lecture)

texts:
In the Coursera course "Bitcoin and Cryptocurrency Technologies" course, a coin called ScroogeCoin was introduced.

This coin is similar to bitcoin in that each transaction consists of a set of inputs and outputs. Inputs point to outputs from previous transactions with corresponding signatures, and outputs contain the value and address the value is applied to.

The protocol checks that (sum of input values) - (sum of output values) >= 0, and this difference is the transaction fee.

I feel that this condition is too loose and there may be a potential problem. For example, suppose Alice has a coin of value 50 and spends 100, while Bob has a coin of value 100 and spends 50. Both of these are in the same transaction. Then the protocol would allow this to pass.

I feel that the protocol should check instead

For all addresses, (sum of input values from address) - (sum of output values that is spending from address) >= 0

This is because the original protocol allows spending from someone else's address. This sounds like something that can be exploited e.g. an implicit money transfer from Bob to Alice is hidden. We can assume Alice and Bob are colluding to achieve this.

Is this benign?


texts: Difference between Outpoint structure returned from Blockchain.info and what is in the Protocol Specification

texts:
if you follow this link, you will see a specific bitcoin address. If you look closely at the prev_out field, it is not an outpoint structure. Inside of the protocol specification under transactions, you can find the outpoint structure.

The outpoint structure is:

Field Size Description  Data type   Comments
32  hash    char[32]    The hash of the referenced transaction.
4   index   uint32_t    The index of the specific output in the transaction. The first output is 0, etc.

Where as prev_out in the above query is structure as:

prev_out:{"spent":true,"tx_index":50341289,"type":0,"addr":"15e2tHrbiUd4RxnBmHKYorMysyKtk1ohXF","value":2000000,"n":0,"script":"76a91432e17777e35dedafd578ffd90fa21ea8835dd50e88ac"}

Why is this different? What am I misunderstanding? Is blockchain.info not following the Bitcoin protocol for transactions on their json messages?


texts: Where does the current Bitcoin Core currently fail static analysis, if at all?

texts:
I am looking into static analysis, and I'd like to know what to expect in the case of Bitcoin's main implementation, Bitcoin-Core.

That way, if I try static analysis on Bitcoin, I will know whether I've done it properly (e.g. I get something other than "Yay, everything's fine!" or "Boo, all is broken!").

There doesn't seem to be much out there beyond make check and some Github issues.

It could maybe stand some more independent research, but I want to check whether somebody out there knows this already (and is willing to subject themselves to the vagaries of the stackexchange communities enough to answer it).

What are the current known static analysis issues with Bitcoin core, if any?


texts: How to determine first byte (recovery ID) for signatures (message signing)?

texts:
I do realize that in bitcoin when we return the signature result for signing a message the first byte includes information for recovering the public key required for verification using a formula like this:

27 + (4 if comp. 0 if not) + (0<=num<=3)

What I am struggling with is how do we determine that num number?
According to section 4.1.6 of SEC:1 for recovering public keys:

x = r + jn
Calculate Q based on R if invalid move to next
Calculate Q based on -R

Since j (cofactor of secp256k1) is 0 and 1 and there are two values for R. So there should be 4 possible public keys. Is num the number of public keys that we rejected before reaching the correct one? Because that is the only explanation that I can come up with based on comparisons I have made between signatures generated using Electrum and public key recovery I have done myself using SEC1.

Bonus question: Why was 27 chosen?


texts: Why does bitcoin core appear to freeze while connecting to peers on startup?

texts:
When I startup bitcoin-qt (version 0.20.1.0) on linux, at the bottom of the app is the mesage "Connecting to peers... 4 years and 10 weeks behind". It appears that things are just frozen, no progress and the increase per hour says "calculating...". Estimated time left until synced is "Unknown...".
In the .bitcoin/debug.log file, it just keeps spitting out a lot of the following.
2021-03-10T20:26:47Z Disconnecting and discouraging peer 88.99.213.166:8333!
2021-03-10T20:26:47Z New outbound peer connected: version: 70016, blocks=674050, peer=61 (full-relay)
2021-03-10T20:26:47Z New outbound peer connected: version: 70015, blocks=674050, peer=62 (full-relay)
2021-03-10T20:26:48Z ERROR: AcceptBlockHeader: block 0000000000000000032864f2cd9a15916fdd8c4e2b49a4a9c1403152bdaa6259 is marked invalid
2021-03-10T20:26:48Z Disconnecting and discouraging peer 213.156.1.101:8333!
2021-03-10T20:26:48Z ERROR: AcceptBlockHeader: block 0000000000000000032864f2cd9a15916fdd8c4e2b49a4a9c1403152bdaa6259 is marked invalid
2021-03-10T20:26:48Z Disconnecting and discouraging peer 35.245.173.118:8333!
2021-03-10T20:26:49Z New outbound peer connected: version: 70015, blocks=674046, peer=63 (full-relay)
2021-03-10T20:26:49Z ERROR: AcceptBlockHeader: block 0000000000000000032864f2cd9a15916fdd8c4e2b49a4a9c1403152bdaa6259 is marked invalid
2021-03-10T20:26:49Z Disconnecting and discouraging peer 34.69.253.72:8333!
2021-03-10T20:26:49Z New outbound peer connected: version: 70015, blocks=674050, peer=64 (full-relay)
2021-03-10T20:26:51Z New outbound peer connected: version: 70015, blocks=674050, peer=65 (full-relay)
2021-03-10T20:26:51Z ERROR: AcceptBlockHeader: block 0000000000000000032864f2cd9a15916fdd8c4e2b49a4a9c1403152bdaa6259 is marked invalid
2021-03-10T20:26:51Z Disconnecting and discouraging peer 37.187.117.39:8333!
2021-03-10T20:26:51Z New outbound peer connected: version: 70015, blocks=674050, peer=66 (full-relay)
2021-03-10T20:26:52Z New outbound peer connected: version: 70015, blocks=674050, peer=67 (full-relay)
2021-03-10T20:26:53Z ERROR: AcceptBlockHeader: block 0000000000000000032864f2cd9a15916fdd8c4e2b49a4a9c1403152bdaa6259 is marked invalid
2021-03-10T20:26:53Z Disconnecting and discouraging peer 47.96.111.238:8333!
2021-03-10T20:26:54Z ERROR: AcceptBlockHeader: block 0000000000000000032864f2cd9a15916fdd8c4e2b49a4a9c1403152bdaa6259 is marked invalid
2021-03-10T20:26:54Z Disconnecting and discouraging peer 75.148.91.168:8333!
2021-03-10T20:26:58Z New outbound peer connected: version: 70015, blocks=674050, peer=68 (full-relay)
2021-03-10T20:26:59Z New outbound peer connected: version: 70015, blocks=674050, peer=69 (full-relay)

Also, I do run a VPN, but even a few days ago things were working ok.
Thoughts?
Update:
I've run ...
$ bitcoin-qt --reindex

And this eventually leads to a segfault.


texts: Is there a known way to export my wallet private key from the "Bitcoin Android" app (com.bitcoinandroid)?

texts:
A while back, I installed the Bitcoin Android app and moved 5 BTC on it. Fast forward to now, new phone, new ROM, and the app seems completely unwilling to update its blockchain, meaning I have no way to move my BTCs  elsewhere.

Looking at the source, it's built on an early version of BitcoinJ, where the wallet file is essentially a serialized Wallet class.

A look at the wallet file itself isn't too friendly, although I'm sure the private key is somewhere in there in a relatively straightforward form.

So, that leaves me with the following possibilities:

write a little Java app that links against the same version of BitcoinJ, load the Wallet file, grab the private key and print it.
write a really dumb script that extracts every 32 bytes sequence from the wallet file, treat it as a private key, map it to a public key, check blockexplorer.com for any activity associated with it. Or just import every one of those sequences into a bitcoin client and let it suffer.

Before I embark on my Quest For Five Bitcoins, is there already something out there that can parse BitcoinJ wallet files and export keys from them?


texts:
I'm asking about legal concerns, not technological ones. If I'm based in the USA, should the exchange be a US company? If not, where should it be based?

How is banking set up?


texts:
Use Case

My use case is around a scenario where both customer and merchant possess offline wallets with a balance that has had confirmation on the blockchain.

To begin with, let us say that, the merchant and the buyer's wallets show balances of 20 BTC and 10 BTC respectively. These balances are the one that are confirmed on the block-chain.
Then, let there be multiple transactions between the merchant and buyer such that the balance is always updated locally in the wallets only.
All of the transactions, in 2 above, happen in an offline mode; i.e. no access to network. The period of no access can run into days.
Sometime, in the future, when either/both of the wallets are online, all the offline transactions are published to blockchain and are confirmed.

Blockchain Sync

There are two things that can happen at this point.

First, the wallets are so secure that, all updates (credits and debits) happen locally without ever having to 'sync' up with the blockchain. The only time the wallets may sync with blockchain is to post the transactions and their sequence; and, also to update their wallet with the credits that happened since the last time the wallet went online. Or, regulatory pressure requires posting transaction data every set frequency.

Second, all credit updates are made to the wallets via the blockchain. This requirement is enough motivation to seek network connectivity; even if it is once in a week or fewer.

Question

In either case, we are looking at a scenario, where a value, confirmed by blockchain, is used in transactions offline to be confirmed online later. How do we implement this?

Analogy

Bus conductors may issue tickets with an offline machine to passengers who board the bus at various points throughout the journey. When the bus reaches its destination, the machine is used at the depot to arrive at a list of tickets sold and the amount collected thereof. Thus, this is an example of an offline transaction where transactions are 'settled' when 'connectivity' is eventually available.

Spawned off of: https://bitcoin.stackexchange.com/a/41356/6975


texts: Add wallet feature to bitcoind (full node) after installation with --disable-wallet

texts:
I installed bitcoind with this configuration:
`./configure --without-gui --disable-wallet`

However, after it finished downloading the blockchain for a week, now I realize I actually do need the wallet feature. Is there a way to add it back (without another week of verifying the blockchain)?


texts: I understand that an address is needed to send Bitcoins to other people, but I do not understand why you are recommended to generate a new address for each transaction. Also, I have read that an address can be saved for easy payment in the future, but I don't understand how this function would be possible if new addresses are generated every payment. Thanks so much for your time and help! It is much appreciated.


texts: Is the following a valid bitcoin private key? - FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFE

texts:
In secp256k1 (Bitcoin's elliptic curve) it is defined that valid private keys may range from 1 to FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFE BAAEDCE6 AF48A03B BFD25E8C D0364141 - 1. (https://crypto.stackexchange.com/questions/30269/are-all-possible-ec-private-keys-valid)

However I created an EC Keypair with the private key being FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFE imported it into bitcoin core and sent a small amount of btc to the corresponding bitcoin address. I was able to spend these coins. Does that mean that bitcoin does not follow this restriction and any combination of 256 bits is a valid private key for bitcoin? Or might it be a bug that could get fixed in future?

I'm currently myself deriving bitcoin private keys/addresses from a seed and importing them via json-rpc. I saw that implementations of e.g. BouncyCastle check whether an EC is in that forbidden range. I currently don't do that but I also think that even if bitcoin wouldn't accept such keys the probability of deriving a private key in that forbidden range is too low to justify the additional implementation complexity (at least in my case). Is that problematic?

Update -
Here's how I created the private key:

byte[] privKeyBytes = {1,1,1,1,1,1,1,1,...,1,1,1,0};
byte[] version = { (byte) 128 }
byte[] privateBytesPlusVersion = MyUtils.concatenateByteArrays(version, privKeyBytes);
byte[] versionPrivateAndCompressed = MyUtils.concatenateByteArrays(privateBytesPlusVersion,
            COMPRESS_BYTE);
byte[] checksum = getChecksum(versionPrivateAndCompressed);
byte[] versionPrivateCompressedAndChecksum = MyUtils.concatenateByteArrays(versionPrivateAndCompressed,
            checksum);
String privKeyDump = Base58.encode(versionPrivateCompressedAndChecksum);

The Base58 class is from BitcoinJ. I then imported this string via json-rpc with importprivkey

Update2 -
As Pieter Wuille pointed out I had an error as privKeyBytes {1,1,1,...,1} is not 'FFFFF...FFF'. I tried to import such a private key again and bitcoins rpc interface answered with an error: "Private key outside allowed range". I'm still tempted to not check for this range as the probability of me generating something with 120 1 bits at the beginning seems low enough to discard that case.


texts:
What will incentivize miners to keep processing transactions after bitcoin production slows down and or stops?
I understand that miners could work off fees, but are these costs per transactions for the consumer cheaper than they are now with the current credit card system?
If the suggestion is just for the consumer to send bulk transactions instead of individual payments, what stops someone from buying coffee and then not sending it?


texts:
Is there a bitcoin wallet that works on Amazon Fire Phone?
I can't find any.
Thanks


texts: How to restore the original mnemonics from shares?

texts:
I just read that an original mnemonic can be split into parts, I am a little confused about how the system can restore the original mnemonic from these mnemonic pieces.
example i have mnemonic
radar warm pizza grief worth attack van ribbon milk surface guitar bachelor

and then i split and get 5 shares mnemonic
1. demise reopen sort defy forward gorilla live cannon scan large thing action
2. arch peasant act box try install indicate organ tourist hungry biology thought
3. gun win grace exhaust movie sail cable news bundle glide bright minimum
4. load sunny bicycle dragon ghost sort turtle buzz orbit slender bargain photo
5. recipe snake submit gentle squirrel tattoo boy penalty sail summer tongue dove

The three 3 shares that I combined, turned out to be really the original mnemonic. but here I have a question. If I only remember 2 of the 5 mnemonic shares, can I recover my original mnemonic? if possible please show me how?
thank you


texts: Multiple Currency Pairs returned in Single API Call

texts:
Does anyone know where can I find an API that outputs an array of cryptocurrencies (BTC, ETH, LTC, etc.) converted to USD?

For Example:

www.somesite.com/api/rest/baseCurrency=USD

Returns:

{
    "Data": {
        "BTC": {
            "Id": "1231",
            "Name": "Bitcoin",
            "CurrentAsk": "4481.01"
        },
        "ETH": {
            "Id": "3242",
            "Name": "Etherium",
            "CurrentAsk": "322.09"
        },
        "LTC": {
            "Id": "4354",
            "Name": "Litecoin",
            "CurrentAsk": "73.57"
        }
    }
}

I'm aware that I can make multiple API calls to get this information, but would rather retrieve the information I'm looking for in a single call.

Thank you


texts: Why can't Grover's algorithm be used for bitcoin mining?

texts:
Similar questions have been asked before:

Can quantum computing improve Bitcoin mining?

Can a Qubit Miner ASIC device be created and what would its impact be on the mining community?

However, none of these answers give me a clear indication as to why Grover's algorithm can't be utilized for bitcoin mining. If the current difficulty of bitcoin mining is about 15,466,098,935,554 (approximately 2^44), which means that it would take about 2^44*2^32=2^76 SHA256 hashes before a valid block header hash is found.

However, by implementing Grover's algorithm, it would take only sqrt(2^76)=2^38 hashes to discover a valid block header hash. A 38-qubit quantum computer should be sufficient in this case. Quantum computers of this size have already been built (the largest quantum computer is 72 qubits, to my knowledge).

Therefore, why isn't it feasible to use a quantum computer to mine bitcoin by implementing Grover's algorithm? Did I get something wrong? I'm not too familiar with encryption and quantum algorithms, so please correct me if I missed something......


texts: Would the existance of other cryptocurrencies negatively effect Bitcoins?

texts: Would the existence of other cryptocurrencies negatively effect Bitcoins? It seems that other forms of cryptocurrencies would be competition to Bitcoins. Alternately, would it be like having other currency units like real money where the English pound and US dollar do not compete?


texts: In bitcoinj, why is MemoryBlockStore not used by default?

texts:
My understanding of bitcoinj is that it is used to implement a "thin client" that doesn't store the entire blockchain- just the headers.

When I use the WalletAppKit, it creates a file "default.spvchain" that is 626Kib. This could easily fit in memory, so why is SPVBlockStore (using memory mapped file) used? Wouldn't MemoryBlockStore be a better choice?


texts:
If the money supply of Quarkcoin is 257 million QRK, what will be the incentive for miners to mine 1 million coins a year?

What does it mean for the currency if almost nobody is mining it?

Also why does Quarkcoin claim that their Proof of Work hashing is more secure? How is the security of the currency increased by adding hashing functions?


texts: Whose to stop the coinbase devs from just draining all accounts and running of with the money?

texts:
I have been wondering, what would happen if the coinbase developers agree to drain all the funds of all their accounts and run off into hiding?
Its not like anybody will be able stop them or return the coins and their profits will be immense. So what incentive do they have to keep peoples funds safe?


texts: What exactly is the input for the Hash pointer in block k+1?

texts:
I'm not sure how to ask this question clearly so I will ask it three different ways and hopefully someone understands me.

Is the input for the hash pointer in block k+1 just the transactions in block k or is it the transactions in block k as well as the hash of block k-1?
Does the hash pointer in block k+1 look like this : H(k) or this : H(k||H(k-1))?
In block k+1, there is a bunch of data as well as a hash pointer for the block k. But does block k+1 contain a hash of the entire block k (so, the data and H(k-1))? Because if block k+1 contained a hash of the entire block k then it should contain a hash of the hash already contained in block k right?

I hope I made some sense. Any help is appreciated.


texts: How to push a raw transaction using BitcoinJS (and Request)?

texts:
I'm using BitcoinJS to create a playground for Bitcoin transactions.
I have created the following Javascript file:

const request = require('request');
const proxiedRequest = request.defaults({proxy: "http://localhost:3128"});
const Btc = require('bitcoinjs-lib');
const TestNet = Btc.networks.testnet;
const apiUrl = 'https://testnet.blockexplorer.com/api/addr/';

let privateKey = <my private key>;
let wallet = new Btc.ECPair.fromWIF(privateKey, TestNet);
let publicKey = wallet.getAddress();
console.log("my public key:", publicKey);

let tx = new Btc.TransactionBuilder(TestNet);

let amountWeHave = 100000000; // 1.0 BTC
let amountToKeep = 90000000; // 0.9 BTC
let transactionFee = 1000; // 0.0001 BTC
let amountToSend = amountWeHave - amountToKeep - transactionFee; // ~0.1 (0.0999)

tx.addInput(<one of my input transactions>, 0);

tx.addOutput(<destination public key>, amountToSend);
tx.addOutput(publicKey, amountToKeep);
tx.sign(0, wallet);

let tx_hex = tx.build().toHex();

proxiedRequest.post({
    headers: {'content-type' : 'multipart/mixed'},
    url:     'https://testnet.blockexplorer.com/api/tx/send',
    body:    tx_hex
}, (error, response, body) => {
    console.log('error', error);
    console.log('body', body);
});

Here is my output:

my public key: <my public key>
error null
body TypeError: Cannot read property &#39;toString&#39; of undefined
 &nbsp; &nbsp;at Array.types.str (/home/bitcore/lib/bitcore-node/node_modules/bitcoind-rpc/lib/index.js:260:17)
 &nbsp; &nbsp;at RpcClient.&lt;anonymous&gt; (/home/bitcore/lib/bitcore-node/node_modules/bitcoind-rpc/lib/index.js:236:35)
 &nbsp; &nbsp;at Bitcoin.sendTransaction (/home/bitcore/lib/bitcore-node/lib/services/bitcoind.js:1791:15)
 &nbsp; &nbsp;at Node.self.(anonymous function) [as sendTransaction] (/home/bitcore/lib/bitcore-node/lib/node.js:223:27)
 &nbsp; &nbsp;at TxController.send (/home/bitcore/dev/insight-api/lib/transactions.js:290:13)
 &nbsp; &nbsp;at Layer.handle [as handle_request] (/home/bitcore/lib/bitcore-node/node_modules/express/lib/router/layer.js:95:5)
 &nbsp; &nbsp;at next (/home/bitcore/lib/bitcore-node/node_modules/express/lib/router/route.js:131:13)
 &nbsp; &nbsp;at Route.dispatch (/home/bitcore/lib/bitcore-node/node_modules/express/lib/router/route.js:112:3)
 &nbsp; &nbsp;at Layer.handle [as handle_request] (/home/bitcore/lib/bitcore-node/node_modules/express/lib/router/layer.js:95:5)
 &nbsp; &nbsp;at /home/bitcore/lib/bitcore-node/node_modules/express/lib/router/index.js:277:22

Can you tell me what's wrong with my code?
It seems to be a server problem...


texts: AntMiner S5 chain #2 intermittently operational

texts: Why is my AntMiner S5 chain only intermittently operational? What could cause this, how could I diagnose it, and what is the solution? Will BitmainTech replace it for me? How do I know if it's under warranty? Is there a warranty?


texts: only getting 52khs on Litecoin mining with a Nvidia GTX670

texts:
I want to give mining a try with the current video card i have. I know its not good for mining but its a start. I use cgminer and link it with WeMineLTC. For some reason I only get 52 KHash/s. I saw my GPU is at 100% and it isn't overclocked. What should be the reason I only get this low hash per second? I saw on this page it should be around 112 000 KHash/s.

This is my bat file

cgminer.exe --scrypt -o stratum+tcp://global.wemineltc.com:3335 -u workIt -p totallymypsw -I 13


texts:
When I run any bitcoin-cli command I get the following message:
error code:-28
error message:
loading block index...
As far I know this error means Client still warming up, so I should wait a few minutes, however after an hour still get the same message, even if I run bitcoin-cli stop get this error.
Any ideas what might be happening?


texts: I stumbled on the terms "ASIC" and " ASIC Miner", what do they mean? Is this something related to special hardware?


texts:
What does a double spend look like? Can anyone link to an example on blockchain.info?

Will invalid half of the double spend simply remain at 0-confirmations, or might it ever reach 1 or 2? Will the standard bitcoind client provide any type of flag for known invalid transactions?


texts: building a multisig transaction using RPC

texts:
I´m trying to build a multisig transaction using RPC. Till now my code looks similar to this:

At first I get the unspend outputs calling listunspend()

With those UTXOs I´ll try to create the rawtransaction:

createrawtransaction
'[
{"txid":"03a4ffcc792525b4ddaecc05054114f2ad8aff8b7563cd41cdb496e2177d0117","vout":0},
{"txid":"03a4ffcc792525b4ddaecc05054114f2ad8aff8b7563cd41cdb496e2177d0116","vout":0}
]'
'{"mwCwTceJvYV27KXBc3NJZys6CjsgsoeHmf":0.05}'

The result of this call I use for signing:

signrawtransaction
020000000117017d17e296b4cd41cd63758bff8aadf214410505ccaeddb4252579ccffa4030000000000ffffffff0100b4c404000000001976a914ac19d3fd17710e6b9a331022fe92c693fdf6659588ac00000000
'[
    {"txid":"03a4ffcc792525b4ddaecc05054114f2ad8aff8b7563cd41cdb496e2177d0117","vout":0,"scriptPubKey":"a91421ce1507d06ed2742be0bf18a018bbcdd812a26487","redeemScript":"00149835f2e0dff9d7f6a4060140696bc7e00b12edd5"},
    {"txid":"13a4ffcc792525b4ddaecc05054114f2ad8aff8b7563cd41cdb496e2177d0116","vout":0,"scriptPubKey":"b91421ce1507d06ed2742be0bf18a018bbcdd812a26486","redeemScript":"10149835f2e0dff9d7f6a4060140696bc7e00b12edd6"}
]'
'["cMahea7zqjxryy6NWaKxmhDyb1JzuNKCZAg8sxaJoXSBkRXjnib9"]'

At this point I get the error Missing amount and I can´t figure out why.
I´m not sure which values to use for the signrawtransaction() call. Should I use the same txid and vout values as for the createrawtransaction? Where do I get the correct scriptPubKey and redeemScript values from?

Note: the provided txid´s and addresses are only samples (maybe not valid) and not the ones I´m using for my code.

UPDATE:

Latest unsigned raw transaction in BTC live net:

020000000195b96fa7fff141564feba34cb669bdeb94953c98ae864465623def3fbe9e9fb10100000000ffffffff01e87a0100000000001976a914d05bddfbc9059d06168b7bf08bd20d5f1fdaf79588ac00000000


texts:
After initiation of transaction, transaction will remain in the memory pool of all peered nodes.

How Transaction reach to the memory pool after receiving by the
node?
Do transaction broadcast to all known peer before reaching to its
local memory pool of node?


texts: How do I know one transaction has confirmed?

texts:
I am running my bitcoind with -zmqpubhashtx optional, and I receive notification once a new transaction has broadcast to public chain! I can also parser it by getrawtransaction and decoderawtransaction. But I couldn't validated if a transaction is confirmed.

Additionally, there are also exists an optional name as -zmqpubhashblock, I can also parser it by getblock and read its all transactions, compare it all with my MySQL data, if it's exists with the same txid, I'll update my column (confirmations to plus one), but it's a little bit ineffective.

Let's say, After I ran getblock <hash>, and then give me a tons of transaction. and I have to check each something like:

UPDATE t_unspent_tx
SET confirmations = confirmations + 1
WHERE addr in (addresses)

BTW, Can I trust the block hash from notification? Is it may not be the longest on the chain?

PS, I don't want to check confirmation from the blockchain.info or some other site else.


texts:
I have my Bitcoin Gold wallet up and running and have my BTG in there.
Does it mine automatically, or is there something i am to do to start mining?


texts:
I have a new question...

Is the max settings for rpc.target.bits 20? I want to match this with our stratum mining software, and how many shares we're getting.
Right now, pushpool is getting more shares (100 more over 2000 total). I tried setting difficulty to 21, but then i only got half of what stratum gave me...

So the real question here is... How to optimize? How to fix so it's as closely to Stratum's difficulty as possible?

Thanks.


texts: Can a miner only receive a reward by finishing the latest block?

texts:
Let's say there are 1,000 miners out there.

Every time a new block is added to the chain, all miners receive the updated blockchain instantly.

Do all miners immediately drop work on mining the current block & begin work on adding a new block?
If one miner has a machine that guarantees he is the fastest to complete a block, will he always receive 100% of the rewards in the network?

Relevant questions:

Can someone with 51% computing power earn more than he deserves?


texts: Are the bitcoin miners decreasing in quantity and increasing in size?

texts:
From what I am learning about bitcoin, the mining process is becoming exponentially difficult and hence exponentially more expensive (or at least more expensive), as people need more physical resources. As a result, there is an aggregation of miners (i.e. small players merge or get acquired by big ones or just go bankrupt).
Will this result in a decreased number of miners and an increased miner size, which can be a potential bottleneck for the currency?

P.S. A bottleneck, as a lower number of miners increases the risk of collusion and jeopardizes the security of the currency?


texts: How to pass parameters for multisignature addresses from Perl to the JSON::RPC::Client?

texts:
I'm trying to create a multisig address with JSON::RPC::Client but I don't know how to pass the parameters. I can pass simple params such as in validateaddress that requires only <bitcoinaddress>. Working example:

$obj = { method  => 'validateaddress', params => ["$just_a_bit_address_in_string"],};
$res = $client->call($uri, $obj);

But when it comes to other types of parameters such as in createmultisig,  that the required params are < nrequired > <'["key,"key"]'>, I don't know to pass it to $obj. How do I do that?


texts: How can determine the fundamental theoretical value of the Bitcoin based on steady state daily velocity (BTCDD)?

texts:
The VISA network (VisaNet) supports 4.4 Trillion dollars of commerce per year (2009). If we assume (somewhat arbitrarily), that the Bitcoin Days Destroyed metric approaches 50% (half of all coins are used every day, on average, to facilitate transactions),
then the value of the Bitcoin required to support 10% of the transactional volume in the VISA network (once all coins are minted) is $4.4T * 10% = $440B / 365 days/year / (21M BTC * 50%) = $114.80.

Does this approach seem valid? 50% BTCDD is arbitrary. 10% of the VISA network, is arbitrary but seems like a reasonable goal. What needs to be changed to improve this estimate, and what would a better way if any to compute the imputed value of the BTC based on its use as a transactional currency, rather than a speculative store of value?


texts:
I'm researching the interactions between a Wallet and a Miner.  Although I'm also interested in the high level sequence of operations, I'm also interested in discovering the protocol and verbs used in the TCP connection.

  What are the specific interactions between a Wallet client/node and a Miner?


texts: How do I send BTC from my wallet to another wallet?

texts: I have BTC in my bitcoin.com wallet, but I have no way to use it in Texas, so I want to send it to family, but I need assistance on how to send BTC from my existing bitcoin.com wallet to another family member's wallet.


texts: Is every copy of the blockchain the same? If I have an error within file should I be able to copy this file from a backup and reindex chainstate?

texts:
I recently moved the first 2000 files of my blockchain from the SSD to a HDD. The HDD gets mounted in /mnt/ext.
A symlink per file is then put into blocks that points to the remote files. So my blocks folder is still on SSD, but the files are on HDD.
I tried a bitcoind -reindex-chainstate to be sure everything still works but now it is giving an error:
2020-11-26T12:52:24Z ERROR: ReadBlockFromDisk(CBlock&, CBlockIndex*): GetHash() doesn't match index for CBlockIndex(pprev=0x44288c0, nHeight=255, merkle=4309bfeed77a70f309da08bcf8948906b9cc26120c0b0ef86e0ac67284bbd79e, hashBlock=00000000d0a75c861fabf9ff7b92022f60e4afeed9331fe5aa073d8e4706fe3c) at FlatFilePos(nFile=0, nPos=58808)
2020-11-26T12:52:24Z *** Failed to read block

Now I have several questions. I think nFile=0 means that the block is in blk00000.dat and rev00000.dat. Am I right?
So I copied this file again from a backup of the blockchain. This is from a second node. But I would suspect the files are the same, right?
But I get the exact same error at the same position - even with a new -reindex-chainstate.
I can see in the log that all blocks up until number 254 get indexed but each time it fails on block with height 255.
I think those old files contain always the same blocks. How can it be 254 blocks are correct but it fails on the next one?
Could this simply be a problem of the mount?

EDIT: I am currently -reindexing. In this case the files I already have linked to from my blocks folder get used like this:
Reindexing block file blk00000.dat...
Loaded 119964 blocks from external file in 133291ms

Apparently, the first file contains 119,964 blocks. So when I have an error with height=255 it should definitely be in the first file.


texts: Is it chain of headers rather than a chain of blocks?

texts:
We know widely used explanation of the blockchain:
"Every block contains a hash of the previous block". The sentence above implies that since every block contains a hash of the previous block, therefore every block should have a knowledge about transactions included into the previous block because every block has a following structure:

Block:

Magic No
Block Size
Block Header
Transaction counter
Transactions

Block Header:

Version
hashPrevBlock
hashMerkleRoot
Time
Bits
Nonce

However, every block does not have knowledge about transactions incuded into previous block correct???

As fas as I understand there are two chains in the Bitcoin:

a chain of blocks headers (a block chain)
a chain of transactions (Prev Tx Hash)

Hence just to clarify, rather than saying: "every block contains a hash of the previous block", would not it be correct to say: "header of every block contains a hash of header of the previous block"?

Please correct my assumptions if I am wrong. Thanks.


texts: Digital Signature and private/public key

texts:
I am new to Bitcoin and Blockchain and I am writing a thesis for my university about this topic.

I have a general question about digital signatures, which are needed to verify a transaction.

As far as I understood, for having a digital signature, one need to have a public verification key and a secret key.

Is the secret key equal to the private key which is needed to spend transactions.

Analog: Is the public verification key the same as the public key whose hash is the bitcoin adress ?

Thank you in advance.


texts: Why does the hash come before the signature?

texts:
The first figure in the original paper of Satoshi is a diagram of transactions.  This diagram seems to indicate that the transaction data is hashed before the sender's signature is appended.  Why not just hash the entire transaction, including the signature, to produce all-encompassing transaction hash?

Update:  I want to highlight the comment by @David Schwartz on the accepted answer.


texts: sign and verify a message in Bitcoin Core 0.13.1 (OSX)?

texts:
as a follow up to here:

Verifying a bitcoin trx on the Unix cmd line with OpenSSL?

and here:

How does the ECDSA verification algorithm work during transaction?

I use the pizza trx, and verify at the command line (using openssl), that produces expected result. When I want to check in graphical BITCOIN QT 0.13.1 client, s.th. fails. What I did so far:

I have these values in the files:

pizza.sighex
30450221009908144ca6539e09512b9295c8a27050d478fbb96f8addbc3d075544dc41328702201aa528be2b907d316d2da068dd9eb1e23243d97e444d59290d2fddf25269ee0e

pizza.keyhex
3056301006072a8648ce3d020106052b8104000a034200
042e930f39ba62c6534ee98ed20ca98959d34aa9e057cda01cfd422c6bab3667b76426529382c23f42b9b08d7832d4fee1d6b437a8526e59667ce9c4e9dcebcabb

pizza.hash2
c2d48f45d7fbeff644ddb72b0f60df6c275f0943444d7df8cc851b3d55782669

(Attention: in the original webpage the double hash was given by amaclin in reversed order!)

 $ xxd -r -p <pizza.sighex >pizza.sigraw
 $ xxd -r -p <pizza.keyhex | openssl pkey -pubin -inform der >pizza.keypem
 $ xxd -r -p <pizza.hashhex >pizza.hash2
 $ openssl pkeyutl <pizza.hash2 -verify -pubin -inkey pizza.keypem -sigfile pizza.sigraw

  --> Signature Verified Successfully

now try in Bitcoin Core, the uncompressed public key hashes to this Bitcoin address:

17SkEw2md5avVNyYgj6RiXuQKNwkXaxFyQ

The signature as base64 encoded string:

$ echo 30450221009908144ca6539e09512b9295c8a27050d478fbb96f8addbc3d075544dc41328702201aa528be2b907d316d2da068dd9eb1e23243d97e444d59290d2fddf25269ee0e | base64 -

  MzA0NTAyMjEwMDk5MDgxNDRjYTY1MzllMDk1MTJiOTI5NWM4YTI3MDUwZDQ3OGZiYjk2ZjhhZGRiYzNkMDc1NTQ0ZGM0MTMyODcwMjIwMWFhNTI4YmUyYjkwN2QzMTZkMmRhMDY4ZGQ5ZWIxZTIzMjQzZDk3ZTQ0NGQ1OTI5MGQyZmRkZjI1MjY5ZWUwZQo=

Entered into the QT client, I always get a "Message verification failed". So I try from scratch, I go to the tab "sign message", and enter this:
pubkey hash:

1DHG9SbeW3SXNpvbRUG3txXm1yDZTPKY9X

hash value:

56cc00a443f7b457ac3ec4bf1cc10ab3fa0c97fb173c27465b35766d313cd18c

and click "sign", to receive a base64 (?) encoded string:

IKWqGIVDCcpTBgFNushFeOlDj/08B4LEzYl4LDrWLLKnPQrqaSjjFYrdeWGXH9eIgHw7F7bkRtPpwC6jOur+R8k=

Now I should be able to enter these three values in the verify tab, so I cut and paste them into the fields, and they fail as well. I couldn't find any relevant information on how to use the Bitcoin Core 13.1 client. I am looking for some description or some reference, that explains underlying logic. Any help appreciated :-)


texts: What type of hedging might CoinLab be employing?

texts:
In the announcement on GeekWire that CoinLab had received seed funding, there was a statement that I found interesting:

  CoinLab will pay game companies in government currency, not Bitcoin, and will use price hedging strategies to protect its own interests.

What type of hedging might they employ and why?  And from where?


texts:
I made a mistake in Set my Fee to low and it has been stuck for 9 days. What can I do someone please help?
I just need some help regarding this matter. I'm a first time user and I just want to make this situation right so I wont go through this again. strong text


texts: How can I add the MySQL C++ connector to Bitcoin Makefile?

texts:
I'm trying to add a custom function to my bitcoin client that queries a mysql db. I followed this guide for the basic: https://technology.finra.org/code/compile-run-customize-your-own-bitcoin-client.html
I build the bitcoin node from the source code: https://github.com/bitcoin/bitcoin
with help from: http://www.reynoldtech.com/building-bitcoin-core-0-16-3-from-source-on-ubuntu-18-04-1-desktop-amd64/
And I am getting this error:
Making all in src
make[1]: Entering directory '/home/ubuntu/bitcoin/src'
make[2]: Entering directory '/home/ubuntu/bitcoin/src'
make[3]: Entering directory '/home/ubuntu/bitcoin'
make[3]: Leaving directory '/home/ubuntu/bitcoin'
  CXXLD    bench/bench_bitcoin
libbitcoin_server.a(libbitcoin_server_a-blockchain.o): In function `testFunction(JSONRPCRequest const&)':
/home/ubuntu/bitcoin/src/rpc/blockchain.cpp:2391: undefined reference to `get_driver_instance'
collect2: error: ld returned 1 exit status
Makefile:7133: recipe for target 'bench/bench_bitcoin' failed
make[2]: *** [bench/bench_bitcoin] Error 1
make[2]: Leaving directory '/home/ubuntu/bitcoin/src'
Makefile:17537: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/ubuntu/bitcoin/src'
Makefile:785: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1

I've added the following to /src/Makefile
CXXFLAGS = -g -O2 -fno-extended-identifiers -I /usr/include/cppconn
LDFLAGS = -L/usr/lib/x86_64-linux-gnu/libmysqlconn.so -lmysqlcppconn -lmysqlcppconn-static
When I run locally I can remove that error by running: g++ -o output testBlock.cpp L/usr/lib -lmysqlcppconn
How can I properly add the mysql connector library to src/rpc/blockchain.cpp?


texts: Why does P2Pool show up on BitcoinWatch.com if it's P2P?

texts:
I was wondering if P2Pool is decentralized why does it show up on the BitcoinWatch pool distribution graph?

I thought it would show up under "Unknown" but I guess this is only solo miners? Or some dark pool?

And "Other Known" I assume is a selection of small pools whose hash rate is too small to have a visible slice on the graph?

EDIT: It's currently not visible on the graph on BitcoinWatch but I'm certain I saw it on there not long ago so I will upload an image when I see it again.


texts: Trying to understand parent fingerprint in HD wallets

texts: I'm trying to implement a barebones HD wallet generator in C#.  I'm starting with a mnemonic and derivation path m/0' and want to generate BIP141 p2wpkh-in-p2sh addresses.  Obviously for the Master Node the fingerprint is 0x00000000, but when I get to depth 1 (0'), I need to calculate the fingerprint of the parent key.  My question is, is the formula RipeMD160(parentPrivKey) or RipeMD160(SHA256(parentPrivKey))?  I've been looking at Ian Coleman's implementation in javascript (https://iancoleman.io/bip39/) and he seems to do the latter one.  However, on this site under "Parent Fingerprint", it says it's the former.


texts: How do I fully uninstall the Bitcoin Wallet app for Android?

texts:
My phone is rooted and I'm not going to use the Bitcoin Wallet app anymore since I'll be switching to another one. My problem is, I can't seem to find where the downloaded blockchains are stored. If I'm not mistaken it's supposedly gigabytes big but I can't find it anywhere on my phone. I'm pretty sure the first time I opened up the app, it appeared to be downloading them.

Can someone tell me what directories I should delete to ensure that the app is fully removed from my phone. (I just don't want rogue data lying around and taking up unnecessary space)


texts: Cryptocurrency exchanges that have swift code

texts:
Is there some cryptocurrency exchange that has SWIFT code?
If a cryptocurrency exchange doesn't have SWIFT code, I cannot send dollars from my bank to it.
Thanks.


texts: What bitcoin is really easy to purchase and sale to the any person in cash?

texts: If I purchase bitcoin and after a year I want to sale it with cash what I can sale it to any person? And for the same what I get cash or check?


texts: Javascript widget that shows the balance of a particular address

texts:
Is there an embeddable javascript widget (perhaps using blockchain.info API) that can show information about a specific Bitcoin address?

Like current balance, total incoming, outgoing, and latest transactions?


texts: Why isn't bitcoind listening on its rpc port?

texts:
I run

sudo netstat --ip -lpa | grep bitcoin

After starting the bitcoin daemon and all I get is the 8333 port and the connections with other peers.

But when I do the same but with | grep namecoin, I get the rpc port and everything else.

I'm not being able to make poolserverj to work because of that.
Since it's not listening, poolserverj gives me a 404 response on the rpc port.

My bitcoin.conf:

server=1
rpcuser=xxx
rpcpassword=xxx
rpcport=8332
rpcallowip=*
gen=0


texts: How to restore my Bitcoin Core wallet from seed phrase

texts:
I have my Bitcoin Core wallet protected with passphrase for a long time ago. Now I'm trying to move out the coin from there but unfortunately I forgot the passphrase. When finding for recovery info I only found the list of seed phrases assigned to this wallet.

Is there anyway I can recover my wallet with seed phrase only? Thank you very much in advance for any advice.


texts: bitcoin-cli failed with error: incorrect rpcuser or rpcpassword

texts:
When I run this command

bitcoind -testnet -printtoconsole -rpcuser=123456 -rpcpassword=123456

After bitcoind is up. I run this on the same Ubuntu 17.10

bitcoin-cli -testnet -rpcuser=123456 -rpcpassword=123456 getbalance

I get this result:
error: incorrect rpcuser or rpcpassword (authorization failed)
The second day I tried exactly the same way. I get the correct result. It is really weird.

I try to put these two lines in /home/user/.bitcoin/bitcoin.conf

rpcuser=123456
rpcpassword=123456

And I run this command

bitcoind -testnet -printtoconsole -conf=/home/gogogo237/.bitcoin/bitcoin.conf

And this

bitcoin-cli -testnet -rpcuser=123456 -rpcpassword=1234564 getbalance

notice that I intentionally changed -rpcpassword to a wrong password. But I still can get a correct result.
This is really unpredictable and obviously a mistake. Anyone can explain this error? Thanks!


texts: Recovering a HD wallet from a partial seed phrase

texts:
I am attempting to help recover a wallet where the owner only wrote down 11 of the 12 words in the seed phrase. Initially, I thought the task would be a quick and well-defined, but it appears to be a bit more complex than I assumed, and reference material is pretty scant. In the event that someone else has a similar issue to mine, I want to leave this post detailing the steps I followed (with working code samples).

The wallet I'm dealing with is Breadwallet, which apparently uses a different (older) mnemonic-to-HD-master-private-key derivation strategy from most modern wallets. For the moment, I'm only going to focus on recovering partial Breadwallet phrases, but I plan to eventually expand the answer to cover newer derivation strategies (BIP44) as well.


texts:
I'm using merkle.cpp code (which uses the libbitcoin library for some helper functions) from Mastering Bitcoin book.

I was trying to re-create Merkleroot hash for Bitcoin block #100000 containing 4 transactions:

 "tx": [
    "8c14f0db3df150123e6f3dbbf30f8b955a8249b62ac1d1ff16284aefa3d06d87",
    "fff2525b8931402dd09222c50775608f75787bd2b87e56995a7bdd30f79702c4",
    "6359f0868171b1d194cbee1af2f16ea598ae8fad666d9b012c8ed2b79a236ec4",
    "e9a66845e05d5abc0ad04ec80f774a7e585c6e8db975962d069a522137b80c1d"
  ].

Thus, I modified main() function by adding hashes of all four txs:

int main()
{
    // Replace these hashes with ones from a block to reproduce the same merkle root.
    bc::hash_list tx_hashes{{
        bc::hash_literal("8c14f0db3df150123e6f3dbbf30f8b955a8249b62ac1d1ff16284aefa3d06d87"),
        bc::hash_literal("fff2525b8931402dd09222c50775608f75787bd2b87e56995a7bdd30f79702c4"),
        bc::hash_literal("6359f0868171b1d194cbee1af2f16ea598ae8fad666d9b012c8ed2b79a236ec4"),
        bc::hash_literal("e9a66845e05d5abc0ad04ec80f774a7e585c6e8db975962d069a522137b80c1d"),

    }};
    const bc::hash_digest merkle_root = create_merkle(tx_hashes);
    std::cout << "Result: " << bc::encode_base16(merkle_root) << std::endl;
    return 0;
}

Compiling and running it gave me:

Current merkle hash list:
  15b88c5107195bf09eb9da89b83d95b3d070079a3c5c5d3d17d0dcd873fbdacc
  49aef42d78e3e9999c9e6ec9e1dddd6cb880bf3b076a03be1318ca789089308e

Current merkle hash list:
  6657a9252aacd5c0b2940996ecff952228c3067cc38d4885efb5a4ac4247e9f3

Result: 6657a9252aacd5c0b2940996ecff952228c3067cc38d4885efb5a4ac4247e9f3

while the actual merkleroot is different:

"merkleroot": "f3e94742aca4b5ef85488dc37c06c3282295ffec960994b2c0d5ac2a25a95766",

What I did wrong?


texts:
How are the block hashes generated?

Are they trully 100% random (generated by hardware) or is it pseudo-random (generated by software)?

Can i rely on it or any other blockchain data to make a 100% trustable raffle?

Regards,


texts: When running a mining pool how many (super)nodes should I connect to?

texts: Is it beneficial to connect your *coind instance to multiple supernodes?  Or Should I connect to more than the 8 standard peers?  Does this potentially improve the amount that could be earned in transaction fees or make found blocks distributed to the network any faster?


texts: How to create a p2sh transaction with a scriptsig of OP_true?

texts:
How can I create a p2sh transaction with a scriptsig containing OP_TRUE only, removing the need for a digital signature, which will be broadcasted and mined?

Also could some one provide an example of such a transaction?


texts: How do I know if my bitcoin client is mining?

texts:
I set up my bitcoin client to run on the testnet network, where I can presumably mine test bitcoins in a reasonable amount of time using only a laptop CPU.

./bitcoin-qt -testnet -gen

Using top I can see that bitcoin-qt is using a lot of CPU. This leads me to think that it is mining for bitcoins. However, how can I know for sure that it really is? There does not appear to be any indicator in the GUI to show that mining is in process.

If my client eventually does find some bitcoins, will they appear in my wallet? Will they appear in the transactions log?


texts: Does merged mining require clients to download both blockchains?

texts: Suppose I want to start an AltCoin, and set it up for merged mining with Bitcoin. Will it require the AltCoin end-users to also download the Bitcoin blockchain to verify the hashes embedded in the blocks, or do only the miners need a copy of both chains?


texts:
Example the debug log:

2014-06-27 12:59:10 UpdateTip: new best=00000000000000002a03b175f183c3bbc440f5c2a171e958bfd504582f711f70  height=308004  log2_work=79.405055  tx=41447698  date=2014-06-27 00:04:17 progress=0.998105

There could be dozens of those.

Whatever bitcoin is doing with this 'UpdateTip', it seems very CPU consuming. So what is going on, and is there any way to skip this/make it less CPU intense?


texts: bitcoin compile (.undefined reference to **')

texts:
I'm getting error after make command like,

undefined reference to `BlockAssembler::BlockAssembler(CChainParams const&)'

and in last

Makefile:774: recipe for target 'all-recursive' failed

make: **[all-recursive] Error 1

I have followed all steps given here:-

https://www.toshblocks.com/bitcoin/compile-bitcoin-source-code-ubuntu-16-04-lts/

Output :-

 Making all in src
    make[1]: Entering directory '/home/khushbu/bitcoin/src'
    make[2]: Entering directory '/home/khushbu/bitcoin/src'
    make[3]: Entering directory '/home/khushbu/bitcoin'
    make[3]: Leaving directory '/home/khushbu/bitcoin'
      CXXLD    bitcoind
    libbitcoin_server.a(libbitcoin_server_a-mining.o): In function `generateBlocks(std::shared_ptr<CReserveScript>, int, unsigned long, bool)':
    /home/khushbu/bitcoin/src/rpc/mining.cpp:122: undefined reference to `BlockAssembler::BlockAssembler(CChainParams const&)'
    /home/khushbu/bitcoin/src/rpc/mining.cpp:122: undefined reference to `BlockAssembler::CreateNewBlock(CScript const&, bool)'
    /home/khushbu/bitcoin/src/rpc/mining.cpp:128: undefined reference to `IncrementExtraNonce(CBlock*, CBlockIndex const*, unsigned int&)'
    libbitcoin_server.a(libbitcoin_server_a-mining.o): In function `getmininginfo(JSONRPCRequest const&)':
    /home/khushbu/bitcoin/src/rpc/mining.cpp:216: undefined reference to `nLastBlockWeight'
    /home/khushbu/bitcoin/src/rpc/mining.cpp:217: undefined reference to `nLastBlockTx'
    libbitcoin_server.a(libbitcoin_server_a-mining.o): In function `getblocktemplate(JSONRPCRequest const&)':
    /home/khushbu/bitcoin/src/rpc/mining.cpp:521: undefined reference to `BlockAssembler::BlockAssembler(CChainParams const&)'
    /home/khushbu/bitcoin/src/rpc/mining.cpp:521: undefined reference to `BlockAssembler::CreateNewBlock(CScript const&, bool)'
    /home/khushbu/bitcoin/src/rpc/mining.cpp:533: undefined reference to `UpdateTime(CBlockHeader*, Consensus::Params const&, CBlockIndex const*)'
    collect2: error: ld returned 1 exit status
    Makefile:3888: recipe for target 'bitcoind' failed
    make[2]: *** [bitcoind] Error 1
    make[2]: Leaving directory '/home/khushbu/bitcoin/src'
    Makefile:10190: recipe for target 'all-recursive' failed
    make[1]: *** [all-recursive] Error 1
    make[1]: Leaving directory '/home/khushbu/bitcoin/src'
    Makefile:774: recipe for target 'all-recursive' failed
    make: *** [all-recursive] Error 1

How to solve this error and compile bitcoin source code successfully?


texts:
While using blockchain receive payment api, what if some one send less then require fund or some one send extra fund on same one time generated address.

does fund will automatically refund to sender or not ?

what to do if i want to refund that amount back to user who send less fund or double fund on that address?

any one have information regarding this?


texts: How Crypto Payment Processors Handle Wallet Balance Privacy?

texts:
If an online store accepts crypto payments directly into its wallet there is a problem:

"Anyone can make a small transfer to any BTC address derived from the MPK so they can watch the store's and its client's funds as soon as the owner transfers funds from her wallet. I suppose possibly that the person who did this wanted to know if cracking the store worth the effort."

In a previous question a user replied that a solution to this is to use a crypto payment processor like BitPay but:

How they handle wallet privacy? Isn't it the same? The BTC only gets
to make a higher number of transactions between different addresses
but still, they can be traced to the store owner's wallet and her
client's afaik.
Or if the transaction is too small to match the price of the
purchase, BitPay returns the transaction to the originating address
and the BitPay address that accepted the transaction gets dumped so
it can't be used to trace BitPay's customer real address?
Another way I think this could be avoided as well is if BitPay
converts the payment to fiat, then to BTC again and then transfer the
funds to the customer wallet.
Wouldn't it be easier just to avoid payment processors and convert
the BTC to a privacy coin like Monero? For example using a
transitional wallet in the store to accept payments, making smaller
transactions to an exchange, converting to Monero and back to BTC and
then transfer to the owner's real wallet?
Could this method conceal the store owner and her client's wallet
balance to any potential hacker who makes a small transaction to any
store wallet MPK derived address?
Or the only way is to use a payment processor? If so, then how they
conceal their customer's wallet balance?

Thanks for your attention, it's a confusing subject for me and I hope to have written my questions as succinctly & understandably as possible.


texts: Is there bitcoin algorithms flowcharts or any other diagrams available?

texts: To make those who not familiar with C++ to understand the algorithms.


texts: How to Create or Generate a New UTXO in Bitcoin Core?

texts:
I know how to use Console in Bitcoin Core but not that expert. I would like to ask is there possible for me to generate or create a new UTXO in Bitcoin Core?
All I have with me are the list of TxID which I have yet to use it. I don't know much about the right code for this.
Anyone can advise?
Thanks


texts: How to create unsigned tx in a watch-only wallet?

texts:
UPDATE: The issue is resolved and I have mentioned the steps in Create unsigned tx (PSBT) in a watch-only wallet using bitcoin core, sign it in electrum and broadcast using bitcoin core
Below are the steps that I followed and couldn't create an unsigned tx. I am not even sure what are the inputs that can be used for it in this case and how to add inputs.
create a watch-only wallet

add one address in 'sending addresses'

dont see anything in 'receiving addresses' and no option to add

open console and run the below commands to add one address
importaddress tb1qu2l4n8st9w3hhsxstd8muaxgnu63fql9rkylmd "receivetesting" false
rescan blockchain to update
rescanblockchain 1800000 1834770
can see the address in 'receiving addresses' and balance

How do I create an unsigned tx because I get the below error and dont see anything in available balance or inputs?
Consider the scenario in which I have added an address from my cold storage to watch the balance and now want to create an unsigned transaction that spends from it which I will sign later on a different machine (offline)
Also receiving and sending addresses in a watch-only wallet is confusing. Not sure at this moment how can we make it easier to understand atleast in the GUI.

I found this on reddit related to same issue however didn't understand how was it resolved: https://www.reddit.com/r/Bitcoin/comments/ir308h/watch_only_balance_not_spendable_in_bitcoin_core/g4w3svg/


texts: bitcoin transaction showing unconfirmed over 6 days

texts:
A friend sent some bitcoin to me worth $91 on May 7 2017 (with extremely low fees without initially telling me). It show unconfirmed till 10 may 17 when it returned to sender and was able to login and send bitcoin to other users.  Surprisingly, I login this morning and the bitcoin has resent itself to my wallet.  Since then I have tried two transfer with extremely high fees.  It is showing pending and I need those transfer to really go through. Pls how do i solve this problem. The hashcode is b27e371f54cd24d2bdcc8d9e283dc7929589949c6d8ab47232feb6d13cb9f778.
Please I need urgent help.


texts:
Currently the next halving date is May 2020 (provisional) according to enter link description here.

I understand that every 210k blocks, the block reward is halved and this works out, roughly, to once every 4 years.

I guess I have two questions:
1) The 2012 halving took place approx. 3.8 years after genesis, and the 2016 halving took place a further 3.6 years after that. During this period hash rate increased almost continuously and at exaggerated rates due to continuous developments in mining technology from general to specific solutions (CPU -> GPU / FPGA -> ASIC). So were these 'premature' halvings due to the positive rate of change of hash rate?

2) A halving on 23 May 2020 is roughly 3.9 years from the last halving. It seems this is linked to 2018's drop in hash rate, could a hash rate collapse lead to a delayed halving event (i.e. adding the current 210,000 blocks takes longer than 4 years)?

Thank you.


texts:
I recently won 0.32 in bitcoins as I have been getting into NFT. I wanted to sell the bitcoins that I won, but in order for me to withdraw the bitcoins it’s asking me to deposit 0.01 bitcoins. Is this process usually like this?
The website is www.recrypto.com. Would it be smart if I invest in the 0.01 bitcoin to be able to withdraw it all (as the 0.01 deposit is just a verification step)? I would then withdraw 0.33 bitcoins.


texts: Import Multibit multibit.key into Electrum

texts:
Have a multibit.key file from an old Multibit Wallet, but can't import it into Electrum.

When I copy and paste the char string from the file into the "Import Addresses and Private Keys" Electrum window it just never allows me to push Next and proceed.

What am I doing wrong? Is there any other way?


texts: Have there been case studies of how anonymous bitcoins are?

texts:
The blockchain has a lot of information about all bitcoin transactions.

I've heard a lot of conjecture about how anonymous bitcoins transactions are, but I haven't seen a scientific study.

Are there any case studies that show how to track a bitcoin transaction to an individual person? I see IP addresses on blockchain.info so that information could be subpoenaed; on the other hand, you could use Tor which also has its documented weaknesses.


texts: What sources of information are there available to follow news about Bitcoin?

texts: What sources of information are there where you can follow possible changes, announcements of forks, protocol updates etc...


texts: How to restore my Copay / BitPay Wallet?

texts:
I started using Copay in 2015 and got some Bitcoins. Sold some coins, and then stop use the app. Now Bitcoin price is up again, and try to reach my Wallet but I can not import, though I  know the 12 word. What I am doing wrong? This is my address I get originally my payment:
1DpmSrg9Bur2VhiMqEu4gYnA28gaM7ZVjp
I tried recover: https://bitpay.github.io/copay-recovery/
No success. I tried different Addres Gap, 40, 80, 100, 120: No success.
I tried import with different derivation path listed here, no success: https://walletsrecovery.org
Do you have any idea more?
Seems cold paper based wallet are still more secure, right?
Do you know, is it any process I can detect Derivation Path from existing address, and transaction started on it?

[EDIT]
Here is the logs of transactions:


texts: How do I use the blockchain file bootstrap.dat?

texts: Once I have the 9+ Gb bootstrap.dat file downloaded, how do I use it? I'd like to attempt mining without joining a pool; do I have the right file for a solo effort? I can use Windows or Linux so either one in the answer will be fine.


texts: What prevents Bitcoins for being used to avoid taxation?

texts:
Today, states can follow money trails and transaction histories, usually involving checking bank accounts. As as I understand, It's impossible for anyone else to read your Bitcoin transactions and current balance without your consent.

In a Bitcoin world, how can a state monitor bank account when it's impossible to check their transactions?


texts: What's the use of not relaying non-standard transactions if anyone can still use them using P2SH?

texts:
It seems that non-standard transactions are not normally relayed because there is a concern this might break the network or it might make future upgrades harder.

But anyone can use these non-standard transactions (and get them relayed!) using P2SH. So what good is this restriction on non-P2SH scripts?


texts: Can a single wallet stir all different crypto currencies

texts: Is there one wallet that can hold all the different cryptocurrencies, or does the wallet need a separate implementation for each different cryptocurrency?


texts: Create alternative blockchain with proof-of-work

texts:
For learning purposes, I want to create an alternative special-purpose blockchain. It would use a proof-of-work function that is different than the one in Bitcoin.

Short of forking bitcoin and going from there, where should I look into starting?

The data that the blockchain would be storing are public keys.

Bitcoin wiki: https://en.bitcoin.it/wiki/Alternative_chain


texts: Fastest device to perform single-threaded SHA256 hashing

texts:
I am in the process of designing a cryptographic Proof of Storage (PoS) that relies on single threaded computation of SHA256 hashes. In practice, my algorithm is equivalent to computing for some string S the value SHA256^N(S) = SHA256(SHA256(SHA256(...(SHA256(S)))).

This forces anything computing that function to use only one thread, as each SHA256 step needs the output of the previous as input.

Now, I know that ASIC miners exist that can compute SHA256 hashes at an enormous rate. This, however, is due to their parallelism: completing Proofs of Work (i.e., finding zeros of hash functions) is an embarassingly parallel problem and can be computed very fast on massively parallel devices. This is not what I am looking for.

What I am looking for is the fastest device that would be able to compute my function, i.e., single-threaded computation of a SHA256, then the SHA256 of its output, the SHA256 of the result and so on.

I thought that maybe in this case the best hardware would be the fastest CPU in terms of single threaded performance: I found here that Intel Core i7-7700K could be a good place to start looking for.

Is there any other known specialized hardware device that could carry out the task faster?


texts: How can I get a new Bitcoin exchange up and running?

texts:
I would like to have a Profit Points <-> Bitcoins exchange. The exchange could either be developed and run by contributors of Open-org.com or be created by an existing Bitcoin exchange. I have, however, already contacted World Bitcoin Exchange, to ask if they are interested in creating such an exchange without getting an answer. To develop the exchange ourselves seems like quite a task, due to the need for security even if we would base it upon the open source of the World Bitcoin Exchange.

The reason why I am so interested in creating a Bitcoin exchange is that the spirit of Bitcoins really match the spirit of Open-org.com. We both want to take on conservative systems and innovate to create something better. In the case of Open-org.com the main aim would be to create an alternative to the large established and utterly closed corporations, who feel like they own their employees.


texts:
I need some help in transaction fee in Bitcoin Core.
In Send section there is a message after Transaction fee saying "Warning: Fee estimation is currently not possible." Why is it there? Blocks are up to date.


texts: Duplicate addresses in transaction possible?

texts:
I am making a bitcoin laravel package.

I have a table with all transactions.
The txid and the address are unique together.
So it is possible to have only one column with the same txid and address.

Is it possible to send a bitcoin transaction with the same address twice?
Because when it is my table structure isn't right.

Sample transaction(address: amount):

1BoatSLRHtKNngkdXEeobR76b53LETtpyT: 0.01
1BoatSLRHtKNngkdXEeobR76b53LETtpyT: 0.04
1NsC7NJfkFgp9ppeJdD38PrY3Yy92o88cu: 0.06

Is this transaction possible?
Or would it be automatically this

1BoatSLRHtKNngkdXEeobR76b53LETtpyT: 0.05
1NsC7NJfkFgp9ppeJdD38PrY3Yy92o88cu: 0.06


texts: How do 'Sphinx' invoice-less payments on the Lightning Network work?

texts:
There was recently a WIP draft published to the lnd Github, for a 'Sphinx payment mode' for Lightning Network nodes. To quote Roasbeef from the Github PR:

  [this allows] the ability to send a payment to a destination without first needing to have an invoice

Though this is a WIP, it can apparently be used on mainnet already, as long as all nodes involved are upgraded to include the new code.

So how does this work? At a high level, what does the UX look like? At a low level, what differences are there in terms of completing the payment (passing HTLCs around), compared to a standard LN transaction? Whats going on under the hood?


texts: Blochchains that support data privacy and/or strengthen parties pseudonymity

texts:
Question  1:  Is there any blockchain that allows users to store their private data in the chain? For instance, the transactions and amount of Bitcoin one has is hidden from others.

Question  2: Is there any blockchain that strengthens participants pseudonymity? so it won't be very easy to associate an owner of ID/transaction to a real person.

In terms of question 1, I'm aware that hyperledger does it, but the problem with this framework is that data and blockchain are encrypted using a single key and this key is distributed among the participants, but I think it's
not a sophisticated approach.

In terms of question 2, I've heard that there's a blockchain (I think it's called Zikas) that somehow mixes transactiontors but I'm not sure about it.


texts: Can the bitcoin lightning network support more than 8 decimal places?

texts: Say Bitcoin goes to 1 a million dollars. We need more decimals, but btc core only supports 8 decimals? By that time its safe to assume everyone will be using lightning to do transactions, but will lightning have support for more than 8 decimals?


texts: I just started with btc-e however I seem to have a load of partially filled orders. What happens with these? Can I cancel them? and if so, how do I do that and what are the consequences? Some have a price tag of $100 so the chances they get filled are minimal.


texts: Which cryptocurrencies are considered base coins?

texts:
Are these the only base coins: BTC, ETH, BTH and LTC?

Base coins are those that you can buy directly (USD -> base coin). Alt coins such as NEO, XRP and EOS require first going through a base coin.


texts: What prevents a node from receiving a solved solution and claiming it as its own work?

texts: During the relay process a node finds the solution and forwards that solved block to all other nodes in the network to validate that it has indeed solved the problem. But then what if another node decides to rebroadcast it again and claim that he was the one who found the answer first.


texts: As a full node, does limiting bitcoind bandwidth hurt the network?

texts:
As the top answer to this post, Maximillian Laumeister claims:

"IMPORTANT NOTE: If you limit the bandwidth of Bitcoin Core far below your actual upload speed, it can actually harm the Bitcoin network instead of helping it."

It would seem to me as though every contributing full node would only help the network (regardless of ISP speed). Does limiting the bandwidth of Bitcoin Core actually hurt the network (compared to not running a full node at all), and if so, how precisely?


texts:
I can import addresses without private key just to track incoming transactions as it is provided in RPC calls :
https://bitcoin.org/en/release/v0.10.0#watch-only-wallet-support

But how can i see my previously imported addresses? (With or without RPC)

Bonus : Is there any proper way to delete them?


texts: Why is BTC transfer on coinbase taking 30+ hours?

texts:
I'm really frustrated from the really bad service of coinbase.com.
I'm waiting for a transfer of 0.14 BTC for 30+ hours which is ridiculous! Customer support is totally missing, service is really bad. I bet that once the market goes up, the transfer will  be suddenly completed. WHY THEN?

What is taking you so long to complete a simple transaction for 30+ hours?


texts: Run bitcoinCash on same server with bitcoin

texts:
I followed the great answer here how to install bitcoin legacy and bitcoin cash on the same ubuntu server?

and installed bitcoinCash client to my ubuntu server.

Now I have both binaries available but they both work on same configs and same blockchains as I see.

There supposed be a way how to tell bitcoinCash client to download its own chain and use its own keys, but I cant figure out where those setup files for bitcoinCash are located and how to change them.

Could anyone help pls?


texts: Which wallets belong to Satoshi Nakamoto?

texts: I am curious to know which wallets belong to Satoshi Nakamoto? I heard that the BTC in them were never moved.


texts:
Disclaimer: originally asked on the ETH SE site, but advised to post here.
I have been reading about RSK lately and was wondering about the compatibility and possibilities, so I wanted to ask for some basic info in case there's someone more knowledgeable.
I have a smart contract running on the Ethereum network (and more to come). The contract is based on the ERC20 standard. So, this smart contract, with its setup today, would it be possible to make it use the RSK network instead of Ethereum?
If yes, what could be the pros/cons (eg. cheaper/faster transactions) and whether it would make sense to do the transition?
If not for the current contract, then maybe for future ones?


texts: How can I convert a wallet.aes.json file from Blockchain.info to a wallet.dat file?

texts: I'd like to convert my Blockchain.info wallet to a local Bitcoin-qt wallet. How can I do that? (I am fine with using command line tools.)


texts: how to get total send balance of account in orbitcoin wallet?

texts:
I want to see my account balance in wallet using console but when i use getbalance test its only show me total receive balance?

There is many account that i want to see total balance but i try listreceivedbyaccount test is show me received balance?

And I also try getreceivedbyaccount.

And I'm trying create a web wallet in php a web wallet for orbitcoin.

Please, anybody help me!


texts: How do I buy bitcoins with South African Rands?

texts: I have South African Rands that I would like to purchase bitcoins with. No Websites I know of accept Rands (ZAR). How do I get around this?


texts: Problem in understanding other miners validating puzzle solving miner's claim

texts:
I understand that miner's role is to validate the block of transactions by calculating nonce based on difficulty level and finding hash of {block + nonce + hash of previous block} .
Then it adds this block in the ledger and broadcasts to all nodes that it has solved the puzzle. Other nodes verify it and allow the that new chain in which block is added.

My question is, what if a node decides to change transaction data in a block and goes throught the process of calulating nonce and then finding hash and adding this block to chain. Other node will see that this node has correctly solved the puzzle and should allow the newly created chain. Right?

I don't know and it is not written anywhere that at the point when a node broadcasts that it has solved the puzzle and found hash of tampered transactions, is it the case that the other node has also solved the puzzle and hopefully with the untampered transactions? Because won't it be waster of resources to solve the same puzzle twice? And if other nodes do not solve the puzzle for the second time, how are they able to decide that the malicious node has solved the puzzle with the tampered transaction?


texts: First time user. How can I recover my BTC?

texts: I've done hours and hours of research trying to unstick my coins with no luck. I bought them off coinbase and transferred them to this stupid google app called sparecoins, from there I transferred to blockchain and then spent them from there. I had no idea really what I was doing. I didn't realize they had to be confirmed. So my money made it to sparecoins app confirmed but after that the next 2 stops it never made it. They sit stuck. Nobody stole it or used it, it's just stuck. The sparecoins app (which I should have never used) has a back up wallet button which makes a file opening the file with notepad it has this at the top "Encrypted Privated Keys (AES) Use a SHA256 digest of your password as the encryption key" and 13 lines of jumbled up letters. I've tried and tried and can't figure out how to recover these funds. Can anyone help?


texts: I was wondering if anyone had advice for running bitcoind for multiple users. I obviously don't want users to get into other users transactions. As far as I can tell I'll need to run multiple instances of Bitcoind, but this is a terrible waste of bandwidth. Can I at least share the blockchain across users?


texts: Is it possible to get a service provider , which provide stable, not-changeable BTC address.

texts: My new employer prefers Bitcoin as the way of salary payment, but the address keeps changing, is it possible to get a non-changeable on, or is there is any other way to transfer bitcoins from one person without entering new address every time?


texts: Is there anyway to check if someone has a bitcoin wallet?

texts:
My son passed away years ago and it has been brought to my attention he may have bought a sum of bitcoin years ago.
Can someone please tell me how I can check to see if his wallet is still active?


texts:
I am really sorry, please teach.
Please tell me the procedure for installing bitcoin full node in CUI on CentOS.
Currently I installed using the following procedure, but I got an error in RPC authentication.

1.
$ sudo yum install wget

2.
$ sudo wget https://bitcoin.org/bin/bitcoin-core-0.17.1/bitcoin-0.17.1-x86_64-linux-gnu.tar.gz

3.
$ sudo wget https://bitcoin.org/bin/bitcoin-core-0.17.1/SHA256SUMS.asc

4.
$ sudo wget https://bitcoin.org/laanwj-releases.asc

5.
$ sudo gpg --import laanwj-releases.asc

6.
$ sudo tar -zxvf bitcoin-0.17.1-x86_64-linux-gnu.tar.gz

7.
$ sudo install -m 0755 -o USER_NAME -g root -t /usr/local/bin bitcoin-0.17.1/bin/*

8.
$ mkdir ~/.bitcoin

9.
$ vi ~/.bitcoin/bitcoin.conf

Enter the following with vi and save.

mainnet = 1
txindex = 1
server = 1
rest = 1
rpcuser = a
rpcpassword = a
rpcport = 8332

11.
$ cd /DATA_DIR

12.
$ sudo mkdir bitcoin

13.
$ sudo chmod -R 777 bitcoin/

14.
$ bitcoind -daemon -datadir=/DATA_DIR/bitcoin -conf=/.bitcoin/bitcoin.conf

Bitcoin server starting

15.
$ bitcoin-cli getbalance

After this, the following URL error will occur.
error: Authorization failed: Incorrect rpcuser or rpcpassword

error: Authorization failed: Incorrect rpcuser or rpcpassword

Which procedure is wrong and how do I fix it?
I am really sorry, please teach.


texts: Is there are written code for mapping public address to an user?

texts:
I read about 2 theoretical ways we can do it

1) When a single transaction has multiple input addresses, we can assume that those addresses belong to the same wallet, thus to the same user. We should bear in mind that users do not share private keys. In fact many users may use web wallets which have pools, so those services will be treated as a single user.

2) Secondly, you can exploit the change mechanism in transactions. The entire value of unspent output should be sent back to the user as change. Bitcoin, in order to improve anonymity, produces a shadow address which collects back the change that results from any transaction. So when a single transaction has 2 outputs, you have to predict which one of the output addresses is actually belonging to the same user that initiated the transaction. If one of those two outputs has never appeared before in the blockchain, while the other has, then we can assume that the one that never appeared before is the shadow address.

But is there any public code available which is able to achieve this in an optimum and optimise algorithm, I wrote an algorithm but its O(n^2), and the dataset currently is just too huge for such algo to work.


texts: Accidentally spent unconfirmed funds, when will they clear?

texts:
I accidentally rushed when transferring some funds from my wallet before they had been fully confirmed, now the transaction has been unconfirmed for quite some time and I was wondering how long it might take to process?

Is there some way to cancel the previous transaction and execute another one now the funds are confirmed?

The transaction has the following id: aa7bd2ad6657dad1c2152edf6d7fdfd59cbc4e4385a792f741b50b32bcf68be1

Thanks for any help.


texts: Which peer-to-peer technologies are used to sync blocks in a blockchain?

texts: I searched a lot about it but didn't found out anything. I want to know about the technologies used in block syncing and the algorithms.


texts: Why does Bisq claim that my "native segwit" receive addresses are "invalid"?

texts:
Every time I'm transferring over the funds from Bisq to Bitcoin Core, I get the error:

  Invalid address.

(Or something along those lines.)

Only after generating another receive address in Bitcoin Core, unchecking the "Generate native segwit (Bech32) address" checkbox, does it work.

Why does Bisq consider "native segwit (Bech32) addresses" (the default in Bitcoin Core) to be "invalid"? Is this some kind of internal war in the Bitcoin community where they refuse to even acknowledge the existence of this other "format"?

Every time it happens, I almost get a heart attack until I realize I forgot to uncheck that checkbox...


texts: How can we be sure that a new block will be found?

texts:
How do we know the HASH function will produce an output that fulfills the difficulty, i.e. is below 0000...xxxx...xxx?

Is it possible that no proof will be found so that the HASH will produce that output 000...xxx...?


texts:
I am trying to restore an old bitcoin backup i found in my google drive.
The original backup date is 2013, and i am quite interested to see if there is any money on it :)
I tried to follow this https://github.com/bitcoin-wallet/bitcoin-wallet/blob/master/wallet/README.recover.md but i get an error stating : Unknown wallet version from the future
I found the file named "secret.backup" and i just changed it to "wallet" with no type.
Opening the file in nodepad, the only readable part is : org.bitcoin.production
My end goal would be to check for funds, and transfer to my exodus client


texts: Why is increasing block size in the Bitcoin network considered to decrease security?

texts: I have been doing some research on the Bitcoin Cash hard fork and the main contention of increasing the block size appears to be the possibility of less security on the network. How does an increased block size result in a less secure network?