Python实现的文本简单可逆加密算法示例

Mia
Mia
发布时间:2026-10-10 | 3人浏览过
原创

本文介绍了一种使用Python实现的简单文本可逆加密算法。通过读取文件内容,将每个字符的ASCII码值加上一个用户指定的密码数值进行加密,解密时则执行相反操作。代码包含文件读写、异常处理及简单的交互界面,适用于初学者理解加密与解密的基本原理。

Python实现的文本简单可逆加密算法示例

  • 加密方式是将文本每个字符通过某种方式改变
  • 解密是加密的逆运算
  • 中文编码问题可通过.encode和.decode处理
  • 可通过Python切片操作处理文件名
  • 加密方法仅对文本字符做+password处理
  • 加的数过大会造成chr字节不够
  • 该代码仅适用于新手练习
  • 该代码不能作为真正的处理算法
# -*-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

以上就是Python实现的文本简单可逆加密算法示例的详细内容,更多关于Python开发安全算法的资料请关注本站其它相关文章!

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表