我写了一个一次性的pad加密模块,也可以生成pad。我已经读过Haskell带有某种加密安全随机数生成器,其模块名称包含" Crypto"。所以我使用GHCi并键入" import"和选项卡显示所有可能的导入。没有Crypto模块,只有普通的Random。我明确地尝试导入" System.Crypto"然后,只是" Crypto&#34 ;;没运气。我在自动完成的结果上使用Power Shell执行文本搜索,但它找不到适用的条目。加密随机数生成器在哪里?如果我没有它,我在哪里可以得到它?我在想象吗?
详细说明:
GHCi
version 7.6.3
Windows 7
答案 0 :(得分:4)
Haskell 不"来"一个加密安全的随机数生成器,如果你的意思是它应该包含在Haskell平台中。
Searching for "crypto" on Hackage会抛出许多可以与Cabal一起安装的软件包。我并不精通这些,但顶级crypto-random
看起来很有前途。但这并不一定意味着很多。虽然Hackage是找到Haskell大多数东西的地方,但遗憾的是它还没有 具有很好的功能来找出它的哪些包真的是高质量的。 (由于新的Hackage 2实现比旧的实现灵活得多,所以预计会有所改进。)
答案 1 :(得分:-1)
如果您安装了Haskell平台,则可以找到开箱即用here的所有库。
我发现有一个System.Random包,它有一个全局随机数生成器。全局随机数生成器以某种依赖于系统的方式自动初始化,例如,通过使用时间或Linux的内核随机数生成器。
或者您可以使用cabal install
之类的其他套餐,例如crypto-api。