我的服务器有AES-NI和我想要tomcat 7利用这一点,但我真的不知道如何做到这一点,甚至从哪里开始寻找。我非常熟悉tomcat的管理,并且了解tomcat提供的各种连接器。Tomcat运行在CentOS 6.3和OracleJava7更新15上。
以下是我的一些问题。
发布于 2013-02-21 16:41:02
让我回答你最后一个问题。不,AES-NI不会显著提高您的SSL性能.具有AES-NI指令的CPU可以在不使用这些指令的情况下以超过120 MB/s (服务器上可能超过200 MB/s )的速率加密数据,即是100 MBit/a以太网所能提供的10 (或20)倍以上。相应地,在最好的情况下,最好的选择就是在CPU上节省不到10% (或5%),因为AES的硬件实现非常高效。这不是“重要的”。由于您使用Tomcat来处理数据,所以我非常怀疑AES的加密成本在您的服务器上是否可以检测到。当然,使用AES-NI处理器可以以15倍的速度加密,但是既然加密已经使用了可忽略不计的CPU总量,那么有什么意义呢?
一个被广泛引用的数据点是谷歌在他们将Gmail转换为站点范围的SSL.的时候说的:他们测量到CPU负载增加了一个微小的+1%。当然,对每个请求的站点类型和处理量可能会有不同的影响,但是我们可以记住这一点: SSL很便宜。降低成本不会带来巨大的收益。
现在,对于您的其他问题,应该自动选择使用AES-NI指令的AES的实现(而不需要您的任何配置),如果以下所有内容都是正确的:
因此,如果您在mod_ssl后面使用Tomcat (在Apache中),并且您的本地OpenSSL库是最近的,那么您已经从AES-NI优点中受益了。如果您使用Tomcat本身进行SSL (因此依赖于Java的内部加密),那么您很可能会得到一些Java代码,这些代码并不能从AES-NI中获益--但这将值得研究(即基准测试)。我的观点是,这将不会产生任何可衡量的差异,无论如何,所以这一点是没有意义的。
https://security.stackexchange.com/questions/31236
复制相似问题