我常用的文件加密解密的工具是宏杰加密,但是前两天打开后发现要强制升级,升级后软件变成vip才能使用,并且不能降级。有一天,我突然想起来自己是不是可以用Python写一个加密的工具。于是就动手开是写了。

def encrypt(filepath):f = open(filepath,'rb+')f.seek(0,0)content = f.read(200)print(content)f.seek(0,2)f.write(content)f.seek(0,0)for i in range(0,200):f.write(b'0')def decrypt(filepath):f = open(filepath,'rb+')# 复制最后面的200个字节f.seek(-200,2)content = f.read(200)# 移动到开关,把文件头写入f.seek(0)f.write(content)#encrypt(r'f:\temp.mp4')
decrypt(r'f:\temp.mp4')

其实加密原理也很简单,就是通过某种算法把文件的二进制数据加密。我这里选择的加密算法很简单:
加密:把文件的前200位二进制数据移到文件末尾,再把前200位数据置成0.
解密:把文件的后200位二进制数据替换文件的前200位数据。

后期,可以把这个200(我自己随便设置的)改成一个自己设定的密码,那么加密和解密就不是那么容易破解了。
这个解密程序的好处:快,算法简单。
缺点:对高手来说,这种加密很容易破解,但是防范一般人还是很有用的,适合加密一些不太重要的文件。

每日10行代码156:Python实现简单的文件加密解密相关推荐

  1. python代码翻译-10 行代码,Python 教你自制屏幕翻译工具,有逼格!!

    原标题:10 行代码,Python 教你自制屏幕翻译工具,有逼格!! 1. 场景 大家如果平常遇到不认识的英文,相信大部分的人都会复制内容后,使用翻译软件,或者拷贝到网站上去执行翻译. 当然,对于 I ...

  2. python代码翻译器-10 行代码,Python 教你自制屏幕翻译工具,有逼格!!

    原标题:10 行代码,Python 教你自制屏幕翻译工具,有逼格!! 1. 场景 大家如果平常遇到不认识的英文,相信大部分的人都会复制内容后,使用翻译软件,或者拷贝到网站上去执行翻译. 当然,对于 I ...

  3. 每日10行代码31:爬取人民日报一日的所有文章并存入数据库

    今天又增加了存入数据库的功能,至此,爬取人民日报的项目已经结束,下一步我将跟另一篇文章的博主比较下代码,从他那学一些有用的东西. import requests import re from bs4 ...

  4. 10行代码掌握python基本语法元素_Python-基础课程学习(1)

    由于在机器学习的理论基础上需要一定的编程能力,所以在这里我打算跟进学习Python,以作为进一步学习机器学习打下基础. 这里我用学习的是mooc上北京理工大学,嵩天老师的课程.希望能有收获. 下面提一 ...

  5. 【java】简单的文件加密解密方式

    一.基础知识 1.异或加密解密方式(推荐) package com.test;import java.io.*;public class test1 {private static final int ...

  6. 每日10行代码44:用python操作手机点击淘金币

    大概需要的基础知识如下: 找到当前程序的package和launch activity adb shell dumpsys window windows | findstr "Current ...

  7. 每日10行代码47:python自动领取淘金币完整代码:基于坐标的模拟点击(2020年10月10日可用)

    今天把领淘金币的代码写完了,目前可以适应不同的分辨率,原理是模拟手去点击,就相当于手机上运行个按键精灵. 使用前提: 电脑上配置好了adb工具. 手机打开了开发者选项. 安装了手机淘宝. 手机淘宝是标 ...

  8. 每日10行代码65:python操作淘宝做淘金币能量任务(11月7日可用)

    淘宝里的淘金币有很多任务可以做,做了之后增加第二天获取的淘金币数量,为了得到更多的淘金币,我做了一个脚本,辅助做任务. import os import time import random impo ...

  9. 每日10行代码59:python+appium做淘金币的能量任务

    今天花了点时间,用python实现淘金币的能量任务,只能做浏览任务,别的功能还不完善,等以后再完善吧,最近家里出了点事,可能会耽误更新. import os import time import ra ...

最新文章

  1. 结束php语句的正确方法是,2011-2012-1-《PHP网页设计》试卷b
  2. 概率整形 Peobabilistic Shaping PS
  3. python有内存处理模块吗_使用Python多处理的高内存使用
  4. mysql 触发器 本表_MySQL触发器处理本表数据
  5. 如何使用 vCenter 警报自动监控 VSAN 组件阈值?
  6. Tensorrt7: AttributeError: ‘NoneType‘ object has no attribute ‘create_execution_context‘
  7. 手机看直播时卡屏幕显示无法连接服务器,看直播不再卡!教你几招提升网速方法...
  8. Ubuntu E: 无法获得锁 /var/lib/dpkg/lock - open (11:
  9. 【Speedtest】网络测速工具(支持命令行测试)
  10. editplus使用
  11. 11010011计算机二进制,二进制运算及转换(课件)
  12. 解除WORD文档保护
  13. ubuntu之使用wine微信之无法发送图片
  14. 阿里云国际9款免费标签云生成工具
  15. WinMerge的使用(代码相同却提示有差异)。
  16. excel同一行中如何添加换行
  17. 猫狗叫声模拟器小程序源码
  18. Web日志安全分析浅谈
  19. Zynq7000开发系列-1(Vivado HLx 2016.4下载及安装)
  20. 新买的电脑,自带最新版的office家庭和学生版,激活教程

热门文章

  1. 人工神经网络连接方式,全连接神经网络作用
  2. sha256校验工具_Springboot整合支付宝支付加内网穿透工具实现本地回调
  3. 【Shiro权限管理】一、简介
  4. windows默认文件(桌面、下载、文档等)设置为C盘根路径后怎么修改回去
  5. Windows安装nginx并配置端口转发
  6. Unity-Linerenderer画线功能
  7. 04 【忽略某些文件】
  8. Knative v0.16.0安装全过程
  9. android zxing生成条形码,使用ZXing创建android条形码扫描应用程序
  10. 基于javaweb的美发店理发店会员管理系统ssm项目源码