texts: Is my understanding of Blockhain Endianness correct?

texts:
I know questions on this topic have been asked to death in a number of different ways. I also know that what endian order refers to specifically is dependent on context.

What I want are some specific clarifications, though, for peace of mind to ensure that I have the right idea.

Endianness with Respect to C and x86 byte ordering

Typically when I think of endianness I'm thinking of the ordering of arbitrary integer values using 8 bit bytes in memory. In other words, 0x3FE17C has no explicit endianness on its own, but if we were to consider the value as stored in big endian, in memory it would look like 3F E1 7C, and in in little endian memory order it would be 7C E1 3F.

So, endianness to me is a convention of memory ordering. I've never, ever explicitly heard of it used in another form.

However, it appears that endianness can also refer to character orderings in a string. One might say that if we have the string "3FE17C", we could state that this order is supposed to be big-endian. If this is the case, with respect to hex literals, if I wanted to take the same value in C and initialize a variable with that same value, I would do:

uint32_t x = 0x3FE17C;

And in C on an x86 machine that would of course be stored in memory as "7C E1 3F".

RPC Byte Ordering

So, if I'm reading documentation on the block header, and I notice that the nBits field is displayed in RPC byte ordering. Later, after the getblocktemplate request I then parse the corresponding nBits hex string and have the string literal in the same order as it was displayed to me in a debug console for whatever wallet I'm using.

If I use the following hex2bin conversion subroutine, which reads the string from left to right and writes from the beginning of a buffer to the end for each hex character-pair to byte conversion, would I need to do any further endian conversion of the nBits value read?

My understanding is that the nBits ordering is a) displayed in RPC byte ordering and all other fields which are hex strings are displayed in the exact same form with the only exception being transaction hashes (not the data blobs which are provided adjacent to the hashes).

Here's the routine, for completeness:

bool hex2bin(void *output, const char *hexstr, size_t len)
{
    uchar *p = (uchar *) output;
    char hex_byte[4];
    char *ep;

    hex_byte[2] = '\0';

    while (*hexstr && len) {
        if (!hexstr[1]) {
            applog(LOG_ERR, "hex2bin str truncated");
            return false;
        }
        hex_byte[0] = hexstr[0];
        hex_byte[1] = hexstr[1];
        *p = (uchar) strtol(hex_byte, &ep, 16);
        if (*ep) {
            applog(LOG_ERR, "hex2bin failed on '%s'", hex_byte);
            return false;
        }
        p++;
        hexstr += 2;
        len--;
    }

    return (len == 0 && *hexstr == 0) ? true : false;
}

Specifically,

A hex to binary conversion of the JSON elements
"previousblockhash": "000007c5df566d7ddaf863f11970086f2c6b8aff2925083a179251ffa547c3da",
and
"bits": "1e0a3618",
Should not require any manipulation of byte ordering assuming the string is directly read and passed to the hex2bin function, because the RPC byte ordering is designed to implicitly prevent this (for performance reasons).
However, any hash field found within a transactions array should be read as a string, converted to binary (using the same function), and then the ordering should be swapped byte-by-byte.
Furthermore, if I want to take the data field in an entry within the transactions array, after using hex2bin on it, I shouldn't have to do any order manipulation if I want to perform a double sha 256 on the value in order to calculate the merkle root.

Are my assumptions correct, here?


texts: Does running pruning node make the initial sync faster?

texts:
Does running bitcoind with -prune option make the initial blockchain sync faster or not? I know it makes it smaller on disk, but is it faster?

I keep reading conflicting information online - some state that it is quicker because you need less disk operations, some state it is about the same.


texts:
I have never had this happen before it's been three days and still unconfirmed has anybody else experienced this!?! Will it ever confirm?

https://blockchain.info/tx/5d054c0f9a686a67f3be86b3fb8b91f5f61291145714dcf466f64ebc45b71019?show_adv=true


