zoukankan      html  css  js  c++  java
  • 【hashlib和hash-以及大文件的校验】

    import hashlib
    import random
    #创建一个md5算法的对象
    h1=hashlib.md5()
    #把要加密的字符串通过update更新到h1对象中运算
    h1.update("1111".encode("utf-8"))
    #获取32位16进制的字符串
    res=h1.hexdigest()
    print(res,len(res))

    #加盐
    # hashlib.md5("XX")

    #dong

    res=random.randrange(10000,1000000)
    print(res)
    repdate("1111".encode())

    文件校验,hashlib可以处理大的文件和hash的区别
    import hashlib
    h1=hashlib.md5()
    h1.update("123".encode())
    #16进制的字符串
    res=h1.hexdigest()
    print(res)
    import hashlib

    def check_md5(file):
    with open(file,mode="rb") as fp:
    hs=hashlib.md5()
    hs.update(fp.read(1))

    return hs.hexdigest()
    res=check_md5("nn.txt")
    res1=check_md5("mm.txt")
    print(res)
    print(res1)

    #针对于大文件进行内容进行校验

    h1=hashlib.md5()
    h1.update("今天是".encode())
    h1.update("好天气".encode())
    res=h1.hexdigest()
    print(res)#41f039f98beadb63f52b9b83ecd4f4b8

    h2=hashlib.md5()
    h2.update("今天是好天气".encode())
    res=h2.hexdigest()
    print(res)#41f039f98beadb63f52b9b83ecd4f4b8

    def check_md5(a):
    h1=hashlib.md5()
    with open(a,mode="rb") as fp:
    while 1:
    #一次最多读5个字节
    content=fp.read(5)
    #如果有内容就进行计算
    if content:
    #进行分批更新计算
    h1.update(content)
    else:
    break
    return h1.hexdigest()
    print(check_md5("mm.txt"))
    print(check_md5("nn.txt"))

    import os
    def check_md5(file):
    h2=hashlib.md5()
    file_size=os.path.getsize(file)#文件大小
    with open(file,mode="rb") as fp:
    while file_size:
    content= fp.read(5)
    h2.update(content)
    file_size=file_size-len(content)
    return h2.hexdigest()
    print(check_md5("mm.txt"))
    print(check_md5("nn.txt"))

    #服务器的合法性验证#用微信或者支付宝的支付接口,支付宝支付接口
    import socket
    import hmac
    import os

    def auth(conn,secret_key):

    secret_key="芝麻开门"
    sk=socket.socket()
    sk.connect(("127.0.0.1",9000))
    sk.close()
  • 相关阅读:
    ubuntu(14.4) 安装phpmyadmin
    ubuntu(14.04) 安装ssh,并使用root用户登录
    ubuntu(14.04版本) 配置虚拟环境(一个ip对应多个域名)
    ubuntu 中数据的迁移
    ubuntu修改固定ip
    作业调度框架_Quartz
    tomcat设置端口号和默认webapp
    HTTP深入浅出 http请求
    HTTP协议详解
    如何准备阿里社招面试,顺谈 Java 程序员学习中各阶段的建议【转】
  • 原文地址:https://www.cnblogs.com/bonnyxinxin/p/13070251.html
Copyright © 2011-2022 走看看