Creating a BTC Gateway with ATM Network
We have a ATM Network and we want to sell and buy BTC or ETH on our ATMs, using our own switch. How can we do it?
We have a ATM Network and we want to sell and buy BTC or ETH on our ATMs, using our own switch. How can we do it?
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?
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.
Screenshots
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?
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?
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.
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 (blockchain.info, tradeblock.com). 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
Thanks
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
01000000018be9d0e99e74d69d915e105db1328707f713d42a894909b18a78fe68e1d8290c0000000023210340165231215a98e7a32abce9d410ecd09ac505938b25f9451defa051d591ebf8acffffffff0218ee052a010000001976a9143eb52fb0be4be87edc74848b371547f663e26c7e88ac0000000000000000226a408973d6b447bdda5312b1ef1b5509668672296301dd328d4e55317def98f165d200000000
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
cheers
Chris
PS:
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
I received an email from a company about a payment,but my wallet has not received it.my wallet does not show any transactions,even unconfirmed transactions.what should I do?Thank you.
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.