目录

Small-fish文件加密库

1.加密

要加密文件内容

加密后内容

2.解密

1.代码讲解

字典

加密函数

解密函数


用Python实现对文件的内容进行加密,之前博主查询了资料看见的多半是Python把文件打包成另外一个格式或编码的文件,这样没意思了!还不如自己做一个加密程序,用来加密文件,这样,别人想随便盗取你的文件内容也得看得懂!它不香吗!

百度上的讲解基本上是什么算法之内的,真麻烦!我要是会就好了... 


Small-fish文件加密库

因为要解密文件,所以我就做了第一个第三个命令行库。用来加密文件的命令行。

安装它

pip install Small-fish

直接windows命令行输入: Small-fish -h 

这就能看到使用方法了


1.加密

命令行输入 Small-fish -e xxx 其中xxx代表要加密的文件(必须是UTF-8编码)

 下面输出的就是解密后内容


其实没有什么好神秘的原理,就是 

1.读取源文件 ——》2.将文件内容转换成指定字符 ——》4.写入一个加密文件

怎么样?是不是很简单,看效果图:

要加密文件内容

I am PYmili
You name?

加密后内容

I;/none;0a;0m;/none;P;Y;0m;0i;0l;0i;
;Y;0o;0u;/none;0n;0a;0m;0e;?;

这就是加密后的效果,都是只是概念。加密后会生成一个enc.ENC文件在当前目录,也就是命令行目录的位置

2.解密

那我们如何解密呢?

读取文件内容——》匹配内容是否相同——》转换至一个新文件

 依旧是命令行命令

Small-fish -d xxx 其中xxx表示要解密文件路径

 解密后就会生成dec.txt文件在当前目录,也就是命令行位置

这样文件就解密出来了!是不是很简单?


1.代码讲解

字典

class ENC:def __init__(self):self.cd={"a":"0x000a"}

首先我们得创建一个类和一个字典,字典用来设定每个字符串要转换成什么字符。规则就是你自己指定了!想写什么就什么。


加密函数

def enc(self, filepath):self.path=filepathFile_Msg=[]count = -1for count, lirn in enumerate(open(f'{self.path}', 'r', encoding='utf-8')):passcount += 1line = countwith open(f"{self.path}", 'r', encoding="utf-8") as p:for rea in range(int(line)):rea=p.readline()File_Msg.append(rea)enc=[]with open(f"enc.ENC", 'w+', encoding="utf-8") as index:for Msg in File_Msg:for m in Msg:if m == "a":enc.append(self.cd["a"]+";")

文件加密,主要是读取文件的内容然后于字典的键匹配,匹配成功就可以写入到列表转换

for en in enc:print(en)index.write(en)

解密函数

解密函数于加密函数一致,只是识别的是字典的键值。然后转换

def dec(self, file):File_Msg=[]count = -1for count, lirn in enumerate(open(rf'{file}', 'r', encoding='utf-8')):passcount += 1line = countwith open(f"{file}", 'r', encoding="utf-8") as dex:File_Msg=dex.read()dec=[]open(f"dec.txt", 'w', encoding='utf-8')with open(f"dec.txt", 'a+', encoding='utf-8') as dexc:print(File_Msg)for m in File_Msg.split(';'):if m == self.cd["a"]:for de in dec:dexc.write(de)

有问题或源代码在我的QQ群:706128290 免费拿取或提问

