安全地将文件从客户端传输到服务器

时间:2012-03-08 09:59:55

标签: php android cryptography

我正在将加密文件从Android手机上传到服务器并解密服务器端的同一文件。

客户端:使用HTTP post将文件发送到服务器 服务器:PHP 加密:三重DES

我在客户端和服务器端硬编码了密钥和iv。有没有想法如何使用密钥和iv,以便传输是高度安全的?

谢谢!

2 个答案:

答案 0 :(得分:3)

没有。如果将对称密钥硬编码到在不受信任的设备上运行的客户端应用程序,则它实际上根本不加密。攻击者可以从他的应用程序中提取密钥,并解密所有其他传输。

只需将https与您服务器对应的单个受信任根公钥一起使用即可。

答案 1 :(得分:0)

如果android在发送文件之前立即对文件进行加密,并且服务器在收到文件时对其进行解密,那么您应该只使用SSL / TLS / HTTPS。

硬编码键或IV是非常糟糕的做法。如果您在应用程序中对密钥进行硬编码,那么任何可以获取二进制文件的人都可以使用密钥并读取该消息。如果您对IV进行硬编码,即使没有密钥的人也可以做某事(IV可以是公开的,但它们必须是随机的)