CN105590064B - 文件处理方法、文件处理装置及文件服务器 - Google Patents

文件处理方法、文件处理装置及文件服务器 Download PDF

Info

Publication number
CN105590064B
CN105590064B CN201510924780.3A CN201510924780A CN105590064B CN 105590064 B CN105590064 B CN 105590064B CN 201510924780 A CN201510924780 A CN 201510924780A CN 105590064 B CN105590064 B CN 105590064B
Authority
CN
China
Prior art keywords
file
store path
visited
regular expression
absolute
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510924780.3A
Other languages
English (en)
Other versions
CN105590064A (zh
Inventor
王伟
郑邦东
黄丹青
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Construction Bank Corp
Original Assignee
China Construction Bank Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Construction Bank Corp filed Critical China Construction Bank Corp
Priority to CN201510924780.3A priority Critical patent/CN105590064B/zh
Publication of CN105590064A publication Critical patent/CN105590064A/zh
Application granted granted Critical
Publication of CN105590064B publication Critical patent/CN105590064B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开应用于文件服务器的文件处理方法,在接收到客户端上传的文件后,对上传的文件的密文文件名进行解密,获得该文件的原始文件名,之后利用预设的正则表达式以及该文件的原始文件名确定该文件的绝对存储路径,将该文件存储至相应的存储空间;在接收到客户端发送的文件访问请求后,对文件访问请求中的密文文件名进行解密,获得待访问文件的原始文件名,之后确定与待访问文件对应的正则表达式,利用该正则表达式以及待访问文件的原始文件名确定待访问文件的绝对存储路径,之后在相应的存储空间获取待访问文件并输出,实现用户对文件的访问。基于本发明公开的文件处理方法,能够缩短访问文件的耗时,有效提高访问效率,并且提升文件的安全性。

Description

文件处理方法、文件处理装置及文件服务器
技术领域
本发明属于信息安全技术领域,尤其涉及文件处理方法、文件处理装置及文件服务器。
背景技术
在目前的企业文件管理中,为了文件的安全存储,主要使用文件服务器存储文件。文件服务器存储文件是指:在客户端将文件上传到文件服务器的某个地址。在通过客户端访问文件时,首先根据文件名找到对应的存储地址索引,然后通过存储地址索引在文件服务器中访问文件。
基于上述方式访问文件服务器存储的文件,关键在于:找到文件名与文件的存储地址索引的映射关系。目前主要解决方案是:将文件名与文件的存储地址索引的映射关系存储在数据库中,根据文件名从数据库中获取文件的存储地址索引。
但是,目前在数据库存储文件名和文件的存储地址索引的映射关系,之后通过查找数据库获取某一文件在文件服务器的存储地址的方案,存在以下缺陷:其一,文件访问耗时长、访问效率较低,由于需要先从数据库获取存储地址索引,之后再通过存储地址索引在文件服务器访问文件,因此导致访问文件的耗时长、效率较低;第二,容易引发数据安全问题,如果数据库发生泄露,那么非法用户可以利用泄露的存储地址索引无限制的在文件服务器上访问文件,极易造成数据安全事故。
发明内容
有鉴于此,本发明的目的在于提供一种文件处理方法及文件处理装置,以解决现有技术中访问文件耗时长、访问效率低,以及文件安全性较低的问题。本发明还提供一种文件服务器。
为实现上述目的,本发明提供如下技术方案:
一方面,本发明公开一种文件处理方法,应用于文件服务器,所述文件处理方法包括:
接收客户端上传的文件,所述文件的名称为利用第一加密算法对所述文件的原始文件名加密得到的密文文件名,其中,所述文件的原始文件名包含多个子字符串;
利用与所述客户端对应的密钥对接收到的文件的密文文件名进行解密,得到所述文件的原始文件名;
利用预设的正则表达式以及所述文件的原始文件名生成绝对存储路径;
将所述文件存储至所述绝对存储路径所指向的存储空间,保存所述正则表达式与所述文件的映射关系;
接收所述客户端发送的文件访问请求,所述文件访问请求包含待访问文件的密文文件名;
利用与所述客户端对应的密钥对所述待访问文件的密文文件名进行解密,获得待访问文件的原始文件名;
确定与所述待访问文件对应的正则表达式;
利用确定出的正则表达式以及所述待访问文件的原始文件名,确定所述待访问文件的绝对存储路径;
在确定出的绝对存储路径所指向的存储空间读取文件,并输出读取到的文件。
优选的,上述文件处理方法中,所述文件的原始文件名能够作为所述文件的唯一标识,所述文件的原始文件名具有业务含义,并且所述文件的原始文件名不包含文件夹命名禁止使用的特殊字符。
优选的,上述文件处理方法中,所述文件的原始文件名包括日期子字符串、机构编码子字符串、员工编号子字符串、时间戳子字符串和文件后缀名子字符串中的多个。
优选的,上述文件处理方法中,
所述利用预设的正则表达式以及所述文件的原始文件名生成绝对存储路径,包括:利用第一正则表达式确定所述文件的绝对存储路径前缀;利用第二正则表达式对所述文件的原始文件名进行切分,切分后的多个字符串形成所述文件的相对存储路径;组合所述文件的绝对存储路径前缀以及所述文件的相对存储路径,形成所述文件的绝对存储路径;
所述确定与所述待访问文件对应的正则表达式,具体为:确定与所述待访问文件对应的第一正则表达式和第二正则表达式;
所述利用确定出的正则表达式以及所述待访问文件的原始文件名,确定所述待访问文件的绝对存储路径,包括:利用与所述待访问文件对应的第一正则表达式确定所述待访问文件的绝对存储路径前缀;利用与所述待访问文件对应的第二正则表达式对所述待访问文件的原始文件名进行切分,切分后的多个字符串形成所述待访问文件的相对存储路径;组合所述待访问文件的绝对存储路径前缀和相对存储路径,形成所述待访问文件的绝对存储路径。
优选的,上述文件处理方法中,所述第一正则表达式被配置为:同一类型的文件具有相同的绝对存储路径,不同类型的文件具有不同的绝对存储路径。
另一方面,本发明公开一种文件处理装置,应用于文件服务器,所述文件处理装置包括:
文件接收单元,用于接收客户端上传的文件,所述文件的名称为利用第一加密算法对所述文件的原始文件名加密得到的密文文件名,其中,所述文件的原始文件名包含多个子字符串;
第一解密单元,用于利用与所述客户端对应的密钥对接收到的文件的密文文件名进行解密,得到所述文件的原始文件名;
第一存储路径生成单元,用于利用预设的正则表达式以及所述文件的原始文件名生成绝对存储路径;
第一处理单元,用于将所述文件存储至所述绝对存储路径所指向的存储空间,保存所述正则表达式与所述文件的映射关系;
请求接收单元,用于接收所述客户端发送的文件访问请求,所述文件访问请求包含待访问文件的密文文件名;
第二解密单元,用于利用与所述客户端对应的密钥对所述待访问文件的密文文件名进行解密,获得待访问文件的原始文件名;
正则表达式确定单元,用于确定与所述待访问文件对应的正则表达式;
第二存储路径生成单元,用于利用确定出的正则表达式以及所述待访问文件的原始文件名,确定所述待访问文件的绝对存储路径;
第二处理单元,用于在确定出的绝对存储路径所指向的存储空间读取文件,并输出读取到的文件。
优选的,上述文件处理装置中,所述文件的原始文件名能够作为所述文件的唯一标识,所述文件的原始文件名具有业务含义,并且所述文件的原始文件名不包含文件夹命名禁止使用的特殊字符。
优选的,上述文件处理装置中,所述文件的原始文件名包括日期子字符串、机构编码子字符串、员工编号子字符串、时间戳子字符串和文件后缀名子字符串中的多个。
优选的,上述文件处理装置中,
所述第一存储路径生成单元包括:第一处理模块,用于利用第一正则表达式确定所述文件的绝对存储路径前缀;第二处理模块,用于利用第二正则表达式对所述文件的原始文件名进行切分,切分后的多个字符串形成所述文件的相对存储路径;第一组合模块,用于组合所述文件的绝对存储路径前缀以及所述文件的相对存储路径,形成所述文件的绝对存储路径;
所述正则表达式确定单元具体用于:确定与所述待访问文件对应的第一正则表达式和第二正则表达式;
所述第二存储路径生成单元包括:第三处理模块,用于利用与所述待访问文件对应的第一正则表达式确定所述待访问文件的绝对存储路径前缀;第四处理模块,用于利用与所述待访问文件对应的第二正则表达式对所述待访问文件的原始文件名进行切分,切分后的多个字符串形成所述待访问文件的相对存储路径;第二组合模块,用于组合所述待访问文件的绝对存储路径前缀和相对存储路径,形成所述待访问文件的绝对存储路径。
优选的,上述文件处理装置中,所述第一正则表达式被配置为:同一类型的文件具有相同的绝对存储路径前缀,不同类型的文件具有不同的绝对存储路径前缀。
另一方面,本发明还公开一种文件服务器,所述文件服务器包括上述任意一种文件处理装置。
由此可见,本发明的有益效果为:
本发明公开的文件处理方法,文件服务器在接收到客户端上传的文件后,首先对上传的文件的密文文件名进行解密,获得该文件的原始文件名,之后利用预设的正则表达式以及该文件的原始文件名确定该文件的绝对存储路径,将该文件存储至相应的存储空间;文件服务器在接收到客户端发送的文件访问请求后,首先对文件访问请求中的密文文件名进行解密,获得待访问文件的原始文件名,之后确定与待访问文件对应的正则表达式,利用该正则表达式以及待访问文件的原始文件名确定待访问文件的绝对存储路径,之后在相应的存储空间获取待访问文件并输出,实现用户对文件的访问。基于本发明公开的文件处理方法,用户访问预先存储在文件服务器的某一文件时,只需要向文件服务器发送包含该文件的密文文件名的文件访问请求,就可以访问该文件,而不需要用户进行在数据库查询文件的绝对存储路径,再向文件服务器发送查询到的文件的绝对存储路径这些操作,因此能够缩短访问文件的耗时,有效提高访问效率;另外,文件服务器并没有保存文件的绝对存储路径,而是在合法用户发出文件访问请求后,再基于待访问文件的密文文件名经过多步处理操作得到待访问文件的绝对存储路径,因此,不会发生文件的绝对存储路径被泄露的问题,使得文件的安全性得到很大提升。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明公开的一种文件处理方法的流程图;
图2为本发明公开的一种利用预设的正则表达式以及文件的原始文件名生成存储路径的流程图;
图3为本发明公开的一种确定待访问文件的存储路径的流程图;
图4为本发明公开的一种文件处理装置的结构示意图;
图5为客户端基于本发明公开的文件处理方法上传文件的原理示意图;
图6为文件服务器在接收到文件访问请求后基于本发明公开的文件处理方法获取文件存储路径的原理示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明公开一种文件处理方法,以解决现有技术中访问文件耗时长、访问效率低,以及文件安全性较低的问题。本发明公开的文件处理方法应用于文件服务器。
参见图1,图1为本发明公开的一种文件处理方法的流程图。该文件处理方法包括:
步骤S1:接收客户端上传的文件。该文件的名称为利用第一加密算法对该文件的原始文件名加密得到的密文文件名。其中,该文件的原始文件名包含多个子字符串。
这里需要说明的是,用户可以在客户端将文件上传至文件服务器之前,对文件进行重命名,之后利用第一加密算法对重命名后的文件名(也就是文件的原始名)进行加密。由于加密后的文件名通常较长,不易记忆,用户可以将文件的密文文件名存储在客户端中。
另外,客户端和文件服务器需要预先交换对文件的原始文件名加密所使用的密钥,该密钥可以由客户端确定,之后再发送给文件服务器,也可以由文件服务器确定,之后再发送给客户端。
步骤S2:利用与客户端对应的密钥对接收到的文件的密文文件名进行解密,得到文件的原始文件名。
文件服务器接收到客户端上传的文件后,利用与该客户端对应的密钥对接收到的文件的密文文件名进行解密,即可得到该文件的原始文件名。
步骤S3:利用预设的正则表达式以及文件的原始文件名生成绝对存储路径。
步骤S4:将文件存储至绝对存储路径所指向的存储空间,保存正则表达式与文件的映射关系。
正则表达式是对字符串的一种逻辑操作公式,使用预先定义的特定字符以及这些特定字符的组合,对其他字符串进行编辑过滤。使用正则表达式,能够从指定的字符串中截取特定的部分。
文件服务器在得到文件的原始文件名之后,利用预设的正则表达式和该原始文件名确定该文件的绝对存储路径。之后,文件服务器将该文件存储至该绝对存储路径所指向的存储空间,同时文件服务器还需要保存该文件与相应的正则表达式的映射关系。
步骤S5:接收客户端发送的文件访问请求,文件访问请求包含待访问文件的密文文件名。
当用户需要访问存储在文件服务器中的某一文件时,只需要向文件服务器发送包含有待访问文件的密文文件名的文件访问请求。
步骤S6:利用与客户端对应的密钥对待访问文件的密文文件名进行解密,获得待访问文件的原始文件名。
文件服务器接收到客户端发送的文件访问请求后,查找与该客户端对应的密钥,之后利用密钥对待访问文件的密文文件名进行解密,就可以得到待访问文件的原始文件名。
步骤S7:确定与待访问文件对应的正则表达式。
步骤S8:利用确定出的正则表达式以及待访问文件的原始文件名,确定待访问文件的绝对存储路径。
步骤S9:在确定出的绝对存储路径所指向的存储空间读取文件,并输出该文件。
文件服务器确定待访问文件的明文文件名后,通过已存储的正则表达式与文件的映射关系,确定与待访问文件对应的正则表达式。之后,文件服务器利用确定出的正则表达式和待访问文件的原始文件名,就可以确定待访问文件的绝对存储路径。之后,文件服务器在确定出的绝对存储路径所指向的存储空间读取文件,并输出获取到的文件,即可实现用户对该文件的访问。
这里需要说明的是,文件服务器输出获取到的文件,可以是传输该文件的影像至客户端,也可以是传输该文件至客户端。
本发明公开的文件处理方法,文件服务器在接收到客户端上传的文件后,首先对上传的文件的密文文件名进行解密,获得该文件的原始文件名,之后利用预设的正则表达式以及该文件的原始文件名确定该文件的绝对存储路径,将该文件存储至相应的存储空间;文件服务器在接收到客户端发送的文件访问请求后,首先对文件访问请求中的密文文件名进行解密,获得待访问文件的原始文件名,之后确定与待访问文件对应的正则表达式,利用该正则表达式以及待访问文件的原始文件名确定待访问文件的绝对存储路径,之后在相应的存储空间获取待访问文件并输出,实现用户对文件的访问。基于本发明公开的文件处理方法,用户访问预先存储在文件服务器的某一文件时,只需要向文件服务器发送包含该文件的密文文件名的文件访问请求,就可以访问该文件,而不需要用户进行在数据库查询文件的绝对存储路径,再向文件服务器发送查询到的文件的绝对存储路径这些操作,因此能够缩短访问文件的耗时,有效提高访问效率;另外,文件服务器并没有保存文件的绝对存储路径,而是在合法用户发出文件访问请求后,再基于待访问文件的密文文件名经过多步处理操作得到待访问文件的绝对存储路径,因此,不会发生文件的绝对存储路径被泄露的问题,使得文件的安全性得到很大提升。
实施中,可以利用DES算法对文件的原始文件名进行加密处理。DES算法为密码体制中的对称密码体制,又被称为美国数据加密标准,是1972年美国IBM公司研制的对称密码体制加密算法。明文按64位进行分组,密钥长64位,密钥事实上是56位参与DES运算(第8、16、24、32、40、48、56、64位是校验位,使得每个密钥都有奇数个1)分组后的明文组和56位的密钥按位替代或交换的方法形成密文组的加密方法。
当然,利用其它现有的加密算法(如MD5算法和RSA/ECC算法)对文件的原始文件名进行加密处理都是可以的。只要客户端和文件服务器对所使用的加密算法预先约定即可。
实施中,文件的原始文件名应满足以下条件:文件的原始文件名能够作为文件的唯一标识,文件的原始文件名具有业务含义,并且文件的原始文件名不包含文件夹命名禁止使用的特殊字符,如“!”、“$”和“&”。
作为一种优选实施方式,文件的原始文件名包括日期子字符串、机构编码子字符串、员工编号子字符串、时间戳子字符串和文件后缀名子字符串中的多个。
下面结合实例1进行说明。
对于原始文件名为“张三报表.xlsx”的文件,通过使用4位年数,2位月数,2位日数,9位机构编号,3位员工编号,13位毫秒数,3-4位文件后缀名,将该文件重新命名为长度为36-37位的字符串。
该文件的新文件名(也就是该文件的原始文件名)生成方式如表1所示,具体为:年份(4位)+月份(2位)+日(2位)+机构号(9位)+员工编号(3)位)+时间戳(13位)+文件后缀名(3-4位)
表1
如果员工号为001,机构编号为310280000,该文件在2015年3月4日上传,则该文件的原始文件名为:
201504033102800008001428043960521xlsx。
在本发明上述公开的文件处理方法中,利用预设的正则表达式以及文件的原始文件名生成绝对存储路径,可以为利用预设的正则表达式和文件的原始文件名一次性生成相应的绝对存储路径。
相应的,文件服务器在接收到客户端发送的文件访问请求后,确定待访问文件的绝对存储路径过程中,利用待访问文件对应的正则表达式和待访问文件的原始文件名就可以确定绝对存储路径。
作为另一种实施方式,利用预设的正则表达式以及文件的原始文件名生成绝对存储路径,采用图2所示的方式,包括:
步骤S31:利用第一正则表达式确定该文件的绝对存储路径前缀;
步骤S32:利用第二正则表达式对所述文件的原始文件名进行切分,切分后的多个字符串形成该文件的相对存储路径;
步骤S33:组合文件的绝对存储路径前缀以及文件的相对存储路径,形成文件的绝对存储路径。
基于图2所示的方法,文件服务器针对客户端上传的一个文件,利用第一正则表达式确定文件的绝对存储路径前缀,利用第二正则表达式确定文件的相对存储路径,之后将绝对存储路径前缀和相对存储路径组合后构成文件的绝对存储路径。由于在确定文件的绝对存储路径过程中,使用了两个正则表达式,相对于仅利用一个正则表达式确定文件的绝对存储路径相比,能够进一步提高文件的安全性。
这里需要说明的是,在采用图2所示方法确定文件的绝对存储路径的情况下,文件服务器需要保存文件与第一正则表达式以及第二正则表达式的映射关系,并且需要记录第一正则表达式用于确定文件的绝对存储路径前缀、第二正则表达式用于确定文件的相对存储路径。
另外,文件服务器在接收到客户端发送的文件访问请求后,确定与待访问文件对应的正则表达式的过程中,将会确定与该文件对应的第一正则表达式和第二正则表达式。
在后续确定待访问文件的绝对存储路径过程中,文件服务器利用确定出的正则表达式以及待访问文件的原始文件名,确定待访问文件的绝对存储路径的过程,如图3所示,包括:
步骤S81:利用与待访问文件对应的第一正则表达式确定待访问文件的绝对存储路径前缀;
步骤S82:利用与待访问文件对应的第二正则表达式对待访问文件的原始文件名进行切分,切分后的多个字符串形成待访问文件的相对存储路径;
步骤S83:组合待访问文件的绝对存储路径前缀和相对存储路径,形成待访问文件的绝对存储路径。
文件服务器利用第一正则表达式确定待访问文件的绝对存储路径前缀,利用第二正则表达式确定待访问文件的相对存储路径,之后组合待访问文件的绝对存储路径前缀和相对存储路径,形成待访问文件的绝对存储路径。
实施中,文件服务器可以为所有文件分配相同的绝对存储路径前缀。
例如:文件服务器为第一文件(.doc文件)和第二文件(.xml文件)分配的绝对存储路径分别为:
/home/ap/file/AType/A.doc
/home/ap/file/BType/b.xml
则这两个文件的绝对存储路径前缀均为/home/ap/file,相对存储路径分别为/AType/A.doc和/BType/b.xml。
作为优选实施方式,文件服务器根据文件的类型,为不同类型的文件分配不同的绝对存储路径前缀。也就是说,第一正则表达式被配置为:同一类型的文件具有相同的绝对存储路径前缀,不同类型的文件具有不同的绝对存储路径前缀。
这里需要说明的是,同一类型的文件是指:具有某方面的相同特性的文件。例如:具有相同文件格式的文件为同一类型的文件,具有相同业务属性的文件为同一类型的文件,具有相同上传日期的文件为同一类型的文件。
下面以正则表达式1为例,对文件服务器确定文件的绝对存储路径前缀的过程进行说明。假设文件的原始文件名为字符串S,字符串S的长度为L。
正则表达式1regEx1的抽象定义为:
regEx1=
pathA@@@.{x,y}@@@-TypeA@@@/pathB@@@.{x2,y2}@@@-TypeB@@@
正则表达式1regEx1表示对于A类型的文件,文件的绝对存储路径前缀为pathA,文件的实际存储名称为subStr(S,L-x,L-y);对于B类型的文件,文件的绝对存储路径前缀为pathB,文件的实际存储名称为subStr(S,L-x2,L-y2)。
例如:
regEx1==/costfile/corp@@@.{30,38}@@@-CORP@@@/costfile/cost/seal@@@.{30,38}@@@-SEAL@@@。
在该实例中,正则表达式1regEx1表示对于CORP类型的文件,文件的绝对存储路径前缀为/costfile/corp,文件的实际存储名称为subStr(S,L-30,L-38);对于SEAL类型的文件,文件的绝对存储路径前缀为/costfile/cost/seal,文件的实际存储名称为subStr(S,L-30,L-38)。
基于正则表达式1,可以根据文件的类型分别定义不同的绝对存储路径前缀,使得文件的绝对存储路径定义更为灵活,也方便后续查找。
下面分别以正则表达式2为例,对文件服务器确定文件的相对存储路径的过程进行说明。假设文件的原始文件名为字符串S,字符串S的长度为L。
正则表达式2regEx2的抽象定义为:
regEx2=L1@@@L2@@@...@@@Ln。
其中,L1+L2+…+Ln<L。正则表达式2regEx2表示,将长度为L的原始文件名切分成目录:/pathName1/pathName2/…/pathNamen/。其中LpathNamei=Li(i=1,2…n),LpathNamei表示文件名为pathName1的字符串长度。假设该文件原后缀名长度为k(k=3,4),则该文件在文件服务器中的实际存储名称为的子字符串。
按照正则表达式2对文件的原始文件名进行切分,实际就是将文件的原始文件名切分成不同长度的子字符串,用切分形成的子字符串作为该文件的相对存储路径的一部分,最后将切分后剩余的字符串除去文件后缀名(3-4位)之外的子字符串作为该文件在文件服务器中的实际存储名称。其中,切分形成的各子字符串的长度Li由拼接该字符串时表达的业务含义确定。
例如:
regEx2=8@@@3@@@2@@@2@@@5@@@10。
在该实例中,正则表达式2regEx2表示将文件的原始文件名S切分成相对路径为/S1/S2/…/S6/。
其中,S1长度为8,S2长度为3,S3=S4=2,S5=5,S6=10,该文件在文件服务器中的实际存储名称为subStr(S,30,L-k)。
仍以实例1中的文件为例,该文件的原始文件名为:
201504033102800008001428043960521xlsx
文件服务器生成该文件的存储路径的过程包括以下两步:
第一步,利用上文中的正则表达式1确定该文件的绝对存储路径前缀为:/costfile/corp/;
第二步,利用上文中的正则表达式2确定该文件的相对存储路径为:
/20150403/310/28/00/00001/428043960521.xlsx
则该文件在文件服务器中的绝对存储路径为:
/costfile/corp/20150403/310/28/00/00001/428043960521.xlsx,该文件在文件服务器中的实际存储名称为:428043960521.xlsx。
本发明上述公开了应用于文件服务器的文件处理方法,相应的,本发明还公开应用于文件服务器的文件处理装置。下文关于文件处理装置的说明与上文关于文件处理方法的说明可以相互参见。
参见图4,图4为本发明公开的一种文件处理装置的结构示意图。该文件处理装置包括文件接收单元1、第一解密单元2、第一存储路径生成单元3、第一处理单元4、请求接收单元5、第二解密单元6、正则表达式确定单元7、第二存储路径生成单元8和第二处理单元9。
其中:
文件接收单元1,用于接收客户端上传的文件,文件的名称为利用第一加密算法对文件的原始文件名加密得到的密文文件名,其中,文件的原始文件名包含多个子字符串。
第一解密单元2,用于利用与客户端对应的密钥对接收到的文件的密文文件名进行解密,得到文件的原始文件名。
第一存储路径生成单元3,用于利用预设的正则表达式以及文件的原始文件名生成绝对存储路径。
第一处理单元4,用于将文件存储至绝对存储路径所指向的存储空间,保存正则表达式与文件的映射关系。
请求接收单元5,用于接收客户端发送的文件访问请求,文件访问请求包含待访问文件的密文文件名。
第二解密单元6,用于利用与客户端对应的密钥对待访问文件的密文文件名进行解密,获得待访问文件的原始文件名。
正则表达式确定单元7,用于确定与待访问文件对应的正则表达式。
第二存储路径生成单元8,用于利用确定出的正则表达式以及待访问文件的原始文件名,确定待访问文件的绝对存储路径。
第二处理单元9,用于在确定出的绝对存储路径所指向的存储空间读取文件,并输出读取到的文件。
基于本发明公开的文件处理装置,用户访问预先存储在文件服务器的某一文件时,只需要向文件服务器发送包含该文件的密文文件名的文件访问请求,就可以访问该文件,而不需要用户进行在数据库查询文件的绝对存储路径,再向文件服务器发送查询到的文件的绝对存储路径这些操作,因此能够缩短访问文件的耗时,有效提高访问效率;另外,文件服务器并没有保存文件的绝对存储路径,而是在合法用户发出文件访问请求后,再基于待访问文件的密文文件名经过多步处理操作得到待访问文件的绝对存储路径,因此,不会发生文件的绝对存储路径被泄露的问题,使得文件的安全性得到很大提升。
实施中,文件的原始文件名应满足以下条件:文件的原始文件名能够作为文件的唯一标识,文件的原始文件名具有业务含义,并且文件的原始文件名不包含文件夹命名禁止使用的特殊字符,如“!”、“$”和“&”。
作为一种优选实施方式,文件的原始文件名包括日期子字符串、机构编码子字符串、员工编号子字符串、时间戳子字符串和文件后缀名子字符串中的多个。
在本发明图4所示的文件处理装置中,第一存储路径生成单元3利用预设的正则表达式以及文件的原始文件名生成绝对存储路径,可以为利用预设的正则表达式和文件的原始文件名一次性生成相应的绝对存储路径。
相应的,第二存储路径生成单元8确定待访问文件的存储路径过程中,利用待访问文件对应的正则表达式和待访问文件的原始文件名就可以确定绝对存储路径。
作为另一种实施方式,第一存储路径生成单元3采用如下结构,包括:第一处理模块,用于利用第一正则表达式确定文件的绝对存储路径前缀;第二处理模块,用于利用第二正则表达式对文件的原始文件名进行切分,切分后的多个字符串形成文件的相对存储路径;第一组合模块,用于组合文件的绝对存储路径前缀以及文件的相对存储路径,形成文件的绝对存储路径。
相应的,正则表达式确定单元7具体用于:确定与待访问文件对应的第一正则表达式和第二正则表达式。
第二存储路径生成单元8采用如下结构,包括:第三处理模块,用于利用与待访问文件对应的第一正则表达式确定待访问文件的绝对存储路径前缀;第四处理模块,用于利用与待访问文件对应的第二正则表达式对待访问文件的原始文件名进行切分,切分后的多个字符串形成待访问文件的相对存储路径;第二组合模块,用于组合待访问文件的绝对存储路径前缀和相对存储路径,形成待访问文件的绝对存储路径。
作为一种优选实施方式,第一正则表达式被配置为:同一类型的文件具有相同的绝对存储路径前缀,不同类型的文件具有不同的绝对存储路径前缀。
本发明还公开一种文件服务器,该文件服务器包括本发明上述公开的任意一种文件处理装置。本发明公开的文件服务器,具有较高的访问效率,同时存储的文件的安全性较高。
图5示出了客户端基于本发明公开的文件处理方法上传文件的原理,图6示出了文件服务器在接收到文件访问请求后基于本发明公开的文件处理方法获取文件存储路径的原理。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (8)

