一种文件标识的生成方法、装置和服务器与流程

文档序号:13937646阅读:188来源:国知局
一种文件标识的生成方法、装置和服务器与流程

本发明属于通信技术领域,尤其涉及一种文件标识的生成方法、装置和服务器。



背景技术:

随着通信领域的技术发展,在终端之间、终端与服务器之间、或者服务器集群之间都会有大量的数据传递,其中文件的传递很常见,为了提高文件的传输的安全性,文件的身份标识非常重要,在上述设备之间,通过文件的身份标识请求文件的传递是常态。

现有技术中的文件的身份标识生成的方式有多种,可根据文件的内容形成加密的文件身份标识,也可根据文件自身的一些性质生成很长一串不易于破解的文件身份标识,但是上述技术中生成的文件身份标识长度太长,计算复杂,容易出错,安全性不够。



技术实现要素:

本发明提供一种文件标识的生成方法、装置和服务器,可以解决生成的文件身份标识长度太长,计算复杂,容易出错,安全性不够的问题。

本发明实施例第一方面提供了一种文件标识的生成方法,包括:

当获取到客户端上传的文件时,获取上传所述文件的用户的身份标识信息和当前时间戳;

按照预设的进制和处理规则,将所述当前时间戳处理为时间戳字符串;

按照预设的规则为所述文件生成前缀字符,所述前缀字符标识所述文件的属性;

通过预设的加密算法,将所述前缀字符、所述用户的身份标识信息以及所述时间戳字符串进行加密,得到加密后的加密字符串,并根据预设的校验码生成规则,获取所述加密字符串中的多位字符作为校验码;

按照预设的文件标识生成规则,将所述前缀字符、所述时间戳字符串和所述校验码,生成文件标识。

本发明实施例第二方面提供了一种文件标识的生成装置,包括:

第一获取模块,用于当获取到客户端上传的文件时,获取上传所述文件的用户的身份标识信息和当前时间戳;

处理模块,用于按照预设的进制和处理规则,将所述当前时间戳处理为时间戳字符串;

生成模块,用于按照预设的规则为所述文件生成前缀字符,所述前缀字符标识所述文件的属性;

加密模块,用于通过预设的加密算法,将所述前缀字符、所述用户的身份标识信息以及所述时间戳字符串进行加密,得到加密后的加密字符串;

第二获取模块,用于根据预设的校验码生成规则,获取所述加密字符串中的多位字符作为校验码;

所述生成模块,还用于按照预设的文件标识生成规则,将所述前缀字符、所述时间戳字符串和所述校验码,生成文件标识。

本发明实施例第三方面提供了一种服务器,包括:

存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现本发明实施例第一方面提供的文件标识的生成方法。

从上述本发明实施例可知,本发明提供的文件标识的生成方法、装置和服务器,服务器获取上传的文件中的用户身份标识信息和当前时间戳,按照预设的进制和处理规则,将该当前时间戳处理为时间戳字符串,并未该文件生成前缀字符,通过预设的加密算法,将该前缀字符、该用户的身份标识信息以及该时间戳字符串进行加密,并根据预设的校验码生成规则,获取该加密字符串中的多位字符作为校验码,按照预设的文件标识生成规则,将该前缀字符、该时间戳字符串和该校验码,生成文件标识,经过上述的加密及多次处理得到的文件标识,长度短且安全性高。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例。

图1是本发明第一实施例提供的文件标识的生成方法的流程示意图;

图2是本发明第二实施例提供的文件标识的生成方法的流程示意图;

图3是本发明第三实施例提供的文件标识的生成装置的结构示意图;

图4是本发明第四实施例提供的文件标识的生成装置的结构示意图;

图5示出了一种服务器的硬件结构图。

具体实施方式

为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参阅图1,图1为本发明第一实施例提供的文件标识的生成方法的实现流程示意图,该方法包括以下步骤:

s101、当获取到客户端上传的文件时,获取上传该文件的用户的身份标识信息和当前时间戳;客户端内置于终端内,用户通过该客户端上传文件给服务器,服务器接收到上传的文件时,获取该文件的用户的身份标识信息,该身份标识信息可以是用户登录该客户端的登录id(identity),也可以是该文件的用户id。

s102、按照预设的进制和处理规则,将该当前时间戳处理为时间戳字符串;

预设的进制可以是36进制。当前时间戳经过处理后得到一串字符。

s103、按照预设的规则为该文件生成前缀字符,该前缀字符标识该文件的属性;

例如,该前缀字符可以为f,表示该文件的属性是file(文件)。该前缀字符也可以是其他预先指定的字符,可以表示该文件的属性即可。

s104、通过预设的加密算法,将该前缀字符、该用户的身份标识信息以及该时间戳字符串进行加密,得到加密后的加密字符串,并根据预设的校验码生成规则,获取该加密字符串中的多位字符作为校验码;预设的加密算法可以为md5(messagedigestalgorithm),通过md5加密算法,将该前缀字符、该用户的身份标识信息以及该时间戳字符串进行加密,得到一个加密字符串。