texts:
I have an unconfirmed transaction. (As an experiment, I didn't add a transaction fee, and the transaction is taking a lot of time to confirm.) This is some information from blockchain.info regarding the transaction:

The info "queue position 427" caught my eye. What exactly is the queue position?


texts: Have a 0/unconfirmed transaction stuck over 12 hours

texts:
This is my first time using bitcoin and I've had a transaction stuck for over 12 hours.   Any help getting confirmed would be appreciated.

https://blockchain.info/tx/0b17a765b1f4a1a7e53a47b6da287b86211ea64126192ffc26a1d6d8920eab7a


texts: What are the consequences if I spoof an IP address in the node_announcment message?

texts:
According to BOLT 07 the node accountment message looks like this:

  type: 257 (node_announcement)
  data:

  [64:signature]
  [2:flen]
  [flen:features]
  [4:timestamp]
  [33:node_id]
  [3:rgb_color]
  [32:alias]
  [2:addrlen]
  [addrlen:addresses]

where the addresses are of the following form:

  The following address descriptor types are defined:

  1: ipv4; data = [4:ipv4_addr][2:port] (length 6)
  2: ipv6; data = [16:ipv6_addr][2:port] (length 18)
  3: Tor v2 onion service; data = [10:onion_addr][2:port] (length 12)

  version 2 onion service addresses; Encodes an 80-bit, truncated SHA-1
  hash of a 1024-bit RSA public key for the onion service (a.k.a. Tor
  hidden service).

  4: Tor v3 onion service; data = [35:onion_addr][2:port] (length 37)

  version 3 (prop224)
  onion service addresses; Encodes:
  [32:32_byte_ed25519_pubkey] || [2:checksum] || [1:version], where
  checksum = sha3(".onion checksum" | pubkey || version)[:2].

taking this into consideration I could announce my node to have the IP address of another existing lightning node or even some arbitrary IP address. While it is clear that no one could connect to me as I don't control the IP address I wonder how the implementations would cope with such a behavior.

Even if implementations do not struggle with such spoofing an attacker could probably use this for fishing to trick a user into paying an invoice as it comes from a node_id that is connected to an IP-address from a well known service where the attacked person might even be a customer.

Is there anything else that could go wrong with such a spoofing behavior? Maybe there would even be benefits from it?


texts: Can I Recover Bitcoins Transferred to a “Sending” Address?

texts: In a moment of carelessness, I mistakenly used one of my wallet's sending addresses as the recipient for a transfer from a bitcoin exchange. The exchange confirms the transaction completed, but nothing shows up on my end. Is there any way to recover the amount?


texts: how to get the sender's address in bitcoinj

texts: I'm trying to modify the simple wallettemplate to get the sender's address in the transaction list. However since TransactionInput.getFromAddress() doesn't exist now and getConnectedOutput().getAddressFromP2PKHScript() is deprecated, I don't know which is the right way to do so.


texts:
I know that software for the Lightning Network can only be used with testnet and not with real Bitcoin yet.

I'm trying to choose one LN software among C-Lightning, ACINQ, AmikoPay, Thunder, Lit and Lnd in order to study and test it. What are the main differences between them?

Thank you!


texts: Is the SegWit2X success due to concentration of mining power?

texts:
SegWit2X has been called a short-sighted & severely lacking proposal. There is nearly universal preference for its alternative among those listed on the segwit support overview (SegWit, BIP 141,148,149).

Yet SegWit2X has 90% mining support.

Is this because the vast majority of Bitcoin mining / hashing power is concentrated in a few hands? Does this mean that those who control the mining power can get whatever they want?


texts: Same entity controlling separated parts of a a lightning path

texts:
Given the lightning path Alice → Bob → Carol → Dave → Emilee (with Alice being the sender and Emilee being the receiver), assume Dave and Bob to be the same entity.

By pulling funds from Dave to herself, Emilee discloses the secret R to Dave. Bob then knows R, too, because Bob and Dave are the same entity, and pulls funds from Alice.

Bob then broadcasts the channels state between him and Carol to the blockchain. Dave subsequently pulls funds from Carol.

In this procedure, Carol did not get paid. How is this prevented?


texts: Send BTC with Electrum: which address is used?

texts:
I'm new to bitcoin and I've downloaded Electrum.
I can see the new wallet generated a few addresses for me.

If I want to receive BTC, I just need to give one of those addresses.

But if I want to send BTC (using the Send tab), I don't see any field to choose which address will send the BTC.

So, how does it work? How will Electrum choose the address to take them from?
Can it be sent from multiple addresses? (e.g. To send 1 BTC, address A send 0.4 and address B send 0.6)
Is it possible to choose a specific address to send the BTC? (e.g. I want specifically address C to send the 1 BTC)

Thank you.


texts:
I want to know how one can query bitcoin core via json rpc or other methods to find all the transaction fees in a block? API queries are not useful as they have a rate limit.

Here is an example block, for which i want to calculate transaction fees

block number 395545


texts:
Possible Duplicate:
  How do I see the IP address of a bitcoin transaction?

When making a bitcoin transaction from or into a wallet that is on my computer, can my Ip address (and thus identity) be found out by the other part of the transaction or a 3rd party?


texts: How do miners decide when to give up on a block?

texts:
So in my understanding, miners bundle a list of transactions into a block and begin working on it until they can generate a valid proof of work. There are various reasons to group fewer or more transactions together into a block, but it's ultimately up to the miner.
I'm assuming that different miners may group the same transaction into different blocks and begin working on them. One miner might group transaction A into a block of 100 transactions and start working while another miner might group transaction A into a different block of 250 transactions and also start working.
When one miner finds a valid proof of work and broadcasts the new block, do all the other miners who included even a single transaction from the valid block in their own block have to drop what they're doing and start over?
Is there some system in place to ensure that most miners are working on blocks with the exact same set of transactions except for the miner's reward transaction?


texts: Explain this comment on nNonce from the bitcoin miner.cpp source?

texts:
This comment is in the 0.9.3 miner.cpp bitcoin source, right above the ScanHash_CryptoPP definition.

//
// ScanHash scans nonces looking for a hash with at least some zero bits.
// It operates on big endian data.  Caller does the byte reversing.
// All input buffers are 16-byte aligned.  nNonce is usually preserved
// between calls, but periodically or if nNonce is 0xffff0000 or above,
// the block is rebuilt and nNonce starts over at zero.
//
unsigned int static ScanHash_CryptoPP...

What does it mean that the input buffers are 16-byte aligned? Is that important for calculating the hash?

I notice that some of the parameters to this method are defined as follows:

char pmidstatebuf[32+16]; char* pmidstate = alignup<16>(pmidstatebuf);
char pdatabuf[128+16];    char* pdata     = alignup<16>(pdatabuf);
char phash1buf[64+16];    char* phash1    = alignup<16>(phash1buf);

All of the arrays already have a length that is divisible by 16, what's the need for the extra 16 chars?

And why only try 0xffff nonces? Is this just an artificial limit put so that the hashing doesn't take forever?


texts: RPC server with bitcoin-qt and bitcoind has a different set of commands?

texts:
When running bitcoin-qt -server, I am able to run the getbalance command, and the help command shows many items:

~ > bitcoin-qt -regtest -server  # Running in another shell

~ > bitcoin-cli -regtest getbalance
2797.99990000
~ > bitcoin-cli -regtest help | wc -l
69

Trying the same thing with bitcoind gives me fewer commands and no access to getbalance:

~ > bitcoind -regtest -server  # Running in another shell

~ > bitcoin-cli -regtest getbalance
error: {"code":-32601,"message":"Method not found"}
~ > bitcoin-cli -regtest help | wc -l
31

Is this a limitation of bitcoind or have I incorrectly configured it?

I'm using 0.9.1:

~ > bitcoin-cli --help | head -1
Bitcoin RPC client version v0.9.1.0-g026a939-beta

~ > bitcoind --help | head -1
Bitcoin Core Daemon version v0.9.1.0-g026a939-beta

~ > bitcoin-qt --help | head -1
Bitcoin Core version v0.9.1.0-g026a939-beta


texts:
Let's take into account the Bitcoin curve. My questions are:

What exactly is the "point at infinity"?
Is there more than one "point at infinity"
How can I identify if my EC generated x and y are the "point of infinity"?
Is there a way to calculate the "point of infinity"?


texts: Zeusminer not being recognized with BFGminer

texts:
I'm trying to run bfgminer on a Raspberry Pi but the zeusminer is not being recognized. When I run the command:

sudo bfgminer-5.1.0/bfgminer -S zeusminer:all -d? -D

I get:

 [2015-05-31 19:47:42] setrlimit: Soft fd limit not being changed from 1024 (FD_SETSIZE=1024; hard limit=4096)
 [2015-05-31 19:47:42] Started bfgminer 5.1.0
 [2015-05-31 19:47:42] lowlevel_scan: Found usb device at usb:001:007 (path=(null), vid=1c4f, pid=0002, manuf=SIGMACHIP, prod=USB Keyboard, serial=(null))
 [2015-05-31 19:47:42] lowlevel_scan: Found usb device at usb:001:006 (path=(null), vid=0403, pid=6001, manuf=FTDI, prod=FT232R USB UART, serial=AH02YA6E)
 [2015-05-31 19:47:42] lowlevel_scan: Found usb device at usb:001:005 (path=(null), vid=0bda, pid=8176, manuf=Realtek, prod=802.11n WLAN Adapter, serial=00e04c000001)
 [2015-05-31 19:47:42] lowlevel_scan: Found usb device at usb:001:004 (path=(null), vid=1a40, pid=0201, manuf=(null), prod=USB 2.0 Hub [MTT], serial=(null))
 [2015-05-31 19:47:42] lowlevel_scan: Found usb device at usb:001:003 (path=(null), vid=0424, pid=ec00, manuf=(null), prod=(null), serial=(null))
 [2015-05-31 19:47:42] lowlevel_scan: Found usb device at usb:001:001 (path=(null*), vid=1d6b, pid=0002, manuf=Linux 3.18.11-v7+ dwc_otg_hcd, prod=DWC OTG Controller, serial=bcm2708_usb)
 [2015-05-31 19:47:42] lowlevel_scan: Found usb device at usb:001:002 (path=(null), vid=0424, pid=9514, manuf=(null), prod=(null), serial=(null))
 [2015-05-31 19:47:42] lowlevel_scan: Found ft232r device at usb:001:006 (path=(null), vid=0403, pid=6001, manuf=FTDI, prod=FT232R USB UART, serial=AH02YA6E)
 [2015-05-31 19:47:42] lowlevel_scan: Found vcom device at dev_t:00bc000000000000 (path=/dev/ttyUSB0, vid=0000, pid=0000, manuf=FTDI, prod=FT232R USB UART, serial=AH02YA6E)
 [2015-05-31 19:47:42] Devices detected:
 [2015-05-31 19:47:42] Timers: Using clock_gettime(CLOCK_MONOTONIC_RAW)
 0 devices listed

Here is my command to try and get bfgminer to run:

sudo bfgminer-5.1.0/bfgminer --scrypt -o <pool> -u <user>.<worker> -p <password> -S zeusminer:/dev/ttyUSB0

I have tried running the -S flag with zeusminer:all, zeusminer:auto, and zeusminer:/dev/ttyUSB0.

Anyway any help would be greatly appreciated.
Cheers


texts: Should mining.notify.merkle_branches contain the coinbase transaction or not?

texts:
Okay I'm working on a new pool-server though got a question.

I'm using litecoin testnet right now to test stuff and here's a getblocktemplate() response I get;

{
"result": {
    "version": 2,
    "previousblockhash": "8a39d544ae4f46bab42358baa72d338dc8d4ed764fc0cc578c16d339bb2aac4e",
    "transactions": [],
    "coinbaseaux": {
        "flags": "062f503253482f"
    },
    "coinbasevalue": 5000000000,
    "target": "0000014e2c000000000000000000000000000000000000000000000000000000",
    "mintime": 1399898893,
    "mutable": [
        "time",
        "transactions",
        "prevblock"
    ],
    "noncerange": "00000000ffffffff",
    "sigoplimit": 20000,
    "sizelimit": 1000000,
    "curtime": 1399898982,
    "bits": "1e014e2c",
    "height": 271882
},
"error": null,
"id": 1

}

As you can see it doesn't contain any transactions.

So while building my mining.notify structure, should my merkle_branches contain the coinbase transaction (generation transaction) I created or not?

From here my notification should be similar to this;

job_id = "b3ba"
prevhash = "7dcf1304b04e79024066cd9481aa464e2fe17966e19edf6f33970e1fe0b60277"
coinb1 = "01000000010000000000000000000000000000000000000000000000000000000000000000ffffffff270362f401062f503253482f049b8f175308"
coinb2 = "0d2f7374726174756d506f6f6c2f000000000100868591052100001976a91431482118f1d7504daf1c001cbfaf91ad580d176d88ac00000000"
Merklebranches = [
    "57351e8569cb9d036187a79fd1844fd930c1309efcd16c46af9bb9713b6ee734",
    "936ab9c33420f187acae660fcdb07ffdffa081273674f0f41e6ecc1347451d23"
    ]
version = "00000002"
nbits = "1b44dfdb"
ntime = "53178f9b"
clean_jobs = true// Not required for block, just for completeness

But as I got 0 transactions from litecoin-testnet network to carry, my resulting json would not contain any merkle_branches.

So should I include the coinbase transaction I generated?


texts: Bitcoin 0.17 No public key shown (validateaddress)

texts:
I want to generate multisignature address with person, which I didn't know.

Someone send me a public key. Then I do:

bitcoin-cli getnewaddress "" legacy

Ok, I got

1QKVwuQnu69HgsMVvynFhApYmmdLf8bMKT

After that, I need to know my own public key:

bitcoin-cli validateaddress "1QKVwuQnu69HgsMVvynFhApYmmdLf8bMKT"

But v.017 do not give me a public key:

{
"isvalid": true,
"address": "1QKVwuQnu69HgsMVvynFhApYmmdLf8bMKT",
  "scriptPubKey": "76a914ffca8b339408c5eb664513f62c98256c5edcc98b88ac",
  "isscript": false,
  "iswitness": false
}

Is there any way to generate multisignature address (2 of 2) if wallet do not know one of this addressess ?


texts: How to calculate txid for segwit transactions?

texts:
I'm having difficulty calculating txid for recent transactions. I followed bip-141 at https://github.com/bitcoin/bips/blob/master/bip-0141.mediawiki

For the first transaction in the first block found in blk00165.dat (testnet), I get the following when I aggregate the required data to be hashed:

  010000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff2303cdb21400fe56ca615bfe8b8804000963676d696e6572343208020000000000000000ffffffff0220f68e11000000001976a91446868f669409e6e744c6a270767cc27e81220ead88ac0000000000000000266a24aa21a9ed5d06bb0f22a0ffa6d7c63f2769b13f917787554e1235f7eed140fe675ee29c050120000000000000000000000000000000000000000000000000000000000000000000000000

I also printed out the byte stream of the file and it matches. But when I double hash it, I get an invalid txid. Am I missing something for segwit transactions?

My code works for non-segwit transactions, tested with the first few transactions in the very first block.


texts: How to find out a p2pool's node fee/donation setting?

texts:
I'm mining LTC on a public p2pool node. The owner says there is a fee of 1%.

Is there any way to verify this is true for me as a miner?


texts: bad-txns-nonstandard-inputs error after sendrawtransaction

texts:
I smashed my head over the table trying to send raw transaction and every time get the same error bad-txns-nonstandard-inputs.

So, here is what I do:

Get unspent transactions

bitcoin-cli listunspent
[
  {
    "txid": "txid_number_1",
    "vout": 1,
    "address": "address_1",
    "redeemScript": "redeemScript_1",
    "scriptPubKey": "scriptPubKey_1",
    "amount": 0.00024972,
    "confirmations": 31,
    "spendable": true,
    "solvable": true,
    "safe": true
  }
]

Create raw transaction with tx_id and vout taken above

bitcoin-cli createrawtransaction '[{"txid":"txid_number_1","vout":1}]' '{"address_to_sent":0.00002000}'

tx_id_as_hexstring =

02000000016affa8a874987f66be3ab4791b57042cbf0912088352ba0e3931b7b8b8f374c80100000000ffffffff01d0070000000000001976a9147c99343bb9cba8699e7f7b4f5552357e477dc76188ac00000000

Sign raw transaction

bitcoin-cli signrawtransaction tx_id_as_hexstring

Send raw transaction

bitcoin-cli sendrawtransaction tx_id_as_hexstring

error code: -26
error message:
64: bad-txns-nonstandard-inputs

I tried to create same transaction with coinb.in, but result is the same.

What am I doing wrong?

Also

bitcoin-cli decoderawtransaction tx_id_as_hexstring

returns

{
  "txid": "txid_number_2",
  "hash": "txid_number_2",
  "version": 2,
  "size": 85,
  "vsize": 85,
  "locktime": 0,
  "vin": [
    {
      "txid": "txid_number_3",
      "vout": 1,
      "scriptSig": {
        "asm": "",
        "hex": ""
      },
      "sequence": 4294967295
    }
  ],
  "vout": [
    {
      "value": 0.00002000,
      "n": 0,
      "scriptPubKey": {
        "asm": "OP_DUP OP_HASH160 7c99343bb9cba8699e7f7b4f5552357e477dc761 OP_EQUALVERIFY OP_CHECKSIG",
        "hex": "76a9147c99343bb9cba8699e7f7b4f5552357e477dc76188ac",
        "reqSigs": 1,
        "type": "pubkeyhash",
        "addresses": [
          "address_to_sent"
        ]
      }
    }
  ]
}


texts: Multiple input address to a single output address in one transaction?

texts: If I have Wallet A with one address (call it A1) and Wallet B with 2 addresses (B1, B2), can I send BTC from A1 AND B1 to B2 in a single transaction thus incurring a network fee only once?


texts: How can I make repeating transactions over a given interval? (time, blocks, or times replayed?)

texts:
I want to make a recurring payment that is enforced by the blockchain and the scripting engine.

If I have the following fixed source address, funded with 100 BTC

 16UwLL9Risc3QfPqBUvKofHmBQ7wMtjvM

I want to pay the following address 10 BTC ten times, approximately once every N blocks or once a month.

 1BTCorgHwCg6u2YSAWKgS17qUad6kHmtQW   (The Bitcoin foundation)

What are some approaches I should take to accomplish a recurring payment like this?


texts:
There are websites with historical data of coins. How do they get it?

Do they get the price from 10 exchanges at the same time, then divide by 10?


texts: How can block time and block size be fixed when transaction volume is constantly increasing?

texts:
As I understand it the network rejects blocks over 1MB, and block hash difficulty is set after each block is created as to keep the block time close to 10min.

But if people are constantly joining the network, and the rate at which transactions are sent to the network are constantly rising, then eventually more than 1MB of transactions will be added to the network every 10min.

What happens as the transaction rate approaches and passes 1MB per 10min? Is this a valid issue?


texts: I hear that a TLV field was recently added to the payment format. This will allow the sender to attach a message to the recipient in the payment package. How much data can be included in the TLV field? Are there other restrictions that apply? When will this be available on mainnet?


texts: How to specify ECDSA nonce used in bitcoin signing code?

texts:
Below is the CECKey::Sign() code (v0.9.3).

bool Sign(const uint256 &hash, std::vector<unsigned char>& vchSig) {
    vchSig.clear();
    ECDSA_SIG *sig = ECDSA_do_sign((unsigned char*)&hash, sizeof(hash), pkey);
    if (sig == NULL)
        return false;
    BN_CTX *ctx = BN_CTX_new();
    BN_CTX_start(ctx);
    const EC_GROUP *group = EC_KEY_get0_group(pkey);
    BIGNUM *order = BN_CTX_get(ctx);
    BIGNUM *halforder = BN_CTX_get(ctx);
    EC_GROUP_get_order(group, order, ctx);
    BN_rshift1(halforder, order);
    if (BN_cmp(sig->s, halforder) > 0) {
        // enforce low S values, by negating the value (modulo the order) if above order/2.
        BN_sub(sig->s, order, sig->s);
    }
    BN_CTX_end(ctx);
    BN_CTX_free(ctx);
    unsigned int nSize = ECDSA_size(pkey);
    vchSig.resize(nSize); // Make sure it is big enough
    unsigned char *pos = &vchSig[0];
    nSize = i2d_ECDSA_SIG(sig, &pos);
    ECDSA_SIG_free(sig);
    vchSig.resize(nSize); // Shrink to fit actual size
    return true;
}

How could I specify which nonce is used in the ECDSA_do_sign()? By nonce, I am referring to the k value described here: http://en.wikipedia.org/wiki/Elliptic_Curve_Digital_Signature_Algorithm.


texts: trust to miner who after the investment ask You other btc to have free access to unspendable-btc in the wallet? any suggestion?


texts: What happens if you create and lose an Mt. Gox redeemable code?

texts:
When you create an Mt. Gox code, you are shown a long textual code, and the amount is immediately deducted from your account.

What happens if you lose the code (e.g. your computer accidentally shuts down before you copy-paste the code into someplace safe)? Mt. Gox already shows the funds as if they don't exist in your account (even before they are redeemed).

If there a way to restore lost codes?


texts: Do Berkley DB versions need to be the same?

texts: If I build using --with-incompatible-bdb, will the resulting wallet be incompatible with the bitcoin core client from bitcoin.org? What if I'm using a newer version?


texts: 'Deposit account' for repetitive bitcoin payments

texts:
I am looking for something that would allow me to offer a general "deposit" address (like for payments through my website, services I offer etc.).

I am using Electrum as cold storage solution (with a watch-only copy created on an online computer). Can I just create 1 'Receiving address' with Electrum and display this address on my website for payments of any kind, or would I have to create an address for every indivicual payment? I just don't want anything to go wrong...


texts: What's the status of BitInstant's debit card?

texts:
http://www.engadget.com/2012/08/20/bitinstant-founder-says-bitcoin-debit-card-to-launch-within-next/

It's been almost four months. Where can I find the latest public information about this?


texts: How can non-Coinbase customers pay to Coinbase from Android?

texts:
Scenario: Say I want to create a shopping app on android. After filling the shopping cart, when the user wants to check out, he is asked to pay me the bitcoins.

I have created an account on Coinbase.com.

Questions: After adding the items in the app to the cart, the user is directed to the coinbase payment page. How is the user going to pay me, if he doesn't have a Coinbase account but some other wallet? If he pays me the required bitcoins, how will I relate the user's payment with the invoice of the order generated for him?


texts: Can a competitive miner be crafted at home?

texts: Ive been wondering, is it possible to make a good custom Bitcoin miner? AntMiners aren't worth it anymore, and I can't find a miner that is. Can I build a miner myself that will be worth it? If so, what do I need to custom make a miner? What are some basic Bitcoin miner components. How much will it cost approximately? Is there anything else I need to know if i'm going to build a miner? There was some confusion, I don't mean I want to print my own pieces and make my own miner completely from scratch, I want to buy pieces online and make a miner, can I do this somehow?


texts: How can I generate a large number of Bitcoin addresses?

texts: I would like to generate a large number of public Bitcoin addresses (several hundred thousand) quickly and efficiently into a simple text file. What would be the easiest way to get this done? I'm just wondering if there are any particular scripts or services that handle this already without having to roll my own.


texts: Hi, I inserted cash at a bitcoin atm 8 hours ago to receive to my mycelium wallet. There are 0 confirmations

texts:
Ive heard that transactions can be forgotten after a while if there are no confirmations. If that were to happen..where would my money go since I'm receiving
(from an atm) and not sending.
Bitcoin never fails to stress me out lol. So much can go wrong with it.


texts: I run bitcoin core. What should I prepare by August 1st?

texts:
I'm not sure about UASF/BIP-148 but should I do something for the activation? Will bitcoin core dev release new version? I do support segwit by the way.

My bitcoind servers are used as a provider of utxo info and accepting signed transaction to broadcast. The wallet and mining feature are not used.


texts: Mining Theory: What would happen if a block hash collision occured?

texts:
To my knowledge, neither SHA256 or scrypt have ever had provable instances of hash collisions occur.. However, if this highly unlikely event was to happen, what would that mean for the state of the blockchain? Would it cause consensus confusion since there would be 2 blocks with the same hash that point back to different previous blocks? And/or would it make it best practice to avoid whatever algorithm the collision occurred with?

Just curious,

-Schwifty


texts: Do the channel balances get publicly announced in real-time on Lightning Network?

texts:
In Lightning Network, is the balance publicly announced in real-time?

On the one hand, it should be public as it is crucial to the routing mechanism.

But, in case that the balance might reveal some private information to the network..

I didn't find the answer in the BOLT documentation.

Thanks.


texts: how much profit can I expect if I start mining today on my Gaming laptop?

texts:
Is there a website/soft that can help me estimate how much I can expect to earn, based on my current hardware configuration?

P.S. I don't pay for electricity or wifi costs. Its included in my utilities.


texts: Could a transaction hex on testnet theoretically be valid on mainnet?

texts: For all practical intents and purposes it seems a testnet tx hex could never be valid on mainnet because of the prev tx hex present for all inputs used in the tx. However, let's say that by some miracle you had identical unspents on both testnet and mainnet. If you signed the tx and broadcast it to testnet, could you then broadcast the same tx hex to the mainnet? In other words, is there anything network specific in the tx hex? I thought there was some network magic that might go into either the signature hash or the script hash but it does not seem to be the case as far as I can tell.


texts: can i run a full node on a laptop without a 3rd party router?

texts: i am  using verizon fios and have attemped to connect to full node. verizon said that i can n0t do it on their router and would need to purchase a 3rd party router and daisy chain to theirs. Any suggestions would be appreciated. thanks.


texts: which transactions does bitcoind validate?

texts:
which types of transactions does bitcoind v0.10 perform checksig validation on?

blockchain transactions belonging to a wallet with known private key
blockchain transactions belonging to watch-only-wallet addresses
all transactions in the blockchain

my guesses for answers would be 1 - yes, 2 - yes, 3 - no. however i would like confirmation of this.


texts:
I'm trying to walk my way through the process by which a miner hashes.

Let's say the getwork request returns a data field of:

0000000244de6ceba49e1c8d438c0d8c584eefd9c8590545bfdfbf380000025c00000000fb3a091de1b4bbe5dc7acfe6bdacbc3fc3bb09bf1030adef8e2854db1b6ac42f5075c0051a057e08456c6f69000000800000000000000000000000000000000000000000000000000000000000000000000000000000000080020000

As far as I understand, the first step is to calculate the midstate. To do this, we first take the first half of the data string:

0000000244de6ceba49e1c8d438c0d8c584eefd9c8590545bfdfbf380000025c00000000fb3a091de1b4bbe5dc7acfe6bdacbc3fc3bb09bf1030adef8e2854db

We then reverse the endianness of each 32-bit unsigned int (represented as 8 hex digits in the string), yielding:

02000000eb6cde448d1c9ea48c0d8c43d9ef4e58450559c838bfdfbf5c020000000000001d093afbe5bbb4e1e6cf7adc3fbcacbdbf09bbc3efad3010db54288e

Next we transform this into sixteen 32-bit unsigned ints:

33554432, 3949780548, 2367463076, 2349698115, 3656339032, 1157978568, 952098751, 1543634944, 0, 487144187, 3854284001, 3872357084, 1069329597, 3205086147, 4021104656, 3679725710

We then input this int array into SHA-256's internal function, with the second input being the eight 32-bit numbers given on page 13 of the SHA-256 specs.

The output of this preliminary hash yields the following eight 32-bit ints as our midstate:

3045448562, 361056177, 1940413978, 3803584651, 1661283772, 3478943551, 2906109005, 300125848

From this point on, I'm not sure how correct the steps are. Corrections are greatly appreciated!

Next, we look at the second half of the input string:

1b6ac42f5075c0051a057e08456c6f69000000800000000000000000000000000000000000000000000000000000000000000000000000000000000080020000

Once again, we reverse the endianness, as everything is an 8-character hex string representing 32-bit unsigned ints:

2fc46a1b05c07550087e051a696f6c45800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000280

Now, we break this up into sixteen 32-bit ints: 801401371, 96499024, 142476570, 1768909893, 2147483648, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 640

The fifth number (21474836481) should be the nonce, according to this description.

(Why isn't this nonce zero?)

Now, starting at the given nonce, we use the SHA-256 function to hash the sixteen 32-bit ints from the second half of the data, using the midstate as the other eight int inputs. This yields: 3993002029, 2278477219, 3977673643, 191934125, 2075691039, 4115259165, 601235791, 2598049038

Now, what do I use as inputs for the second hash function in the "double-hash"? Or did calculating the midstate count as the first hash computation?

And when the nonce overflows, should I submit another getwork request or wait until I've checked the nonces in the range of [0, original_nonce_value)? (Assuming my analysis that the given nonce is 21474836481 is correct?)

Lastly, if our target value from the getwork request is:

ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000

We need to switch the endianness of this value, yielding:

00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff

And then we convert this to eight 32-bit unsigned ints, yielding: 0, 4294967295, 4294967295, 4294967295, 4294967295, 4294967295, 4294967295, 4294967295

And I believe after the second SHA-256 hash we should have eight 32-bit unsigned ints. Lastly, we should compare these eight output ints against our eight target ints (from left to right in the array, so comparing output[0] against the target's 0, then output[1] against 4294967295, etc.) and if our output is less than the target, we convert our eight int values to hex strings, switch the endianness, concatenate them in the same order (output[0]'s hex string is the first set of eight characters), and submit it back to the pool server in a getwork completion POST.

How much of this is correct, and where am I misinterpreting the protocol?

All help is appreciated; thanks so much!


texts:
One Bitcoin core mining policy is CPFP - child pays for parent. That is, transaction with high fee pays for its parent.

Does it also work the other way - that is, does transaction with high fee pays for child transaction that has low fees, given that they are both in the mempool? Or is the policy only "one way", from child to parent.


texts: How is it that concurrent miners do not subvert each other's work?

texts:
Every time a new block is added on top of block chain, the miners have to restart their work because the next block has to have a proper reference to previous block.

Let's suppose that there is some nonce for each block such that there is also sufficiently small hash (smaller than target). In general, there are 2256 possible hashes. Let the target be t. The target can be also understand as a number of acceptable hashes. So there is t / 2256 probability to find a proper hash in each try i.e. to find a block.

The number of unsuccessful tries before a block follows a geometrical distribution with parameter p=t/2256. The expected value of a variable following such a distribution is EX = 1/p = 2256/t. So, each mining pool has to spend 2256/t tries in average to find a block.

How is it that concurrent mining can be efficient, providing that each time some pool publishes a new block all other pools have to restart their work and thus throw out their tries on blocks that now can't be used any more?

Note: Please be a bit detailed. I've already read explanations like: Every try has equal chance to success. But I can't get it from such short hints.


texts: Bitcoin wallet shows empty after I installed Windows on SSD

texts:
My PC stopped working a while ago (BSoD on every restart). I bought an SSD and installed Windows 7 64-bit on it (same as I had on my HDD). I then attached the HDD back into my PC and intended to back up everything important before I formatted it. All my old files are still on the HDD, including Bitcoin-Qt and my wallet.dat. Which is why my coins should also be there, right?

I now opened my wallet, but I noticed it shows my balance is 0.00 BTC. It hasn't yet synchronized fully with the web (about 23,000 blocks left as I'm writing this), and shows it's not up to date. It also shows none of my transactions or anything.

Previously (before buying the SSD) the wallet still showed my BTCs despite it not being fully synchronized.

I have tried to run Bitcoin-Qt with the -rescan command, but this didn't help.

Is there anything I can do to see if my coins still are there and to get them back? I'm afraid that if I let it synchronize fully then all this becomes somehow permanent..


texts: Do transactions reference the containing block of the previous transaction?

texts:
According to the wiki, it appears as if the previous transaction's index is referenced but not the block in which it's in.  Why?

How are transactions stored in the database that doesn't make referencing the previous transaction's block index necessary for performance?


texts: I know the samurai wallet for android has support for payment codes, what other wallets support payment codes?


texts: Miners run full nodes but full nodes may not necessarily be miners. Is there a way to figure out the proportion?


texts: the bitcoin wallet spendable amount is not updating

texts:
the spendable amount is not updating to the watch only amount. this is now going on 3 weeks or longer. I am using bitcoin ver 0.12.1

any ideas??


texts: What happened to Krad Miner (the first javascript GPU miner)?

texts: Krad Miner was the first javascript miner that supported GPUs. Now, the website yields a 502 error, and there has been no response to post #57 in the thread asking about it being dead.  Does anyone know what happened to it?


texts: Copay Multi-Sig Wallet 2 of 3, possible issues

texts: Copay wallet was created by one of the co signers. Is it possible for this co signer to change the 2 of 3 rule without approval from other co signers? Or add another new co signer without existing co signer approvals?


texts: Why was this transaction allowed on testnet?

texts:
I'm a bit confused on how testing stuff for Bitcoin on the testnet currently works.

For example, bitcoin core 0.10 enables only 40 bytes in OP_RETURN, but I'm not sure if 0.10 is the latest version allowed on the testnet.

I know that there are OP_RETURN transactions in the testnet block chain that are up to 64 bytes, as seen in this transaction:

{
  "transaction_hash": "91615716a4d3c42cafc240b594d79782709c2c359bd0d5a1d30fa2ee8294bcd3",
  "hex": "37356365626362356462366363636537383565633837646134353564373332646162653661313462636362623235393338643465663163373539346232303934",
  "text": "75cebcb5db6ccce785ec87da455d732dabe6a14bccbb25938d4ef1c7594b2094",
  "receiver_addresses": [

  ],
  "sender_addresses": [
    "mmHWy49WWGFQgmeZt7wYKvWSh7Szi9XQAm"
  ]
}

source

Is the code for the testnet differences within the most recent bitcoin github repo, or is it a separate repo I must download, compile, and point towards the testnet?

Some clarification on how this works would be great.


texts: Why there are no OP_CODEs for querying the blockchain and retrieving data to the stack?

texts: Blockchain data is immutable, so once valid a transaction will always be valid and full nodes can verify it.


texts: Bitcoin core: connect to specific peers from file

texts:
I want to launch Bitcoin core connecting to a specific list of peers. I can do this using connect:

bitcoind -connect=<IP1> -connect=<IP2>

Is there a way I can put the peers I want to connect to into a file and give this file to bitcoind as input?


texts: Does Bitcoin no longer fulfill its original purpose?

texts:
The Bitcoin whitepaper details "a purely peer-to-peer version of electronic cash", usable for "small casual transactions".
According to BitInfoCharts, the average Bitcoin transaction fee is currently 58 USD.
Is Bitcoin no longer usable for its original purpose of being a peer-to-peer version of electronic cash?


texts: Who is the decision body for forking a blockchain ledger?

texts: Is it fair to compare the decision body responsible for forking a blockchain as 'escrow officers'? How can users of the blockchain network dare to the treat the distributed ledger as immutable as long as forking (ledger tampering) exists as a corrective measure? Who are these people and how who holds them accountable?


texts: Is there bitcoin implementation in python or C#?

texts: I want to play with the implementation to better understand the inner workings of Bitcoin. I'm familiar mostly with python and C# and found no clients in either of the languages. My C skills are rusty because I haven't done any C in last decade.


texts: Is it okay to chain multiple unconfirmed transactions?

texts:
Is it okay to chain and broadcast multiple unconfirmed transactions?
For example: I have two confirmed UTXOs UC1 and UC2. Using both as inputs, I then create and broadcast transaction T1, which outputs UT1. Then, using UT1 and another confirmed UTXO, UC3, I create and broadcast T2, which outputs UT2. I keep track of the last unconfirmed UTXO from the transactions I built and keep building and broadcasting new ones.
Secondly, will the chained transactions be mined at the same block?


texts: Doesn't storing the "recovery seed phrase" for a wallet defy all logic?

texts:
I've heard many times that you are supposed to write down a "recovery seed phrase" (a series of English dictionary words) on a piece of paper and store that securely so that you can recover your coins when you inevitably lose access to your wallet.dat.
But doesn't this defy all logic? If this phrase alone can recover the wallet.dat (which feels like magic to me, but I'll accept it as the truth), what happens if:

