我在GHCI尝试这个功能,
import Data.ByteString.Char8
import Crypto.PubKey.ECIES
import Crypto.ECC
import Data.Proxy
curve = Proxy :: Proxy Curve_X448
str = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
seed = Data.ByteString.Char8.pack str
d = decodePoint curve seed
d
但它给出了一个错误CryptoFailed CryptoError_PublicKeySizeInvalid
,什么应该是str
的大小?
对于X448曲线,顾名思义,密钥大小应为448位,或56字节:
-- import ...
curve = Proxy :: Proxy Curve_X448
seed = Data.ByteString.Char8.replicate 56 'a'
d = decodePoint curve seed
d
打印出来:
CryptoPassed (PublicKey "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")