Compute signing nonce using RFC6979.
(key)
| 328 | return random.randrange(1, SECP256K1_ORDER).to_bytes(32, 'big') |
| 329 | |
| 330 | def rfc6979_nonce(key): |
| 331 | """Compute signing nonce using RFC6979.""" |
| 332 | v = bytes([1] * 32) |
| 333 | k = bytes([0] * 32) |
| 334 | k = hmac.new(k, v + b"\x00" + key, 'sha256').digest() |
| 335 | v = hmac.new(k, v, 'sha256').digest() |
| 336 | k = hmac.new(k, v + b"\x01" + key, 'sha256').digest() |
| 337 | v = hmac.new(k, v, 'sha256').digest() |
| 338 | return hmac.new(k, v, 'sha256').digest() |
| 339 | |
| 340 | class ECKey(): |
| 341 | """A secp256k1 private key""" |