[发明专利]一种基于U盘的文件安全分发方法无效
申请号: | 201310022404.6 | 申请日: | 2013-01-21 |
公开(公告)号: | CN103093137A | 公开(公告)日: | 2013-05-08 |
发明(设计)人: | 谷建华;周兴社;赵天海;王云岚;王川;崔齐;王涛;李秀春 | 申请(专利权)人: | 西北工业大学 |
主分类号: | G06F21/34 | 分类号: | G06F21/34;G06F21/62 |
代理公司: | 西北工业大学专利中心 61204 | 代理人: | 王鲜凯 |
地址: | 710072 *** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 文件 安全 分发 方法 | ||
1.一种基于U盘的文件安全分发方法,其特征在于步骤如下:
步骤1:用户注册,每个用户自定义用户密码Key1;
步骤2:对原始Excel文件File进行自定义编码,生成专用格式文件File1;所述自定义编码格式如下:自定义编码为二进制码,每一位代表Excel文件中的信息,字符信息用ANSI编码,英文字符用单字节存储,中文用双子节存储;
首先为Excel表格头信息:
最开始4字节float型,表示表格总宽度;
后续4字节float型,表示表格总高度;
后续4字节int型,表示表格总行数;
后续44字节int型,表示表格总列数。
然后为单元格信息:
后续4字节int型,表示单元格行号;
后续4字节int型,表示单元格列号;
后续1字节bool型,表示是否为合并单元格。如果该bool型数据为true,则:
后续1字节bool型,表示是否是合并单元格的第一个单元格。如果该bool型数据为true,则:
后续4字节float型,表示合并单元格的宽度;
后续4字节float型,表示合并单元格的高度;
后续4字节int型,表示合并单元格的行数;
后续4字节int型,表示合并单元格的列数。
后续4字节float型,表示单元格宽度;
后续4字节float型,表示单元格高度;
后续2字节short型,表示单元格内按字体划分的数据块数;如果该short型数据不为0,则:
后续4字节int型,表示数据块长度,假设该int型数值为Cell_Length,则:后续Cell_Length个字节string型,表示数据块内容;
后续1字节byte型,表示字体名所占字节数,假设该byte型数值为Name_Length,则:后续Name_Length个字节string型,表示字体名;
后续1字节byte型,表示字体大小;
后续4字节int型,表示字体颜色RGB值;
后续1字节bool型,表示是否粗体;
后续1字节bool型,表示是否斜体;
后续1字节byte型,表示单元格横向对其方式;
后续1字节byte型,表示单元格纵向对其方式;
后续4字节int型,表示单元格背景颜色RGB值;
步骤3:对专用格式文件File1进行AES加密,生成密文文件File1_ENC,密钥为Key1;
步骤4:对原始Excel文件File进行MD5哈希,得到哈希值File_MD5;
步骤5:用U盘芯片序列号做密钥对Key1进行AES加密,得到Key1_UID,然后将Key1_UID存储在U盘的系统扇区中,生成认证U盘UKey;
步骤6:将密文文件File1_ENC及对应的原始文件哈希值File_MD5通过网络或其他途径分发给终端用户;
步骤7:用户将认证U盘UKey连接到计算机,然后使用文件查看客户端打开密文文件File1_ENC,文件查看客户端获取认证U盘UKey的芯片序列号并用其作为密钥对Key1_UID进行AES解密,得到Key2;
步骤8:如果Key2与用户输入的密码Key3相同,用Key2作为密钥对密文File1_ENC进行AES解密,得到专用格式文件File1’,否则客户端退出;
步骤9:使用专用解码程序对File1’进行解码,得到文件File’;
步骤10:对File’进行MD5哈希,得到File’_MD5;
步骤11:对比File_MD5和File’_MD5,当两个文件相同时,步骤6的分发正确;当两个文件不相同时,步骤6的分发错误。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西北工业大学,未经西北工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310022404.6/1.html,转载请声明来源钻瓜专利网。