【问题标题】:How does crypto library in Go compare to OpenSSL?Go 中的加密库与 OpenSSL 相比如何?
【发布时间】:2013-09-16 05:52:57
【问题描述】:
在生产代码中使用它是否足够安全?特别是作为 TLS 客户端。
如果没有,是否有记录从 Go 调用 OpenSSL 库的方法?
【问题讨论】:
标签:
cryptography
openssl
go
【解决方案1】:
来自http://blog.golang.org/a-conversation-with-the-go-team:
在邮件列表中,Adam Langley 声明 TLS 代码没有
已被外部团体审查,因此不应用于
生产。是否有计划审查代码?一个很好的安全
并发 TLS 的实现会非常好。
Adam:众所周知,密码学很容易在微妙和
令人惊讶的方式,我只是人类。我觉得我不能保证
Go 的 TLS 代码完美无缺,我不想歪曲它。
已知代码有几个地方
边信道问题:RSA 代码是盲目的,但不是恒定的时间,
P-224 以外的椭圆曲线不是常数时间和 Lucky13
攻击可能有效。我希望在 Go 1.2 中解决后两者
具有恒定时间 P-256 实施和 AES-GCM 的时间框架。
然而,没有人上前对 TLS 堆栈进行审查,并且
我还没有调查我们是否可以让 Matasano 或类似的事情做
它。这取决于 Google 是否愿意为其提供资金。
众所周知,它容易受到某些侧信道攻击,所以不,它可能还不够好。