按照预设的校验码生成规则,从该加密字符串中获取多位字符,并将该多位字符作为校验码。该校验码用于生成文件标识,以及用于校验多个文件标识各自对应的生成规则是否来源一致。

s105、按照预设的文件标识生成规则,将该前缀字符、该时间戳字符串和该校验码,生成文件标识。

按照预设的文件标识的生成规则,将该前缀字符、该时间戳字符串和该校验码,生成一个文件标识。

进一步地,服务器生成该文件标识后,将该文件标识对应发送给上传该文件的客户端。该客户端可在终端屏幕上显示该文件标识,使用户可获知该文件标识并进行相应的保存、选择等操作。

本发明实施例中,服务器获取上传的文件中的用户身份标识信息和当前时间戳,按照预设的进制和处理规则,将该当前时间戳处理为时间戳字符串,并未该文件生成前缀字符,通过预设的加密算法,将该前缀字符、该用户的身份标识信息以及该时间戳字符串进行加密,并根据预设的校验码生成规则,获取该加密字符串中的多位字符作为校验码,按照预设的文件标识生成规则,将该前缀字符、该时间戳字符串和该校验码,生成文件标识,经过上述的加密及多次处理得到的文件标识,长度短且安全性高。

请参阅图2,图2为本发明第二实施例中的文件标识的生成方法的流程示意图,该方法包括以下步骤:

s201、当获取到客户端上传的文件时,获取上传该文件的用户的身份标识信息和当前时间戳;

s202、将当前时间戳减去自定义的时间戳,得到计算结果,并按照预设的36进制,将该计算结果处理为四位数的时间戳字符串;

将当前时间戳减去自定义的时间戳,可减小该计算结果的数值,生成位数较少的时间戳字符串,便于计算。

该自定义的时间戳是大于预置数值的时间戳,即,该自定义的时间戳所表示的时刻晚于预置时刻。确认能够将与当前时间戳相减得到的结果,减小到可便于计算。例如,该自定义的时间戳可以是2010-01-0100:00:01的时间戳,即标识2010年1月1日0点0分1秒的时刻。

按照预设的36进制,将该计算结果处理为四位数的时间戳字符串,即该时间戳字符串前两位是0~9中的数字,后两位是a~z中的英文字母。

只有四位的时间戳字符串大大降低了运算难度。

s203、按照预设的规则为该文件生成前缀字符,该前缀字符标识该文件的属性;

该前缀字符最少为一位,也可以是更多位数。例如,该前缀字符可以是f,也可以是fi,还可以是file等。

s204、将该前缀字符、该用户的身份标识信息以及该时间戳字符串进行加密,得到加密字符串,并将该加密字符串中的多位字符作为校验码;将该前缀字符f、该用户的id以及四位数的该时间戳字符串,按顺序拼接为待处理字符串,通过md5加密算法,将该待处理字符串进行加密得到该加密字符串,选取该加密字符串中的前三位的字符,按照位次顺序,将选取的三位字符组成该校验码,即将选取的三位字符按照它们在该加密字符串中的位次顺序拼接为该校验码。该验证码是一个三位数的验证码。

s205、将该前缀字符、该时间戳字符串和该校验码,按照顺序依次排列,拼接而成该文件标识。

将一位数的前缀字符、四位数的时间戳字符串和三位数的校验码,按照顺序依次排列,拼接成八位数的文件标识。

需要说明的是,该前缀字符和校验码的位数都可以与上述描述不同,文件标识的位数不限于本实施例中描述的八位。

进一步地,服务器生成该文件标识后,将该文件标识对应发送给上传该文件的客户端。该客户端可在终端屏幕上显示该文件标识,使用户可获知该文件标识并进行相应的保存、选择等操作。

进一步地,当服务器接收到客户端的文件请求时,获取该文件请求中的文件id,在服务器上查找与该文件id对应的文件,并且对应查找到该文件的相关信息,文件相关信息为该文件生成文件id的信息,包括上传该文件的用户的身份标识信息和当前时间戳,预设的将当前时间戳处理为时间戳字符串的进制和处理规则,预设的生成前缀字符的规则,预设的加密算法,预设的校验码生成规则,以及,预设的文件标识生成规则。

根据该文件相关信息,生成该文件的校验id,即,根据该文件相关信息,服务器再次生成一个文件id,作为校验id,对比该校验id与获取的文件id是否相同,若相同,则确认该文件请求是合法的,该客户端是具有申请权限的客户端,将该文件请求所请求的文件发送给该客户端。

通过对文件请求中的文件标识进行校验,提高发送文件的安全性。

本发明实施例中,服务器获取上传的文件中的用户身份标识信息和当前时间戳,按照预设的进制和处理规则,将该当前时间戳处理为时间戳字符串,并未该文件生成前缀字符,通过预设的加密算法,将该前缀字符、该用户的身份标识信息以及该时间戳字符串进行加密,并根据预设的校验码生成规则,获取该加密字符串中的多位字符作为校验码,按照预设的文件标识生成规则,将该前缀字符、该时间戳字符串和该校验码,生成文件标识,经过上述的加密及多次处理得到八位数的文件标识,长度短且安全性高。

