sha1php加密与sha1python加密

2024-05-23 19:51:46 发布

您现在位置:Python中文网/ 问答频道 /正文

对于我目前正在进行的一个项目,我们正在尝试将一个旧的PHP/MySQL服务器迁移到一个新的Django/PostgreSQL服务器。在PHP服务器上,我们目前正在通过获取一个字符串来管理密码,对其进行sha1()处理,然后将其与数据库进行比较。我知道python has a sha1() function,但我对密码学的了解还不够,无法知道这些函数在实现上是否有所不同,以及PHP版本与Django版本的比较。有人知道吗?在

非常感谢!在


Tags: 项目django函数字符串版本服务器数据库密码
2条回答

PHP中的sha1接受可选的第二个参数($raw_output;默认值) 错误)。在Python中有两个单独的方法来处理这个问题:hexdigest和{}。在

案例1

对于$raw_output设置为false,我们使用hexdigest。在

在PHP中:

sha1("My string");

在Python中:

^{pr2}$

案例2

对于$raw_output设置为true,我们使用digest()

在PHP中:

sha1("My string", true);

在Python中:

sha1("My string").digest()

PHP和Python的SHA1实现肯定会产生相同的结果。在

亲自看看:

$ python
>>> import hashlib
>>> hashlib.sha1("The quick brown fox jumps over the lazy dog").hexdigest()
'2fd4e1c67a2d28fced849ee1bb76e7391b93eb12'
>>> exit()

$ php -a
php > echo SHA1("The quick brown fox jumps over the lazy dog");
2fd4e1c67a2d28fced849ee1bb76e7391b93eb12

相关问题 更多 >