Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update Dead link #1194

Open
wants to merge 1 commit into
base: develop
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
4 changes: 2 additions & 2 deletions 06transactions.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -482,7 +482,7 @@ image::images/published_contract_transactions.png["Etherscan showing the transac
[[ecdsa]]
==== The Elliptic Curve Digital Signature Algorithm

((("digital signatures","ECDSA and")))((("Elliptic Curve Digital Signature Algorithm (ECDSA)","about")))The digital signature algorithm used in Ethereum is the _Elliptic Curve Digital Signature Algorithm_ (ECDSA). It's based on elliptic curve private–public key pairs, as described in <<elliptic_curve>>.
((("digital signatures","ECDSA and")))((("Elliptic Curve Digital Signature Algorithm (ECDSA)","about")))The digital signature algorithm used in Ethereum is the _Elliptic Curve Digital Signature Algorithm_ (ECDSA). It's based on elliptic curve private–public key pairs, as described in https://en.wikipedia.org/wiki/Elliptic_curve[Elliptic Curve].

A digital signature serves three purposes in Ethereum (see the following sidebar). First, the signature proves that the owner of the private key, who is by implication the owner of an Ethereum account, has _authorized_ the spending of ether, or execution of a contract. ((("non-repudiation")))Secondly, it guarantees _non-repudiation_: the proof of authorization is undeniable. Thirdly, the signature proves that the transaction data has not been and _cannot be modified_ by anyone after the transaction has been signed.

Expand Down Expand Up @@ -577,7 +577,7 @@ The signature verification algorithm takes the message (i.e., a hash of the tran

((("ephemeral private key")))The signature algorithm first generates an _ephemeral_ (temporary) private key in a cryptographically secure way. This temporary key is used in the calculation of the _r_ and _s_ values to ensure that the sender's actual private key can't be calculated by attackers watching signed transactions on the Ethereum network.

As we know from <<pubkey>>, the ephemeral private key is used to derive the corresponding (ephemeral) public key, so we have:
As we know from https://en.wikipedia.org/wiki/Public-key_cryptography[pubkey], the ephemeral private key is used to derive the corresponding (ephemeral) public key, so we have:

* A cryptographically secure random number _q_, which is used as the ephemeral private key
* The corresponding ephemeral public key _Q_, generated from _q_ and the elliptic curve generator point _G_
Expand Down