Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP:mycrypt密钥?_Php - Fatal编程技术网

PHP:mycrypt密钥?

PHP:mycrypt密钥?,php,Php,请不要介意我问这个问题,但我是php新手,我需要加密和解密密码。我想通过URL发送密码,所以我听说这是使用mycrypt最安全的方法 我在mycrypt函数中找不到带密钥的东西? 这不应该像密码本身一样保密吗。e、 g.我使用PHP手册中的这个函数: <?php $iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB); $iv = mcrypt_create_iv($iv_size, M

请不要介意我问这个问题,但我是php新手,我需要加密和解密密码。我想通过URL发送密码,所以我听说这是使用mycrypt最安全的方法

我在mycrypt函数中找不到带密钥的东西? 这不应该像密码本身一样保密吗。e、 g.我使用PHP手册中的这个函数:

    <?php
    $iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);
    $iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
    $key = "this is my personal decryption key";
    $text = "Meet me at 11 o'clock behind the monument.";
    echo strlen($text) . "\n";

    $crypttext = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key, $text, MCRYPT_MODE_ECB, $iv);
    echo strlen($crypttext) . "\n";
    ?>

使用TLS(HTTPS)可能会更简单、更安全。这可以使用相同的技术(例如AES/Rijndael),但可以为您处理许多细节,包括密钥分发。如果使用mcrypt,则需要找到一种安全的方法来交换key和IV(初始化向量)


显然,您还需要保护密钥和IV。因此,如果它嵌入到PHP文件中,您必须注意保护该文件。不过,记住服务器端和客户端之间的区别很重要。除非脚本中有bug,否则密钥不会泄漏到生成的HTML文件中。

但是我可以(轻松地)从服务器下载.php文件并查看源代码。我读取密钥并解密。我需要一种简单的方法来加密密码,将其挂在url上,用$\u get读取密码,然后解密并传递??TLS(HTTPS)对我来说听起来很复杂。我是一名编程新手,你不能直接从别人的服务器下载活动的PHP源代码,除非他们有bug。HTTPS实际上并不太复杂,因为web服务器为您完成了大部分工作。你在接收端运行哪台服务器?我在宙斯服务器上。我认为可以从带有sitesucker或file2hd.com等应用程序的服务器上提取php文件。您将查看php文件(HTML)的输出,而不是源代码。正如Matthew Flaschen所说,唯一可能发生的情况是服务器配置错误或安全性不正确。这些站点允许您下载生成的HTML内容,而不是实际的PHP。我发现了这篇文章,其中有一节(第68页第4.10节)是关于在宙斯上设置SSL/HTTPS的。