There is a fire and it burns your coins with the paper?
A burglar steals the paper and takes your coins?
The government seizes the paper and takes your coins?

Even if you say "I'll buy one of those fireproof metal plates where you put in the seed phrase with the little metal letters", that only protects against the first hazard.
And even if you put the piece of paper (or metal plate) inside a fireproof safe, that only stops (at best) number 1 and 2. The government will not be scared to force-open the safe or make you do it under gunpoint, and there's your recovery phrase.
And if you put your coins on a hardware wallet and secure that, and still store your seed phrase in your computer, then somebody could grab that remotely through one of the numerous security holes that computers/OSes/software have today, restore the the wallet and take your coins before you ever know.
It seems that storing the recovery phrase ONLY protects against your own clumsiness and hardware dying, but not against all the other serious threats.
I've spent so long thinking about every possible method to keep my Bitcoins safe, but I just can't find a single method which I'm not myself able to quickly poke huge holes through...


texts: How do I transfer bitcoins into a United Kingdom bank account?

texts: Does anyone know the best way to change bitcoins into pounds (GBP), then do a bank transfer or paypal transfer? I've found some, but they take a week.


texts: Question about retarget system bitcoin, add hardcodet block to exist blockchain

texts:
the standard values

    if (nActualTimespan < params.nPowTargetTimespan/4)
        nActualTimespan = params.nPowTargetTimespan/4;
    if (nActualTimespan > params.nPowTargetTimespan*4)
        nActualTimespan = params.nPowTargetTimespan*4;

but if i use

        if (nActualTimespan < params.nPowTargetTimespan/4)
            nActualTimespan = params.nPowTargetTimespan/4;
        if (nActualTimespan > params.nPowTargetTimespan*2)
            nActualTimespan = params.nPowTargetTimespan*2;

It's be valid or it's can broke diff system ?

What values can i add for diff is not grow very quickly, but drop faster than grow for it be more stable for fast block time.

setting of block time is

consensus.nPowTargetTimespan = 10 * 60; // 10 min
consensus.nPowTargetSpacing = 5 * 60; //5 min

And another question

I try use the exist function low diff block what created for testnet for only block with Height 2001 .
Previous exist block is 2000  and latest now in blockchain.

if ((pindexLast->nHeight+1) % params.DifficultyAdjustmentInterval() != 0)
{
    if(pindexLast->nHeight+1 == 2001)
    {
        // Special difficulty rule for testnet:
        // If the new block's timestamp is more than 2* 10 minutes
        // then allow mining of a min-difficulty block.
        if (pblock->GetBlockTime() > pindexLast->GetBlockTime() + params.nPowTargetSpacing*2)
            return nProofOfWorkLimit;
        else
        {
            // Return the last non-special-min-difficulty-rules-block
            const CBlockIndex* pindex = pindexLast;
            while (pindex->pprev && pindex->nHeight % params.DifficultyAdjustmentInterval() != 0 && pindex->nBits == nProofOfWorkLimit)
                pindex = pindex->pprev;
            return pindex->nBits;
        }
    }
    return pindexLast->nBits;
}
else
{
    if (params.fPowAllowMinDifficultyBlocks)
    {
        // Special difficulty rule for testnet:
        // If the new block's timestamp is more than 2* 10 minutes
        // then allow mining of a min-difficulty block.
        if (pblock->GetBlockTime() > pindexLast->GetBlockTime() + params.nPowTargetSpacing*2)
            return nProofOfWorkLimit;
        else
        {
            // Return the last non-special-min-difficulty-rules-block
            const CBlockIndex* pindex = pindexLast;
            while (pindex->pprev && pindex->nHeight % params.DifficultyAdjustmentInterval() != 0 && pindex->nBits == nProofOfWorkLimit)
                pindex = pindex->pprev;
            return pindex->nBits;
        }
    }
    return pindexLast->nBits;
}

