- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在做一个 Web 应用程序登录自动化。 Web 应用程序前缀和后缀几个八进制转义字符和密码,在客户端对密码进行 md5 哈希并发送到服务器。
所以当我使用 Java Script 对字符串进行 Md5 加密时,我得到以下结果。
Web 应用程序使用 https://ideone.com/2C1b5用于客户端 MD5 转换的 JS 库。 hexMD5() 属于该库。
但是当我尝试使用 python 做同样的事情时,我得到了不同的结果。
import hashlib
def getMd5(string):
m = hashlib.md5()
m.update(string)
return m.hexdigest()
prefix = "\051"
suffix = "\341\303\026\153\155\271\161\166\030\054\324\011\046\035\344\274"
prefix = unicode(prefix,'unicode-escape')
suffix = unicode(suffix,'unicode-escape')
salted = prefix+"HELLO"+suffix
print getMd5(salted.encode('utf8'))
结果
c7862e873e9bc54a93aec58c199cda37
任何人都可以解释一下我在这里做错了什么吗?
最佳答案
import hashlib
def getMd5(string):
m = hashlib.md5()
m.update(string)
return m.hexdigest()
prefix = "\051"
suffix ="\341\303\026\153\155\271\161\166\030\054\324\011\046\035\344\274"
salted = prefix+"HELLO"+suffix
print getMd5(salted)
37a0c199850b36090b439c3ac152fd70
不使用 unicode 会产生与 Javascript 相同的输出。
如果我正确理解您的评论:
len(r"\051" == 4 # use raw string r
len("\051") == 1
关于Python 八进制转义字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28747850/
谁能推荐一个好的成员(member)结构? 例如,用户支付了 1 个月的成员(member)费,从 2012 年 2 月 1 日到 2012 年 3 月 1 日结束。 何时何地检查用户是否仍是成员(m
我想在我的 JTextPane 中实现查找机制(如文本编辑器或 word)。我希望它有下一个/上一个选项(向上/向下箭头)并突出显示它找到的所有单词。有没有简单的方法可以做到这一点? 最佳答案 我不是
Android 上是否有任何机制和/或编程实践来执行一次性安装/更新脚本?这似乎是一个非常基本的问题,但谷歌搜索没有帮助。 假设我的应用程序使用了一个数据库,并且需要一个常量值表(例如国家名称、城市名
是否可以将 SimpleMembership 与 ASP.NET WebForms 一起使用? John Galloway 的文章似乎表明 WebForms“在 ASP.NET 成员资格之上实现 OA
我是一名优秀的程序员,十分优秀!