2017-02-22 39 views
1

我是相当新的PHP和很新的使用PHP加密,我在一些论坛上阅读了,看着一些关于它的视频然而,就像我尝试,它永远不会加密正常。这是我的代码下面来测试(我知道我不应该是MD5它只是看它是否起作用)。加密的Web(PHP)的字符串

当我跑在我的网站的代码它告诉我页面不响应意味着存在错误,但我看不出一个或看到我错在哪里。

<?php 

$key = md5('pass'); 

function encrypt($string, $key){ 
    $string = rtrim(base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key, $string, MCRYPT_MODE_ECB))); 
    return $string; 
} 

$output = encrypt("test", $key); 
echo $output; 

?> 
+0

检查您的错误日志,看看实际的错误信息是什么,或在您的本地php.ini文件打开'dsiplay_errors',同时发展。 –

+0

的可能的复制[您如何加密和解密PHP字符串?](http://stackoverflow.com/questions/16600708/how-do-you-encrypt-and-decrypt-a-php-string) – miken32

+0

我不是熟悉php.ini并且正在上传到FTP,因为我正在工作? – Tooble

回答

2

你不应该使用MD5加密任何东西,尤其是密码。

查找到PHP的password_hash()password_verify()功能。它们不仅比你现在正在做的更安全,而且使用起来也更简单。

+1

我有这个答案挑选唯一的NIT是MD5不加密。 – Sammitch

+0

这是正确的,它不是加密。但OP正在询问有关加密的问题。 如果他们说他们有兴趣创建快速验证校验和,那么MD5可能更合适,但不是因为它[可怕的缺陷](https://natmchugh.blogspot.co.at/2014/10/how- i-created-two-images-with-same-md5.html)。 (有很多其他的例子)。 –