AES加密,什么是更好的Javascript或Php

AES加密,什么是更好的Javascript或Php,php,javascript,aes,Php,Javascript,Aes,在PHP或Javascript中实现AES加密对web应用程序来说,什么更安全 我对PHP比较熟悉,我想使用对称算法来实现一个简单的表单,用户可以在这个表单中加密文本块和/或文件并将其存储在数据库中 用户以后可以使用相同的键检索文本或文件。 使用PHP POST/GET实现AES可能容易受到攻击? 为用户提供SHA-256(密钥)是否更好 是否有人能为这类任务提供正确的AES加密的良好在线实现 谢谢主要区别似乎是用户(浏览器)加密数据,还是您(服务器) 有了客户端加密,就有可能有一个“不信任任何

在PHP或Javascript中实现AES加密对web应用程序来说,什么更安全

我对PHP比较熟悉,我想使用对称算法来实现一个简单的表单,用户可以在这个表单中加密文本块和/或文件并将其存储在数据库中

用户以后可以使用相同的键检索文本或文件。

使用PHP POST/GET实现AES可能容易受到攻击? 为用户提供SHA-256(密钥)是否更好

是否有人能为这类任务提供正确的AES加密的良好在线实现


谢谢

主要区别似乎是用户(浏览器)加密数据,还是您(服务器)

有了客户端加密,就有可能有一个“不信任任何人”的系统,服务器操作员无法访问用户的数据。当然,这也使得无法恢复丢失的密钥,无法提供搜索或共享服务


但是请看@SLaks的评论,如果你盲目信任网站发送给你的Javascript,你就不可能安全。如果这真的很重要,那么经过审查和签名的本机客户端应用程序可能是更好(但不太方便)的解决方案。

安全性很难。如果不学习更多的密码学知识,你就无法创建一个安全的系统。嗯?如果用另一种语言实现,同一个算法怎么会更安全呢?为什么要用JS加密任何东西?重点是什么?@N.B:那么用户不必信任服务器来保守密钥秘密。用户隐私是第一位的。我希望加密发生在不易受攻击的阶段,我不介意服务器操作员无法读取用户的数据。至于丢失的钥匙,提供搜索不是强制性的。我只想要一个用户的保险库。他存储一条文本,然后接收一个密钥。只有拥有该密钥的人才能读取文本。
通过客户端加密,可以拥有“不信任任何人”系统。不。用户必须信任页面中运行的每一个JS(包括分析内容),以及每一个浏览器扩展。@SLaks:好吧,他可以在理论上审查它。尤其是分析,阻止它是微不足道的。但是是的,这是一个问题,“Javascript陷阱”@蒂洛:没有;他仍然容易受到任何对其服务器或CDN具有写访问权限的人的攻击。@SLaks:Javascript的加密摘要可以防止在经过审查后被弄乱。