1.一种文件处理方法,其特征在于,应用于文件服务器,所述文件处理方法包括:
接收客户端上传的文件,所述文件的名称为利用第一加密算法对所述文件的原始文件名加密得到的密文文件名,其中,所述文件的原始文件名包含多个子字符串;
利用与所述客户端对应的密钥对接收到的文件的密文文件名进行解密,得到所述文件的原始文件名;
利用预设的正则表达式以及所述文件的原始文件名生成绝对存储路径,包括:利用第一正则表达式确定所述文件的绝对存储路径前缀;利用第二正则表达式对所述文件的原始文件名进行切分,切分后的多个字符串形成所述文件的相对存储路径;组合所述文件的绝对存储路径前缀以及所述文件的相对存储路径,形成所述文件的绝对存储路径;
将所述文件存储至所述绝对存储路径所指向的存储空间,保存所述正则表达式与所述文件的映射关系;
接收所述客户端发送的文件访问请求,所述文件访问请求包含待访问文件的密文文件名;
利用与所述客户端对应的密钥对所述待访问文件的密文文件名进行解密,获得待访问文件的原始文件名;
确定与所述待访问文件对应的正则表达式,包括:确定与所述待访问文件对应的第一正则表达式和第二正则表达式;
利用确定出的正则表达式以及所述待访问文件的原始文件名,确定所述待访问文件的绝对存储路径,包括:利用与所述待访问文件对应的第一正则表达式确定所述待访问文件的绝对存储路径前缀;利用与所述待访问文件对应的第二正则表达式对所述待访问文件的原始文件名进行切分,切分后的多个字符串形成所述待访问文件的相对存储路径;组合所述待访问文件的绝对存储路径前缀和相对存储路径,形成所述待访问文件的绝对存储路径;
在确定出的绝对存储路径所指向的存储空间读取文件,并输出读取到的文件。
2.根据权利要求1所述的文件处理方法,其特征在于,所述文件的原始文件名能够作为所述文件的唯一标识,所述文件的原始文件名具有业务含义,并且所述文件的原始文件名不包含文件夹命名禁止使用的特殊字符。
3.根据权利要求2所述的文件处理方法,其特征在于,所述文件的原始文件名包括日期子字符串、机构编码子字符串、员工编号子字符串、时间戳子字符串和文件后缀名子字符串中的多个。
4.根据权利要求1、2或3所述的文件处理方法,其特征在于,所述第一正则表达式被配置为:同一类型的文件具有相同的绝对存储路径前缀,不同类型的文件具有不同的绝对存储路径前缀。
5.一种文件处理装置,其特征在于,应用于文件服务器,所述文件处理装置包括:
文件接收单元,用于接收客户端上传的文件,所述文件的名称为利用第一加密算法对所述文件的原始文件名加密得到的密文文件名,其中,所述文件的原始文件名包含多个子字符串;
第一解密单元,用于利用与所述客户端对应的密钥对接收到的文件的密文文件名进行解密,得到所述文件的原始文件名;
第一存储路径生成单元,用于利用预设的正则表达式以及所述文件的原始文件名生成绝对存储路径,所述第一存储路径生成单元包括:第一处理模块,用于利用第一正则表达式确定所述文件的绝对存储路径前缀;第二处理模块,用于利用第二正则表达式对所述文件的原始文件名进行切分,切分后的多个字符串形成所述文件的相对存储路径;第一组合模块,用于组合所述文件的绝对存储路径前缀以及所述文件的相对存储路径,形成所述文件的绝对存储路径;
第一处理单元,用于将所述文件存储至所述绝对存储路径所指向的存储空间,保存所述正则表达式与所述文件的映射关系;
请求接收单元,用于接收所述客户端发送的文件访问请求,所述文件访问请求包含待访问文件的密文文件名;
第二解密单元,用于利用与所述客户端对应的密钥对所述待访问文件的密文文件名进行解密,获得待访问文件的原始文件名;
正则表达式确定单元,用于确定与所述待访问文件对应的第一正则表达式和第二正则表达式;
第二存储路径生成单元,用于利用确定出的正则表达式以及所述待访问文件的原始文件名,确定所述待访问文件的绝对存储路径,所述第二存储路径生成单元包括:第三处理模块,用于利用与所述待访问文件对应的第一正则表达式确定所述待访问文件的绝对存储路径前缀;第四处理模块,用于利用与所述待访问文件对应的第二正则表达式对所述待访问文件的原始文件名进行切分,切分后的多个字符串形成所述待访问文件的相对存储路径;第二组合模块,用于组合所述待访问文件的绝对存储路径前缀和相对存储路径,形成所述待访问文件的绝对存储路径;
第二处理单元,用于在确定出的绝对存储路径所指向的存储空间读取文件,并输出读取到的文件。
6.根据权利要求5所述的文件处理装置,其特征在于,所述文件的原始文件名能够作为所述文件的唯一标识,所述文件的原始文件名具有业务含义,并且所述文件的原始文件名不包含文件夹命名禁止使用的特殊字符。
7.根据权利要求5或6所述的文件处理装置,其特征在于,所述第一正则表达式被配置为:同一类型的文件具有相同的绝对存储路径前缀,不同类型的文件具有不同的绝对存储路径前缀。
8.一种文件服务器,其特征在于,所述文件服务器包括如权利要求5至7中任一项所述的文件处理装置。
CN201510924780.3A 2015-12-14 2015-12-14 文件处理方法、文件处理装置及文件服务器 Active CN105590064B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510924780.3A CN105590064B (zh) 2015-12-14 2015-12-14 文件处理方法、文件处理装置及文件服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510924780.3A CN105590064B (zh) 2015-12-14 2015-12-14 文件处理方法、文件处理装置及文件服务器

