首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于通信和生成密钥的算法?

用于通信和生成密钥的算法?
EN

Stack Overflow用户
提问于 2011-08-16 16:22:24
回答 3查看 227关注 0票数 1

我想向客户端服务器发送一些数据,因为他们将使用我们的服务。将会有一些关于玩家详细信息的交流。应该使用哪种加密以及如何为该加密算法生成密钥。我们的代码是php。

提前谢谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-08-16 18:33:43

您可以使用OpenSSL函数。下面是生成新的公钥/私钥对的方法:

代码语言:javascript
复制
$res = openssl_pkey_new();

openssl_pkey_export($res, $privatekey); // Get private key

$publickey = openssl_pkey_get_details($res); // Get public key
$publickey = $publickey["key"];

将私钥存储在服务器上,并将公钥发送给客户端,然后发送到服务器上:

代码语言:javascript
复制
openssl_private_encrypt( $data, $encrypted, $privatekey );

在客户端中:

代码语言:javascript
复制
openssl_public_decrypt( $encrypted, $data, $publickey );
票数 2
EN

Stack Overflow用户

发布于 2011-08-16 16:25:31

如果要对从客户端发送到服务器的数据进行加密,或者反之亦然,则应使用SSL。你可以为你的网站获得一个便宜的证书。如果您没有证书,加密将仍然有效,但访问网站的人将看到有关无效证书的警告。

购买证书的费用约为10美元(根据一家出售证书的荷兰公司计算)。

票数 1
EN

Stack Overflow用户

发布于 2011-08-16 17:12:25

也许可以看看phpseclib,它包含了一个RSA实现。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7075406

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档