# <center><i class="fa fa-edit"></i> 1.3 Digital Signatures </center>
###### tags: `Blockchain`
The following notes are taken from [Coursera](https://www.coursera.org/learn/cryptocurrency/home/week/2)
---
### Requirements
1. Only I can sign, anyone can verify
2. Tied to a particular doc (no cut and paste)
### API
:::info
(sk, pk) := generateKeys(keysize)
- sk: secret signing key
- pk: public key
sig := sign(sk, message)
isValid := verify(pk, message, sig)
(sk, pk) and sig can be randomized algorithms
:::
- ECDSA (Bitcoin's Digital Signature Scheme)
- Good with randomness