一种基于网络的数据自毁方法

文档序号:6444747阅读:273来源:国知局
专利名称:一种基于网络的数据自毁方法
技术领域
本发明提供一种基于网络的数据自毁方法,属于信息安全领域中的数据保护技术。
背景技术
网络技术的发展为数据的传输存储提供了极大的便利。相对的,由于网络拓扑结构的复杂性及网络服务器的分布性,使得数据在网络上的删除成为一个难题。用户数据在网络传输过程中,由于人为设置或是服务器策略等原因,不可避免的会产生一些副本。而这些数据副本在脱离了用户控制后,可能会对用户隐私造成安全上的隐患。为解决这一问题,传统的方法是对网络上的用户数据进行加密,例如Microsoft的DRM技术以及Sony的Magic fete技术等。但是,随着计算机运算能力的高速发展,针对传统加密手段的暴力破解算法,其成功率也在日益提高。利用网络服务器以及数据库管理系统的分布性,来保护用户数据,并实现数据的按时自毁,是近年来数据保护技术研究的新方向。

发明内容
针对网络环境中的用户数据,本发明基于分治思想,提出一种基于网络的数据自毁方法。利用网络服务器与数据库管理系统的分布性特点,对数据进行分片存储。数据在到达用户设定的时间之后,由网络服务器自动进行销毁,无须用户人为介入。用户凭数据自毁格式链接提取数据,即使该链接泄露,数据自毁时间戳到期之后也不能通过该链接恢复数据。该方法对于用户数据的时效性提供了有效的保护。本发明的步骤如下
当有用户向网络服务器输入用户数据时,网络服务器接收用户输入的用户数据和用户数据自毁时间,并生成用户数据的自毁时间戳D,其中D为32位Datetime类型对象,
顺序提取用户数据每一字节(Byte)并计算当前位置相对于用户数据头部的偏移量N,其中N为0至65535的整数;每当N达到分片长度L的正整数倍时,提取(N_L,N)区间的L个字节数组F存入链表Tl,其中L为0至65535整数,F是长度为L的字节数组。如果从偏移量N到用户数据末端的用户数据长度小于分片长度L,则将长度小于分片长度L的用户数据作为一个字节数组F并存入链表Tl,
当偏移量N到达用户数据长度末端时,调用单向哈希函数对链表Tl中的每一分片字节数组F进行哈希,得到所述分片字节数组F的哈希值ra,其中,哈希值ra是长度为16至2048的字符串,所述的单向哈希函数为循环冗余校验或消息摘要算法第五版,
将分片字节数组F及其哈希值ra和数据自毁时间戳D —同存入数据库管理系统中,全部生成包括至少所述分片字节数组F及其哈希值ra和数据自毁时间戳D三项纪录的HASHTABLE 表,
将链表Tl中所有分片的哈希值按其对应分片在链表Tl中的相对位置顺序存入字符串
H中,
最后,将字符串H首部加上数据自毁格式链接标识符“SDD://”返回至用户;同时,每隔时间S,网络服务器通过数据库管理系统接口查询HASHTABLE表内所有数据的自毁时间戳D,如果有自毁时间戳D早于或为当前系统时间TS的记录,则网络服务器通过数据库管理系统删除所有自毁时间戳D早于或为当前系统时间TS的记录,以及记录中所包含的分片字节数组F、分片哈希值ra、数据自毁时间戳D。网络服务器接收到用户提取数据请求后,首先检查用户请求字符串首部是否有数据自毁格式链接标识符“ SDD // ”。若存在该标识符,则将用户请求字符串在标识符之后的子串按照分片哈希长度HL等分,并将等分后的每一子串顺序存入链表T2,其中HL为16至2048的整数。顺序访问链表T2中的每一子串,通过数据库管理系统查询HASHTABLE表中记录,若存在与该子串相同的分片哈希值FH,则将Hl对应记录中的分片字节数组F添加到数据P的尾端,其中P为长度0至正无穷的字节数组。最后,将P返回至用户,P即为用户所请求的数据内容。
下面具体解释本发明提出的数据自毁方法。设用户数据UD长度为LD,自毁时间为UD。当用户数据输入至网络服务器后,首先将UD转化为32位Datetime类型的数据自毁时间戳,再根据预设的分片长度L对用户数据UD进行分片,即将LD分为「(LD/L) π片,其中最后一分片长度为mod(LD/L),其余分片长度均为L。依次计算每一分片的哈希值,并与分片数组、数据自毁时间戳存入数据库管理系统中。最后,将所有分片的哈希值顺序加入到字符串H中,并添加数据自毁格式链接标识符“SDD://”返回至用户。用户提交数据自毁格式链接至网络服务器,服务器首先检查用户请求串首部是否存在数据自毁格式链接标识符“SDD://”。若存在,则将该标识符之后的子串按照预设哈希长度HL等分。设子串长度为SL,则SL必定为HL的整数倍。将该子串顺序等分为(SL/HL)个子串,依次通过数据库管理系统查找其对应的分片字节数组,并将数组按顺序链接。最后,返回链接后的数组,即为用户所请求的数据。网络服务器端的监视线程每隔时间S将数据自毁时间戳小于或等于当前系统时间的记录删除。此时即使用户提交数据自毁格式链接至网络服务器,由于哈希值所对应的数据分片数组已被销毁,用户也不能获得相应数据。本发明的有益效果在于将用户数据分片之后存入数据库,实现了用户数据的正规化与平面化。利用网络服务器与数据库管理系统的分布性特征,实现了用户数据在逻辑与物理层面上的分散,提高了网络中用户数据的安全性。为数据加入数据时间戳,实现用户数据的按时自动销毁,保护了用户数据的时效性。使用循环冗余校验或消息摘要算法第五版等哈希函数对用户数据分片进行哈希,使用户数据分片具备防篡改特性,同时保护了用户数据的完整与有效。