Publications (2)

Publication Number Publication Date
CN105590064A CN105590064A (zh) 2016-05-18
CN105590064B true CN105590064B (zh) 2018-10-19

Family

ID=55929638

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510924780.3A Active CN105590064B (zh) 2015-12-14 2015-12-14 文件处理方法、文件处理装置及文件服务器

Country Status (1)

Country Link
CN (1) CN105590064B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106130951B (zh) * 2016-05-31 2020-05-01 努比亚技术有限公司 一种应用商店服务管理方法和装置
CN106506613B (zh) * 2016-10-31 2018-04-13 大唐高鸿信安(浙江)信息科技有限公司 分布式key‑value存储系统的数据存储位置加密方法
CN108572964B (zh) * 2017-03-09 2022-01-04 武汉斗鱼网络科技有限公司 一种生成文件名的方法及装置
CN107168985A (zh) * 2017-03-21 2017-09-15 咪咕文化科技有限公司 一种模糊文件属性信息的方法及装置
CN107122463B (zh) * 2017-04-27 2020-12-04 北京冠群信息技术股份有限公司 文件保存方法及装置
CN107800819A (zh) * 2017-11-17 2018-03-13 深圳市泉眼网络科技有限公司 一种文件标识的生成方法、装置和服务器
CN108205732A (zh) * 2017-12-26 2018-06-26 云南电网有限责任公司 一种基于文件的新能源预测数据接入的校验方法
CN110659154A (zh) * 2018-06-28 2020-01-07 北京京东尚科信息技术有限公司 一种数据处理方法和装置
CN108959964A (zh) * 2018-06-29 2018-12-07 阿里巴巴集团控股有限公司 一种用于报文脱敏的方法、装置及计算机设备
CN110769016A (zh) * 2018-07-27 2020-02-07 亿度慧达教育科技(北京)有限公司 文件上传方法及计算机存储介质
CN109376133B (zh) * 2018-09-26 2023-08-18 中国平安人寿保险股份有限公司 文件访问方法及文件访问系统
CN112035860A (zh) * 2020-09-03 2020-12-04 深圳市百富智能新技术有限公司 文件加密方法、终端、装置、设备及介质
CN112835864B (zh) * 2021-02-03 2024-02-20 北京联创信安科技股份有限公司 一种文件存储方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101344881A (zh) * 2007-07-09 2009-01-14 中国科学院大气物理研究所 海量文件型数据的索引生成方法及装置和搜索系统
CN103020144A (zh) * 2012-11-21 2013-04-03 用友软件股份有限公司 文件管理系统和文件管理方法
CN103108028A (zh) * 2012-12-10 2013-05-15 江苏乐买到网络科技有限公司 一种具有安全架构的云计算处理系统
CN103384256A (zh) * 2012-05-02 2013-11-06 天津书生投资有限公司 一种云存储方法及装置
CN104881495A (zh) * 2015-06-15 2015-09-02 北京金山安全软件有限公司 一种文件夹路径识别及文件夹清理方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7197513B2 (en) * 2000-12-08 2007-03-27 Aol Llc Distributed image storage architecture

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101344881A (zh) * 2007-07-09 2009-01-14 中国科学院大气物理研究所 海量文件型数据的索引生成方法及装置和搜索系统
CN103384256A (zh) * 2012-05-02 2013-11-06 天津书生投资有限公司 一种云存储方法及装置
CN103020144A (zh) * 2012-11-21 2013-04-03 用友软件股份有限公司 文件管理系统和文件管理方法
CN103108028A (zh) * 2012-12-10 2013-05-15 江苏乐买到网络科技有限公司 一种具有安全架构的云计算处理系统
CN104881495A (zh) * 2015-06-15 2015-09-02 北京金山安全软件有限公司 一种文件夹路径识别及文件夹清理方法及装置

