久久96国产精品久久久-久久发布国产伦子伦精品-久久精品国产精品青草-久久天天躁夜夜躁狠狠85麻豆

技術員聯盟提供win764位系統下載,win10,win7,xp,裝機純凈版,64位旗艦版,綠色軟件,免費軟件下載基地!

當前位置:主頁 > 教程 > 服務器類 >

Python如何實現文本簡單可逆加密算法

來源:技術員聯盟┆發布時間:2017-10-07 06:07┆點擊:

  其實很簡單,就是把一段文本每個字符都通過某種方式改變(比如加1)

  這樣就實現了文本的加密操作,解密就是其逆運算

  # -*-coding:utf-8 -*-

  import sys

  reload(sys)

  sys.setdefaultencoding('utf8')

  #加密

  def jiami():

  filename=raw_input('please input file:\n')

  while True:

  try:

  password=int(raw_input('input number pass word:\n'))

  break

  except:

  print 'please input number:\n'

  fileword=open(filename,'r')

  num=filename.rfind('.')

  newfilename=filename[:num]+'[加密]'.encode('gbk')+filename[num:]

  content=fileword.read(1)

  newfileword=open(newfilename,'a+')

  while len(content)>0:

  contentInt=ord(content)

  newContent=contentInt+password

  c=chr(newContent)

  newfileword.write(c)

  content=fileword.read(1)

  newfileword.close()

  fileword.close()

  #解密

  def jiemi():

  filename=raw_input('please input file:\n')

  while True:

  try:

  password=int(raw_input('input number pass word:\n'))

  break

  except:

  print 'please input number:\n'

  fileword=open(filename,'r')

  num=filename.rfind('.')

  num2=filename.rfind('[')

  newfilename=filename[:num2]+'[解密]'.encode('gbk')+filename[num:]

  content=fileword.read(1)

  newfileword=open(newfilename,'a+')

  while len(content)>0:

  contentInt=ord(content)

  newContent=contentInt-password

  c=chr(newContent)

  newfileword.write(c)

  content=fileword.read(1)

  newfileword.close()

  fileword.close()

  while True:

  index=int(raw_input('---請輸入命令,1為加密 2為解密 3為退出---\n'.encode('gbk')))

  if index==1:

  jiami()

  elif index==2:

  jiemi()

  elif index==3:

  exit(0)

  else:

  pass

  注意:

  ①如果出現中文編碼問題可以通過.encode,.decode編碼解碼

  ②可以通過Python的切片操作處理文件名,很方便,例如: newfilename=filename[:num]+'[加密]'.encode('gbk')+filename[num:]

  ③最重要的!!本加密方法只是簡單的給文本字符做一個+password處理,其方法非常不合理,因為加的數如果過大會造成chr字節不夠(比如你輸一個1000)

  所以本代碼只適用于新手練習,而不能作為真正的處理算法