图1方法流程图。图2数据监视步骤流程图。图3数据存储步骤流程图。图4数据提取步骤流程图。
具体实施例方式下面结合附图和实例对本发明进一步详细说明,所给出的实施例是为了说明本发明方法的技术特点和功能特点,而不是限制本发明的范围。
实施例1
创建一个web service应用程序,其中包括以下模块 数据监视模块,用于实时监视数据库中所有记录,并销毁到期记录; 数据存储模块,用于将用户输入数据分片哈希后存入数据库管理系统,添加数据自毁时间戳,并生成数据自毁格式链接;
数据提取模块,用于根据输入的数据自毁格式链接从数据库管理系统中提取数据。在x86架构计算机系统中使用Microsoft Visual Studio. Net 2005平台编译,并通过hternet Information Service服务中间件发布。使用IBM x51作为网络服务器。当有用户使用x86架构的微型个人计算机向网络服务器输入用户数据时,部署于网络服务器上的web service应用程序调用存储模块,接收用户输入的用户数据和用户数据自毁时间,并生成用户数据的自毁时间戳D,其中D为32位Datetime类型对象,
存储模块顺序提取用户数据每一字节(Byte)并计算当前位置相对于用户数据头部的偏移量N ;每当N达到分片长度2048的正整数倍时,提取(N-2048,N)区间的2048个字节数组F存入链表Tl,F是长度为2048的字节数组。如果从偏移量N到用户数据末端的用户数据长度小于分片长度2048,则将长度小于分片长度L的用户数据作为一个字节数组F并存入链表Tl,
当偏移量N到达用户数据长度末端时,调用单向哈希函数对链表Tl中的每一分片字节数组F进行哈希,得到所述分片字节数组F的哈希值ra,其中,哈希值ra是长度为32的字符串,所述的单向哈希函数为消息摘要算法第五版,
将分片字节数组F及其哈希值ra和数据自毁时间戳D —同存入数据库管理系统中,全部生成包括至少所述分片字节数组F及其哈希值ra和数据自毁时间戳D三项纪录的HASHTABLE表,此处所使用的数据库管理系统为Microsoft SQL Server 2000 professional。将链表Tl中所有分片的哈希值按其对应分片在链表Tl中的相对位置顺序存入字符串H中,
最后,将字符串H首部加上数据自毁格式链接标识符“SDD://”返回至用户;同时,每隔500毫秒,部署于网络服务器上的web service应用程序中的数据监视模块通过数据库管理系统接口使用结构化查询语言查询HASHTABLE表内所有数据的自毁时间戳D,如果有自毁时间戳D早于或为当前系统时间TS的记录,则网络服务器通过数据库管理系统使用结构化查询语言删除所有自毁时间戳D早于或为当前系统时间TS的记录,以及记录中所包含的分片字节数组F、分片哈希值ra、数据自毁时间戳D。网络服务器接收到用户提取数据请求后,首先检查用户请求字符串首部是否有数据自毁格式链接标识符“ SDD // ”。若存在该标识符,则将用户请求字符串在标识符之后的子串按照分片哈希长度HL 等分,并将等分后的每一子串顺序存入链表T2,其中HL为32。顺序访问链表T2中的每一子串,通过数据库管理系统查询HASHTABLE表中记录, 若存在与该子串相同的分片哈希值ra,则将ra对应记录中的分片字节数组F添加到数据Ρ 的尾端,其中ρ为长度ο至正无穷的字节数组。最后,将Ρ返回至用户,Ρ即为用户所请求的数据内容。
实施例2
用户使用支持超文本传输协议的浏览器通过服务器端web界面输入用户数据,用户数据为 “Across the great wall we can reach every corner in the world.,,。当用户数据提交至网络服务器之后,网络服务器调用web service上的数据存储模块进行处理,按照分片大小2048对用户数据进行分片,使用消息摘要算法第五版哈希每一分片对应哈希值, 并对分片数据添加数据自毁时间戳2010-11-19 13:11:23,存入数据库管理系统,与其他记录混杂。最后,返回带有数据自毁格式链接的请求串到用户浏览器。用户将带有数据自毁格式链接的请求串填入用户电子邮件HTML代码段中后发送。当接收者收到含有数据自毁格式链接的数据后,浏览器向网络服务器提交数据自毁格式链接。网络服务器调用web service应用程序数据提取模块,通过数据自毁格式链接查找相应数据分片,恢复用户数据并返回,用户可正常浏览邮件内容。当超过预设的数据自毁时间戳2010-11-19 13 11 23之后,部署于网络服务器上的web service应用程序数据监视模块通过数据库管理系统接口使用结构化查询语言将过期分片对应记录销毁,此时用户即使通过数据自毁格式链接试图提取用户数据,由于对应数据分片及分片哈希值已不存在,web service应用程序数据提取模块只能返回数据分片不存在的提示信息“DESTRUCTED DATA”。由此看出,本发明方法实现了网络上用户数据的按时自毁。
权利要求
1. 一种基于网络的数据自毁方法,其特征在于,所述方法包括下述步骤当有用户向网络服务器输入用户数据时,网络服务器接收用户输入的用户数据和用户数据自毁时间,并生成用户数据的自毁时间戳D,其中D为32位Datetime类型对象,顺序提取用户数据每一字节(Byte)并计算当前位置相对于用户数据头部的偏移量N,其中N为0至65535的整数;每当N达到分片长度L的正整数倍时,提取(N_L,N)区间的L个字节数组F存入链表Tl,其中L为0至65535整数,F是长度为L的字节数组,如果从偏移量N到用户数据末端的用户数据长度小于分片长度L,则将长度小于分片长度L的用户数据作为一个字节数组F并存入链表Tl,当偏移量N到达用户数据长度末端时,调用单向哈希函数对链表Tl中的每一分片字节数组F进行哈希,得到所述分片字节数组F的哈希值ra,其中,哈希值ra是长度为16至2048的字符串,所述的单向哈希函数为循环冗余校验或消息摘要算法第五版,将分片字节数组F及其哈希值ra和数据自毁时间戳D —同存入数据库管理系统中,全部生成包括至少所述分片字节数组F及其哈希值ra和数据自毁时间戳D三项纪录的HASHTABLE 表,将链表Tl中所有分片的哈希值按其对应分片在链表Tl中的相对位置顺序存入字符串H中,最后,将字符串H首部加上数据自毁格式链接标识符“SDD://”返回至用户;同时,每隔时间S,网络服务器通过数据库管理系统接口查询HASHTABLE表内所有数据的自毁时间戳D,如果有自毁时间戳D早于或为当前系统时间TS的记录,则网络服务器通过数据库管理系统删除所有自毁时间戳D早于或为当前系统时间TS的记录,以及记录中所包含的分片字节数组F、分片哈希值ra、数据自毁时间戳D。
全文摘要
本发明提供一种基于网络的数据自毁方法,属于信息安全领域中的数据保护技术。该方法首先将用户数据按预设分片长度进行分片,使用单向哈希函数分别计算每一分片的哈希值,然后对每一分片加入数据自毁时间戳,存入数据库管理系统中,并生成数据自毁格式链接返回到用户。同时,网络服务器通过数据库管理系统接口循环查询所有记录,如有记录的自毁时间戳早于或为当前系统时间,则删除自毁时间戳早于或为当前系统时间的记录。本方法的效果和益处是通过数据哈希实现了网络中所存储的用户数据按时自毁,保证了用户数据的隐私性和时效性。
文档编号G06F17/30GK102571949SQ20111045804
公开日2012年7月11日 申请日期2011年12月31日 优先权日2011年12月31日
发明者傅晓, 王宇, 王志坚, 许峰 申请人:河海大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1