And use new rule retarget for new block's after 2001 and accept old block with old retarget rule.

   if(pindexLast->nHeight+1 > 2001)
    {
        if (nActualTimespan < params.nPowTargetTimespan/4)
            nActualTimespan = params.nPowTargetTimespan/4;
        if (nActualTimespan > params.nPowTargetTimespan*2)
            nActualTimespan = params.nPowTargetTimespan*2;
    }
    else
    {
        if (nActualTimespan < params.nPowTargetTimespan/4)
            nActualTimespan = params.nPowTargetTimespan/4;
        if (nActualTimespan > params.nPowTargetTimespan*4)
            nActualTimespan = params.nPowTargetTimespan*4;
    }

About what i asking , is this solution is right and it will work, or this solution is wrong end exist another way to do this ?


texts: Connecting to peers but not loading any blocks

texts:
I start Bitcoin Core as admin and last week everything worked as it should,
but now it is stuck at 93% and tells me it is connecting to peers.
In the end I waited 5 hours and it happend nothing.

Where is the problem.

Thanks


texts: Miners attempt to hash block data such that it is below a certain target value? By Cantor's diagonal proof aren't there infinitely many successful values below any given target?


texts: Is it possible to determine which transactions involve the same wallet?

texts: More specifically, with APIs such as this: https://blockchain.info


texts: How to answer to whether Bitcoin is a Ponzi scheme?

texts:
I was asked whether Bitcoin is a Ponzi scheme as I was explaining Bitcoin. In support of the question I was presented with the following scenario. I didn't know what to answer.

  Let's assume Bitcoin started today and had no transactions and no customers. Tomorrow, the first 10 people ever buy into Bitcoin. The price at that time for one bitcoin is $100. So, 10 people bought in at $100 thus there is $1000 in the Bitcoin economy.
  The next day, the price of a Bitcoin doubles and goes to $200 per coin. Now again hypothetically, let's say ALL 10 of these people want to sell their Bitcoin and cash out. The math now says $2000 will have to be paid out.

How will this be handled as there was only $1000 in the system? I don't believe Bitcoin is a Ponzi scheme, but this particular equation does not add up. What am I missing here?


texts: What can happen if/when a node is surrounded by rogue nodes?

texts:
If a node (V) accepts incoming connections, is he vulnerable to becoming completely surrounded by corrupted nodes? Would an attacker be able to control which transactions are relayed to V and which transactions V is able to broadcast to the network?

I assume for this to happen V would have to, over time, lose connections to honest nodes to have them replaced by the attackers'.

If so, in what circumstances would the Bitcoin client lose connection with an honest node, other than it going offline?


texts: How to store 30kb file using Decentralized Blockchain Data Storage on NXT (nxtcoin) by attach messages?

texts:
I'm curious to how would one store a 30kb file on the NXT blockchain since the NXT protocol can attach a 1000byte message. My test scenario is storing a 30kb midi file on the nxt blockchain and then call it back to form the file again either in the browser or as a downloaded file. I want to be able to do this via the local nxt client through its api and also via online services that have their api open to query the nxt blockchain. What I need to know and confirm is the following:

Due to the 1000byte limit, I'd imagine it would be about 30+ separate messages to form this file.
To reform the file, we would need to mark each message in proper order to concatenate it.
Can all of this be done using only javascript and query remote nxt blockchain api's?
Do we need to turn bytecode into base64 for decentralized storage?
What other issues might we encounter?

If we can get a test scenario working, technically we can store/retrieve/embed data onto our websites/apps without needing a centralized server.


texts: How to automate bitcoin wallet to send return payments to website subscribers?

texts:
When a .onion website sells subscription log-in accounts, they ask for subscription payment and say that a return payment will be received immediately after, containing the payment code for creating a user account.
For example, the subscription might cost 0.001 BTC, so if the new subscriber pays that, and she receives 0.0002713 BTC afterwards as a return payment, then the new user can create their account by entering the following fields in the registration form:

Username
Password
Payment Code: 2713

How can a bitcoin wallet even be programmed to automatically respond to incoming payments with a return payment?
and further, disguise the payment code in the return payment amount such that the form will associate a unique code to each new user (unless maybe they are just fixing the payment code to be identical for all users)


texts:
Is there a place, where i can buy everything in other countries and pay with bitcoins?

I know there is a place somewhere.


texts:
I was scammed by an exchange called BitNake. It is referenced in the Bitcoin Wiki as a fast and secure exchange seeded in Germany. I could not find any negative comments on the web and decided to try it. I paid the minimum amount but never got any Bitcoin deposited in my wallet. Repeated e-mails to the support address went unanswered.

As it turns out, the BitNake website seems to have been created just last month and is actually installed in California. I guess I am one of the first to fall for this.

The question then is: how do I tell the world this website is a scam? So that others do not fall for it too.

Update I: here is the scam report at CoinTalk.

Update II: BitNake had been previously reported as a scam. However the search engine I use, DuckDuckGo, seems to be blind to BitcoinTalk. Another interesting aspect in this story is PayPal actively protecting the scammer.


texts: What constitutes a project to be a Bitcoin Sidechain?

texts: From my understanding sidechains require the parent blockchain (bitcoin) to be able to lock a certain amount of coins on the sidechain. My question is how is it different from just sending your btc coins to a 3rd party and they just hold it while they give u their own tokens to play with. How is coinbase different from rootstock which is supposedly a sidechain right? I know coinbase is a company that holds your btc, but doesnt rootstock also hold your btc? The thing is how do they hold it?


texts: Why doesn't bitcoind verify blocks like bitcoin qt?

texts:
I have downloaded the full bitcoin blockchain using bitcoin-qt. When I run bitcoin-qt, it verifies the blocks for about a minute, then it runs without any issues.

The issue is when I try to run bitcoind, it gets unresponsive for hours if I don't kill it and tries to download the whole blockchain again. (for some reason it doesn't trust it's valid).

The path is H:\btcBlockchain ,  so I run bitcoind like this:

bitcoind.exe -datadir=H:\btcBlockchain

I know the directory is right because it starts to change the blocks size as it downloads. Why is this happening, isn't bitcoin-qt the same program as bitcoind but with UI built on top?


texts: What incentive is there for a miner to not include a bad transaction?

texts:
'A' has got 1BTC legitimately. He sends out a transaction to transfer that one bitcoin to 'B' with a 1BTC transaction fee added on. (i.e. a bad request.)

'C' is a miner who cares nothing for integrity of the bitcoin system and only cares about winning blocks and selling the BTC he gets as soon as he can.

What incentive does C have to pass on the free 1BTC and not include A's transaction when putting the next block together?


texts:
While looking at the current pool luck chart on p2pool.info, I noticed that the pool as a whole seems to slowly deviate from the predicted rate of finding blocks.

From the other chart it appears that it is consistently underperforming as of 3 weeks ago.

Is there a good reason or is it just a fluke in the probabilities of finding a block?


texts:
I had purchased bitcoins several years ago.  I installed the version of this software that was available at the time and I think everything was saved on the computer I was using it at that time.  The computer that had my bitcoins on it has disappeared.  I am installing the latest version of the Bitcoin Core wallet now but how would I go about getting my bitcoins back.

I couldn't seem to find an exact answer on how to restore my bitcoins.


texts: What is the maximum number of bytes the coinbase scriptSig (coinbaseaux) can hold?

texts: Since the scriptSig of the coinbase transaction of a block can contain arbitrary data, what is the maximum number of bytes it can contain? I've seen various mentions of a limit around 100 bytes, but can't find that defined anywhere.


texts: Lightning Network: are all keys pre-generated in the base row of the merkle tree?

texts:
From the whitepaper, page 41:

  Keys are generated in a merkle tree and are very deep within the tree.
  For instance, Alice pre-generates one million keys, each key being a
  child of the previous key. Alice allocates which keys to use according
  to some deterministic manner.

Are those million keys all in a row?

H11
H21 H22
...
Hm1 Hm2 ... Hmn
K1  K2  ... Kn

Where m = 20, n = 1,000,000 and Km1 is the parent key of Km2, Km2 is the parent key of Km3 ... as they are BIP32-compliant.

The structure above seems to satisfy the conditions, as the keys are very deep in the tree. But that's exactly the slightly confusing part. Does that mean that keys could also be hashes upper in the tree?


texts:
It was my understanding that I have found a share, when the miner reports accepted:...(yay).

However, the number of shares I'm being credited with in my pool is much lower than the number in the miner.

I'm talking about total shares as I have always used the same pool, and I haven't reset the miner so far. So, both should refer to the same frame of time.

Why doesn't the number of shares in my miner match the number of shares reported by my pool?


texts: Exact syntax for lightning-cli txprepare

texts:
I have tried many different forms but I cannot prepare a transaction with lightning-cli txprepare from the Linux prompt.

lightning-cli txprepare [{\"bc1qvzr0mwps952d0cdmchyd2pe5rlee5tfces5dzf\":\"all\"}] slow 1 [c2ff...:1]
lightning-cli: Incorrect 'id' in response: null

lightning-cli txprepare "[{\"bc1qvzr0mwps952d0cdmchyd2pe5rlee5tfces5dzf\":\"all\"}]" slow 1 "[c2ff...:1]"
lightning-cli: Incorrect 'id' in response: null

and many other trials.

What is the correct syntax?
How is it possible to avoid the double quote issue in the shell?
Is it possible to have an actual example of what SHOULD work?

Thank you.


texts:
16: bad-txns-in-belowout (code -26)
With the Bitcoin Core Console
I get this code when I'am done signing my transaction.
I get this message instead of a transaction ID number.
What is it ?


texts: Is it possible to get information about forks in the blockchain?

texts:
I don't know if "fork" is the right word here, but I know that two blocks can be mined around the same time, creating more than one competing block at a certain level of the blockchain.

Is it possible to get information for about these competing blocks from bitcoind?


texts: Retrieving BitCoin Payments, Confirmation Question

texts:
I'm receiving BitCoin payments via the blockchain.info api.

I notice it sends a confirmations parameter, and it also continues to call the callback url until the response is *ok*.

Instead of manually checking every x minutes via a third-party site to see whether or not txid has x confirmations, would it be possible to just not output *ok* until there is x confirmations?

I'm not sure whether or not the blockchain stops sending the callback, and was wondering if this is possible or not.

Cheers.


texts: Hash rate, transaction and block relationship

texts:
I'm aware that when the hash of the block header (block hash) is below the difficulty target, a block is deemed as validated.

But because I've never run a bitcoin node before (will soon), I had a few questions regarding the mining process.

1) When miners are running the BTC software, are they by default confirming transactions in the mem pool based on the highest fees, or are they allowed to choose which transactions they may validate?

2) If you have a higher hash rate, does this mean you can validate transactions quicker as well?

3) When a block is validated on average every 10 minutes, as set by the BTC protocol, are miners also trying to validate transactions too?

4) How are transactions validated?


texts:
noob here,

am I right in thinking that as bitcoin matures, the average size of transactions, will go up, i.e. higher kb per n BTC, as all the coin gets increasingly spent so that any sizable payment will ultimately end up being made up of increasingly large numbers of smaller inputs, and that this will contribute to the rate at which the blockchain size increases, on top of general total transaction increases over time.. ? With the current large mempool size and delays in getting transactions accepted for mining, except with big fees per kb, will this lead to increasingly large fees to send payments in a timely way or longer delays ??

Thanks


