Author

Topic: SHA256 recognizing signer (Read 385 times)

hero member
Activity: 784
Merit: 1416
August 18, 2017, 03:00:54 AM
#5

thanks to clarify that.

I read in bitcoin or other coins, a transaction is accepted when other nodes recognize that the public key (address) and the hashed transaction itself were signed with the same key.

I'm interested in how this is done in specific, i guess i should look up for ECDSA now. Thats why i was not finding anything  Undecided

If you can still point me to some code sample / documents you know would be appreciated.

Thanks

To be honest, I think the easiest resource for this is likely just Wikipedia: https://en.wikipedia.org/wiki/Elliptic_Curve_Digital_Signature_Algorithm

It outlines both the signature generation algorithm, and the signature verification algorithm.

If you really want to look at some code, here's a Python module dealing with the signature verification: https://github.com/nanotube/supybot-bitcoin-marketmonitor/blob/master/GPG/local/bitcoinsig.py
You can look through the code, but I don't think it will be easily understood.

that python code is quite something Smiley

ill start to read to read how the algorithm is working in general then, thanks for your help!
legendary
Activity: 1120
Merit: 1038
August 18, 2017, 02:08:26 AM
#4

thanks to clarify that.

I read in bitcoin or other coins, a transaction is accepted when other nodes recognize that the public key (address) and the hashed transaction itself were signed with the same key.

I'm interested in how this is done in specific, i guess i should look up for ECDSA now. Thats why i was not finding anything  Undecided

If you can still point me to some code sample / documents you know would be appreciated.

Thanks

To be honest, I think the easiest resource for this is likely just Wikipedia: https://en.wikipedia.org/wiki/Elliptic_Curve_Digital_Signature_Algorithm

It outlines both the signature generation algorithm, and the signature verification algorithm.

If you really want to look at some code, here's a Python module dealing with the signature verification: https://github.com/nanotube/supybot-bitcoin-marketmonitor/blob/master/GPG/local/bitcoinsig.py
You can look through the code, but I don't think it will be easily understood.
hero member
Activity: 784
Merit: 1416
August 18, 2017, 01:02:54 AM
#3
I think you've misunderstood what SHA-256 is.
SHA is a hash function, ie: it takes one value (a message), and outputs one value (a hash). There is no key involved.

Bitcoin signature uses ECDSA, there's stuff like PGP which uses RSA/DSA. But no, SHA256 does not allow for signatures.
The closest I can think of, is when a website publishes a SHA checksum for a file, allowing you to verify that the file was not maliciously altered.

Maybe explain your specific situation more, that might help others figure out what you're looking for.

thanks to clarify that.

I read in bitcoin or other coins, a transaction is accepted when other nodes recognize that the public key (address) and the hashed transaction itself were signed with the same key.

I'm interested in how this is done in specific, i guess i should look up for ECDSA now. Thats why i was not finding anything  Undecided

If you can still point me to some code sample / documents you know would be appreciated.

Thanks
legendary
Activity: 1120
Merit: 1038
August 18, 2017, 12:49:50 AM
#2
I think you've misunderstood what SHA-256 is.
SHA is a hash function, ie: it takes one value (a message), and outputs one value (a hash). There is no key involved.

Bitcoin signature uses ECDSA, there's stuff like PGP which uses RSA/DSA. But no, SHA256 does not allow for signatures.
The closest I can think of, is when a website publishes a SHA checksum for a file, allowing you to verify that the file was not maliciously altered.

Maybe explain your specific situation more, that might help others figure out what you're looking for.
hero member
Activity: 784
Merit: 1416
August 18, 2017, 12:44:13 AM
#1
Hi,

Anybody has some material/code snippet/example explaining how given multiple signed messages (using SHA256), we can determine which were signed with the same key?

Thanks
Jump to: