python实现加密器,python编写加密程序

  python实现加密器,python编写加密程序

  大家好,本篇文章主要讲的是用计算机编程语言制作一个文件加密器,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下

  

目录
前言下载地址效果预览加密算法总结

  

前言

  因为一些懂得都懂的原因,我的父母对于我电脑上的文件内容特别感兴趣。为了防止信息泄露,我连夜用计算机编程语言做了一个文件加密器,防止我的重要信息被泄露。

  

下载地址

  github:https://github。文件密码

  开源代码库上的资源是计算机编程语言源代码

  

效果预览

  为了方便操作,我用PyQt做了窗口。运行起来是这样的。

  加密效果还是很不错了

  

加密算法

  对于我来说,程序中图形用户界面的编写算比较简单。困难的是加密算法的编写。

  先把密码的代码贴出来,在详细讲解。

  类别密码:

  key=

  def __init__(self,key):

  self.key=key

  def setKey(self,key):

  self.key=key

  def getKey(self):

  返回自我钥匙

  def parseKey(self,key):

  # 处理密钥

  如果键!=:

  o=0

  对于键:中的k

  n=0

  i=str(ord(k))

  对于i:中的t

  n=int(t)

  o=n

  # 使密钥范围控制在10-100之间

  而True:

  如果o 10:

  o=int(o * 2)

  elif o 100:

  o=int(o/2)

  else:

  返回o

  返回

  def getOdd(self,max):

  如果i % 2==1,则返回[i为I在范围(1、最大值为1]

  定义加密(自身,数据):

  # 加密算法

  if data==:

  返回

  结果=

  长度=len(数据)#获取数据长度

  a=[order(x)for x in data]

  # 判断是否为四的倍数

  余数=长度% 4 #余数

  如果余数!=0:

  b=4 -余数

  对于范围:中的c

  a.append(0)

  # 第一次分组

  组=[]

  d=len(a) //2

  e1=a[:d]

  e2=a[d:]

  indexs=self.getOdd(d)

  团体。追加([索引中我的e1[i - 1])

  团体。追加([索引中I的E1[I])

  团体。追加([索引中我的e2[i - 1])

  团体。追加(索引中I的[E2[I])

  # 第二次分组

  f1=组[0]组[3]

  f2=组[1]组[2]

  # 第一次加密

  键码1=自身。解析密钥(自身。getkey())

  g=[]

  对于f1:中的h

  i=h键码一

  j=chr(i)

  g。追加(一)

  结果=j

  # 第二次获取键码

  k=str(sum(g))

  keycode2=self.parseKey(k)

  # 第二次加密

  对于f2:中的l

  m=l键码2

  n=chr(m)

  结果=n

  # 加密完成

  回送结果

  定义解密(自身,数据):

  # 解密算法

  if data==:

  返回

  结果=

  # 获取键码一

  键码1=自身。解析密钥(自身。getkey())

  # 第一次解密

  a=len(data) //2

  b1=数据[:a]

  b2=数据[a:]

  c=[B1中d的订单(d)]

  e=[c语言中f的f键码1]

  # 获取键码2

  g=str(sum(c))

  keycode2=self.parseKey(g)

  # 第二次解密

  h=[B2 I订单(I)]

  j=[h中k的k键码2]

  # f1对应e,f2对应j

  # 第一次分组

  k=len(e) //2

  group1=e[:k]

  group4=e[k:]

  group2=j[:k]

  group3=j[k:]

  # 第二次分组

  datalength=len(组1)len(组2)len(组3)len(组4)#数据长度

  l=数据长度//4

  m=[]

  对于范围:内的n

  m.append(group1[n])

  m.append(group2[n])

  o=[]

  对于范围(l):内的p

  o.append(group3[p])

  o.append(group4[p])

  #数据拼接

  q=m o

  对于q:中的r

  结果=chr(r)

  #返回结果

  回送结果

  大致过程如下

  我随便画的,大概就是这个过程。我不在乎有没有错误。

  首先,对密钥进行处理,将密钥转换为ASCII,并将所有数字相加得到总和。通过乘法和除法将键的范围控制在10到100之间。

  重新处理数据,说数据分4组,不足位数用00填。分组后进行交叉分组。得到第二次分组的结果。使用密钥处理结果1以获得数据1。然后,对第一结果的总和进行密钥处理以获得第二密钥。

  然后,通过使用第二密钥处理第二结果以获得第二数据。

  数据一和数据二被拼接以获得加密数据。

  解密是相反的操作。

  

总结

  这就是这篇关于用Python制作文件加密器的文章。关于Python文件加密的更多信息,请搜索热门IT软件开发工作室之前的文章或者继续浏览下面的相关文章。希望大家以后多多支持热门IT软件开发工作室!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: