texts: Electrum 2FA Wallet - Deriving the Third XPub

texts:
I'm working on a project which requires me to take an Electrum mnemonic, determine its type and derive the corresponding addresses for that wallet.

I found lots of information on how to determine the mnemonic type and covert it into the master seed, but I'm struggling to understand how addresses for the 2FA wallet are derived. To be more exact, I was able to derive both extended keypairs (x1/ and x2/ in the wallet file), but I can't seem to be able to derive the third xpub (x3/ in the wallet file).

I've looked through the source code and it seems this key is derived by combining both xpub keys (the keys should be ORDERED) that can be derived from the master seed (x1/ and x2/), hashing them using SHA-256 and using that as the index when deriving the third xpub. A hard-coded xpub is used as the root.

I'm having trouble understanding / implementing this because the SHA-256 algorithm returns 32 bytes of data and the child index has to be 4 bytes long (as per the BIP32 specification).

Here's the code from Electrum that handles this.

def get_user_id(storage):
    def make_long_id(xpub_hot, xpub_cold):
        return bitcoin.sha256(''.join(sorted([xpub_hot, xpub_cold])))
    xpub1 = storage.get('x1/')['xpub']
    xpub2 = storage.get('x2/')['xpub']
    long_id = make_long_id(xpub1, xpub2)
    short_id = hashlib.sha256(long_id).hexdigest()
    return long_id, short_id

def make_xpub(xpub, s):
    version, _, _, _, c, cK = deserialize_xpub(xpub)
    cK2, c2 = bitcoin._CKD_pub(cK, c, s)
    return bitcoin.serialize_xpub(version, c2, cK2)

The functions are then called like this:

xpub1 = wizard.storage.get('x1/')['xpub']
xpub2 = wizard.storage.get('x2/')['xpub']
# Generate third key deterministically.
long_user_id, short_id = get_user_id(wizard.storage)
xpub3 = make_xpub(signing_xpub, long_user_id)

The long_user_id is 32 bytes long since it's the result of the SHA-256 function and it's then being used to call the make_xpub() function which is supposed to take in 4 bytes of data as the child index.

What am I missing here? Any input is appreciated.


texts: Fees for transfering money by bitcoins and banks

texts:
When I send money to someone using the bitcoin network, I have to pay fees for converting my dollers to bitcoins in an exchange market, then I have to pay the miner fees then the Wallet fees to receiving my bitcoins and the Wallet fees to sending the bitcoins to the other person.
Why do people say that using the bitcoin network in transfering money is less fees than banks?


texts: How do I know which exchanges are serious actors?

texts:
How do I find bitcoin exchanges?
How do I know if the exchanges can be trusted?


texts: How Lightning Networks protect itself from 'Selfish Mining'?

texts: It is a well accepted fact that mining pools do engage in 'selfish mining' by not broadcasting a block to the network when they find a PoW solution, but building on top of that block so as to maximize revenue. Now from the point of view of lightning nodes that are creating a HTLC, assume that the blockchain height is 'h'. A HTLC is forwarded by the origin node and each node on the way uses 1 block of CLTV_expiry_delta (say there are 5 intermediary nodes). But soon after the final node reveals the pre-image to its peer, 3 blocks gets relayed simultaneously. Now, it may be the case that even after including a buffer, some nodes along the path can get exposed as its peer can relay the transaction to the blockchain due to timeout. Is there a protocol in place to stop intermediary nodes from getting vulnerable due to selfish mining?


texts: `bitcoind` RPC: ask if syncing headers or blocks

texts:
Is there a way to know from bitcoind RPC if it's syncing headers or blocks? And is there a way to know the header sync progress?

Even if not directly available, is it possible to derive header sync progress from other information through RPC?

I tried to get this information from the debug log, but the problem there is that occasionally, the last header sync log message looks like this

Synchronizing blockheaders, height: 1660930 (~95.02%)

It never logs out whether it reached 100% or not, and that's a problem for the software that I'm working on.


texts: Do I have to know all my private keys for sending a "big" amount?

texts:
As I understood it: My client creates a public key (for recieving) and a private key (for accessing) for each transaction.

And the private key is here that I can send the BTCs I recieved (for all transactions only handled by this same public and private key pair where this private key is the private key).

But what if I want to send a big amount of BTCs but I only have recievied many small amounts? Would I then have to mention each private key for each transaction that I can send this big amount?


texts: Transaction do not shows up in my android wallet

texts:
I have an incoming transaction that didn't show up in my android wallet
[here is the txid[1

I tried to re-sync the wallet and the transaction is still missing!
I noticed you use blockexplorer.com as block explorer, is this a BITCOIN wallet or a B CASH one?

Please help me to recover my funds it's more than 0.05 btc


texts: Why the leading zeros in the desired hash pattern?

texts: Why are leading zeros desired in the block chain hash?  I have searched the internet but cannot find why.


texts: After a long connection to the wallet, it offers to reinstall blocks and synchronize all Bitcoin core blocks

texts: 1)I installed bitcoin core on an ssd drive. Some time did not include it, a month after the inclusion of bitcoin core when you start the application with ssd asks to re-download all the blocks, the path is correct , and the folder has already downloaded the blocks. I don't understand, my old wallet can't download or wants to download the resulting blocks while offline. Please help to understand.                                      2) If I installed a portable ssd drive I can connect it to any device and use the wallet and funds on it? In such an attempt, it requires downloading blocks again


texts: Possible to temporarily reduce the supply of a cryptocurrency?

texts:
Does a cryptocurrency that can have its supply be reduced based on some factor currently exist?

If not, is this possible?  If so, how?


texts: How to install minergate-cli in centos 6.6.


texts: Accept bitcoin easily without strict terms of services?

texts:
I'm interested in starting a gambling site, it has been difficult to find an easy way to handle user funds.

Solutions such as Bitpay or Coinbase disallow usage for gambling.

BIP32 blockchain notifiers like Mycelium Gear appear to be vulnerable to spam attacks and difficult to scale.

I've looked into interacting with a full node but things seem to get complicated very quickly at scale.


texts: Can I store all the keys from a multisig account on Ledger devices?

texts:
Say that I create a 2/3 multisig wallet using Copay.

Can I store all three keys on different Ledger devices?
Can I store all three keys on the same Ledger device?


texts: Validate chain from `valid-headers` to `valid-fork`

texts:
The getchaintips JSON-RPC returns multiple branches of the blockchain.
Chain tips can be in various statuses.
The active and valid-fork are already validated chains. There is a valid-header

  valid-headers for a chain with valid headers whose corresponding blocks are stored locally, but which haven’t been fully validated

which I would like to turn into valid-fork. According to above info I have the blocks locally so I just need to invoke validation process.
Is there any RPC to perform that task? or any other way?


texts: Wallet.dat Bitcoin core Privatekey Recovery

texts:
Is there any method from which we can manually calculate wallet privatekey from a protected bitcoin core wallet.dat file ?
I was searching on it and find this , I think it is related to my topic https://bitcointalk.org/index.php?topic=4413938.0


texts: Should there be a minimum transaction limit to prevent dust spam?

texts: With all these reports of people receiving spam through dust transactions (e.g. Enjoy Sotchi, Bitwars etc) what would be the implications of setting a minimum transaction amount on the network? Why would anybody wish to send 1 Satoshi (0.00000001 BTC) it seems to have almost no economic benefit? Would such a limit disrupt any legitimate activity on the network?


texts: why is transaction history from genesis to date necessary to store on the blockchain to prevent double spending?

texts:
I am beginning to understand the mechanism of bitcoin blockchain, and I was wondering something.
The transactions history represents the 'state' of the bitcoin at any point (or EVM according to the Ethereum whitepaper).
Blockchains address the problem of double spending by recording ALL transactions ever done using the particular currency in the blockchain, from genesis till date. Inevitably the size of the chain keeps increasing and will continue to do so indefinitely.
My question is, why is there a need to track transactions?
Why cant we just track the balance in every account?
I understand the problem of double spending, and how a person can try to spend the same money twice. We associate the balance of an account with a public key of the account. the transaction history provides us with a way to track the balances.
But why cant we discard the transaction, and just store the remaining balance after verifying the transaction? Why does the 'how the money got there' important?
Why is double spending an issue with this approach (because if a transaction is verified, then the balance in the account must go down?)
What I am asking is, why cant we track ALL ACCOUNTS instead of ALL TRANSACTIONS? (this way the blockchain size is a function of number of nodes, not number of transactions)


texts: I'm still unsure when to use Bitcoin and when bitcoin is more appropriate. Did anyone define when to use the word Bitcoin with a capital B? Is one used to talk about the currency as in "3 Bitcoin" and the other for the "bitcoin protocol"?


texts: Is Bitcoin a developer only currency and community?

texts:
The Bitcoin repo on Github has 7 members. Ultimately, they decide what bug fixes and pull requests get merged. I don't understand how this is decentralized? Yes, it is open source, so anything they do merge can be seen by all, but how many of those all can really understand that code? Ultimately it will be the miners who will be responsible for pulling in new code - are we to say that all miners thoroughly review the source code and commit log before pulling in any changes?

So this then means that the people behind miners are usually developers themselves? Which then basically means that developers are in charge of Bitcoin as a whole? If that's the case, are developers qualified enough to create and run a currency - do we not need economists as well?


texts: How BTC value is determined in USD from a trading pair?

texts:
I know this is more of a general trading question but how is BTC or any base currency value determined in another currency from a trading pair?

An example of what I mean is take the BTC/NEO trading pair, how do you determine the BTC value in USD from that trading pair?


texts: Possible to estimate next difficulty based on terahashes?

texts:
Here is what I have estimates on: There exists hardware capable of 60 gigahashes per second. Over the next few months, X amount of these will be mining bitcoins.

Difficulty is recalculated every 2016 blocks.  X * 60,000 megahashes = Y terahashes to total mining.

At current difficulty it will take a machine calculating at 60 gigahashes about 3.6 days to solve 1 block. With just 700 of these machines each solving 1 block every 3.6 days, difficulty will be at Z within a week, where difficulty is then recalculated to even out the time period of solving blocks (if I understand correctly).

The variable I have is about what the implications are of the algorithm for difficulty. Is it intended for there to only be a finite number of blocks solved in a certain timeframe?


texts: Is there a list of all cryptocoin currencies?

texts:
Apart from bitcoin, I know few other crypto currencies (by this I mean currency which works in a similar way to bitcon). They are:

namecoin
lightcoin
ripple

I also heard about SolidCoin, but as far as I understood it is already dead.

Is this everything or am I missing something


texts: How do I know if a transaction is legit?