texts:
Is there are any way to use bitcoin or alternative crypto-currency in local network?
I have small home network without internet and have an idea to have a local currency to encourage the children.


texts: Are there standardized ways of generating wallets from passphrases?

texts:
Brainwallet is a well-known tool that lets you generate an address from a passphrase. I think Brainwallet just performs a single SHA256 hash on the passphrase to get the 256-bit private key of the address.

Is there a BIP-standard formulated for this calculation?

Now that HD wallets are making there way to become mainstream, I think it is useful to have a standard to generate an HD wallet from a passphrase. Electrum and CarbonWallet seem to already have implemented HD wallet generation from passphrase and they are using 100,000 rounds of SHA256, which sounds already a much safer process than a single round.

The original BIP0032 that defines HD wallets doesn't define a way to generate them from passphrases (and it shouldn't), so maybe it is a good idea to make a separate BIP for this purpose if it does not already exists.

I want to be able to switch between wallet apps just taking my master key with me. Or for HD wallets, f.e. use a different wallet for watching (using the public root key) than for signing.


texts:
I sent 24mbtc over a week ago with the transaction number abef483d268dc61214fd5bf25c602256cf447aa65bec2e539fee42f59a3b90b3
the person i sent to still says, they have not received anything yet the transaction says in my wallet it is confirmed. What could be the problem?


texts: Actively display wallet funds on web page - how?

texts:
I am working on a project where people can contribute to the project in Bitcoin or Ethereum. For each I need a way to be able to display an active balance in each currency's wallet. Something along the lines of this:
You have elected to contribute in BTC to the project. Thank you. Your contributions are most welcome. Please send your BTC to 123abc456def. This wallet currently contains X Bitcoins, while Y have been contributed in total, and the contributed funds have been used for the purposes listed below.
And each time the person accesses the page, X and Y will reflect that wallet at that moment. I'd really prefer not to run a full copy of the blockchain for this. I already have bitcoind running with a 4GB pruned database, and I'm hoping that will be enough.
I need to do all this in PHP. Is there a good PHP toolkit/library/whatever that I can use to call the info?
Thanks!


texts: I bought bitcoin on coinbase. I was charged the network fee, I understand. Then I had to transfer my purchase to electrum wallet. I was charged again. Am I doing something wrong??


texts: What's so special about six blocks for confirming transactions?

texts: I read that when your transaction is part of a block that has five other blocks on top of it, you can feel safe that your transaction is not in danger of being orphaned because someone else would come along and confirm a series of blocks longer than the one of which your transaction belongs. My question is what's so special about six?  It seems like an arbitrary number. Why not five or seven?


texts: Having trouble getting poclbm to work on linux, Segmentation fault

texts:
I am a linux noob, so please take that in to account.  I believe i have compile poclbm and all it's dependencies correctly however when I try and run it

python poclbm.py http://xxxx@xxxxx@pit.deepbit.net:8332 -d 0

I get the following error

21/02/2014 15:45:26, Setting server (xxxx@xxxxx @ pit.deepbit.net:8332)
pit.deepbit.net:8332 21/02/2014 15:45:26, checking for stratum...
Segmentation fault

Does anyone have an idea of why this might be happening?  Changing my logging a bit I can see it's a 3044 Segmentation fault.

Thank you


texts: If the nodes I connect to don't support the BIP 61 reject message, how do I know that my transaction was eventually rejected by the network (e.g. due to my bugs)? Is there any timeout or whatever after which it's reasonable to assume that my peers will never relay the transaction?


texts: Disjoint quora slices and global ledger status.

texts:
Theoretically, if all the nodes in the quorum participate only in disjoint slices, then there wouldn't ever be a single global state of the ledger. Does Stellar help identify such scenarios in the network (main or private)?

From the Stellar Consensus Protocol article, there is a universe of nodes of which a quorum of nodes is enough to arrive at a 'final' ledger state.

  To tolerate Byzantine failure, SCP is designed not to require
  unanimous consent from the complete set of nodes for the system to
  reach agreement, and to tolerate nodes that lie or send incorrect
  messages.

Then, there is a quorum slice that is a collection of certain nodes within the quorum mentioned above.

  Federated Byzantine agreement introduces the concept of a quorum
  slice, the subset of a quorum that can convince one particular node of
  agreement.

These quorum slices may or may not intersect.


texts: How can I run bitcoind and bitcoinclassicd on the same server?

texts:
I want to run full nodes for Bitcoin (bitcoind) and Bitcoin cash (bitcoinclassic). Here are the commands I'm using to run these nodes (I've renamed bitcoin classic tools to bitcoinclassic* and moved the executables to the /usr/bin):

$ bitcoind -daemon -dbcache=3072 -rpcthreads=10
$ bitcoinclassicd -daemon -datadir=.bitcoinclassic/ -dbcache=3072 -rpcthreads=10

They are both starts OK, but when I'm trying to use the bitcoin-cli and bitcoinclassic-cli, for some reason I'm getting information only for bitcoinclassic

$ bitcoin-cli getinfo
{
  "version": 1030300,
  "protocolversion": 80002,
  "walletversion": 130000,
  "balance": 0.00000000,
  "blocks": 479637,
  "timeoffset": 0,
  "connections": 19,
  "proxy": "",
  "difficulty": 115459053827.9121,
  "testnet": false,
  "keypoololdest": 1502885275,
  "keypoolsize": 101,
  "paytxfee": 0.00000000,
  "relayfee": 0.00001000,
  "errors": ""
}

$ bitcoinclassic-cli getinfo
{
  "version": 1030300,
  "protocolversion": 80002,
  "walletversion": 130000,
  "balance": 0.00000000,
  "blocks": 479637,
  "timeoffset": 0,
  "connections": 19,
  "proxy": "",
  "difficulty": 115459053827.9121,
  "testnet": false,
  "keypoololdest": 1502885275,
  "keypoolsize": 101,
  "paytxfee": 0.00000000,
  "relayfee": 0.00001000,
  "errors": ""
}

How can I fix it? Maybe I should use more flags at the start, e.g. specifying configuration file or something else?

UPDATE: I forget to say, that they are not using the same port, here's the configs:

$ cat .bitcoin/bitcoin.conf
rpcuser=USER
rpcpassword=PASS
rpcbind=127.0.0.1
rpcport=8332
server=1
$ cat .bitcoinclassic/bitcoin.conf
rpcuser=USER
rpcpassword=PASS
rpcbind=127.0.0.1
rpcport=8432
server=1
bind=0.0.0.0:9222
maxconnections=10


texts: Does every transaction have the same signature?

texts: I want to know whether the bitcoin network generates the same signature for each transaction, because people have only one signature?


texts: How do I migrate to Bitcoin XT from Bitcoin Core?

texts:
Some people are saying Bitcoin XT is faster and more secure, but I don't know how to migrate from Bitcoin Core to Bitcoin XT, because I have all my coins on Bitcoin Core.

What are the steps I need to perform to safely migrate from Bitcoin Core to Bitcoin XT?


texts: Statistically how many unconfirmed transactions get rejected?

texts:
I need to analyse unconfirmed transactions and I'm interested in knowing what is the probability for a given unconfirmed transactions to be confirmed.

Depending on the model, I see two solutions:

checking for a relatively long period of time how many transactions had been submitted and checking how many had been confirmed.
searching pattern behavior in the structure of a transaction that will lead to a rejection.


texts: Is there a way to search and recover a wallet with the wallet address? I can't remember what wallet provider that I used to send some cryptocurrencys to and all I have is the wallet address. Like is it possible to type in my wallet address and see who the wallet address is provided by. If I can do at least figure out who the address is provided by then I'll be able to recover it from there.


texts:
I've noticed that the bitcoin client uses sockets.

I've also seen that long polling is not only available but is also recommended.

Why?  Isn't long polling far less efficient than sockets?


texts: In the Lightning Network, what happens if a "middle node" suddenly goes dormant for a long while?

texts:
I think I have a general understanding of how the Lightning Network works. However, I was having a little difficulty in understanding what happens when a node in the middle of a "path" suddenly goes dormant, or offline for a long time. To clarify my question, consider the following example:

A wants to make a payment of 1 BTC to D.
A finds a path from A --> B --> C --> D.
D generates an R and sends H = hash(R) to A
A creates HTLC of 1.002 BTC with B.
B creates HTLC of 1.001 BTC with C.
C creates HTLC of 1 BTC with D.
D unlocks HTLC, receives 1 BTC, and then tells R to C.

However, what if C is suddenly offline meaning C won't be there to receive R from D and thus stops the flow of R back through the path. I would assume that the HTLC's between A and B and B and C run out and so A and B are refunded.

So, would C lose out? Would A have just made a "free" transaction? I assume this is a fast process, but is it likely such an event occurs where a middle node in an LN transaction just goes down for a long while?


texts: What is relation between scriptSig and scriptPubKey?

texts:
Scenario: A is sending 1 BTC to B.

scriptSig appears in the Input Script.

scriptSig = <sig> <pubKey>

Here, public key is the Public Key of the sender, A. (this is the public key corresponding to his Bitcoin Address which has some unspent transaction).

What is the sig part of scriptSig?

scriptPubKey

scriptPubKey = OP_DUP OP_HASH160 <pubKeyHash> OP_EQUALVERIFY OP_CHECKSIG

pubKeyHash = Hash of the Public Key of Recipient (in our case, B).

The sender (A) only has the Bitcoin Address of the recipient (B), so how does he get the pubKeyHash from his Bitcoin Address?

Now, this is my understanding so far:

Input Script carries information about the "previous transaction" of the sender and points to the appropriate "output" part of "previous transaction" using an index. The output of the previous transaction is the total available balance for the sender (A) which can be claimed to send Bitcoins to the recipient (B).
This Input Script is also used to verify that the sender (A) is the actual owner of the Bitcoins held in the referenced output of previous transaction.
Output Script tells us, how many bitcoins the Sender wants to Transfer to the Recipient and it also mentions the Bitcoin Address of recipient.

Questions:

The public Key in scriptSig is different from the public Key in scriptPubKey?
How can the signed information of the Sender be verified by the recipient, if they don't share the same Public Key?
I have tried understanding the example given on wiki which shows how the script is executed in a stack based manner but could not understand it.

I have some more questions, but I think I will ask them in a different question instead of putting it altogether here.

Thanks.


texts: How to create a brainwallet with bitcoinjs?

texts:
This is how to create a brainwallet with bitcore

const Bitcore = require("bitcore-lib");
// const Mnemonic = require("bitcore-mnemonic");
// https://bitcore.io/api/lib/crypto
let brainsrc= 'satoshi'
let input = new Buffer(brainsrc)
let hash = Bitcore.crypto.Hash.sha256(input)
let bn = Bitcore.crypto.BN.fromBuffer(hash)
let pk = new Bitcore.PrivateKey(bn).toWIF()
let addy = new Bitcore.PrivateKey(bn).toAddress();
console.log('The brain wallet of '+brainsrc+' \nAddress: '+addy,' Private key:'+pk)

For bitcoinjs, I only know how to create random address:

// https://github.com/bitcoinjs/bitcoinjs-lib/blob/v3.3.2/test/integration/addresses.js

