2

I realize that this question may be borderline bannable because it's asking for suggestions on tools, but it will really help newbies. This online tool allowed me to play around with hashes and to really understand them at a deeper level: http://www.fileformat.info/tool/hash.htm

I can't find a similar tool (that works) for ECDSA cryptography where I can play around with public and private keys, and do digital signatures on messages, and test signature verification.

I've found these 2 sites that claim to do this but didn't work for me:

  1. http://dbis.rwth-aachen.de/~renzel/mobsos/lib/js/jsrsasign/sample-ecdsa.html

  2. http://extranet.cryptomathic.com/ecc/index

Thoughts? Suggestions?


UPDATE: Great suggestions below. Some tools I found:

for hashing: http://www.fileformat.info/tool/hash.htm

generating public private key pairs and decrypting ciphers: https://8gwifi.org/rsafunctions.jsp

Generating EC public private key pairs and signing Verifying the Message https://8gwifi.org/ecsignverify.jsp

generating public private key pairs and testing signing: https://kjur.github.io/jsrsasign/sample/sample-ecdsa.html

3

Here are a few I'd recommend:

Or play with pybitcointools at the command line (not online):

$ git clone https://github.com/vbuterin/pybitcointools.git
$ cd pybitcointools
$ python
>>> from bitcoin import *
>>> sk = random_key()  # Generate a private key
>>> vk = privtopub(sk) # Generate a public key
>>> msg = 'hello world' # Create a simple message
>>> sig = ecdsa_sign(msg, sk) # Sign the message using your private key
>>> print sig
GxXGAt...2L/eJk=
>>> print ecdsa_verify(msg, sig, vk) # Use sig and public key to verify
True
>>> msg = 'hello mars' # Change the message
>>> print ecdsa_verify(msg, sig, vk) # Changing the msg invalidates sig
False

http://showterm.io/203b168061b0156c4d1dd

HD Wallet stuff:

If you're looking to learn more about ECDSA suggest checking out: https://jeremykun.com/2014/02/08/introducing-elliptic-curves/

  • Question: In the first link (bitcore.io), they provide a private-public key pair, and an 'Address'. I presume the 'Address' is the SHA-256 hash of the public key. But when I try to hash the public key on this site (fileformat.info/tool/hash.htm) I don't get the same SHA-256 hash. Could you help me understand what the 'Address' is in that case? – thanks_in_advance May 22 '17 at 5:28
  • 1
    Address creation is a bit more complicated. It's really a series of steps as shown here: gobittest.appspot.com/Address. Though there are two types (compressed vs. uncompressed) and I believe you will get different addresses if you use the gobittest vs. bitcore. – Justin O'Brien May 24 '17 at 2:10
  • 1
    Using this private key: 2b1f14de0bc7b8d71a6409749e9e88d6e227c6516943713ed08448343722ae85 Bitcore generates: 1JmAEL8KbzVXFc15KUb9YXjgTop321WiC6 Gobittest generates: 1JsnjS7t8JW5CDi1UMwp6BSG2rJ3Xm94BF For more see: github.com/bitcoin-bootcamp/bitcoin-exercises/tree/master/… $ python address.py --secret '2b1...e85' Bitcoin Address (Compressed): 1JmAEL8KbzVXFc15KUb9YXjgTop321WiC6 $ python address.py --secret '2b1...e85' --u Bitcoin Address (Uncompressed): 1JsnjS7t8JW5CDi1UMwp6BSG2rJ3Xm94BF – Justin O'Brien May 24 '17 at 2:18
  • Interesting - good to know. I thought a bitcoin address was simply the hash of a public key. Turns out it's more complicated. – thanks_in_advance May 24 '17 at 12:17
2

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/use a private key to/from such a public website, unless you are really sure of what you are doing. Be extremly careful.

  • The first link lets me verify a public key + message + signature combination. Do you know of some online site that will generate a signature given a private key and a message (just for playing around purposes of course -- your fair warning is very apt). – thanks_in_advance May 16 '17 at 1:05
  • 1
    no, I don't know a webpage that provides this ... when I was playing with signatures, I used the command line: bitcoin.stackexchange.com/questions/46455/… – pebwindkraft May 16 '17 at 9:44
1

Here's a site that lets you play around with ECDSA.

https://crypto-utils.com/

0

You can try this one also (available as Docker image for offline usage): https://keytool.online/

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.