Elliptic-Curves

使用隨機數生成器生成 ECDSA 密鑰的算法

  • February 7, 2018

我有一個經過認證的隨機數生成器(TRNG,問題是什麼都沒關係)。

我想將其用作生成 secp384r1 ECDSA 密鑰的源。我應該使用什麼算法?可能嗎?

我知道實現自己的加密算法通常不是一個好主意,那麼有沒有可以用於此的庫?(類似於充氣城堡?)

許多庫允許您指定自己的隨機數生成器。例如,在 BouncyCastle 中,您可以在SecureRandominitialize方法中KeyPairGenerator指定 a ;io.Reader而在 Go 中,您可以為GenerateKey函式指定 a 。

因此,假設您的 TRNG 實際上產生均勻分佈的隨機輸出,您將需要編寫一個實現SecureRandom或從 TRNG 讀取指定字節數的類。io.Reader但是要小心,如果你把它搞砸了,你的系統的整個安全性就會受到損害。

(一種更安全的方法是製作一個從 TRNG 讀取並寫入的程序/dev/random,混合系統 PRNG,假設它是 Linux)

引用自:https://crypto.stackexchange.com/questions/55417