加密方法、解密方法及其装置和终端的制作方法_4

文档序号:9870262阅读:来源:国知局
加密数据的数据长度时,根据预设加密规则对待加密数据从起始加密位置处开始进行加密,即加密后的待加密数据有未加密的数据(即明文数据)和密文数据,实现了对待加密数据进行局部加密,从而提高了加密效率,而且在对加密后的待加密数据进行解密时,可以有效地提高解密的效率,从而缩短了加密和解密的时间。
[0097]在上述技术方案中,优选地,所述加密单元406具体用于,将所述预设加密长度作为当前加密长度,以及执行处理步骤:根据所述起始加密位置和所述预设加密长度对所述待加密数据进行加密,判断所述待加密数据中是否存在未处理数据;更新单元4062,用于在所述加密单元406的判断结果为是时,将所述未处理数据作为所述待加密数据,对所述起始加密位置和所述当前加密长度进行更新;所述加密单元406还用于,根据更新后的起始加密位置和当前加密长度执行所述处理步骤,直到判定所述待加密数据中不存在所述未处理数据为止,否则,结束对所述待加密数据的加密。
[0098]在该技术方案中,从待加密数据的起始加密位置开始对待加密数据进行加密,得到一段长度为预设加密长度的密文数据,然后在该密文数据之后的一段数据不进行加密,即为明文数据,若该待处理数据中还存在未处理数据(即待加密数据中的在该明文数据之后的一段数据),则将未处理数据作为待加密数据,并循环执行上述步骤,直到判定待处理数据中不存在未处理数据为止,使得加密后的待加密数据中存在有密文数据和明文数据,从而实现了对待加密数据的局部加密。
[00"]另外,更新单元4062具体用于,根据当前加密长度和预设明文长度对起始加密位置进行更新,若待加密数据的数据长度小于或等于预设加密长度,则将待加密数据的数据长度作为当前加密长度,若待加密数据的数据长度大于预设加密长度,则将预设加密长度作为当前加密长度。
[0?00] 在上述任一技术方案中,优选地,所述加密单元406包括:第二判断单元4064,用于获取预设明文长度,并通过以下公式判断所述待加密数据中是否存在所述未处理数据,[0101 ] L^iH= Lftiern X (LsrfLaj),
[0102]其中,L_表示所述未处理数据的长度,Utiae表示所述待加密数据的长度,Ue表示所述预设加密长度,L明表示所述预设明文长度,η为大于O的整数,若_<0,则判定所述待加密数据中不存在所述未处理数据,若_>0,则判定所述待加密数据中存在所述未处理数据。
[0103]在该技术方案中,未处理数据的长度为待加密数据的长度减去密文数据的长度和明文数据的长度,若未处理数据的长度小于或等于零,说明已经完成对待加密数据的加密,若未处理数据的长度大于零,说明继续循环上述中的处理步骤,直到未处理数据的长度小于零为止,从而保证了判断是否对待加密数据继续进行加密的准确性和可靠性。
[0104]在上述任一技术方案中,优选地,还包括:设置单元408,用于若判定所述预设加密长度大于或等于所述待加密数据的数据长度,则重新设置预设加密长度,所述重新设置的预设加密长度小于所述待加密数据的数据长度。
[0105]在该技术方案中,若预设加密长度大于或等于待加密数据的数据长度,则重新设置比待加密数据的数据长度小的预设加密长度,根据重新设置的预设加密长度对待加密数据进行加密,如此,加密后的待加密数据同时具有明文数据和密文数据,即实现了对待加密数据的局部加密。
[0106]图5示出了根据本发明的一个实施例的解密装置的结构示意图。
[0107]如图5所示,根据本发明的一个实施例的解密装置500,包括:获取模块502,用于获取待解密数据的数据长度、预设解密长度和起始解密位置;判断模块504,用于判断所述预设解密长度是否小于所述待解密数据的数据长度;解密模块506,用于在所述判断模块504的判断结果为否时,按照预设解密规则从所述起始解密位置对所述待解密数据进行解密。
[0108]在该技术方案中,根据预设解密规则在待解密数据的起始解密位置处开始进行解密,待解密数据可以是由上述任一项加密方法加密得到的待解密数据,即待解密数据具有明文数据和密文数据,也就是说在对待解密数据解密时,仅对待解密数据中的密文数据进行解密,从而有效地提高了解密效率和缩短了解密时间。
[0109]具体地,可以根据待解密数据在加密时的起始加密位置和预设加密长度确定解密时的起始解密位置和预设解密长度。
[0110]在上述技术方案中,优选地,所述解密模块506具体用于,将所述预设解密长度作为当前解密长度,执行处理步骤:根据所述起始解密位置和所述预设解密长度对所述待解密数据进行解密,判断所述待解密数据中是否存在未处理数据;更新模块,用于在所述解密模块506的判断结果为是时,将所述未处理数据作为所述待解密数据,对所述起始解密位置和所述当前解密长度进行更新,所述解密模块506还用于,根据更新后的起始解密位置和当前解密长度执行所述处理步骤,直到判定所述待解密数据中不存在所述未处理数据为止,否则,结束对所述待解密数据的解密。
[0111]在上述任一技术方案中,优选地,所述解密模块506具体用于,获取所述待解密数据的预设明文长度,并通过以下公式判断所述待解密数据中是否存在所述未处理数据,
[0112]L^ms= Lf^-n X (LsrfLaj),
[0113]其中,L_表示所述未处理数据的长度,Lwse表示所述待解密数据的长度,Ue表示所述预设解密长度,L明表示所述预设明文长度,η为大于O的整数,若_ < O,则判定所述待解密数据中不存在所述未处理数据,若_>0,则判定所述待解密数据中存在所述未处理数据。
[0114]在上述任一技术方案中,优选地,还包括:设置模块,用于在所述判断模块504判定所述预设解密长度大于或等于所述待解密数据的数据长度时,则重新设置预设解密长度,所述重新设置的预设解密长度小于所述待解密数据的数据长度。
[0115]图6示出了根据本发明的一个实施例的终端的结构示意图。
[0116]如图6所示,根据本发明的一个实施例的终端600,包括:上述技术方案中任一项所述的加密装400置;以及上述技术方案中任一项所述的解密装500,因此,该终端600具有和上述技术方案中任一项所述的加密装置400、上述技术方案中任一项所述的解密装置500相同的技术效果,在此不再赘述。
[0117]图7示出了根据本发明的另一个实施例的终端的结构示意图。
[0118]如图7所示,根据本发明的另一个实施例的终端700(在该实施例中待加密数据为指纹信息,当然待加密数据可以是虹膜信息、声音识别信息或者密码),包括:指纹读取器700、加密装置400、控制装置704、数据库706和解密装置500,指纹读取器702采集指纹信息之后,将指纹信息发送至加密装置400,加密装置400对指纹信息进行加密,加密装置400将加密后的指纹信息发送至控制装置704,控制装置704通过解密装置500对加密后的指纹信息进行解密,并从数据库706中获取预先存储的指纹信息,将解密后的指纹信息与预先存储的指纹信息进行匹配,根据匹配结果执行相应操作。
[0119]图8A至8D示出了根据本发明的一个实施例的对待加密数据进行加密的示意图;图9示出了根据本发明的一个实施例的加密后的数据的示意图。
[0120]如图8A所示,在待加密数据的起始加密位置处开始对待加密数据进行加密,形成密文数据,密文数据的长度为预设加密长度,对密文数据之后的指定长度的一段数据不进行加密,即明文数据。此时通过公式L未麵=Lftier(LarfLii)计算未处理数据的长度,由图8A可见,计算得到的L勒睡大于O,说明在加密后的待加密数据还存在未处理数据,则继续对未处理数据进行加密。
[0121]如图SB所示,将未处理数据作为待加密数据,并对起始加密位置进行更新,即将明文数据的一端作为更新后的起始加密位置,其中,该明文数据的一端与待加密数据相邻。而且由于待加密数据的长度大于预设加密长度,则当前加密长
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1