怎么样给python文件加密

怎么样给python文件加密,第1张

简单模式:

from hashlib import md5

def md5_file(name):

m = md5()

a_file = open(name, 'rb') #需缺塌漏要使用二进制格式读取文件内容

m.update(a_file.read())

a_file.close()

return m.hexdigest()

if __main__ == '__init__':

print md5_file('d:/test.txt')

大文件速度更快一点的方式

#!/usr/bin/衫散python

#encoding=utf-8

import io

import sys

import hashlib

import string

def printUsage():

print ('''''伏烂Usage: [python] pymd5sum.py ''')

def main():

if(sys.argv.__len__()==2):

#print(sys.argv[1])

m = hashlib.md5()

file = io.FileIO(sys.argv[1],'r')

bytes = file.read(1024)

while(bytes != b''):

m.update(bytes)

bytes = file.read(1024)

file.close()

#md5value = ""

md5value = m.hexdigest()

print(md5value+"\t"+sys.argv[1])

#dest = io.FileIO(sys.argv[1]+".CHECKSUM.md5",'w')

#dest.write(md5value)

#dest.close()

else:

printUsage()

main()

import string

def kaisa(s, k): #定义函数 接受一个字符串s 和 一个偏移量k

lower = string.ascii_lowercase #小写字母

upper = string.ascii_uppercase #大写字母

before = string.ascii_letters #无偏移的字母顺序 小写+大隐游写

after = lower[k:] + lower[:k] + upper[k:] + upper[:k] #偏移后的字母顺序 还是小写+大写

#分别把小写字母和大写字母偏移后灶伏销再加到一起

table = ''.maketrans(before, after) #创建映射表

return s.translate(table) #对s进行偏移 即加密

s = input('请输入一个字符串:'厅睁)

k = int(input('请输入一个整数密钥:'))

print(kaisa(s, k))

调用此函数

可以给db文件添加密码。

在Python中异或 *** 作符为,^,也可以记作XOR。按位异或的意思是。相帆兄同值异或为0,不同值异或为1.具体来讲,有四种可能,0^0=0,0^1=1,1^0=1,1^1=0。我们还可总结出规律(A为0或1),0和A异或为A本身。1和A异或为A反。

加密态核袭 *** 作,首先将文件转换成二进制数,再生成与该二进制数等长的随机密钥,将二进制数与密钥进行异氏森或 *** 作,得到加密后的二进制数。解密 *** 作,将加密后的二进制程序与密钥进行异或 *** 作,就得到原二进制数,最后将原二进制数恢复成文本文件。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/8183952.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存