Python实现对文件内容进行加密相关推荐

  1. python中读取文件内容-深入学习python解析并读取PDF文件内容的方法

    这篇文章主要学习了python解析并读取PDF文件内容的方法,包括对学习库的应用,python2.7和python3.6中python解析PDF文件内容库的更新,包括对pdfminer库的详细解释和应 ...

  2. python怎么读取文件-python怎么读取文件内容

    Python open() 方法用于打开一个文件,并返回文件对象,在对文件进行处理过程都需要使用到这个函数,如果该文件无法被打开,会抛出OSError的错误. 完整的语法格式为:(推荐学习:Pytho ...

  3. python读取文件多行内容-Python逐行读取文件内容的方法总结

    Python四种逐行读取文件内容的方法 下面四种Python逐行读取文件内容的方法, 分析了各种方法的优缺点及应用场景,以下代码在python3中测试通过, python2中运行部分代码已注释,稍加修 ...

  4. python如何移动文件却不覆盖现有文件_解决python不能覆盖文件内容的方法

    解决python不能覆盖文件内容的方法 发布时间:2020-07-15 11:42:17 来源:亿速云 阅读:62 作者:清晨 这篇文章将为大家详细讲解有关解决python不能覆盖文件内容的方法,小编 ...

  5. python怎么读写文件-python怎么读取文件内容

    Python open() 方法用于打开一个文件,并返回文件对象,在对文件进行处理过程都需要使用到这个函数,如果该文件无法被打开,会抛出OSError的错误. 完整的语法格式为:(推荐学习:Pytho ...

  6. python读取xml文件内容_selenium-python读取XML文件

    首先这是我们要读取的XML文件 <?xml version="1.0" encoding="utf-8" ?> windows Chorm http ...

  7. Python将Excel文件内容写入Word文件

    在日常办公中我们经常需要将Excel文件中的数据写入Word中,如果是手动一个一个进行复制粘贴,那将会非常的耗时且繁琐! 遇到这种问题我们首先想到就是利用b编程解决,今天我分享一个excel转word ...

  8. python 判断excel文件是否被加密

    # 环境: win10/mac皆可,python 3.7import pandas as pd import os import xlrd fpath = r'/Users/.../test.xlsx ...

  9. python一次性读取整个文件-Python逐行读取文件内容

    1. 最基本的读文件方法: ? # File: readline-example-1.py file = open("sample.txt") while 1: line = fi ...

最新文章

  1. 国内三分之一世界500强企业正布局区块链,区块链风口已经出现
  2. springcloud配置文件上传大小_SpringCloud实战二-Nacos
  3. MySQL 特殊参数
  4. Server2012Web方式修改用户名密码
  5. 如何编写一份SOP?
  6. mysql注入攻击实_三十三、MySQL基础系列笔记之MySQL安全问题与SQL注入攻击
  7. 【机器学习】机器学习用到的常用术语
  8. IntelliJ IDEA 设置Output (输出窗口)窗口字体大小
  9. ERP项目实施记录06
  10. [Java] 蓝桥杯BASIC-27 基础练习 2n皇后问题
  11. ecu故障现象_传感器坏了,会导致什么故障现象?
  12. LINUX 线程启动回调函数
  13. AE表达式中英对照及解释
  14. mimics软件临床应用.计算机辅助外科入门技术,Mimics软件临床应用:计算机辅助外科入门技术...
  15. 完全小白级DataX安装配置过程详解
  16. 在北京这种城市,周末假期怎么整才算浪......
  17. Google Chrome v90.0.4430.212 正式版下载
  18. python读取文件名存到list_python-read文件名并构建名称列表(python-read file names and build a namelist)...
  19. python重量转换程序_重量转换的极小项目说python查找字符串
  20. 四、【入门篇】官方LIB库、位带操作

热门文章

  1. 水卡修改金额_【技术分享】关于IC卡,水卡修改控制位教程
  2. LWN:怕不怕编译器优化让你的代码彻底乱套?
  3. php天眼查数据抓取,python用xpath采集天眼查内容,有反爬,zip拼数据
  4. 多线程 ForkJoinPool
  5. 2_Gui_Tkinter(python标准库)
  6. FCC 中级算法题 罗马数字转换器
  7. Android CPU 深度睡眠,什么是CPU更深度睡眠
  8. Typecho情侣博客Brave主题源码
  9. 空间句法插件Axwoman 6.3安装教程
  10. gis合并dem数据_arcgis如何制作DEM数据