我需要帮助两件事:
有关加密算法的建议,我可以用它来编码服务器上的数据,将其发送到AS3客户端并在那里解码。从我读到的,公共 - 私人密钥听起来不错。
可编码和解码的AS3库,与PHP的bcrypt兼容(同样,我读bcrypt最适合这种数据传输)。
我不是安全专家,我希望问题清楚而且不笨拙。
编辑:正如建议的SSL是一个很好的选择,但目前我正在寻找非SSL的。
谢谢。
答案 0 :(得分:3)
你的威胁模型是什么?如果您只是担心人们在线路上嗅探数据,那么请使用SSL。它对您的应用程序是透明的,通常您只需安装证书并将您的URL从http://更改为https://
如果你的主要威胁是有人在应用程序上运行调试器以捕获数据,那么你就会遇到一个更大的问题,并且不太可能阻止某人“窃取”数据。
答案 1 :(得分:1)
向@Marc B提出指出SSL非常安全,但如果您绝对需要自定义加密......
如果服务器支持mcrypt(大多数PHP实现都支持),那么你可以使用mcrypt提供的任何加密方法(包括现代AES实现,IDEA,TEA等等[实际上是一个长列表]) 。但是,必须编写php脚本(当然)以期望加密数据。
查看http://php.net/manual/en/book.mcrypt.php以获取有关PHP实现mcrypt的信息。
编辑:在安装了php-mcrypt的近乎库存的fedora盒子上快速转储print_r(mycrypt_list_algorithms())显示...
Array
(
[0] => cast-128
[1] => gost
[2] => rijndael-128
[3] => twofish
[4] => arcfour
[5] => cast-256
[6] => loki97
[7] => rijndael-192
[8] => saferplus
[9] => wake
[10] => blowfish-compat
[11] => des
[12] => rijndael-256
[13] => serpent
[14] => xtea
[15] => blowfish
[16] => enigma
[17] => rc2
[18] => tripledes
)
答案 2 :(得分:0)
如果你不介意某人使用客户端调试器,只需使用一个ActionScript库,如as3crypto,它就应该拥有解码PHP发送的任何数据所需的一切。
使用公钥 - 私钥加密没有任何意义,因为您必须将私钥嵌入SWF中,从而将其公开。