How were the secp256k1 base point coordinates decided?

79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798,483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8 seems very random to me. I see how this point is on the curve, but how exactly was this specific point chosen to be the base point? Could other base points have worked?

How can I accelerate confirmations in ledger nano s?

I am using Ledger Nano S hardware wallet to store my bitcoins. Last week, for an experiment, I decided to send bitcoins to hitbtc currency exchange with zero btc fees. I was wondering how many hours will it take to transaction to be completed, but it turns out that transaction will never be completed with zero fee. I try to accelerate the procedure with ledger nano s option, but it failed many times as well. I am looking at my balance in blockchainfo, it looks like I have all the coins in my wallet, is not sent anywhere, but I cannot see the same balance in my ledger wallet. So does anyone know how can I access to my bitcoins? Thanks.


enter image description here

enter image description here

Double spending on testnet or regtest?

I’m currently doing a research on bitcoin and I would like to know if there is anyway to replicate double spending in the testnet or regtest? If isn’t possible is there any other type of “attacks” that can be replicated?

Unable to create raw transaction with json-rpc command

I am trying create a coinbase transaction with the command:

{"jsonrpc": "1.0", "id":"jsonrpc", "method":"createrawtransaction", "params":[{"txid":"0000000000000000000000000000000000000000000000000000000000000000","vout":0xFFFFFFFF}] {1Ka3q3DVTBNBo2c4kVGMNzbd32RARV1FbA:25.00} }

but I am getting the following response:

{"result":null,"error":{"code":-32700,"message":"Parse error"},"id":null}

the same happens when I try with:

{"jsonrpc": "1.0", "id":"jsonrpc", "method":"createrawtransaction", "params":[{"txid":0000000000000000000000000000000000000000000000000000000000000000,"vout":0xFFFFFFFF}] {1Ka3q3DVTBNBo2c4kVGMNzbd32RARV1FbA:25.00} }

when I use the Debug window (in the bitcoin-qt application), I get Error: Error parsing JSON:[{txid:0000000000000000000000000000000000000000000000000000000000000000 and Method not found (code -32601) respectively.

Someone can tell what’s wrong here?

how to import my wallet from into bitcoin-qt?

I have read the related discussions about how to import a wallet and though they are close, the answers does not help with this problem so I’m asking it here and now.

I have my bitcoin public address which was given to me by blockchain website when i registered, and the secret 12 words passphrase, and the blockchain wallet ID and my password for blockchain website. I can’t login to the blockchain website because it sends a 2FA key to an old email for which I lost my password a long time ago. I have been asking for blockchain support because I can easily prove I am the account owner but I got no answer so far.

So, I’m looking to solve this problem. I’m running Linux Mint and I would like to import by bitcoin wallet into bitcoin-qt client. I know I need to use importprivkey into the debug console but I don’t know how to get my private key since I can’t login to blockchain website.

Many thanks for any help.

(RBF) double spend transaction not showing up in searches

On my first ever attempt to send my mined bitcoins from my wallet to a bitcoin exchange site I underestimated the transaction fee that would be required to get the transaction processed. So, following online advice, I posted a RBF double spend by using Bitcoin Core’s Abandon Transaction and then attempted to send a duplicate sized amount to the same address as before but with a larger transaction fee. It all looks correct on my Bitcoin Core client but the transaction ID does not show up on any site that I try (, The original (low fee)transaction still appears when I search for it however.

Do I just have to keep waiting or is there another issue and if so, how can I solve it?

This is the transaction id: b124aa23debcae71ca41972dbeff9327160ed092bd54a4be616b6613cfa9161b


manually signing bitcoin transaction

I’m trying to create a BTC transaction with one input and two outputs, one for change and one OP_RETURN to anchor data. And I’m doing all of that on my regtest backend. The raw unsigned transaction is


I can then use the bitcoin rpc to sign it and it works, so I’m pretty certain that this part is correct. When I however try to sign it manually I get the error

500: {"result":null,"error":{"code":-26,"message":"16: mandatory-script-verify-flag-failed (Non-canonical DER signature)"},"id":2}

I’ve followed the steps outlined in How to redeem a basic Tx? as well as Signing a raw transaction with Python ECDSA (or OpenSSL) as well as attempted to use pybitcointools to sign the input without success.

The address and private key I use are

addr: "mmEXEzUGcMmmiLsfxxM8gB8TQSTkuR1drf"
pk:  "cTyF9pebH3kwwzUt5gzaxSDQ1DbqYfx4P1i4d1TyjtSDEeUFgYsk"

and stragely, even though the PK is the one given to me by ./bitcoin-cli -regtest dumpprivkey <addr> does not seem to match the address and I’m not sure why or what it is I need to do to it (it’s in WIF format and compressed, i.e. 0x01 appended to the end

The original TX includes the scriptPubKey of the utxo. I then double sha256 the whole raw tx (shown above) and replace the scriptPubKey part with the sigScript | pubkey using the following code:

private_key, compressed_pk = wif_to_private_key(private_key_wif)
tx = bytearray.fromhex(raw_unsigned_transaction) + int(1).to_bytes(4, 'little')

double_sha256_tx = hashlib.sha256(hashlib.sha256(tx).digest()).digest()
signing_key = ecdsa.SigningKey.from_string(bytearray.fromhex(private_key), curve=ecdsa.SECP256k1)
public_key = bytearray.fromhex(privtopub(private_key_wif))
signature = signing_key.sign_digest(double_sha256_tx, sigencode=ecdsa.util.sigencode_der) + int(1).to_bytes(1, 'little')
scriptSig = to_varstr(signature) + to_varstr(public_key)

to_varstr simply prints [len]|[data] and privtopub is the function from pybitcointools as I couldn’t figure out how to go from the compressed private key to the address manually. It’s worth noting though that the public_key here that privtoaddr from pybitcointools does not return the correct address either which might be the root cause of the issue?

I’d be grateful for any pointers or things to try


another interesting aspect is that the signed transaction I generate is a lot longer than the one generated by the signtransaction rpc call:

rpc:    01000000018be9d0e99e74d69d915e105db1328707f713d42a894909b18a78fe68e1d8290c0000000023210340165231215a98e7a32abce9d410ecd09ac505938b25f9451defa051d591ebf8acffffffff0218ee052a010000001976a9143eb52fb0be4be87edc74848b371547f663e26c7e88ac0000000000000000226a40ac4f0818b683eeeaa1fbf2f508af2fc22cc814e69025152c70d7c414ebbfc30a00000000
manual: 01000000018be9d0e99e74d69d915e105db1328707f713d42a894909b18a78fe68e1d8290c000000006b483045022100d6e538aa819f3162d5c6a0e4d9ee0323395df89e943c769d96ae939baec5c6920220083a311cb35df3c98d7a6bd0bc80d98a71fbdf8e325ba908ea4b721a4eac8bb301210343395a6e84c7f2b1d50c11f96783664a6f04d66b51befb3befcc57334e2a9abcffffffff0218ee052a010000001976a9143eb52fb0be4be87edc74848b371547f663e26c7e88ac0000000000000000226a40ac4f0818b683eeeaa1fbf2f508af2fc22cc814e69025152c70d7c414ebbfc30a00000000

Payment not received

I received an email from a company about a payment,but my wallet has not received wallet does not show any transactions,even unconfirmed transactions.what should I do?Thank you.

Mycelium Backup Restore

Is there a way I can restore my mycelium Bitcoin wallet if I have forgotten the 12-word list?

I have searched everywhere and no one describes a situation like this.