texts:
A sender confirmed by email that he sent out bitcoins and even provided a link to the transaction on blockchain. I was never able to find it on blockchain. Just like it doesn't even exist. I talked to him and he told me it was suspended by miners.
I don't know much about this but this just sounds like a huge scam.

Can anybody help me please? Thanks

Blockchain was: 5a48441b1c47812d3a2ba01f30316c2ec6ee8969634ff304650560689a7cf3a3


texts: Do you need XRP reserves to receive trust lines?

texts:
As far as I understand, you need to keep some XRP in reserve for each trust line and for each open offer.

Does that apply only for outgoing trust, or for incoming trust too?

In the latter case, what does it happen if you try to trust someone who doesn't have enough XRPs?

And, are you somehow notified you have exhausted your XRPs, or you have to manually check somehow?


texts: Is this a problem that a pool found 6 consecutive blocks?

texts:
Check this out:

The pool will not make the 51% attack of course, for they are counting money on the system;
but it's still a problem right?


texts: Bitcoin Cash totally different from BTC?

texts:
I hear everyone talking as if when you have Bitcoin it is a matter of transferring in order to access your Bitcoin Cash instead of trading like other coins.

I was under the impression that it was an entirely separate coin and one would obtain it in the same way that one would obtain Ethereum if he had bitcoin by trading it correct?

Or if you have bitcoin do you at the same time have that much in BCC and it just needs to be moved somewhere?


texts: Altcoin (Litecoin fork) creation. No synchronisation

texts:
i m trying to create an altcoin from the current Litecoin master branch on github. Its Litecoin in the version of 0.15.1.

By editing some parameter in chainparams.cpp i m able to create my genesis block. But i cant get the network to synchronize!

I m running litecoind on a vps with all ports open, and i am able to connect to the node when i start the litecoin-qt on my machine (with -addnode or -connect to the vps).

On my vps i can see my machine with -getpeerinfo and its block count (0).
On my machine i can see that it is connected to the litecoin node on my vps.
When running generate on my vps, to create some blocks, i can even see on my machine, that the block count of my vps has risen. Still, there is no synchronization! The blockchain on my machine stays 0.

The litecoin-qt on my machine shows me "Connecting to Network" all time, even though it is connected to the litecoin node on the vps.

In chainparams.cpp i have edited the following sections:

pchMessageStart:

    pchMessageStart[0] = 0xf1;
    pchMessageStart[1] = 0xc0;
    pchMessageStart[2] = 0xb6;
    pchMessageStart[3] = 0xd0;
    nDefaultPort = 9333;
    nPruneAfterHeight = 100000;

and the genesisblock:

genesis = CreateGenesisBlock(1512851040, 376896, 0x1e0ffff0, 1, 25 * COIN);

and the checkpoint (the genesis block i created):

      checkpointData = (CCheckpointData) {
        {
            {0,           uint256S("0x6213f0e07c17e4ccef1fd9d023b06ce7e8bdbddaf2c4175197149302b7c351e8")},
        }
    };

    chainTxData = ChainTxData{
        1512851400,
        500,
        0.06
    };

Anything else is unchanged! Ports, etc. are alle the same as with Litecoin!
Please help. debug.log shows no errors. Took different approaches with -listen, -server, -deamon and of course a .conf file. Nothing seems to help.
This is the last step of my first chapter in blockchain development :)


texts: Sample code to transfer funds using bcoin

texts: I am new to bitcoin world. I wanted to get a sample code to transfer bitcoins from one bitcoin account to another using javascript and bcoin. The inputs are sender's private key and address, receiver's address, and may be a change address. I will really appreciate any help.


texts: Where to connect to get streaming blockchain data?

texts:
I would like to connect to the blockchain to read the whole thing, then listen to it "live" as it streams.

I'm new to this and can't seem to find out how to connect to receive data. (is there a central server, is it peer to peer...)

Is it a push or pull type of format? ie: Do I need to setup and endpoint and register to get the stream, or do I need to poll something?

Again new to this, any help would be appreciated.


texts:
Let's say I have 10 bitcoins. I won't be using 8 of them any time soon. How can I put the 8 in a separate "offline" wallet not related to the bitcoin client?

This would be a good security measure. If the bitcoin client is ever compromised, only the remaining 2 bitcoins would be at risk.

It seems rather reckless to have all of one's savings in the same wallet.


texts: Will MtGox accept a poor quality ID photo?

texts:
An exchange I use (Mt. Gox) wants me to send a color scan of my ID.  The only camera I have access to is a grainy camera on my feature phone.  I don't know the camera resolution but it is not very high.

The ID is readable but doesn't fill even half the image.  If I try to get closer, the image is too out of focus.

Will this image be accepted or will my account end up getting locked ("under review") until I send in a scan with a better photo?


texts: Why do Lightning packets include channel ids if forwarding is non-strict?

texts:
The onion packets in Lightning, as described in BOLT 4, include short_channel_id's of the channels along the route constructed by the sender. But according to the same spec, the forwarding is non-strict, meaning that if the payment is meant to be forwarded from an intermediary node X to an intermediary node Y, X is free to choose any of the channels between itself and Y (a pair of nodes may have multiple channels).

Isn't the short_channel_id's in onion packets excessive? Could we just specify a list of nodes along the suggested route and let each node choose the best channel to the next one?


texts: Given N addresses, Is there any way to know how many address are linked to a single entity?

texts: Let's assume that we have N wallet addresses - Addr1, Addr2,.... AddrN, Is there any way to know how many of these addresses are owned by a single entity on the considerations that there's no direct or Indirect transaction links between any of these accounts and all of them are making transactions independently.


texts: Who are you solving algorithms for and why?

texts: I am sick to death of people responding to my question with logistics of "how to" mine data or just that you are solving "mathematical concepts" and "algorithms."  What I do understand is this - some "organization" seems to think it is worth A LOT of money to have the public data mine for them (i.e.: bit coin payments for solving data). My question is what is this data used for, who is using it, and why?  No one seems to know and anytime I've encountered a secret this well hidden, it usually is nefarious under the surface.


texts: What's the relationship between SLIP39 and BIP39?

texts:
Trezor's SLIP39 makes it possible to apply Shamir's secret sharing to a Bitcoin wallet seed.

How do SLIP39 and BIP39 relate to each other?

I.e. it seems possible to derive SLIP39 from BIP39 words but this is messy, and deriving BIP39 from SLIP39 is not possible at all?

Or in Tony's words, what are the the details of calculating the BIP32 master seed from entropy using both schemas?

I want to know this because I was first under the impression that the relationship was quite strong and it would be possible to derive BIP39 words that can be used to recreate a wallet, but this does not actually seem to be the case.

There's some useful information here but it's not very concise answer: https://github.com/iancoleman/slip39/issues/1


texts:
I have learned a lot about how bitcoin works. Now I want to contribute to bitcoin source code, how can I do this?
Of course, bitcoin is open source so anyone could go to the bitcoin repo here and start making commits. Most users in this community have probably figured out by now that I am not a professional computer scientist (at best I have strong math skills and experience with imperative programming - python, R). This question is subjective but there are several users in this community who are top contributors to Bitcoin Core and likely have extensive knowledge regarding the source code and the community surrounding it. My hope is that an answer to this question could serve as an extensive list of resources and advice for a non-professional looking to get involved in contributing to Bitcoin Core. Topics to address could include:

Learning C++ - concepts extensively used in bcc that must be mastered/concepts rarely used in bcc that could be brushed over/ resources for learning C++
Understanding the code structure - in older versions of bcc there was a main.cpp that seemed a logical place to start. In bcc 0.21.0 I no longer see a 'main' file, and can actually find very few files where I can relate the code back to bitcoin concepts I am aware of. Not sure where to start.
Community/BCC Goals - Once I have some C++ skills and code structure knowledge how will I even be able to find things that need development or contributions in bcc? Obviously I am not expecting to be writing entire libraries for a new elliptic curve, or introducing the next space saving concept like segwit, so how can I find a way appropriate for my ability level to help out? Where is there community talking about what could be done? I imagine BIPS (Bitcoin Improvement Proposals) will come into play here. And even better yet, once I had some skills, where could I find a possible mentor!
Full Node/ Pruned Node - Will running a full node / pruned node be imperative in any way to this journey (perhaps for testing, etc)? Are there smaller projects or exercises once could start with that would help reach the goal of being a bcc developer?

Any other advice, resource, links certainly welcome. I think once a person had a good understanding of those topics above they could get started and then continue using this site for more specific technical questions, in its usual way.


texts: Determining the byte size of multisig transaction beforehand knowing the details of the transaction

texts: If I know the m of n values of the multisig, the # of inputs (all of which are from the multisig and require m signatures) and outputs and the redeem script, how can I determine the size of the transaction after m signatures?


texts: Why does a TSA first appends the timestamp and hashes the combination of timestamp and data? This product is then signed and send to the client back with the timestamp. Why not signing hash + timestamp?


texts: Which security threats in P2PKH lead to the use of P2SH?

texts:
To steal a P2PKH output you would have to find the private key of the public key that generated the hash used in the tx. This is impossible to do in a feasible timespan, therefore making the tx secure. What incentivized the use of P2SH? I'm particularly asking in the light of this paragraph of the Bitcoin developer guide:

  Pubkey scripts are created by spenders who have little interest in the long-term security or usefulness of the particular satoshis they’re currently spending. Receivers do care about the conditions imposed on the satoshis by the pubkey script and, if they want, they can ask spenders to use a particular pubkey script. Unfortunately, custom pubkey scripts are less convenient than short Bitcoin addresses and more difficult to secure than P2PKH pubkey hashes.

I have been unable to find an example of a "reedem script", could you give one?


texts: Are there drawbacks to running a node on a cloud provider because of the limit of unique nodes connected per-subnet?

texts:
I currently have a full node running on Digital Ocean and have come across this old post on bitcoin talk that states that

-- Outbound Random Selection --
First the code puts the addresses into a.b.c.* buckets so only one
connection is made to each 24 bit netmasked network.

Which seems to suggest that the core client will only connect to 1 node peer per /24 subnet which makes me think that running a node on Digital Ocean (where it will share a subnet with a lot of other machines running in the same region) won't help the network as much as if I ran a node on my home network. If this is is still the case (the post is from 2011) is it generally recommended to stay away from cloud providers for running full nodes?


texts:
I realized transaction hex can be very long and you need it for broadcasting a tx using blockstream.info API:
https://blockstream.info/testnet/api/tx

