2009-08-03 13:05
浏览 206


I am interested in help selecting one of the common symmetric encryption algorithms (Twofish, AES, etc) based on performance criteria (fastest encryption/decryption). We are currently leaning toward AES, but since the communications we are sending back and forth don't really need that level of encryption, a less secure algorithm would be acceptable for a performance gain.

We will be using the selected algorithm to encrypt/decrypt messages (should be no longer than 200 characters) that are being sent between the client and server (Javascript client and PHP on the server) over HTTPS. The speed of the algorithm is important because the encryption/decryption process will need to keep up with messages as they arrive/depart via sockets on the server.

I have found one site that has benchmarks for encryption and I plan to do my own testing, but I was hoping for input from SO on selecting an encryption for speed. Thanks in advance for any help.

EDIT: Please note that the message will not be sent over HTTPS, they will be sent over HTTP

图片转代码服务由CSDN问答提供 功能建议

我感兴趣的是帮助根据性能标准选择一种常见的对称加密算法(Twofish,AES等) (最快的加密/解密)。 我们目前倾向于使用AES,但由于我们来回发送的通信并不真正需要这种级别的加密,因此性能增益不太可靠。

我们将使用所选算法来加密/解密在客户端和服务器之间发送的消息(不应超过200个字符)(服务器上的Javascript客户端和PHP) over HTTPS 。 算法的速度很重要,因为加密/解密过程需要在消息通过服务器上的套接字到达/离开时跟上。

我找到了一个网站,它有加密基准,我打算做自己的测试,但我希望得到来自SO的输入 为速度选择加密。 提前感谢您的任何帮助。

编辑:请注意,消息将通过HTTPS发送,它们将通过HTTP发送 \ n

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • duanben1324 2009-08-03 14:05

    It depends on the implementation. One of the reasons Rijndael was the final chosen AES algorithm was due to speed, size and simplicity, so most implementations will be good but other implementations may be slower.

    Choose your implementation, then benchmark. If you're looking at rolling-your-own implementation, then your benchmark figures may be completely different from what other third-party implementations.

    点赞 打赏 评论
  • dongshan2680 2009-08-03 14:02

    It would be way faster, easier and reliable (security-wise) to use HTTPS encryption for your transfers. It's completely transparent on the client-side, and will most likely have way better performances than your Javascript AES decrypting code.

    点赞 打赏 评论