const bitcoin = require('bitcoinjs-lib')
var keyPair = bitcoin.ECPair.makeRandom()
var secret = (keyPair.toWIF())
var addr = (keyPair.getAddress())

console.log('The brain wallet of '+brainsrc+' \nAddress: '+addr,' Private key:'+secret)

How to do it?


texts: How to Create Seed Node for Cryptonote Fork

texts:
I have fork Cryptonote and made .rawiumd, and recompiled it successfully on Google Cloud computing.
I have created another 2 instances in google cloud computing.
I have modified CryptoNoteConfig.h file and mentioned both instances IP address at port 17236.
I have installed all dependencies too.
When I run ./rawiumd it says, continouing without seed node, cannot connect.
Any Help?


texts: What stops this style of attack on the Bitcoin network?

texts:
I was having a look at the genesis block of Bitcoin earlier and noticed the difficulty was set to 1. I guess this was originally designed so just Satoshi's computer mining at this difficulty would produce 10 minute blocks.

However, if I put my GPU/ASIC to mine at the beginning of the chain at this difficulty I could find blocks incredibly quickly. Even if I could mine each block in 10ms it would take me around 12 hours to reach the current block height. I realise finding blocks this quickly would also ramp up the difficulty after 2160 blocks but I could just fabricate the timestamp on the blocks so it looks like they all came in at 10 minutes.

Then when my chain (which is essentially empty with just my mining address full of Bitcoin) is as long/longer than the current consensus I can broadcast it and nodes/miners should take the longer chain which will be mine.

What in the Bitcoin implementation prevents this?


texts:
I tried on a few different machines, vps etc. Also, few different altcoin litecoin included. Most were with 4 GB of ram, if this matters.

Every time when I enter the command getblocktemplate , I get return error message -7 "out of memory".

This prevents me from mining the coins in a pool.

Does anyone have any idea, why do I get these errors, and what to do to fix them?


texts: Can a resynchronization be avoided when recovering a wallet in Bitcoin Core?

texts:
I have tried to restore my wallet by replacing wallet.dat with my file, but the issue is that Bitcoin Core started synchronizing from 8 years again. Can some one help me to avoid this because I frequently format my system. So, is there any way to avoid needing to repeat the synchronization?

I have tried -rescan too but it did not work. :(
It shows my transaction history but does not show my balance for which I assume the sync needs to finish.


texts: C# library for exploring Bitcoin Cash blockchain

texts:
Does anyone know of a good C# library which would enable me to explore the Bitcoin Cash blockchain by communicating with my own node?

Something like Nethereum (Web3) for Ethereum.

Or, alternatively, a third-party API provider, like BlockCypher for Bitcoin.


texts: C#, How can I actively query the crypto-market?

texts:
Are there any wrappers to get the real-time crypto-currency value similar to coincap.io?

Right now I am using Json to deserialize a download string from CoinMarketCap, however, the api does not actively check the real-time value, like coincap.io. Was wondering if there is a wrapper that checks real-time activity.


texts: how can I insert an arbitrary sha256 hash into the blockchain?

texts:
If I want to prove that I wrote a particular document before a certain point in time, it would be sufficient to generate the sha256 hash of the document and somehow arrange for that hash to appear in the blockchain.

Is there an easy way to do that simply by sending a transaction and leaving it to the miners to arrange for it to get into the blockchain for me?

One way that occurs to me is that I can treat the hash as a private key (bitaddress.org will tell me the address and private key that corresponds to any given input), and send a Bitcoin to the corresponding address.  Then when I publish the document anyone can go through the same process and see the date of the transaction in the blockchain.

That seems a little convoluted.  Is there a simpler way?  Ideally free, not computationally intensive, and not requiring any special software to make the timestamp or to verify it.


texts: I am trying to track down my old wallet, and I can't remember what kind of wallet it was! I am wondering what some of the first most popular wallets were, from the start of bitcoin in 2009 to about 2013! Thanks!


texts: How are transactions verified to ensure only the eligible person can spend a Bitcoin balance?

texts:
I know each user has a public key and private key. The users signs the transaction with his private key and sends it to a Bitcoin address. What prevents me from claiming his coins? I read something about verification with the private key but I didn't really understand. How does Bitcoin ensure that only the eligible person can spend the bitcoin? More specifically I didn't understand the verify and sign part in Satoshi's paper in the diagram on page 2.

Also from this diagram, how is it that a secret key can act as a key to lock a lock, but the public key can open the lock only but can't lock it back? How is this implemented technically?


texts:
I have seen, in numerous screenshots of Dogecoin-QT, a "dig" pane (equivalent to "mine" in some others):

However, my client has no such pane:

Does anyone know where that option has gone? Was it removed in an upgrade?


texts: How does Trezor recover all public keys from different blockchains?

texts: I understand that the Trezor is a HD wallet, meaning private-public keys are generated through a deterministic, hierarchical expansion of the root seed. However, when I am in a process of recovering my wallet with a seed, how does it figure out which private-public key pairs map to which accounts on which blockchain? Is it just some sort of brute-force expand and check (see of Bitcoin blockchain has the following address or no) algorithm?


texts: How to display a list of incoming bitcoin Transaction history in my own wallet?

texts:
I have gone through various references including

How to get a history of incoming and outgoing transactions for a certain address?

Fetch list of transaction where i have received the bitcoin?

I am creating a Bitcoin Wallet,

And I want to display transaction list as a part of my Wallet.

To achieve this goal I can make a local database entry of all the send transactions which are within the Wallet.

But How can I get the incoming Bitcoin Transaction Details which are perform out side my wallet?


texts: How do I compile Core 0.8.6 on Ubuntu (EC2)?

texts:
I'm trying to compile v0.8.6 of the core client from source, in order to compare IDB (Initial Blockchain Download) performance between versions.

I created a fresh Ubuntu Xenial 16.04 machine on Amazon EC2. I then ran the following commands (which were sufficient for version 0.9.3 and up):

sudo apt-get update
sudo apt-get upgrade -y
sudo apt-get install build-essential autoconf libboost-all-dev \
                     libssl-dev libtool pkg-config libevent-dev

In addition for this specific version I ran:

sudo apt-get install libdb++-dev libminiupnpc-dev

I then checked out the source and started the compilation:

git clone https://github.com/bitcoin/bitcoin.git
cd bitcoin
git checkout v0.8.6
cd src/
make -f makefile.unix

I'm only interested in running headless bitcoind, but I'm not sure if it was already separated form the UI at that release.

I get the following error:

rpcrawtransaction.cpp:241:77:   required from here
/usr/include/boost/variant/get.hpp:178:5: error: invalid application of ‘sizeof’ to incomplete type ‘boost::STATIC_ASSERTION_FAILURE<false>’
 BOOST_STATIC_ASSERT_MSG(
 ^
makefile.unix:172: recipe for target 'obj/rpcrawtransaction.o' failed
make: *** [obj/rpcrawtransaction.o] Error 1

Interestingly 0.7, 0.6 and 0.5 do compile successfully, although they get stuck during IDB, so perhaps compilation just failed silently. I'll make a separate post for those later.

I suspect that I need to install some very specific versions of dependencies, but I'm not sure which and how to go about that. I haven't used Linux in years.

I still have the VM, so I can provide more details if needed.

I'm open to alternative approaches, even using a Windows VM :-)


texts: Handle multiple wallets with easybitcoin

texts:
I want to create a wallet for every user. With the easybitcoin rpc, I would like to call up the balance in php. Everything runs in the testnet.
I found out that I have to adjust the initialization like:
$bitcoin = new Bitcoin('bitcoinrpc','Password','localhost','18332','wallets/user/wallet.dat');
or ...127.0.0.1:18332/wallets/user/wallet.dat);
But no option is working.

I want to implement something like this:
function getBalance($user) {
   $bitcoin = new Bitcoin('bitcoinrpc','Password','localhost','18332');
   $balance = $bitcoin->getbalance($user);
   echo $balance
}

Example wallet is located in:
/root/.Bitcoin/testnet3/wallets/user/wallet.dat
This:
bitcoin-cli createwallet user
bitcion-cli -rpcwallet=user getbalance

is working, but how can i run it in php.


texts: What values should be initially assigned to Checkpoints for a new Genesis block?


texts: Microsoft Azure VM selection for optimized mining

texts:
I've come across a decent amount of Microsoft Azure credit and want to use it to to mine cryptocurrency.
I am writing to ask:

which computer to run the VM on - Azure provides a number of machines (https://azure.microsoft.com/en-us/pricing/details/virtual-machines/series/#a-series) optimized for various tasks - 'General Purpose Computing', 'Compute Optimized', 'Memory and Storage Optimized', 'GPU enabled', ect. Under each of these categories, customers much choose the number of  cores and amount ram (see https://azure.microsoft.com/en-us/pricing/calculator/?service=virtual-machines) to use.
I would like to know which machine type will mine the most efficiently, and how important are the different characteristics of a machine? (the number of cores, the amount of RAM, GB on disk?)

Which currency to mine - Bitcoin? Litecoin? any other Alt-coin suggestions?

How much money can I expect to earn?

Thanks!


texts: Would Bitcoin-Qt ever use an imported private key's public key as a future change address?

texts:
Let's say I import a paper wallet's private key into my Bitcoin-Qt client.  I then manually sweep the entire balance from that private key to a different Bitcoin-Qt private key/address with a new transaction.

Will Bitcoin-Qt ever send change from a future transaction to the paper wallet's imported private key?


texts: can I use elements of the blockchain to protect the integrity of a leaderboard without central servers?

texts:
For a World of Warcraft community feature conception contest I've come up with something that involves a leaderboard. However, World of Warcraft addons are purely individual, so a centralize platform where a leaderboard is usually saved is not possible. Because of this, it would be trivial to fake the sending of leaderboard updates to the community.

I've been reading about the blockchain recently, and it seems like this might be a way to fix this. The blockchain can protect the integrity of Bitcoin transactions, so it seems like it might protect this. However, I'm not 100% sure.

My main concern is to avoid people abusing the leaderboard by giving themselves extra points. However, Bitcoin transactions are usually between 2 parties. Could the blockchain work with only positive transactions that only involve a single party?

Technical explanation: The general concept is that users can get points for completing certain challenges and compete with each other on a constantly updated leaderboard, similar to how some multiplayer games have a list of best players (cfr. Diablo 2). There are no rewards linked with the leaderboard beyond bragging rights.

The problem, however, is that leaderboards are susceptible to manipulation by malicious players unless they have enough verification that people actually achieved what they said they did. Most games fix this by having the leaderboard being hosted on a remote server where the game tells the server what happened and the server checks if the client could have done that.

However, in World of Warcraft, addons are local-only: you cannot configure an addon as a server to receive messages and do central validation. You can send messages from one addon client to other clients via a central addon message channel, but you cannot say "only send messages to this client", because the channel is not secured and any addon can register to listen to a channel. In addition, addons are written in human-readable LUA code and may not be obfuscated.

Because of this, it's easy for a malicious user to manipulate his addon and just spoof the messages. Or even write an addon that will send an autocomplete for every newly generated challenge. This is the problem with distributed leaderboards, they are easily manipulated because there is no verification of integrity.

However, from what I understand, Bitcoin has managed to fix this issue through the blockchain. Transactions are publicly logged, community consensus is required for transactions to be completed and the final state can by verified by anyone. However, the Bitcoin blockchain handles transactions between 2 parties, so there is always 2 sources for each transaction. Because of this, it's unlikely for any single user to be able to manipulate the blockchain.

However, with leaderboards, there are no multiple parties in a transaction. Each transaction is just a player receiving challenge points locally based on something that happens on their machine. So there is no second party that helps against manipulation. This is one of the reasons why I'm concerned the blockchain might not work for this.

Is there an aspect of the blockchain that can help defend against this? And if not, (although somewhat off-topic) is there a different method that could help defend against forgery?


texts: Consider Bitcoin Price goes down to $3000, what will be the effect on miners (will they stop mining) and the affect on difficulty to mine a Bitcoin?

texts:
Over a set period of time (around 10 mins for BTC), a number of transactions are compiled into a block by a miner, and then the block is verified on the general ledger and added to the list of blocks which make up the blockchain.

Consider the price of Bitcoin goes down to $3000, will this effect Mining operation go on?

What actually going to happen to the difficulty of solving problems in mining?

Thank you in advance.

Regards,

Raghu Ariga


texts: how fast does a Sapphire R9 280X Varpor-X Tri-X can and how can i calculate the bitcoin i can have pers day?

texts: as above i'm wondering that how fast (mh/s) can a R9 280X can and how can i calculate the bitcoin i can have per days because i'm newb to this mining


texts: Does the Longest Chain Always Win the Mining Award?

texts:
If the longest chain (i.e, the one that's the most difficult to produce or the most transactions) is always awarded with 12.5 coins (or whatever the current prize is), what happens if a specific node is aware of a certain set of transactions but doesn't broadcast them to  other nodes (the network) and includes them in it's own hash.

Wouldn't this automatically guarantee it will win the mining award?


texts: How to create an online Bitcoin account?

texts: I am new to the Bitcoin world. I want to know what are the procedures / steps to do in order to create a Bitcoin online account ? What are the popular Bitcoin online sites for creating an account ? For analogy for example with VISA cards there is www.paypal.com ; so what is for the Bitcoin ?


texts: Can you mine your own transactions yourself?

texts:
If no, why not? And is it you physically/theoretically or practically cannot?

If yes, is this ever practical and does anyone do it?
As I see it now, no matter what you are taking a fraction/subset of bitcoins entire hashing power so the difficulty of finding a nonce would take longer than 10 minutes to confirm.

As I see it, for this to be practical...
Block reward + saved fees > mining costs * time

Where saved fees are the result of not having to pay other miners fees since you are doing it yourself and time is the time it takes to find the nonce.
note: this miner wouldnt have to be running full time


texts:
SO i received this transaction from my other wallet
1)  https://blockchain.info/tx/06810d392213a7453bbe6ad4ab95c0892875b0db2b56b3db5ef942b0a42eced4
for 1.02BTC

and sent these for 1btc and 0.2btc while the previous transaction was unconfirmed:
2)  https://blockchain.info/tx/44f68a0987fe9dfe88045c977c5d66534a65ca399f0d2b27fec7c80785ddc759
3)  0.2 (similar to 2) )