https://github.com/Blockstream/esplora/blob/master/API.md
If the user wants to send this hex using text message which allows 160 characters in one message, what should be the best way to solve this problem? I tried researching about way to compress it, send to a number which forwards to the web server running a PHP code, the hex string is decompressed and sent to blockstream.info for broadcasting tx. Base64 encoding after gzcompress() couldn't reduce the number of characters to less than 160.
Example:
Hex:02000000000101e939fb23e9991ebbc75fd08c736da32ca12d98a4ff1b8e970e97f5661927ee410100000000fdffffff02b0a90a000000000016001421e2f997b3bd36e273eaca365da8515a389444ae40420f0000000000160014829e2dbcf6b7f31bc93633971f71f6f6b9b5f89e0247304402200f8e3e573be749caf1964a85707bf540de2e7b367ae46c23bd4f21932ff82346022062dc3007072cd5a19b45e479525f4829bc48be4fd3c21b5a9ae34bcf9a3a3ccf0121020f88c7db36cbb492e80d3062fc19db55bed82687498f8cfe6d0cf47adf6687aa49f31b00
Compressed and Base64 encoded:
eNpdkNmJBEAIRFPyarsNxzP/ENZZGBZW9Eew6pVA8C0EbGObIG4zw47Ie6bg5WUtZ0pHKnsuMxiv7cLOHFU0ut2yCl+xqfktoAA3cPiz0R0hbBqzGxzF2nS5PZ31lL+Dx/mZiHgLCMH8v35kTRU5GncYI42V2S7Otu7W4syzBpLLIAK0Mec197kcfcXSB01lzS7cmCNQTb04etdUk5ZLhtCYZh6x6EdDqZIB9oSyjqOFnJZrh858oCLlRcsUJ2EcN2+WxTRn58wBJITN8/altV4ZIUb9oHi1J9EqzomuR/qW8s3LaS3Ikes1ult3sU9mgB8sW3Vy


texts: Why don't developers switch from bitcoin-qt to a cleaner implementation?

texts: The "reference client" bitcoin-qt receives a lot of complaints from developers on the messy way it was coded.  It seems to require a big overhead to learn, and a lot of time is being spent on modularizing it.  Yet we have other implementations (bitcoinj, libbitcoin, etc)  that are already modular, and coded in a much clearer way.  Considering these facts, why wouldn't the developers switch their active development to one of these codebases?


texts: I have Blockchain.info wallet which i can't find

texts: I opened up an account with a site called Blockchain.info got a username and password, got a Bitcoin wallet address. I then bought some bitcoins sent them to that address, the bitcoins left but now i cannot access any blockchain.info site that gives me access to my account. Does anyone know what is going on with Blockchain.info?


texts: Bitcoind listtransactions return only received transactions not showing send payment

texts:
I try to get all transaction of an account using this:

listtransactions Ammadkhalid

But this is show me received transaction not send here screenshot but in php:


texts: Transaction is not submitting using bitcore-explorers.js

texts:
I'm submitting a transaction using bitcore-explorers library of js which also uses insight services of bitcoin node and here i'm receiving the error

Please help me out from this error, furthermore it was working fine before couple of days.


texts: Electron Cash wallet password not working!

texts:
I downloaded the wallet software from electroncash.org, version 2.9.4. I then transferred some Bitcoins from Coinbase using shapeshift to my new BCH wallet and after a few minutes, saw my tokens alright.

Then 2 days later, when I fired up the software again, my password didn't work!

Can you help me? I got the seed phrase but how do i use it?
When I fire up the software, the only wallet to choose is default_wallet. I also see the password field just below the pull down menu to select my wallet. I also tried entering the seed phrase into the password field.


texts: Help. Lost my backup phrase, but I have access to my wallet

texts:
When I downloaded the wallet on my phone I was  asked to write down a strange, meaningless phrase on a paper so I could access my bitcoins if they were lost, and I did so. I know pretty good why does this exist and understand it's importance, but i'm afraid I've lost the paper on which I wrote the phrase.

Keeping in mind that I STILL HAVE ACCESS to my wallet, Is there any way I could change or recover my phrase?

P.S : Alright, I promise to protect this one with my life.
P.P.S : I really need help. Any sort of help that lets me change or recover my phrase would be highly appreciated.


texts:
Goal:

My goal is to be able to have my own local blockchain indexed so I can perform searches based on public keys.

Blockchain:

wget https://bitcoincore.org/bin/bitcoin-core-0.19.1/bitcoin-0.19.1-x86_64-linux-gnu.tar.gz

I have a full node fully sync'ed

It seems electrs has now fully indexed the blockchain

Electrs was configued based on instructions here:

https://github.com/romanz/electrs/blob/master/doc/usage.md

What's next?

Unsure what to do next?  Do I need to create a C# app to connect to the Electrs index using JSON?  Do I need to use C# to connect to the rocksdb, which is the database used by electrs to index the blockchain?  If any of these is the next step, can someone please provide me with basic start code?  As in, how to connect my C# app to the index, pass it a parameter, in this case a public key, and retrieve a value back?


texts:
I'm trying to mine litecoin on litecoin-pool with cgminer

./cgminer --scrypt -u username.1 -p password -o stratum+tcp://lite.coin-pool.com:3333

and it keeps on returning

[2013-10-05 14:24:28] Stratum from pool 0 detected new block
[2013-10-05 14:25:16] Stratum from pool 0 detected new block
[2013-10-05 14:27:05] Stratum from pool 0 detected new block
[2013-10-05 14:27:22] Stratum from pool 0 detected new block

and I'm using the correct username and password.

What could be causing this?


texts: Blockchain.info Receive Payments API problem

texts:
I am building a little online app to accept bitcoin payments in my website. I have a blockchain.info wallet and I am following their Receive Payments Api, which can be visited here: http://blockchain.info/api/api_receive

The monetary part works great, but the HTTP Callback Notification does not take place and my online store is not notified of the payment. However, the TEST callback does work.

I think it is a problem on his application.

Has anyone implemented the "Receive Money API" successfully?
Is there any other alternative for received instant payment notifications?
(To several different addresses)

A friend of mine reports the same issue. We need a little help :)

Thanks!


texts: I have created a blockchain wallet after l loaded it the next day the balance was zero but l have realized there is an imported address which l didn't import. Is there any way l can recover the funds back. l can see all the transactions of the imported address.


texts: How can bitcoins be used for daily currency if their value changes erratically?

texts:
If Bitcoin was the worldwide money system...

Suppose that you work and save your bitcoins, to purchase something big like a house or car, but the value fluctuated like crazy, as the stock market does.

Whats to say you wont be rich today, but broke tomorrow? Today you could buy your necessities but tomorrow you would be back to zero?

How can individuals in a society live like that? You would revert back to the caveman system of bartering hard goods for goods in trading because the concept of money would be too erratic.


texts: where can i do a testnet Lightning Network Reverse Submarine Swap?

texts:
i have Testnet LN Node,
i have created a wallet,
i have send on-chain funds to that wallet
i have connected to several peers
i have created several channels, all of these are outgoing one side funded channels,

i want to do a reverse submarine swap, i mean Pay in LN and receive in BTC

LN --> BTC

this site offers the other way https://submarineswaps.org/

the purpose of these is to reverse a channel, or the half capacity of channel to be ready to receive LN payments.

of course i could just spend money, but the idea is to reverse the channel without loosing money (loosing is simulated as its in testnet)

thanks


texts: BIP32 HD Wallets: HMAC vs. "just" Hashing the Seed

texts:
In A. Antonopoulus' Mastering Bitcoin (2nd edition) on page 106, there is a nice illustration showing how the basis for a BIP32 HD Wallet is generated:

So here is the one thing I don't understand about it:

In the middle of the picture there is the part where the seed is HMACed and stretched to 512 bits. Why is there a HMAC needed instead of just simply taking a hash of the seed (SHA512)?

As far as I understand, the difference between a hash and an HMAC is that the HMAC delivers some sort of non-repudiation namely that only the ones who are able to create a valid HMAC are the ones knowing a specific key (so kind of like a signature). This feature however is useless in the given use case.

So why HMAC-SHA512 instead of SHA512? Is the idea to artificially increase the workload needed for the generation of a HD Wallet to limit the possibilites of a brute-force attack?


texts: Can I safely delete database.bak from wallet folder?

texts:
In order to save space.
I cleaned it up and now my bitcind in freezing, but this might not be the cause.


texts: If Bitcoin is not controlled by the state, how come in some countries it is illegal?

texts:
From my understanding, Bitcoin is decentralized and not controlled by any company or organization (so, for example, no bank is behind Bitcoin).

However, this seems to not be powerful enough to resist to the country laws.

There are quite a few countries where Bitcoin is illegal, for example, Bangladesh:

  In September 2014, Bangladesh Bank said that "anybody caught using the virtual currency could be jailed under the country's strict anti-money laundering laws"

So, why is the fact that Bitcoin is not controlled by governments/organizations/banks/etc so important, if the government can actually say don't use Bitcoin and it becomes illegal?

As one who has bitcoins, what should I do if my country will Bitcoin one day?


texts:
I am having difficulty loading the full node for my new Bitcoin Core wallet. I use a Mac and share a modem with my apartment complex. I believe a manual network configuration is out of the cards for me. My node stopped loading with 31 weeks to go and I am still waiting to receive my first payment.

Is there another electronic wallet that does not require so much configuration? Also, is it possible to take my key for the expected payment and use it in another electronic wallet?

in over my head.


texts:
So: BTC, BCH, BTG and BSV all trade at different prices/values.

All have forked off from BTC and have different development teams, theories, practices, technology, etc.

I noticed that when you look at the amount of coins mined on sites like coinmarketcap.com, it shows the following circulating supplies for each:

BTC = 18,287,125
BCH = 18,351,063
BSV = 18,348,240
BTG = 17,513,924

Are the amounts of the circulating supply of coins (other than BTC) the amounts of coins mined after they forked from BTC?

How is BTG's supply calculated since it is lower than BTC?

Also, if/when one of these coins "wins" through having the "best" technology, most TPS, etc., will they all converge back into one coin some day possibly?  If/when that happens, will the values all become the same since they will converge back into one coin?

Any light anyone could shed on this would be GREATLY appreciated!


texts: stuck transaction despite high fee - will it eventually be forgotten?

texts:
I made this transaction a few days ago with a normal fee, but it's still stuck.
https://blockchain.info/tx/461df29d7a923491e24688a79d902fb027929d1b3b57fa6e272015a9250394bc

Any suggestions how long this will take? Is the bitcoin network falling apart? For how long will my wallet broadcast it? Will it eventually be forgotten?

thanks


texts:
How can I have friend to send me money without possibility to see my balance?

When I give him address where to send bitcoins, he can use e.g. https://blockchain.info or  http://bitref.com/  to find my balance.

If I create new address, let him send money to the new one and then I forward money to my original address, can it be easily tracked (what is stored in block?) ?


texts: Easy Miner showing zero work, no devices shown

