IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> Python实现对文件内容进行加密 -> 正文阅读

[Python知识库]Python实现对文件内容进行加密

目录

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=filepath
        File_Msg=[]
        count = -1
        for count, lirn in enumerate(open(f'{self.path}', 'r', encoding='utf-8')):
            pass
        count += 1
        line = count
        with 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 = -1
    for count, lirn in enumerate(open(rf'{file}', 'r', encoding='utf-8')):
        pass
    count += 1
    line = count
    with 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知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-12-07 11:59:03  更:2021-12-07 12:01:36 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 5:36:59-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码