[Python] python里的签名方法hmac →→→→→进入此内容的聊天室

来自 , 2020-11-06, 写在 Python, 查看 100 次.
URL http://www.code666.cn/view/a4bd4d2b
  1. >>> import hmac
  2. >>> print hmac.new("mykey","Hello world !").hexdigest()
  3. d157e0d7f137c9ffc8d65473e038ee86
  4.  
  5. #下面是一个简单的C/S程序,使用了hmac签名
  6.  
  7. # 客户端 (signs the data)
  8. import xmlrpclib,hmac,hashlib
  9. key = "mysecret"
  10.  
  11. server = xmlrpclib.ServerProxy("http://localhost:8888")
  12. name = "Homer"
  13. signature = hmac.new(key,name).hexdigest()
  14. print server.sayHello(signature,name)
  15.  
  16.  
  17. # 服务器 (verifies the signature)
  18. import SimpleXMLRPCServer,hmac,hashlib
  19. key = "mysecret"
  20.  
  21. class MyClass:
  22.     def sayHello(self, signature, name):
  23.         if hmac.new(key,name).hexdigest() != signature:
  24.             return "Wrong signature ! You're a hacker !"
  25.         else:
  26.             return u"Hello, %s !" % name
  27.  
  28. server_object = MyClass()
  29. server = SimpleXMLRPCServer.SimpleXMLRPCServer(("localhost", 8888))   # (2)
  30. server.register_instance(server_object)   # (3)
  31. print "Listening on port 8888"
  32. server.serve_forever()
  33. #//python/1880

回复 "python里的签名方法hmac"

这儿你可以回复上面这条便签

captcha