4

Here are a few I'd recommend: https://bitcore.io/playground/#/address (private key - public key) https://brainwalletx.github.io/#generator (signing and verifying but bitcoin specific) Or play with pybitcointools at the command line (not online): $ git clone https://github.com/vbuterin/pybitcointools.git $ cd pybitcointools $ python >>> from ...


3

closest I can come up with are these: http://coinig.com/ http://gobittest.appspot.com/Address https://www.bitaddress.org/bitaddress.org-v3.2.0-SHA256-ad4fd171c647772aa76d0ce828731b01ca586596275d43a94008766b758e8736.html https://coinb.in/ not exactly ECDSA, but served me alot for Bitcoin undertsanding/testing. Security hint: you would never provide/...


3

You're seeing the effect of RFC6979. When generating a signature, some randomness is needed (called the nonce), as there are multiple valid signatures for the same message/key pair. The algorithm used, ECDSA, is extraordinarily vulnerable to weak randomness. An attacker who knows just a slight bit of information about your nonces can learn your private key ...


3

The final hash verification is the same one done in mining. The difference it's that is done just once, while in mining it's done lots of times, until the miner finds a hash on the target difficult. It's similar to checking a database of pictures of stores to tell if there's one that's a pizzeria. You look to hundreds, even thousands of random pictures, ...


2

A Trezor signed message with a 3 address can be verified here: https://jhoenicke.github.io/brainwallet.github.io/#verify Or your can verify it with another Trezor wallet.


2

Bitcoin transactions use DER format for the signature (plus sighash byte), but bitcoin messages use 'plain' format (aka P1363, CVC, PKCS11, Microsoft, JWS and more) (plus recovery byte). The computation of the r,s values in an ECDSA (which as Oscar correctly commented are not a point) is the same either way, but the data being signed for a message can never ...


2

When you import an address as a 'watch only' address, it means exactly that: you can only 'watch' the address and see whatever funds are sitting in it. You cannot send transactions, or sign messages, with a watch only address. This is because you just imported the address into your wallet, whereas if you imported the private key, then you would be able to ...


1

You can just use the pruning, which lowers the required storage size to 550 MB. Other than that, you don't need a strong computer. It can run on a Raspberry Pi 3 B+ without any problems (but it won't be able to keep a full mempool).


1

There is no established standard (yet) for signatures with addresses other than P2PKH (1...) addresses. So whatever signature you created, it will only verify against the corresponding P2PKH address. There is some ongoing discussion about new message signatures for this purpose, but nothing concrete.


1

Electrum provides signmessage and verifymessage commands that you can use to sign and verify messages. For signing messages with a different private key, you will need to import it into the wallet. Verifying a message does not require any additional work.


1

Here is an ECC calculator for the Secp256k1 curve that I'm programming in Java. https://github.com/MrMaxweII/Secp256k1-Calculator


1

You don't need all of bitcoind just for this functionality. Look at the code on the brainwallet.org page you posted: http://brainwallet.org/js/bitcoinsig.js It seems like you could take this exact code and implement it on the server-side with a JavaScript interpreter such as node.js. It depends on the programming language you're using but I'm sure this ...


1

There is nothing you need to do to get your 6 verifications but wait. Approximately every 10 minutes, a new block will be solved that should include your transaction. Once your transaction is in a block, your client will show 1 of 6 verifications. Now you simply need to wait until 5 more blocks are solved. Once this happens, your client will no longer ...


1

There are two distinct concepts here, confirmation and message verification. Confirmation is a process by which transactions are confirmed as authentic and permanent by miners on the Bitcoin network. Once a transaction is made, it will automatically accumulate confirmations over time without any further action on your part (and the the number you see when ...


Only top voted, non community-wiki answers of a minimum length are eligible