加密算法: SHA1,SHA224, SHA256, SHA384, SHA512 , MD5

1. md5

import hashlib

m = hashlib.md5()
m.update(b"Hello") #加密
m.update(b"It's me") #再加密一句
print(m.digest()) #二进制
print(m.hexdigest()) #16进制

2.SHA1

#SHA1
m = hashlib.sha1()
m.update(b"Hello") #加密
m.update(b"It's me") #再加密一句
print(m.digest()) #二进制
print(m.hexdigest()) #16进制

3. SHA512

#SHA512
m = hashlib.sha512()
m.update(b"Hello") #加密
m.update(b"It's me") #再加密一句
print(m.digest()) #二进制
print(m.hexdigest()) #16进制 #其它加密方法类似

4. 如果你觉得上面的方法还不够屌,那么还有一个hmac模块

import hmac
h = hmac.new(b'secret_key') #生成key
h.update(b'hello') #加密
print(h.hexdigest())

下面是hmac模块使用案例

#下面是一个简单的C/S程序,使用了hmac签名

# 客户端 (signs the data)
import xmlrpclib,hmac,hashlib
key = "mysecret" server = xmlrpclib.ServerProxy("http://localhost:8888")
name = "Homer"
signature = hmac.new(key,name).hexdigest()
print server.sayHello(signature,name) # 服务器 (verifies the signature)
import SimpleXMLRPCServer,hmac,hashlib
key = "mysecret" class MyClass:
def sayHello(self, signature, name):
if hmac.new(key,name).hexdigest() != signature:
return "Wrong signature ! You're a hacker !"
else:
return u"Hello, %s !" % name server_object = MyClass()
server = SimpleXMLRPCServer.SimpleXMLRPCServer(("localhost", 8888)) # (2)
server.register_instance(server_object) # (3)
print "Listening on port 8888"
server.serve_forever()
#该代码片段来自于: http://www.sharejs.com/codes/python/1880

最新文章

  1. [原]关于flash GPU渲染的一些不完全测试(wmode,ie,chrome)
  2. 【jacob word】使用jacob,合并多个word为一个word文件
  3. 定义提示符 PS1 PS4
  4. Android Manifest.xml详解
  5. 51nod动态规划-----矩阵取数
  6. discuz3.2x增加邮箱验证功能
  7. Access一些常用的SQL语句
  8. Omi教程-通讯通讯攻略大全
  9. spring+mybatis之声明式事务管理初识(小实例)
  10. 使用 ASP.NET Core MVC 创建 Web API(四)
  11. 时序扩展的UML状态图的测试用例生成研究
  12. Cent OS安装使用ffmpeg(完整版)
  13. 用JQuery操作元素的style属性
  14. 2018/11/5 每日分析-test
  15. 自然语言交流系统 phxnet团队 创新实训 项目博客 (十)
  16. Internet History, Technology and Security (Week3)
  17. python3学习笔记.5.打包发布
  18. 企业搜索引擎开发之连接器connector(十七)
  19. 数据可视化——Matplotlib(1)
  20. autoconf / automake工具使用介绍

热门文章

  1. tomcat server获取用户的请求地址
  2. 第二百九十六天 how can I 坚持
  3. nginx 502 错误
  4. POJ 2185 Milking Grid(KMP)
  5. HTML中RGB颜色查询对照表
  6. 从最简单的HelloWorld理解MVP模式
  7. MVC3 使用NPOI导出excel
  8. disque概要
  9. 使用jdk操作 wsdl2java (wedservice)
  10. php 常用设计模式详解