请参见图3,图3为本发明第三实施例中文件标识的生成装置的结构示意图,该文件标识的生成装置可内置于服务器中,用于执行上述图1~图2所示实施例中的文件标识的生成方法,该文件标识的生成装置包括:第一获取模块301、处理模块302、生成模块303、加密模块304和第二获取模块305。

第一获取模块301,用于当获取到客户端上传的文件时,获取上传该文件的用户的身份标识信息和当前时间戳;

处理模块302,用于按照预设的进制和处理规则,将该当前时间戳处理为时间戳字符串;

生成模块303,用于按照预设的规则为该文件生成前缀字符,该前缀字符标识该文件的属性;

加密模块304,用于通过预设的加密算法,将该前缀字符、该用户的身份标识信息以及该时间戳字符串进行加密,得到加密后的加密字符串;

第二获取模块305,用于根据预设的校验码生成规则,获取该加密字符串中的多位字符作为校验码;

生成模块303,还用于按照预设的文件标识生成规则,将该前缀字符、该时间戳字符串和该校验码,生成文件标识。

本实施例未尽之细节,请参阅前述图1至图2所示实施例的描述,此处不再赘述。

本发明实施例中,服务器获取上传的文件中的用户身份标识信息和当前时间戳,按照预设的进制和处理规则,将该当前时间戳处理为时间戳字符串,并未该文件生成前缀字符,通过预设的加密算法,将该前缀字符、该用户的身份标识信息以及该时间戳字符串进行加密,并根据预设的校验码生成规则,获取该加密字符串中的多位字符作为校验码,按照预设的文件标识生成规则,将该前缀字符、该时间戳字符串和该校验码,生成文件标识,经过上述的加密及多次处理得到八位数的文件标识,长度短且安全性高。

请参见图4,图4为本发明第四实施例中文件标识的生成装置的结构示意图,该文件标识的生成装置可内置于服务器中,用于执行上述图1~图2所示实施例中的文件标识的生成方法,该文件标识的生成装置与图3所示装置的不同之处在于:

处理模块302包括:

计算子模块3021,用于将该当前时间戳减去自定义的时间戳,得到计算结果;

处理子模块3022,用于按照预设的36进制,将该计算结果处理为四位数的时间戳字符串;

加密模块304包括:

拼接子模块3041,用于将该前缀字符、该用户的身份标识信息以及该时间戳字符串,按顺序拼接为待处理字符串;

加密子模块3042,用于通过消息摘要算法第五版加密算法,将该待处理字符串进行加密得到该加密字符串;

进一步地,第二获取模块305,还用于选取该加密字符串中的前三位的字符,按照位次排列顺序,将选取的三位字符组成该校验码。

生成模块303,还用于将该前缀字符、该时间戳字符串和该校验码,按照顺序依次排列,拼接而成该文件标识。

该装置还可以进一步包括:第三获取模块、查找模块、对比模块、发送模块;

第三获取模块401,用于当接收到客户端的文件请求时,获取该文件请求中的文件标识;

查找模块402,用于查找与获取的文件标识对应的文件的相关信息,该文件相关信息为该文件生成文件标识的信息;

生成模块303,还用于根据该文件相关信息,生成该文件的校验标识。

对比模块403,用于对比该校验标识与获取的文件标识是否相同;

发送模块404,用于若相同,则将该文件标识的文件发送给该客户端。

本实施例未尽之细节,请参阅前述图1至图3所示实施例的描述,此处不再赘述。

本发明实施例中,服务器获取上传的文件中的用户身份标识信息和当前时间戳,按照预设的进制和处理规则,将该当前时间戳处理为时间戳字符串,并未该文件生成前缀字符,通过预设的加密算法,将该前缀字符、该用户的身份标识信息以及该时间戳字符串进行加密,并根据预设的校验码生成规则,获取该加密字符串中的多位字符作为校验码,按照预设的文件标识生成规则,将该前缀字符、该时间戳字符串和该校验码,生成文件标识,经过上述的加密及多次处理得到八位数的文件标识,长度短且安全性高。

请参阅图5,图5为本发明实施例提供的服务器硬件结构示意图。

本实施例中所描述的服务器,包括:

存储器51、处理器52及存储在存储器51上并可在处理器上运行的计算机程序,处理器执行所述程序时实现前述图1~图4所示实施例中描述的文件标识的生成方法。

存储器51可以是高速随机存取记忆体(ram,randomaccessmemory)存储器,也可为非不稳定的存储器(non-volatilememory),例如磁盘存储器。存储器51用于存储一组可执行程序代码,处理器52与存储器51耦合。

该计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现前述图1~图4所示实施例中描述的文件标识的生成方法。进一步地,该计算机可存储介质还可以是u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

需要说明的是,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。

所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来。

需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本发明所必须的。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。

以上为对本发明所提供的文件标识的生成方法、装置和服务器的描述,对于本领域的技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1