我如何加密/解密PHP GET参数


How can I encrypt/decrypt PHP GET parameters?

我有一个常规的请求,例如:

http://myserver.com/index.php?var1=85842.23&var2=212.235&name=Teddie&valid=1

我希望这些$_GET参数被加密为(不是真实的,只是一个例子:)):

http://myserver.com/index.php?eParam=ks883d48223v2czozoz227272j2nn2dn2d2du3dh4hn4f4f4f4h3383xh8383s38s3j83sj8s3j92h2s89hs387h2s87hs287h2s87h2ui2c3iuhc287z9m2389f

当然,我需要在每一边都有一个内置的密钥,这将能够解密该信息。有什么功能可以使它成为可能吗?我不关心客户端,因为它将是一个运行的应用程序,而不是一个网页或任何容易被逆向工程的东西。

谢谢!

使用SSL(即HTTPS而不是普通HTTP)。然后,除了DNS查找域和与该域解析的ip地址建立连接之外的所有内容都将被加密。

实际上你可以这样做…您可以使用包含给定参数的时间到期的加密/解密函数。我有一个脚本可以为我的网络系统做这些。你必须自己建立,我不能公开我的安全脚本……但这里有一个想法:

  1. 查找或构建加密/解密功能
  2. 添加日期&time检查函数以便加密字符串过期
  3. 使用该函数加密输出字符串
  4. 加密后,如果你使用PHP, urlencode()加密字符串,以确保所有的特殊字符在另一端收到它后仍然存在。
  5. 在另一端执行urldecode(),然后解密,然后传递值。