Also Published As

Publication number Publication date
CN105590064A (zh) 2016-05-18

Similar Documents

Publication Publication Date Title
CN105590064B (zh) 文件处理方法、文件处理装置及文件服务器
TWI810409B (zh) 用於透過區塊鏈網路有效安全處理、存取及傳輸資料之系統與方法
CN104331408B (zh) 分级内容可寻址存储系统中的块级客户端侧加密
US7895666B1 (en) Data structure representation using hash-based directed acyclic graphs and related method
US8996863B2 (en) Attribute-based access-controlled data-storage system
Xhafa et al. An efficient PHR service system supporting fuzzy keyword search and fine-grained access control
CN104601325B (zh) 数据加密方法、数据解密方法、装置、设备及系统
CN108737374A (zh) 一种区块链中数据存储的隐私保护方法
Foresti Preserving privacy in data outsourcing
CN102413159B (zh) 一种面向网络化操作系统的可信任在线存储系统
CN114338038B (zh) 区块链数据保密查询的存储系统及不经意传输方法
CN116226880A (zh) 一种基于可搜索加密的区块链密文检索安全溯源系统
Rasina Begum et al. SEEDDUP: a three-tier SEcurE data DedUPlication architecture-based storage and retrieval for cross-domains over cloud
US20100064377A1 (en) Access rights for digital objects
CN107360252B (zh) 一种异构云域授权的数据安全访问方法
Hacıgümüş et al. Search on encrypted data
Sun et al. Research of data security model in cloud computing platform for SMEs
US9667617B2 (en) Automatic elevation of system security
Vivek et al. Dynamic Verifiable Encrypted Keyword Search: Using Bitmap Index
Chhabraa et al. An optimized data duplication strategy for cloud computing: Dedup with ABE and bloom filters
Pareek et al. Efficient dynamic key‐aggregate cryptosystem for secure and flexible data sharing
JP2009535660A (ja) 安全保管システムおよび安全保管方法
Kissel et al. Verifiable symmetric searchable encryption for multiple groups of users
Poon et al. Privacy-aware search and computation over encrypted data stores
Fernandes et al. Controlled and Secure Sharing of Classified Threat Intelligence between Multiple Entities

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant