gpt4 book ai didi

php - 如何在 C++ 中加密数据并在 PHP 中解密?

转载 作者:行者123 更新时间:2023-11-28 05:39:23 27 4
gpt4 key购买 nike

希望问题不是很离谱。我刚刚开始加密和编写在传输数据时更安全的代码。我们正在 Arduino 上实现 C++,我们正在使用 wifi 模块通过 HTTP 将数据传输到用 PHP 编写的网络服务器。由于我们需要让客户端保持真正的轻便,我们认为我们使用加密而不是 TCP 堆栈或 HTTPS,以使我们的数据传输更加安全。我们查找了一些主要用 C++ 编写的用于 Arduino 加密的有用库。所以我们想知道如何使用相同的算法但在 PHP 中解密数据?我们应该用 PHP 重写该算法还是有更好的方法?有没有现成的解决方案?这是要走的路吗?

最佳答案

So we wanted to to know how to decrypt the data back using the same algorithm but in PHP?

假设您已经定义了一个加密方案,PHP 有 Mcrypt functions Defuse支持对称芯片,OpenSSL functions支持非对称芯片和 Hash functions .
所以你只需像使用任何其他语言一样编写解密算法。

非常感谢 zaph 指出 Mcrypt 已过时。

Should we rewrite that algorithm in PHP or is there a better way?

由于 PHP 是一种非常简单(但微妙!)的语言,重写通常是最快的方法。
您可以通过编写 PHP extension 来完全重用 C++ 代码.

请注意,我假设您想编写一个加密方案,而不是加密原语。
重写分组密码、散列函数或流密码通常不是一个好主意,重写您已经在 C++ 中实现的自定义方案(见最后一点)是另一回事。

Are there any existing solutions?

HTTPS,更具体地说 TLS .

Is this the way to go at all?

推出自己的加密货币?没有。

HTTPS 为您提供更多 secret 性(不让知道您发送的内容),它为您提供 sACCE (Server-Only Authenticated and Confidential Channel Establishment).
例如,如果您不采取适当的反制措施,攻击者可以回复他们看到的所有请求;天真 block cipher mode轻松制作方案distinguishable .

如果您的团队对这些术语没有信心并且没有经验丰富的程序员和数学家,我建议使用 HTTPS。
这并不像您想象的那样昂贵(它使用流密码,昂贵的部分是握手,并且今天的每台服务器都支持Connection: Keep-Alive)。


您可能会想认为您在不需要强加密的环境中工作,我说那么根本不需要加密,这样可以节省大量调试时间。

不存在部分加密这样的东西:要么你做对了,要么你根本没有做。

关于php - 如何在 C++ 中加密数据并在 PHP 中解密?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37504586/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com