Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/283.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.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 如何在MS sql server中插入md5哈希值?_Php_Sql Server_Encryption_Md5 - Fatal编程技术网

Php 如何在MS sql server中插入md5哈希值?

Php 如何在MS sql server中插入md5哈希值?,php,sql-server,encryption,md5,Php,Sql Server,Encryption,Md5,我有一个表用户,其中有密码字段。这里我想直接从数据库中输入md5哈希值,因为我的应用程序还没有准备好注册。列是否有任何函数或属性。我搜索该选项,但在sql server数据库中找不到任何选项,我正在使用php中的md5函数选择用户表的密码 <?php $encryptedstring = mdecrypt_generic($yourdata) $encryptedstring // insert this value in database ?> 祝你好运:)试试这个

我有一个表用户,其中有密码字段。这里我想直接从数据库中输入md5哈希值,因为我的应用程序还没有准备好注册。列是否有任何函数或属性。我搜索该选项,但在sql server数据库中找不到任何选项,我正在使用php中的md5函数选择用户表的密码

<?php 
 $encryptedstring = mdecrypt_generic($yourdata)
 $encryptedstring // insert this value in database
 ?>

祝你好运:)

试试这个

<?php 
 $encryptedstring = mdecrypt_generic($yourdata)
 $encryptedstring // insert this value in database
 ?>


祝你好运:)

你可以用php创建一个带有更新查询的小脚本

   select users.....;
         for loop
             md5 pass + update users
         end for

您可以用php创建一个带有更新查询的小脚本

   select users.....;
         for loop
             md5 pass + update users
         end for

这是否意味着数据库中的密码根本没有散列

我知道这不是你想要的答案,但是:

  • MD5是用于密码的错误哈希。太快了。你需要使用一种需要更多时间的方法

  • 或者更好的方法是,使用一个经过验证的库来为您处理它。

    这是否意味着您的数据库中的密码根本没有散列

    我知道这不是你想要的答案,但是:

  • MD5是用于密码的错误哈希。太快了。你需要使用一种需要更多时间的方法
  • 或者更好的是,使用一个经过验证的库来为您处理它。

    使用HASHBYTES:

    使用哈希字节:


    就我而言,我是这样做的:

     Select Lower(CONVERT(VARCHAR(32),HashBytes('MD5', '12345'), 2))
    

    就我而言,我是这样做的:

     Select Lower(CONVERT(VARCHAR(32),HashBytes('MD5', '12345'), 2))
    

    您可能需要保护您的密码。请注意:您谈论的是散列,而不是加密。还有,你的问题是什么?您试图在插入时自动哈希,而不必更改代码?只要在数据库中更新它们一次,然后更改代码。SQL Server不提供您可能期望从MySQL获得的MD5或SHA1函数(如果这是您所追求的)。您可能需要保护您的密码。请注意:您谈论的是哈希,而不是加密。还有,你的问题是什么?您试图在插入时自动哈希,而不必更改代码?只要在数据库中更新它们一次,然后更改代码即可。SQL Server不提供您可能期望从MySQL获得的MD5或SHA1函数,如果您需要的话。