People often ask me "How did you learn how to hack?" The answer: by reading. This page is a collection of the blog posts and other articles that I have accumulated over the years of my journey. Enjoy!
Ed25519. The wallet stores a 64-byte extended secret key that is split into a signing scalar, and a secret nonce prefix. The nonce is derived by hashing the nonce with the transaction body together. r = SHA512(M). Notably, the blockchain has no way to determine that the nonce was insecurely generated or not. For details on how to recover the key, read this part of the article.cardano-serialization-lib under the hood. In a rewrite to the SDK to do it in-house, the per-user secret nonce was not included in the hash, leading to the bug. They were planning on doing an audit post release but this doesn't help very much.