texts:
I have servers at my home (I work as a computer architect from my home for the Fortune 50) that are on all the time and plan to procure some Bitcoin hardware miners in the next few weeks. In the meantime I have got my own Bitcoin Wallet and signed up to a Bitcoin Pool and want to 'test the water' by mining with my extra GPUs I have in one primary Windows Server.

I have an account with Eclipse and have the original Wallet from Bitcoin Qt and I run a GUI mining tool from Butterflylabs called Easy Miner.

I am confused as I ran all night for about 18 hours but the logs show nothing but zero's when it talks about my work! It shows no devices and it 'looks' like no GPU!

I am confused...do I need a different Mining Tool to use my GPU or CPU (can you even use the CPU anymore...I know it would be slow and hence o not really want this.


texts: Is possible to destroy the Bitcoin for just $500K? (51% attack)

texts:
Everytime I read about the 51% attack the answer was something like:
is really expensive to get 51% of power on BTC and nobody will invest so much so to destroy the bitcoin.
But I found this site where you can rent hash power it seems to cost only $500K to get 51% for BTC (and much less for the altcoins):
https://www.crypto51.app/

Does that mean everybody with just a few dollars can destroy almost any altcoin right now?

EDIT
That site was posted by Charlie Lee (creator of LTC): https://twitter.com/SatoshiLite/status/1001341159405273088 but maybe I'm reading it wrong, becuse the last column says NiceHash-able and for BTC is 2%, LTC 7% and bytecoin 211%, maybe those numbers are the clue but I don't know what it means.
Is that table showing that BTC is hard to attack but other coins like bytecoin are really easy and cheap to attack? maybe someone can clarify this?


texts: Where can I find historical exchange rate data for BTC/USD?

texts:
I'm looking for historical exchange rate data for Bitcoins/USD beginning in 2010, but I haven't been successful. This is for academic research. I tried bitchart.org. I don't know how to access the MtGox API either.

Can you help me with a step-by-step procedure to download the data in CSV format (or any other format)? It would be awesome if you could just provide me with the actual data file.


texts: How to tell bitcoind to use more memory and CPU

texts:
I just updated my node to 0.12 and its going through its long verification process but I noticed that its not using very much memory/cpu

pi         602 10.5 19.4 352220 184312 ?       Ssl  21:57   1:28 /usr/local/bin/bitcoind -datadir=/home/pi/bitcoinData/.bitcoin -daemon

How can I configure it to optimise all available memory and cpu? I recall a option to bump up the cache from a default of 50 or 100mb but cannot find the option.

I have a 1GB PI 2. Any recommendations on maximum memory to use? I was thinking 900mb if possible.

Thank you for your tips, and any optimizations to make this run best would be great!


texts: Why isn't my full node accepting incoming connections from other nodes?

texts:
I have a full node on a Gentoo box. I have port forwarding on my router setup so that port 8333 is sent to the IP of my full node. I opened port 8333 on the machine using:

iptables -A INPUT -p TCP --dport 8333 -i wlp4s0 -j ACCEPT

The node is fully synced with the network and I can watch new blocks arrive in the debug log. I thought I was fully participating in the network, but when I check for my full node at Bitnodes it says that my node is unreachable.

Any suggestions? Is there any other way to test public access to my full node?


texts: Measuring total amount of Bitcoin in circulation

texts:
Since fractional reserve banking where money is created by lending is possible with Bitcoin is there a way it can be measured to give a total amount of money in the system? Such a measurement would actually reveal the value of money multiplier which I define as a real statistical ratio between commercial banks money and monetary base rather than a theoretical maximum ratio that is legally defined (because of lack of regulation with Bitcoin).

I guess such a measurement can either be direct (by lenders reporting how much they've lent) or indirect (measuring some other impacts those loans have on economy).


texts: HD Wallets Difference between a CKDpub and CKDpriv from the path notation

texts:
I' m still trying to grasp the conventions used in HD wallets, so I have a couple of questions:

What's the difference between CKDpub and CKDpriv from the path notation.
What I know is the path  just uses h or ' to denote difference between hardened and non-hardened dervivations but I don't see the difference between a CKDpub and CKDpriv by just seeing the path.
From this Ethereum standard derivation node /m/44'/60'/0'/0/0 ,how can someone get the extended public key and derive other public from that extended public key respecting those conventions.
f(parentExtendedPubKey, index ) = childPubKey --> address. How is this achieved and how can  a private key that stayed in the HD wallet can later be used to unlock or spend those funds sent to that address generated through the parent public key ?


texts: What sort of calculations do the miners have your computer do?

texts:
I recently heard of a new cryptocurrency (or maybe it's not new and I'm just out of the loop) called Gridcoin which uses your GPU/CPU/ASIC to do research calculations rather than "meaningless" calculations.

I had previously thought that Bitcoin miners have your computer do calculations required to process Bitcoin transfers, and then takes a little bit off the top as payment for doing the calculation. If that's true, then why do all the Gridcoin articles say that the calculations are useless?

I'm trying to understand the actual details behind Bitcoin further, and there's very little information out there that's accessible to the layman.

What does the miner have my computer do when I'm mining? And why weren't "more useful" cryptocurrencies such as Gridcoin developed earlier? Why does the system reward you for meaningless calculations, and how is that sustainable?


texts: I'm trying to mine with my gtx770 but now I know that I need the  "cudaMiner 2013-11-01". I've searched on the entire web (well only google but you know it has everything on the web) and all links are down, so if someone has the relase I'll appreciate it


texts:
I am thinking about buying some bitcoin. I understand the risks and I am going to use the little money I have left at the end of the month. I have plenty savings as well, so I am not using all of my savings to bet on bitcoin. I just want to invest a very small amount to understand the mechanics of it.

I am trying to understand Etoros' fees as described here: https://www.etoro.com/en/customer-service/fees/. Coinbases' costs seem to be much simpler to understand.

To help me understand Etoros fees. Say I had £250 to buy today and I sold for £250 this time next week. What would the Etoro and Coinbase costs be and when would they be payable?

Also what is a pip? I understand it to be 0.001p but I could be wrong.


texts: Wouldn't bitcoin benefit from distributing partial blockchains over each node?

texts:
Why doesn't each node store only a portion of the blockchain?

For example, if you had 100 nodes, each node would store 10% of the blockchain. This would amount to significant overlap of each aspect of the blockchain, and as nodes came and left there would be increased or decreased sharing of the blockchain.

Is it infeasible? If so, why? I am interested in pursuing this as a project because I think it could solve a lot of bitcoin's scalability/decentralization issues.

From my understanding of the blockchain, let's assume a particular node starts at the genesis block. Let's assume another node stores 1% of the blockchain past the genesis block. Couldn't multiple node verify block hashes for their shared 9% at a rate of once every 10 minutes? It wouldn't really use that much data -- you could hash the 9% of the blockchain to a particular value, produce a public key, and see if the other nodes can match a private key to said public key.

A related question: Is this what Electrum does? Or, does Electrum simply store the entire blockchain on multiple servers that you can connect to?


texts: Using Javascript, I want to generate a segwit private key (zprv) similarly to how I am generating my legacy base58 extended private key. How?

texts:
let bip32 = require('bip32');
let bip39 = require('bip39');
let { bech32, bech32m } = require('bech32')

const seed = bip39.mnemonicToSeedSync('rural catch say tooth tell soul road pilot fee board goose wedding');
// ^randomly generated for this question

const node = bip32.fromSeed(seed, bitcoin.networks.testnet);

//legacy account extended private key
console.log("LEGACY: " + node.derivePath("m/44'/0/0").toBase58());
//tprv8giQNMeV5drQbXzAxSaVDj5Q1rAuTDZdGWoSx5oaLfuk9rupqVZXoziLgJSpkuauCToZw7BepygJjJaDBWKx5xQLimyg4KFtKnU2E7b99YH

//segwit account extended private key
//how do I take the same inputs, and get a segwit extended private key / zprv

This is how I'm getting my xprv, I'd like to also test out getting a zprv but I'm having trouble finding the documentation for this. I'm assuming it's going to be something using bech32.


texts: Can I change wallet without shifting funds

texts:
I have some fund in Multibit, a wallet that has now become almost unusable. I do not want to risk transferring all my bitcoins to another non-Multibit wallet because my last transaction is still stuck in "sending" mode weeks after I sent some bitcoin.

So I am wondering if it is possible to sign up with another wallet provider and somehow recover my Multibit funds directly from the blockchain.


texts:
Lets say user A wants to send bitcoin to user B stealth address.

What is exactly user B's stealth address? Is it his public key? Since User A needs to multiply his private key with user B's public key based on Elliptic Curve Diffie-Hellman so I assume user A is receiving the complete point which is user B's public key.
User A shoud calculate PrivA * PublicB which results in a coordinate. As far as I know this point will be used by multiplying it to the publicB and a nonce and that will be sent to the network. If what I am saying is correct, how can I multiply this coordinate with PublicB since both of them are points. Do we only get one axis of this point from the diffie hellman's calculation?


texts: Are we stuck with what is here now? or if 10 years down the road serious changes need to be made to the system; can that be done with a decentralized system? How would you make changes to a decentralized system like this?


texts: Why is a Payment Protocol Acknowledgement message not signed?

texts:
The Payment Protocol (BIP 70) describes three messages passed between a payer and payee. The last one is an acknowledgement message sent by the payee.

This discussion talks about the acknowledgement being used as a receipt. In the event of a dispute, the payer can show the payee this receipt to prove payment.

However, unlike the payment request message, the acknowledgement message isn't signed. I may be missing something, but this looks like a weak form of receipt without a signature.

Although the acknowledgement attaches the payment message, the payment message doesn't reference the original payment request, which is the only message with a signature.

It seems like a signed acknowledgement message would provide strong proof of purchase, and would be very valuable from the perspective of consumer protection. Why wasn't this included in BIP 70?


texts: How to generate a bitcoin address from a hexadecimal private key using openssl in swift

texts: I have an iOS app which can generate Bitcoin private keys in either a hexadecimal or base64 output.  I'd like take the resulting private key and generate the Bitcoin address from it.  I've included the openssl library in my project but am confused as to which methods I should use and how to reference opaque pointers that come along with openssL methods when using them in swift.


texts: Is the transaction pool global or local?

texts:
I can't find anything in the web about that topic.
Do all the miners have one global pool filled with transactions, i. e. Miner 1 takes Transaction 1 into his candidate block, so Transaction 1 won't be in the transaction pool anymore.
Or does each miner has a local pool filled with transactions, so that each miner can take Transaction 1 into his transaction pool.

If my question is unclear, I will try to describe it better.
I hope someone knows a good reference to that topic.


texts:
I request payment to this address: 1MJW5uSqvsdey6DnAsMo21WZ6bhehaVtKq but still not yet to the wallet.

https://blockchain.info/address/1MJW5uSqvsdey6DnAsMo21WZ6bhehaVtKq

Why this happen how to get back or cancell

Regards


texts: What happens if a miner deliberately ignores a transaction, and "wins"?

texts:
Suppose a miner decides to solve the nonce for a particular block, where the miner deliberately excluded a particular transaction from this block. The miner "wins", i.e. they found the nonce value that, when added to the string of the modified block they were trying to solve, hashes to a number below the target number. They send the solution to the network.
Does their block, that ignores the transaction, get accepted by the network? If so, what happens to the ignored transaction? If not, why not?


texts:
I had 2 Bitcoins on my old PC and got a virus so did a format.
But I also did a backup of my bitcoin wallet.
Now I want to sell these bitcoins but when I went to the site, the official client was different and very heavy. And the site was showing as first option Multibit.

So, I got Multibit. But I couldn't import the old .dat wallet.
Am I missing something? Is there any way to convert the wallet for Multibit?

Is this safe?
https://blockchain.info/wallet/import-wallet


texts: How to sign a SegWit transaction via NBitcoin?

texts: Most tutorials out there just show how to sign it in the legacy way. And I know that NBitcoin already supports SegWit, so is there a snippet out there on how to sign it this way?


texts: Is there any way to tell if there is a miner (in a pool) on the network, from a network perspective?

texts:
I'm thinking traffic analysis, packet inspection, IP.

How would that be differenciable from other traffic patterns?

How active do admins look for such patterns?(I'm thinking more P2P stuff)


texts:
So I understand how blockchains work[1]. I understand how proof-of-work works[2]. And I understand how they work together. I also understand (or at least I think I do :) how transactions work (A block can contain arbitrary data inside of it, so it can contain a message signed by A that he transfers 5 btc to B).

But where does the bitcoin itself fit in this picture?

Is it a recalculated number every time (so if A gives 1 btc to B, then if I want to confirm, I verify that A has 1 btc to give away by checking who sent him anything, and make sure that he has what to give away, etc. up until the miner's bounty)? If so, this would have to be done whenever a block is mined (if not, I (who have 0 btc in my "wallet") can certify that I give B 100 btc, mine a block, and include that transaction. And while the blockchain on its own would still work (meaning that the hashes work out and solve the proof-of-work), the accounting wouldn't).

Am I making sense or am I totally off?

[1]. It's a linked list, but instead of linking-by-address, it's a link-by-hash.

[2]. Change a part of the Node so that the node's hash would start with 100 zeros, for example.


texts: Should the nodes of a channel have the same Time Lock Delta?

texts:
Consider this channel https://1ml.com/channel/612829298476056576 :
Node 1: Caffeine
        Time Lock Delta: 10

Node 2: HODLcat.com
        Time Lock Delta: 144

How is an HTLC passing through this channel affected ?
Would the channel work more reliably if the time-lock deltas were the same?


texts: Buying selling of cryptocurrency. Where does the coin come from and where does it go?

texts:
I am a novice trying to understand selling and buying of crypto currency. I could not find it on google so asking, please do not be harsh.

Say, I have an account with coinbase and want to buy bitcoins or other cryptocurrency, how does/where from an exchange gets those coin to sell to me? and If I want to sell my coins whom does the exchange sell it to.

Is there an article on how this trade work on the internet?


texts: Jaxx Wallet ---> Cryptopea Wallet - unsuccessfull (doublespend)

texts:
I attempted to transfer funds from my bitcoin jaxx wallet to my cryptopia exchange bitcoin wallet.

However transaction looks like it failed with doublespend error report.

Anything I can do?

This is the error.

and further down info.


texts: Can a miner set the EXACT timestamp of a block?

texts:
I know that miners can adjust the timestamp of a block, but can they control the exact timestamp datetime (within the +-2h rule)?

For example:
A miner mines a block at 2013-08-08 08:01:34.
Can the miner change the block timestamp to 2013-08-08 08:08:08?


texts: Does Satoshi Dice owe its customers money? How come?

texts:
From this analysis thread:

SD Profit after fees:       22476.66146080 BTC (1.688%)
Pending Liabilities:         6821.78965204 BTC
Final SD Profit:            15654.87180876 BTC

...

  From now on my reports will include this 'pending liabilities' figure
  since it's really getting out of hand.  There are bets going back 5
  days which haven't been paid out, almost all of them are winning bets.
  In total SDICE currently owes its customers around 6800 BTC, or around
  $91,000 US in unpaid bets.

How come there are unpaid bets going back 5 days? Does Satoshi Dice always pay immediately?


texts: Is there a way to automatically send bitcoins from one wallet to another?

texts: Say I have 2 wallets, an older non-encrypted one and a fresh new encrypted wallet with all new addresses. If I have an address in the older wallet that may receive some bitcoins in the future is there away to set it up so that these bitcoins will automatically be sent to an address in the new encrypted wallet. Or do I have to keep my old wallet for ever in case an address in it receives some bitcoins and then manually send them on to the new wallet.


texts: How can I see the wallet balance using Blockchain Api? C#

texts:
Stupid question, but I cant get it

So, then I type my wallet adress on blockchain.info I immediately can see my balance, but from my project I can't type something like:

WalletAddress wa = new WalletAddress("17p49XUC2fw4Fn53WjZqYAm4APKqhNPEkY");
Console.WriteLine("My balance: " + wa.GetBalance() + "BTC");

and output would be like: My balance: 1.0023BTC

The easiest way to see my balance from bitcoin wallet?

No metter I use Blockchain Api or something else, but C#.

Sory for my bed england


texts: why is bitcoin-qt connecting to port 9051?

texts: Running bitcoin-qt with default policy in the OUTPUT chain to DROP I see lots of packets from localhost to localhost with destination port 9051 being dropped. If I open that port the node syncs. I do not see any service listening on that port. Why is it connecting? This is a tor port and I am not currently running tor here.


texts: Why is CheckBlock called twice when processing a new block?

texts:
Once the Bitcoin node receives a message with a new block, it calls the ProcessNewBlock function:

 else if (strCommand == "block" && !fImporting && !fReindex) // Ignore blocks received while importing
{
    CBlock block;
    vRecv >> block;

    CInv inv(MSG_BLOCK, block.GetHash());
    LogPrint("net", "received block %s peer=%d\n", inv.hash.ToString(), pfrom->id);

    pfrom->AddInventoryKnown(inv);

    CValidationState state;
    // Process all blocks from whitelisted peers, even if not requested,
    // unless we're still syncing with the network.
    // Such an unrequested block may still be processed, subject to the
    // conditions in AcceptBlock().
    bool forceProcessing = pfrom->fWhitelisted && !IsInitialBlockDownload();
    ProcessNewBlock(state, pfrom, &block, forceProcessing, NULL);
    int nDoS;
    if (state.IsInvalid(nDoS)) {
        assert (state.GetRejectCode() < REJECT_INTERNAL); // Blocks are never rejected with internal reject codes
        pfrom->PushMessage("reject", strCommand, state.GetRejectCode(),
                           state.GetRejectReason().substr(0, MAX_REJECT_MESSAGE_LENGTH), inv.hash);
        if (nDoS > 0) {
            LOCK(cs_main);
            Misbehaving(pfrom->GetId(), nDoS);
        }
    }

Inside this function, CheckBlock and AcceptBlock are called:

// Preliminary checks
bool checked = CheckBlock(*pblock, state);

{
    LOCK(cs_main);
    bool fRequested = MarkBlockAsReceived(pblock->GetHash());
    fRequested |= fForceProcessing;
    if (!checked) {
        return error("%s: CheckBlock FAILED", __func__);
    }

    // Store to disk
    CBlockIndex *pindex = NULL;
    bool ret = AcceptBlock(*pblock, state, &pindex, fRequested, dbp);
    if (pindex && pfrom) {
        mapBlockSource[pindex->GetBlockHash()] = pfrom->GetId();
    }
    CheckBlockIndex();
    if (!ret)
        return error("%s: AcceptBlock FAILED", __func__);
}

Inside the AcceptBlock function CheckBlock is called again:

if ((!CheckBlock(block, state)) || !ContextualCheckBlock(block, state, pindex->pprev)) {
    if (state.IsInvalid() && !state.CorruptionPossible()) {
        pindex->nStatus |= BLOCK_FAILED_VALID;
        setDirtyBlockIndex.insert(pindex);
    }
    return false;

Why is the CheckBlock function called two times when processing a new block?


texts:
As I know, standard ECDSA digital signature algorithm returns two values (according to this article or Wikipedia), but transaction push services or APIs, like this one, require one string as a signature. Can anyone explain, what is that string, and how can I get it with those values? Is it possible with OpenSSL?
Thank you very much!


texts: How to open the port 8332 on EC2 instance?

texts:
I'd like to access the EC2 instance that installed bitcoin mainnet node.
I've found out that I need to open the port 8332 of instance from the question, but I have not idea how to do it.

I tried to add port 8332 on the security group, however I cannot select 8332 port, only can select 80.

Could you tell me how to open the port and access bitcoin node?

Update

I've set port as the attached picture.
However, it returned the following error.

Connection refused - connect(2) for 'publicIP address' port 8332

It means that I still cannot connect the instance? or I've already connect the instance, but returned error by another reason?


texts:
I've been implementing point addition into a c++ program I've written but I don't see how this can be done right.  When I do slope = (y1 - y2)/(x1 - x2) I get a freaking decimal, which doesn't produce the proper points when applied to the other parts of the equation due to  it not retaining its fractional qualities.  Anyone have any ideas how how to get past that?

Point Addition being defined by the following equation:

slope = (y1 - y2) / (x1 - x2)

xsum = slope ^ 2 - (x1 + x2)

ysum = slope * (x1 - xsum) - y1

Whereby Private Address x02 with x,y coordinates respectively:

89565891926547004231252920425935692360644145829622209833684329913297188986597
12158399299693830322967808612713398636155367887041628176798871954788371653930

with the Point Addition of Private Address x01 with x,y coordinates respectively:

55066263022277343669578718895168534326250603453777594175500187360389116729240
32670510020758816978083085130507043184471273380659243275938904335757337482424

applied to the above equation produce the result of Private Address x03 with x,y coordinates respectively:

112711660439710606056748659173929673102114977341539408544630613555209775888121
25583027980570883691656905877401976406448868254816295069919888960541586679410

http://en.wikipedia.org/wiki/Elliptic_curve_point_multiplication

EDIT:

I put this C++ program together, and I've modified in every way I can think of (moving %p around, doing it too many times, breaking up the equations and the like).  I can't get it to result in the proper results.  Anyone mind checking it out and see what you can find please?

http://coliru.stacked-crooked.com/a/26f9ed24ed5a86ed


texts:
Hey guys been looking through the forums and I'm still not quite sure how to speed things up or fix it. (Not very good with this kind of stuff)

Here's my wallet address - 1GZK3NYHCAScGRb4awAkXGVXszstwCVEEh

Both transactions say they have been seen by 50+ peers

I used the standard multi bit classic fee 0.0001
Which has never slowed me down in the past.

Any advice or help would be awesome

I'm happy to just get them back and send again with a higher fee.

Cheers

Edit: I'm using multibit classic. I have done a block chain reset. One of the transactions says it's in my balalnce (not spendable) and the other seems to have stayed the same (being sent to the same address) but has only had the peers reset. I've looked on blockchain info etc just not really understanding what I'm looking at. I assume the problem was the low fee, which I've now changed in my settings. Just not sure how to get it all back and start again.

Sorry I'm a bit of a noob


texts: Software wallets and what happen if you break your computer

texts:
I've been reading about wallets, web wallets, software wallets, hardware wallets...and there is one question that I could not clear up from other threads:

Your bitcoins are stored in the chain. Use them it's as easy as ask to the chain how much you have + use your private key associate to the address.
Based on previous statement (whether is correct) nothing happens if your software wallet installed in your machine gets corrupted or the web wallet site decides to shutdown, as soon as you use another wallet that is connected to the same blockchain platform (supports that cryptocurrency) and provide your private key or seed is enough (right?). This remembers me kind of "cloud" ledger phylosophy.
So how the hell can something like this happen? --> https://money.cnn.com/2013/11/29/news/bitcoin-haul-landfill/
Are not the balance of this guy replicated in the blockchain , and having his private keys or seed he can still use them?


texts: When does miner insert the coinbase transaction?

texts: When a miner creates the candidate block with transactions from the mempool, does he insert the coinbase transaction after winning the PoW or during PoW?


texts: What is preventing segregated witness from being activated

texts:
Segregated witness has been around since 2015 with good publicity and proponents since early 2016. It seems to have the benefits of solving transaction malleability, creating a good foundation for the Lightning Network, implementing script versions and most importantly a temporary transaction scaling solution.

Is the main reason for the slow miner adoption (https://coin.dance/blocks) because it means lower transaction fee's for them? And is a soft fork being avoided because a hard fork is preferred?


texts: Why most bitcoin wallet apps don't have Replace-by-fee feature?

texts:
As a bitcoin user, it seems that Replace-by-fee feature is useful to solve the problem of transactions not confirming because of an insufficient fee. However, as far as in know, most bitcoin wallet apps does not have the feature. I found that only Electrum wallet has it. (But it is not default setting on Android app)

I read this reddit. The comments are posted 1 year ago but seems still be controversial.

https://www.reddit.com/r/Bitcoin/comments/3urm8o/optin_rbf_is_misunderstood_ask_questions_about_it/

I have very simple transaction generator tool in my company. The process is the followings:

1. User calls HTTP API to create transaction with some parameters (source, destination, amount, fee, etc).
2. Retrieve utxos and generate raw-transaction in server-side. Returns the raw-tx to user.
3. User signs the raw-tx and calls broadcast HTTP API.

Users want to solve the problem of transactions not confirming. Thus I'm considering if Replace-by-fee is good idea or not.

My concern is whether using Replace-by-fee is agreed(positive) or not in Bitcoin community. If not, I won't use it. If the reason is technical(or cost), I will try to implement it.

I'm very grateful if you could share your opinion or references about it. (sorry this can be opinion based question)

Update 1

I'm sorry the above my question is not clear. What I wanted to ask was what negative aspects Replace-by-fee has.

Electrum Android add shows the following warning before creating transactions.

  Note that some merchants do not accept non-final transactions until they are confirmed.

This case would be a negative aspect. I have concerns if another disadvantages are exits or not.

(Btw, Replace-by-fee can change only fee. I'm not sure why some merchants do not accept replaceable tx.)

I found that the downside of RBF is described in this question.

  The downside is that this represents a significant shift in terms of expected memory pool behavior.

Can someone outline the full pros/cons of the various Replace-By-Fee proposals?


texts:
How to use python rpc bitcoin to get the historical transaction record of a wallet address？My computer has synchronized all btc blocks, and txindex=1 has been configured. I want to try to get all the historical transaction records of a wallet address. Do I still need to create a mysql or redis cache? Below is my configuration
datadir=/opt/bitcoin/bitcoin-data
dbcache=10240
txindex=1
rpcuser=*****hi
rpcpassword=****
daemon=1
server=1
rest=1
rpcbind=0.0.0.0:8332
rpcallowip=0.0.0.0/0
deprecatedrpc=accounts

I just want to input an address and connect to the local BITCOIN RPC to query all historical transaction records of a specific address
An empty message was returned
root@ubuntu:~# bitcoin-cli listtransactions  "3Fr1mGhnPAQ9YDf1dzg4B47PkX5TuvFtYv"
[
]


texts: Who is in the Bitcoin Business Alliance?

texts:
I have stumbled upon the Bitcoin Business Alliance, and heard it includes some of the most influential people in the Bitcoin space.

What businesses or individuals are known to be a part of the BBA?


texts: How is BID and ASK Calculated for crypto currencies?

texts:
I am trying to create a graph to moniter order data, similar to:

http://www.cryptocoincharts.info/orderbook.php?pair=pc-btc&market=bittrex

I am using the cryptsy api (http://pubapi.cryptsy.com/api.php?method=orderdatav2) to fetch all the order data and for each coins it returns some thing like:

          "price": "395.00000000",
          "quantity": "0.00100000",
          "total": "0.39500000"

The question that I have is, is there any formula or some thing to calculate bid and ask, so that I can plot the graph?

Thanks.


texts: Will your shares be lost if you restart p2pool before the payout?

texts:
Will your shares be lost if you restart p2pool before payout, or is there a way to change the pool setting without takng it down?

I'm not sure about the wallet address and I want to change it.


texts: Will I save on miner and network fees for sending btc if I import my bitpay wallet to another wallet like electrum or blockchain?

texts: I have a bitpay wallet that has received many small transactions. I want to send all of the funds to my trading platform, but the fees are too high after the first send each day which is as low as 1%. Will it help to import that wallet to another client like electrum or blockchain?


texts: How to estimate the amount of transactions that belong to exchanges?

texts:
Can we estimate how many transactions (both incoming and out) belong to exchanges?

This can either transactions per time unit (block, day, month ...) or transactions/total


texts: cgminer fails to start with error "error opening terminal: dumb"

texts:
I'm using Windows 8 x64. I've downloaded the latest cgminer (3.4 at this time), but when ever I try and start it I get the error message:

Error opening terminal: dumb

I've seen various post that suggest this relates to the TERM env var and setting this does change the message to end with what ever is in TERM, but nothing I've tried fixes it. Anyone know what I need to do to get this working?


texts:
Is it possible to install bitcoin core on raspberry pi 3 since I tried it once and it did not work out and I have an external drive for the bitcoin data for it?

OS: raspbian (8 GB space with 1TB HDD external drive)

If it does not work, can you explain it details to me why it cannot?

If it does work, can you tell me the correct way to install it?


texts: What is the maximum of receive addresses the default wallet can handle?

texts: I guess there is no limit. But on tests, what is the maximum before the bitcoind start to slow down in a specific machine?


texts: I have a Bitstamp account and when I try to use the API for bitcoin deposit I discover that there is a unique address for my bitcoin deposit. It is safe in term of address reuse consideration ? Here for instance (https://en.bitcoin.it/wiki/Address_reuse) it's mentioned to not use the same address for several transactions


texts: Assume that Bitcoin value versus the “fiat money” is of great significance and  imagine suddenly discounted by 50% or more, the current pools are not in money any more, stop hashing. The current Bitcoin system will automatically set the difficulty down ( exponentially decreasing mode and easy to mine blocks using again a laptop ). Any supervisory power on earth to ensure that  Bitcoin system will remain resilient if hashing conditions change rapidly?


texts: How to calculate the size of the blockchain?

texts:
I want to find the size of the blockchain data. I've been using this Linux command:

du --exclude=index /home/me/.bitcoin/blocks/

Is this the most accurate way to do it? And does dividing the result by 1024/1024 give the size of the blockchain in GBs?

  Note: The --exclude=index part excludes the blocks/index/ subfolder, which I've heard is extra metadata used for levelDB to make it faster to search through the blockchain. I just want to know the size of the blockchain data only, so does it make sense to omit this?


texts: How do I interact with Bitcoin Core from NodeJS?

texts: I am new to the Bitcoin world. I have installed Bitcoin Core on a Windows machine and am running the full node. I want to develop a nodejs app that would be running on the same machine interacting with the Bitcoin node for 'balance/transfer funds/create wallet/etc'. I will really appreciate any pointers or sample code to achieve that.


texts: I have never been the best at math. However I am pretty good with computers. If I buy the gear to mine the coin how hard is it to work the machinery and do the work to make the coin?


texts: I always wondered why BIP44 HD wallet differentiate between internal change addresses (m/44'/0'/0'/1/*) and external receiving (m/44'/0'/0'/0/*)? Why do some wallets advice me not using internal address to receive funds? It seems to me superfluous complexity.


texts:
In What are the minimum sizes for transactions and blocks in Bitcoin?

The first transaction is set to be 65 bytes long, due to coinbase requirements. What about the second one ? That can be 61 bytes long ? Also, does each transaction carry a counter ? How is that added to the byte count.


texts:
Ok I have made bit Cash paper wallet ... Now I am going to transfer to it from my Trezor..  my question is how do I verify that what I transfered is on the paper wallet?

Thanks  Linda


texts: How do hardware wallets communicate with the outside world?

texts:
Hardware wallet has more security than software wallet because they
  store private key in offline hardware, which online attackers cannot access. Thus, they sign
  in the hardware and then send the transaction with signature out to Bitcoin network.

At this points, I'm wondering some stuff:

If user make a payment, who broadcasts the transaction into the Bitcoin network? I know that hardware wallets has no Bitcoin node software that can communicate with peers. So who is responsible for this work?
bitcoin-cli is a program for querying a bitcoind node, but hardware wallets has no blockchain similar database thus, it can't query any information locally. How does hardware wallets check their transaction state?


texts:
I'm really new to Bitcoining. I've made my own wallet at blockchain.info, and then I decided to get some "free" bitcoins by watchings ads or something. This worked. At leas when i login at Microwallet.org with the Adress I have from Blockchain.
On Microwallet there's displayed my account balance of xxx Bitcoin. But on Blockchain.info (logged in with the same address, of course), my Account balance is 0.

Why?


texts:
In Grokking Bitcoin on page 7, it is noted that:

  Invalid transactions are dropped.  They will not reach further than the first node.

If so, why do nodes after the first node continue to validate the transaction?  If the node is not the first node to receive the transaction, doesn't that mean its valid -- otherwise it would not have reached further than the first node.

Can't the nodes just receive a broadcast of the tx and save themselves from the redundant verification?


texts:
I want to make a cryptocoin payments php in my website, all info already ok. The only problem is, how to know if my member already pay that payments and if already pay update my database,

anybody know about this?


texts: How does Bitcoin decide which Alert messages to forward?

texts: The Bitcoin protocol lists an Alert message that in the Standard Client is displayed to all users. How does the Standard Client decide which messages to forward and display, and which to ignore? Does it respond only to predefined signatures of the developers, or can anyone send their own alert messages to the Network?


texts: Okay so butterfly labs has these ASIC chips available yet I am very confused on how to implement these. I have never seen these type of things and googling has gotten me nowhere.


texts:
I once heard an attack against LN, which was called "flood & loot": https://medium.com/blockchains-huji/flood-loot-a-systemic-attack-on-the-lightning-network-5c3dac7bba24
The 3rd step of that attack was described as follows:

III. Resolving payments on the last hop
After all payments were successfully routed and the HTLCs were added to the target node’s channels, the target node resolves all payments by returning the required secrets and claims these funds for himself. At that point, the target node could gracefully close his channels and leave with the funds sent by the source node. Once each victim acquires the secrets, he sends them back to the source node, asking to resolve the HTLCs and move their amount to the victim’s side of the channel. The source node refuses to resolve the payments and ignores any further messages from his victims.

So what does "resolve the HTLC" here mean? I see a mechanism titled "HTLC Off-chain Termination" in the LN whitepaper - does the term "resolving" here refer to this mechanism?
If so, I then think that, resolving/terminating HTLCs of the target node off-chain gives the attacker advantage (or gives the victim disadvantage) when the HTLCs of the source node is not yet resolved/terminated off-chain. Because, once the HTLCs of the target node are resolved, the victim will completely rely on the HTLCs of the source node being executed (rather than expired/refunded) to merely avoid fund loss, at best, meanwhile, the attacker will profit by stealing fund from HTLC expiry/refund, even in the worst case the attacker still won't lose anything.
So, what if the victim node in the middle then refuses to resolve the HTLCs with the target node as well, as long as the source node refuses to resolve its HTLCs with the victim node in the first place?
Why, how, and when should an intermediate LN node terminate/resolve its HTLC(s) off-chain?


texts: In rippled.cfg, what to use for [node_db] on Windows?

texts:
I am trying to run rippled, but it is stating that I am missing [node_db] from rippled.cfg. In that file I can see

# Note that HyperLevelDB is unavailable on Windows platforms
#
[node_db]
type=HyperLevelDB
path=db/hyperldb

What should I put in for [node_db] on Windows?


texts: signrawtransaction - Which private key from BitAddress.org?

texts:
I am trying to do multisignature addresses and when it comes time to spend the funds, I am getting stuck.

If I create a 2 of 3 multisignature address using 3 public keys that I generate locally, then dump their private keys and use those to sign and spend the funds, it works without issue.

But, when I generate public/private key pairs from BitAddress.org (Wallet Details) there are multiple types of private keys with different lengths.

Private Key WIF 51 characters base58, starts with a '5'
Private Key Hexadecimal Format (64 characters [0-9A-F])
Private Key Base64 (44 characters)
Private Key 52 characters base58, starts with a 'K' or 'L'

When I do dumpprivkey for one of the keypairs generated locally, it spits out a 52 character key. So I thought maybe the 52 character base58 private key was the one I should enter, but it returns "Invalid Private Key".

The key that dumpprivkey spits out does not follow any of the rules of any of the above private keys provided by BitAddress.org generation. So how do I generate this private key that I can use in signrawtransaction ?

I want users to be able to generate and supply their own private keys for a multisignature escrow, so generating the addresses locally is not an option.


texts: Is it true that all the bitcoins in existence are on the blockchain (the ledge), but it just depends on who the owner (address) is?

texts:
It seems that for the 18.5 million bitcoins generated, plus even the 6.25 bitcoins that were rewards just 10 minutes ago, are all recorded in the blockchain (the ledger), but it just depends on who the owner (the address) is?
And if Peter sends Mary 0.001 bitcoins, then it is just the ownership change (which address has it), all the same number of bitcoins is all recorded on the blockchain.


texts: How to use getblocktemplate method with Bitcoinlib Library

texts:
I am using
bitcoinlib to communicate with bitcoin-qt
This is the code i tried:
 Dim BitcoinService As Services.RpcServices.RpcService.IRpcService = New Services.Coins.Bitcoin.BitcoinService("http://localhost:8332", "Username", "Password", "wallet password", 200)

for getblocktemplate this is the call
   Dim seg As JToken = "{""rules"": [""segwit""]}"

        RichTextBox5.Text = BitcoinService.GetBlockTemplate(seg).PreviousBlockHash

It gives me this error
BitcoinLib.ExceptionHandling.Rpc.RpcInternalServerErrorException
  HResult=0x80131500
  Message=JSON value is not an object as expected
  Source=BitcoinLib
  Arborescence des appels de procédure :
   à BitcoinLib.RPC.Connector.RpcConnector.MakeRequest[T](RpcMethods rpcMethod, Object[] parameters)
   à BitcoinLib.Services.CoinService.GetBlockTemplate(Object[] parameters)
   à WindowsApp3.Form1.Button2_Click(Object sender, EventArgs e) dans C:\Users\Hama\source\repos\WindowsApp3\WindowsApp3\Form1.vb :ligne 76
   à System.Windows.Forms.Control.OnClick(EventArgs e)
   à System.Windows.Forms.Button.OnClick(EventArgs e)
   à System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
   à System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   à System.Windows.Forms.Control.WndProc(Message& m)
   à System.Windows.Forms.ButtonBase.WndProc(Message& m)
   à System.Windows.Forms.Button.WndProc(Message& m)
   à System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   à System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   à System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
   à System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
   à System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
   à System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
   à System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
   à Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.OnRun()
   à Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.DoApplicationModel()
   à Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.Run(String[] commandLine)
   à WindowsApp3.My.MyApplication.Main(String[] Args) dans  :ligne 81

  Cette exception a été levée à l'origine dans cette pile des appels :
    System.Net.HttpWebRequest.GetResponse()
    BitcoinLib.RPC.Connector.RpcConnector.MakeRequest<T>(BitcoinLib.RPC.Specifications.RpcMethods, object[])

Exception interne 1 :
WebException : Le serveur distant a retourné une erreur : (500) Erreur interne du serveur.

I dont understand what i am doing wrong, i think it's a json problem
Help is appreciated, thank you


texts: Why does importmulti not support zpub and ypub?

texts:
As far as I can tell importmulti does not work with zpub/ypub.

Why not?

FWIW I prefer only to deal with xpubs, but I am curious.


texts: Is there a formula to calculate the fiat value of a Satoshi using your fiat principle?


texts:
I just set up my Electrum wallet using live instance of Tails Linux distribution. I've written down the seed on the paper (and I remember it as well) and restarted laptop.  I plan to do all Bitcoin transactions only via Tails so I plan to recreate the wallet every time I am using it and then wipe everything out with no trace on the computer.

There is just one thing I don't get, can I have any "static" address tied to my private key and seed or do I have to get it through creating wallet every time? Because I would like to send some coins to my wallet without booting to live distro and generating the wallet again (therefore I need to have and store address somewhere), is this possible? Thanks a lot for explanation.

And is this approach reasonably secure (or even possible)?


texts: Derivation of parent private key from non-hardened child

texts:
Quote from BIP 32:

  One weakness that may not be immediately obvious, is that knowledge of a parent extended public key plus any non-hardened private key descending from it is equivalent to knowing the parent extended private key (and thus every private and public key descending from it).

How is this done?


texts: BlockChain.Com Wallet - Why transaction FEE Is very HIGH

texts:
I have two wallets in BlockChain.Com web site.
When i want to transfer bitcoin from one of them situation is like this :

Money for transfer : $1000
Transaction Fee = Priority = $26

In another wallet situation is like this :

Money for transfer : $1000
Transaction Fee = Priority = $210

I am so confused!!!!!!!!!!!!!
Why does BlockChain.Com act like this?
How can i reduce second wallet's fee?


texts: Unconfirmed transaction. How to make my wallet made whole

texts: I am running a node with an unconfirmed transaction. I tried shutting down my btc qt so the transaction would be forgotten. To no avail it keeps rebroadcasting the transaction. I am in the process of upgrading and syncing my btc qt now too. But it's taking forever to sync. What will happen if I import my keys to a software wallet, electrum? Will my electrum wallet be made whole from the unconfirmed transaction? Any suggestions? I'm not in love with running a node anymore or coinbases ability to retrieve my transaction. Coinbase was the supposed recipient. It's been two weeks.


texts: As of 2017-09, Has there been talks or test implementations of making Litecoin anonymous / untracable like Monero or Zcash?

texts: Being that Litecoin is more likely to implement experimental features before Bitcoin. As of today 2017-09, has there been discussions or test implementations of making Litecoin anonymous like Monero's Ring Signatures or adopt similar features like Zcash?


texts: I administer a public association. Can the association have a bitcoin wallet? Or does it have to a person that owns the wallet.


texts: 70% of nodes accept Bloom filters, despite DoS attack vector?

texts:
Could someone explain why so many Bitcoin nodes allow Bloom filtering given that DoS attacks exist [1], [2] for such nodes?

According to bitnodes.21.co, right now 3879 nodes out of the total of 5515 Bitcoin nodes have Bloom filtering enabled.

Is it that these DoS attacks are not made any worse by Bloom filtering, as documented here by Mike Hearn? I quote:

  Thus you can easily trigger exactly the same DoS attack by just using
  regular getdata requests on large blocks over and over. You don't need
  Bloom filtering. If you don't want to actually download the blocks
  just don't TCP ACK the packets and then FIN after a few seconds ....
  the data will all have been loaded and be sitting in the send buffers.

  So even if I refine the attack and find a way to actually deny service
  to someone, the fix would have to apply to regular non-filtered block
  fetches too, which cannot be disabled.


texts: What prevents an attacker from doing DDOS on bitcoin network by sending billions of transaction to himself?

texts: I know that transacion fees on low-priority transactions adds additional cost, but what if an attacker uses a lot of 0.100001 BTC transactions, so he doesn't have to pay the fee, because transactions are greater than 0.01 btc, and wouldn't be considered low-priority. There wouldn't be any loosing of money, because there are no transacion fees to be paid. Only huge investment. What would be the amount of bitcoins needed for that?


texts: What can I do with Bitcoin Core to see my current balance?

texts:
I've waited 4 days now for Bitcoin Core v0.12.0 to synchronise the network and its getting really frustrating, especially when I still have 2 years and 38 weeks worth of the blockchain to download.

The thing is I previously bought some Bitcoins to the address provided by Bitcoin Core before I realised that the blockchain had to be fully synchronised before I could see the transaction in the wallet! I now am a little bit stuck; Is there a way to move that Bitcoin address from Bitcoin Core to a completely new wallet like Electrum? Or is there a way to speed up the process of Bitcoin Core synchronising?

Regards,

Jordan Ellis


texts:
Few questions about Walletnotify under win:

1)  Is this the rigt way to write .py script into litecoin.conf: walletnotify=C:\Python27\python.exe D:\LiVe\listener.py %s
If not, how it should be modified?

2) Walletnotify gives txid as an %s, txid contains number of confirmations. So here is question, at which point happens call to script, on 0 confirmations, on 1, on 1-3(meaning script will be called three times on transaction, when it gets 1,2 and 3 confirmations? On each confirmations?

3) Is there a way to transfer small ltc to own wallets account without transfer fees, because at the moment i have exactly 0 ltc, thus denying me to just test 2 in peace.

Thanks a lot


texts: Are addresses which start with 3 multisig addresses?

texts:
I've just downloaded bitcoin-core 0.17.1 and it seems all the new receiving addresses I create start with 3 instead of 1.

I always thought addresses which start with 3 were multisig addresses.  Anyone know why default non multisig addresses are now 3 and what does this mean?


texts:
I run a 0-confirmation tool.
To track new transactions I use:

bitcoind getrawmempool
new transactions in new block not available in mempool (it seems I do not receive all transactions in mempool before my client accepts a new block)

I trust my bitcoin client transaction verification process (protocol rules).
(I expect it to do all the steps in: https://en.bitcoin.it/wiki/Protocol_rules#.22tx.22_messages)

I expect I do not have the guarantee the client/person who created the new block has followed the protocol rules for the included transactions, so I want to check the 'missing' transaction from my mempool.

I know 6 confirmations is expected to be 'safe', but I would like to do a 0-confirmation (or 1-confirmation concerning a new block) as safe as possible.

1: Is every transaction checked by my bitcoind client before accepting a new block (local)?
(to be sure every transaction available in mempool and blockchain of my (official) client meet the protocol rules)

2: If 1. is not true: What bitcoind API, or (python) program is available to verify transactions included in a new block if they do meet the (official) protocol rules?


texts: Are there coins that demand system memory rather than computing power? Which coin brings me the most mining profit if I have a lot of system DDR3 RAM (say 64 GB or more) in my personal computer?


texts:
I ran Bitcoin during 2009 and 2010.
I found an old file I had renamed to xxxx.dat. I recently downloaded the Bitcoin.org wallet and let it run.
I get the "wallet.dat corrupted, salvage failed" message after I put in the file I believe to be my old wallet.dat. I have deleted the installation and restarted my computer. I hope to be able to start over. Any suggestions?


texts: How a SegWit transaction is accepted without witness?

texts:
I would like ask 2 questions.

First, as perspective of legacy node(doesn't upgrade software):
When SegWit transactions are transferred, witness data is stripped. It means that there are no signatures to proof the tx inputs in transaction propagated because there are no witness data as described above. How does the legacy node verify these transactions without the witness?

Lastly, as perspective of fresh node (did upgrade):
Regardless of SegWit, the block size can't exceed 1MB. But fresh nodes make a block which is consist of only 1MB transactions and NByte of witness(signature) data. This is very strange point because the block is already full with only transactions but there are some witness data.

Can you give point on my two questions?
I'd like to find which points are wrong in my knowledge.


texts: How do I list all unique scripts from blockchain?

texts: How do I list all unique scripts in the block chain, and their count (n-times-used)?


texts: After all possible Bitcoins are created, won't transaction fees eventually consume all Bitcoins?

texts:
After all possible Bitcoins are created, won't transaction fees from miners validating transactions eat away from the total and eventually consume all Bitcoins?

Right now, because new Bitcoins are still being created, kind of like planned inflation, mining fees are adding Bitcoins to the circulation.

But after all Bitcoins are created, it seems that an infinite number of transactions would transfer all Bitcoins via fees to miners, self-defeating the currency.

I wonder if this problem, if real, is another reason why a little bit of inflation is a good thing, since some types of fiat currency transactions consume fees (e.g., credit card transactions) but others do not (cash, direct bank transfers, ATM withdrawals from member bank systems) or don't per transaction ( flat monthly checking account fees). It seems a little bit of inflation prevents fees from taking an ever greater percentage of a currency.

I'm skating on very thin ice with my limited understanding of Bitcoin and currency in general, and that's why I'm posting here.

Fees are a mammoth devil in the details of the world economy, maybe including Bitcoin.

=======
MAJOR EDIT ADDITION

There seems to be a misunderstanding about my question. I'm not questioning the value of miners. I'm wondering about the mathematics of compensating miners after all 21 million bitcoins are created. This isn't a moral judgement. Miners are creating bitcoins now, providing a valuable service. But since there's a finite number of bitcoins, 21 million (?), after they're all mined won't miners still be necessary to process all transactions? But instead of creating new bitcoins, after the maximum of 21 million coins are created, won't miners then be taking bitcoins from other people instead of creating new ones? Just mathematically, after all 21 million bitcoins are created, wouldn't an infinite number of transactions transfer all bitcoins to miners? I'm just wondering about the math theory of mining after all 21 million bitcoins are created.


texts: Unconfirmed transaction almost 5days waiting :(


texts: How to determine custom synchronization status?

texts:
Context:

I'm working on an application in which we'd like to know if the current node is sufficiently synced to be able to handle RPC requests. The method we would like to use is to see if our node has at least 2-4 peers and if a majority of the peers are reporting the same best height / best block hash.

Previous research:

I know the version network call gets the height of the peer at that time, but it isn't updated. In addition, any further version requests result in an increase of the ban score of a node, so this cannot be used frequently.
Bitcoinj keeps track of the height of the best known peer by using the height given in the version message and then incrementing whenever the peer processes an inv message showing they have a new best-block height. This seems fast, but tricky/error prone.
This question is similar, but it asks about how to do this with RPC calls, and it doesn't seem to want to use the same method for determining whether the node is synced as the one I've proposed.
This question helped provide a temporary solution (calling get work and seeing if it fails), but this method is not accurate enough.

Is there a way to just ask a peer what the height of its best block is without getting banned?

Could I just make multiple getheaders requests and see if the peer returns any headers later than the header I have, or would the peer ban me for requesting the same headers again and again?


texts: How to lookup the transaction fee for a particular transaction?

texts:
Is it possible to lookup how much transaction fee was paid for a specific transaction?

If I check the transaction on e.g. blockchain.info, I can see a field named "Fee", but I guess that's a sum of all fees combined in this transaction.


texts: If i want to send 0.2 bitcoin to Bob, will my transaction (in the input field) contain the list of all my previous transactions (both the ones in which i received bitcoins and the ones in which i sent bitcoins) ?


texts:
In this question, Is it possible to transfer BitCoins from BlockChain to CoinBase?, the answer implies that this is a bad idea.

But for me, this raises a question.

I like to Coinbase's tools for buying BTC straight through my bank account. But I like Blockchain's tools for backing up my wallet in standard encrypted format or cold storage. I would like to be able to exchange BTC on Coinbase, and then migrate those to my wallet on Blockchain.

It seems to me that whether I happen to own both accounts is irrelevant. It seems exactly the same as any other BTC transaction. Is there actually a reason against this?

Is it possible to transfer BitCoins from BlockChain to CoinBase?


texts: Trying CashApp to add funds and purchase Bitcoin immediately but not working, Have done all banking requirements, IS THERE ALTERNATIVE

texts:
Details: I was successful in entering in my bank information on Cash App however, keeps saying transfer failed even in the process of adding cash into the app from my bank, so I can use that to buy bitcoin immediately, And of cash app will not let me buy bitcoin using my debit card and there is always a routing number always showing that I did not enter(I assume that is Cash App routing for my new[just started it 6-12-2020]cash app account? The app doesn't say which place it is pulling from except for the 1st time..

**I am wondering what the common causes are..could 1 be you must be connected to wi-fi, if so why since I do other transactions this way without connecting to wi-fi

**If CashApp is just too much trouble, WHAT IS ANOTHER APP TO INSTANTLY UPLOAD YOUR BANK INFO AND BUY BITCOIN not a 7-10 day thing__?...Does CoinBase now do immediate purchase?


texts: Does it Cost Money to Issue Digital Certificates on the Bitcoin Blockchain?

texts:
I'm reading through this Github Repo from Blockcerts.org on how to issue digital certificates on the bitcoin blockchain.

What is confusing me is whether or not each issuing each digital certificate in this manner costs money.

On one hand, I've read through the high-level Blockcerts documentation and blogs and haven't seen any reference to financial costs to issuing certificates on the bitcoin blockchain.

On the other hand, in the cert-issuer repo it notes in the "Transaction Structure" of "How Batch Issuing Works", the issuer needs a minimal amount of Bitcoin to create the transaction. At the very least, this is a fixed cost.

Additionally, in the documentation we see:

  Ensure you've transfered a small amount of coin to your issuing
  address. Note that each certificate costs 12750 satoshi

and

  Make sure you have enough BTC in your issuing address. ($0.08 USD)

So, it sounds like each certificate costs about $0.30 to issue? Just want to make sure I understand correctly.

(Please note, I am totally new to blockchain, so apologies if this is a dumb/obvious question).


texts: How can you tell if a Ardor / NXT public node is an archival node?

texts:
I'm looking to build a chrome app that queries the ardor / nxt decentralized data cloud using peerexplorers api public ip addresses here: http://www.peerexplorer.com/peerexplorer-api

The question I have is how do I tell if an IP address is an archival node? What can one query to find this out?

Let's say I wanted to aggregate all the torrent files that were ever uploaded to the ardor / nxt data cloud. How can I find archival nodes to query this?


texts: How does BIP9 handle expiration dates over retargeting periods?

texts:
Suppose a BIP9 feature is set to expire on day T. Suppose further that the retargeting period before T actually ends on day T+5, but the retargeting period (2016 blocks) actually signals for the BIP9 feature 95%+. Does the feature get activated or not?

I ask as this is a realistic scenario should BIP148 gain traction.