- 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/
需要帮助将这些给定的数字打印成星号,但我是编程新手;我该怎么做? #include int main(void) { int a[5]={20,1,5,15,12}; int i=0
使用 Delphi XE 2 我试图确定缩放方向以将缩放效果应用于图像(TImage),但没有找到执行此操作的函数,并且图像的 OnGesture 事件中的 EventInfo 属性没有此信息. 我见
我不知道制服在内存中是如何表示的。 制服似乎会占用宝贵的寄存器空间,但它们最终会传入/通过/传出到全局内存中,对吗? 制服不用时情况会发生变化吗?编译器可以将它们优化掉吗?--在这种情况下,我已经将无
我正在尝试在名为“timeclock”的模型上记录“time_in”和“time_out”记录。这是我想做但无法开始工作的事情! 检查最后一个时钟条目,看看它是否同时填充了“time_in”和“tim
我想听听您如何解决这种编程任务!?每种类型(OPER = 1 类型)对应一种特定的信息。 这只是大约 10 个具有相同结构的规范之一。首选创建这些“转换器”(协议(protocol))的通用方法。 最
我正在使用 Rest API(NodeJS、Express)和 PostgreSQL 制作 React-Native 应用。 在我的本地机器上托管时一切正常。当 API 托管在我的机器上并且 Post
我是一名优秀的程序员,十分优秀!