Now suddenly from my other wallet automatically
 4)  a new transaction for the same value but different hash

and the transaction number 1) shows
 A conflicting transaction has been detected in our memory pool. The transaction hash displayed below may change.

Can you tell me when 1) will be confirmed, and are 2) and 3) dependent on 1).
How long until the transcation is unconfirmed that the bitcoin is refunded.
I have paid the fees for all transcations.
Pls help!


texts:
I tried configuring the bitcoin core test by editing the bitcoin.conf file with the required credentials.

Earlier, before the writing the test credentials it was a running full node.
now the error is

config settings for rpcport only applied on the test network when in [test] section.

(picture uploaded for reference)


texts: What was the most recent change to the official client that broke block validity?

texts:
There have been suggestions that various bitcoin protocol rules (max block size, mining reward policy, etc) could be changed in the future by everybody "agreeing to update their client".  The logistics of this are somewhat questionable.

Another question asked about the mechanics of such a change in the situation where people object to it.

I would like to know if there is any recent precedent for this that we could examine.  Specifically: have there ever been any changes to the official client version Y that would cause client version X to reject its blocks, where X < Y?  If so, what is the most recent such case?

I suspect there were probably a bunch of changes like this back in the early days when only a few dozen people were using bitcoin.  It would be interesting to know if it's happened more recently.


texts:
I have several multibit wallets I put in storage years ago, and I'd like to check if there's btc in them . I see wallet IDs for 'receive address'  in the .info files - if those show 0btc does this mean the wallet is empty? Or is the receive addr not where btc would be stored?
I'd like to verify there's actually something in there before banging my head against how to retrieve from what looks like an unsupported wallet type.
The dirs look like:
wallet1.info
wallet1.wallet
wallet1-data
    key-backup
    wallet-backup
    rolling-backup
    wallet-unenc-backup

and the .info files look like (for wallet1 in this case):
multiBit.info,1
walletVersion,3
receive,1GFM...RGdp,
property,walletDescription,wallet1
property,walletBackupFile,C%3A%5CUsers%5Cjeremy%5CDocuments%5C%5Cwallet1-data%5Crolling-backup%5Cwallet1-20131201123906.wallet
property,receiveAddress,1GFM...RGdp
property,receiveLabel,


texts: Is EFF's proposed Sovereign Key system similar to how Namecoin/Bitcoin works?

texts: To avoid the problems caused by the current SSL certificate infrastructure, the Electronic Frontier Foundation has proposed Sovereign Keys, which appears to be backed by a distributed, append-only datastructure that can grow to hundreds of gigabytes. That sounds awfully familiar to a block chain. Are there similarities between Sovereign Key and Bitcoin (or Namecoin)? Do they employ a related approach or is this just a superficial similarity?


texts: used Sending funds address to receive bitcoins

texts:
Is there any way to get bitcoins when i accidentally used Bitcoin Core's "send to address" to get them?

Blockchain.info shows that there is balance, but the client shows 0 BTC and dumpprivkey does not work either.


texts: HELP i sent btc from a tor wallet, The recipient hasnt recieved it

texts:
I have been on blockchain and seen the transaction into the tor wallet. https://blockchainbdgpzk.onion/address/1BMbBKshk9ihrQWMseoDt5bXJvQgQPeRkA?filter=5

my torwallet recieve address is     1BMbBKshk9ihrQWMseoDt5bXJvQgQPeRkA

How do I see what was sent out? As I sent out 2.55 btc, It went to an addy that has not changed so i desperately need to track this down. and see why it hasnt landed


texts: Access the NXT / Ardor database console?

texts: I want to do some queries on the H2 database. How can I access this console that lets me type in commands.


texts: Can I send bitcoins with my mobile phone?

texts: Is it possible to send and receive bitcoins with a mobile phone? If so, are there bitcoin clients for Android or iOS?


texts: How can I run Bitcoin Core with the -zapwallettxes option in Windows OS

texts:
I have been trying to run Bitcoin Core with -zapwallettxes option by starting the command line prompt, and typing (cmd.exe) Start bitcoin-qt with --zapwallettxes=1 but it keeps saying Windows cannot find bitcoin-qt. I am trying to remove a stuck transaction and have the bitcoins back in my wallet. Any help would be much appreciated.

James


texts: What public data sets are available that could used for correlation in bitcoin analytics?

texts: What data sets exist out there that can be used for engineers to perform statistical analysis against? Hopefully this data is not needing to be scraped, but is available in an importable format or API, though I am open to suggestions on data that APIs need to be written for.


texts:
Motivation

I don't want to have to have bitcoin-qt running.
I want the control and error handling capabilities that come when something is running as a service.
I want bitcoind to start when windows starts in the event of a server downage

Notes
I want to service main and testnet, which I think won't be an issue since afaik bitcoind listens on both ports. I'm just mentioning this for more information.


texts: How to check if a given address belong to an exchange

texts: Does any exchange provides any public information about its private keys managed BTC addresses, or is there any service that provides this information?


texts: Which mobile apps support swiping/importing private keys via QR code?

texts: The bitcoin.org site that provides a list of wallet clients doesn't clearly show which allow for importing bitcoin via a QR paper wallet. Does anyone know a location to see which support such features, or know of ones that work on mobile phones that clearly support swiping?


texts: How does a new node know where to connect to initially?

texts: Is there a default (centralized) set of IPs that a node connects to when it's just starting up for the first time, in order to get the list of other nodes' Ips? What happens if these initial IPs are down, blocked or banned?


texts: API for getting the Hash-of-thing-to-sign

texts:
Does anyone have, or have access to a simple API that can calculate the hashofthingtosign for old transactions along the blockchain?  I'm just looking for something simple to see what the "Hashofthingtosign" is or was for transactions along the blockchain.  One might even say this is a question of "how" do I do this, but it is well beyond me and is effectively a question of does anyone have one or know of one?

A simple API such as what is here; http://2coin.org/tx.asmx would be awesome (though I'm having a hard time accessing the website at this time).  It was just a simple thing; you paste the transaction ID and it can spit out the R value, the S value, and the hashofthingtosign by reading probably the info from blockchain.info or something like that.

I'm trying to better understand the algorithm that's used, but it seems like block explorers don't keep track of that variable nor have implemented a simple detail of just showing what it was.  I'm not asking for a huge program or something that would take someone weeks to do.  The complexities of creating even a python script to look up this variable for old transactions and calculate it are well beyond my capabilities.  Not to mention, without examples of the hashofthingtosign, how would I even be able to confirm whether I had done it correctly or not?


texts: BitcoinJ - How to Create a wallet properly. (seeds, etc...)

texts:
I'm learning this as fast as possible for a project. However the documentation, I find is lacking and/or not super super clear.

That said, Using BitcoinJ, I would like to know how to do the following:

1. Create a wallet

Send bitcoins to an address
Receive Bitcoins from an address
Synchronize the transaction with the wallet I have on disk.

For now, simply understanding how to CREATE the wallet. This involves the seed, etc... Ideally this can be via the WalletAppKit. But I'd like to learn either way of doing this as well. I know I can simply do: Wallet wallet = new Wallet(); BUT this feels inadequate. I should be providing it a seed or something more, which I'd be keeping private.

I added steps 2,3,4 above as these will be the other questions I need information on as I progress. For example, We'll say I already have a wallet. My app is offline, I then use an exchange and buy 1 bitcoin. When I start my app. How do I "synchronize" my wallet I have on disk, with the transaction that was performed. Thus Steps 3 and 4 might work hand in hand, since i'm receiving the bitcoins via "synchronizing", it means i'm receiving the bitcoins into my wallet which will then be saved to disk.

Once I know the answer on how to properly create the Wallet. I'll be curious what's the right way to send bitcoins to another address. Ie: WalletAppKit.wallet().SendTo, Should I be creating a transaction, or etc etc... But these can all be answered once I figure out the proper way for step 1.

Let me know if this is a bit more concise, and more detailed a question :-)

Thanks :D