python 加密文件夹_加密文件之Python版
#!/usr/bin/python
#encoding: UTF-8
#################################################################
# script: encode.py
# description: 实现对文件相关加密解密
# version: 0.1 实现对普通文件的加密解密
# usage: python encode.py [encode | decode] filename [key]
#################################################################
import sys, os, struct
# 加密字符串
def encodeString(str):
key_index = 0
# 定义加密字符串
str_encode = ''
# 字符串转换成字节数组
bytes = bytearray(str)
# 按字节加密
for b in bytes:
b_encode = (b + key_bytes[key_index]) % 256
str_encode += struct.pack('B', b_encode)
key_index = (key_index + 1) % len(key_bytes)
# 返回加密字符串
return str_encode
# 解密字符串
def decodeString(str):
key_index = 0
# 定义解密字符串
str_decode = ''
# 字符串转换成字节数组
bytes = bytearray(str)
for b in bytes:
b_decode = (b + 256 - key_bytes[key_index]) % 256
str_decode += struct.pack('B', b_decode)
key_index = (key_index + 1) % len(key_bytes)
# 返回解密字符串
return str_decode
# 检查命令行参数
if len(sys.argv) < 3 or len(sys.argv) > 4:
print 'Usage: python', sys.argv[0], '[encode | decode] filename [key]'
exit(1)
if sys.argv[1] not in ('encode', 'decode'):
print 'Usage: python', sys.argv[0], '[encode | decode] filename [key]'
exit(1)
# 文件名
filename = sys.argv[2]
if not os.path.isfile(filename):
print 'File "' + filename + '" is not exsisted'
print 'Usage: python', sys.argv[0], '[encode | decode] filename [key]'
exit(1)
# 定义密钥。加密方式:字符串每个字节与密钥对应字节相加后求余
key = 'TESTKEY'
if len(sys.argv) == 4:
key = sys.argv[3]
key_bytes = bytearray(key)
# 加密或解密
mode = sys.argv[1]
# 加密或解密文件
file_mode_name = filename + '.' + mode
# 执行加密或解密
if mode == 'encode':
file = open(filename, 'r')
file_encode = open(file_mode_name, 'w')
str = file.read()
str_encode = encodeString(str)
file_encode.write(str_encode)
file.close()
file_encode.close()
else:
file = open(filename, 'r')
file_decode = open(file_mode_name, 'w')
str = file.read()
str_decode = decodeString(str)
file_decode.write(str_decode)
file.close()
file_decode.close()
print 'Succeed to', mode, 'file "' + filename + '", result file is "' + file_mode_name + '"'
python 加密文件夹_加密文件之Python版相关推荐
- python自动整理文件夹_计算机文件和文件夹的Python自动管理,自动化,电脑,及
目录 一.输出目录所在的文件以及文件夹 import os print(os.getcwd())#获得当前文件的地址 print(os.path.join('MyProjects','AI'))#让P ...
- python找不到scripts文件夹_快速解决安装python没有scripts文件夹的问题
安装Python2.7,好多次都不会产生scripts文件夹,导致无法使用pip. 折腾了一下,找到了解决办法. 让人无法接受的是,只要是我给的安装包一定不会产生scripts文件夹,所以应该是我的安 ...
- java代码删除文件夹_删除文件夹的java类
/** * @author www.nwu.edu.cn MiniRice * @author darkrice@gmail.com * @version 1.2 * */ http://www ...
- 大数据之-Hadoop之HDFS的API操作_文件夹_以及文件删除案例---大数据之hadoop工作笔记0059
然后我们再来看hdfs操作,删除文件夹 就上面这样写就可以了,但是可以看到有第二个参数 上面也有介绍了,源码中写, 如果这个参数设置为true的话,并且要删除的是个文件夹的话,那么 这个时候就不会抛出 ...
- mcldownload文件夹_—MCLDownload—文件夹
本帖最后由 [⊙o⊙] 于 2020-3-28 20:14 编辑 我要正式发干帖了(跟水相反的不是很干嘛) 今天我不会水帖的!!! 今天我们来讲讲MCLDownload文件夹 360截图2020032 ...
- centos 删除文件夹_手机文件夹是英文,占空间还不敢乱删?花一分钟读懂手机语言...
不少人肯定发现,自己的手机里面有一些莫名其妙的文件夹,占据内存空间.且占据很大,想删除,但全部是由英文标注,不知道从何删起. 今天小兰就来帮助大家决绝这么问题,一分钟教你读懂这些手机语言,快速清理手机 ...
- 天正lisp文件夹_天正文件布图在哪里
Q1. 为何图形导出后出现的填充和文字丢失? 一些设计单位在执行"图形导出"(以前叫"另存旧版")命令后,把图形文件复制到其他机器,由天正3或者acad打开,出 ...
- 计算机桌面文件能单独设密码吗,电脑上文件夹怎么加密_桌面文件夹怎么加密码...
在工作中,我们会有些文件是比较重要的,不能给一些无关人员看到,这时我们就可以把文件夹给加密下保护起来,这样就不会被别人看到了,那么怎么对电脑上的文件夹加密呢,方法很简单,下面小编给大家分享电脑桌面文件 ...
- java文件加密软件设计_【文件夹加密超级大师和Java软件构架设计模式哪个好用】文件夹加密超级大师和Java软件构架设计模式对比-ZOL下载...
强大的文件和文件夹加密软件,还具有彻底隐藏磁盘以及禁止使用或只读使用USB存储设备.数据粉碎删除等功能. 软件特色功能: 1 对文件夹具有五种加密方法: 闪电加密:瞬间加密你电脑里或移动硬盘上的文件 ...
最新文章
- Hspice2008安装步骤
- CTF——Web——php 弱类型总结
- FLEX常用验证控件
- 华擎 j3455 时钟 linux,J3455安装centos步骤
- 【技术直通车】使用FME Extension for ArcGIS读取ArcPad AXF文件
- 2000G视频资料送带资源账号
- 高精度室内外融合定位服务平台-“羲和”系统
- JDK8下载安装与Win10下Java环境变量配置
- 六子棋AI程序---核心讲解
- JPEG压缩编码算法原理
- cpuz不显示服务器内存,cpu-z怎么看不到内存频率
- 吉林全国计算机报名系统入口,http://ncre.jleea.com.cn吉林计算机等级考试报名系统入口...
- 车型识别API调用与批量分类车辆图片
- 手势操作实用教程 | 实现「滑动清除」效果
- 大写汉字转阿拉伯数字c语言,阿拉伯数字转换成中文大写数字
- HANA学习季(一) :HANA的基本概念
- 基于RocketMQ设计秒杀
- 图与排列、图的存在性
- 51单片机DS18B20测温LCD1602显示
- 广数25i系统倒刀回刀m代码_GSK-25i数控铣床加工中心系统介绍