加密方法、解密方法及其裝置和終端的制作方法
【技術(shù)領(lǐng)域】
[0001 ]本發(fā)明涉及終端技術(shù)領(lǐng)域,具體而言,涉及一種加密方法、一種解密方法、一種加密裝置、一種解密裝置和一種終端。
【背景技術(shù)】
[0002]目前,在對(duì)數(shù)據(jù)進(jìn)行加密時(shí),是對(duì)數(shù)據(jù)全部進(jìn)行加密,但是對(duì)數(shù)據(jù)的全部進(jìn)行加密時(shí)的加密時(shí)間較長(zhǎng),而且在對(duì)加密的數(shù)據(jù)進(jìn)行解密時(shí),也需要比較長(zhǎng)的時(shí)間,也就導(dǎo)致對(duì)數(shù)據(jù)進(jìn)行加密和解密的效率很低。
[0003]因此,如何提高對(duì)數(shù)據(jù)進(jìn)行加密以及解密的效率,從而縮短加密和解密的時(shí)間成為亟待解決的問題。
【發(fā)明內(nèi)容】
[0004]本發(fā)明正是基于上述問題,提出了一種新的技術(shù)方案,通過對(duì)數(shù)據(jù)進(jìn)行局部加密,可以提高對(duì)數(shù)據(jù)進(jìn)行加密的效率,而且在對(duì)該局部加密的數(shù)據(jù)進(jìn)行解密時(shí),也可以提高對(duì)加密的數(shù)據(jù)進(jìn)行解密的效率,從而縮短加密和解密的時(shí)間。
[0005]有鑒于此,本發(fā)明的第一方面提出了一種加密方法,包括:獲取待加密數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度、預(yù)設(shè)加密長(zhǎng)度和起始加密位置;判斷所述預(yù)設(shè)加密長(zhǎng)度是否小于所述待加密數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度;若所述預(yù)設(shè)加密長(zhǎng)度小于所述待加密數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度,按照預(yù)設(shè)加密規(guī)則從所述起始加密位置對(duì)所述待加密數(shù)據(jù)進(jìn)行加密。
[0006]在該技術(shù)方案中,在預(yù)設(shè)加密長(zhǎng)度小于待加密數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度時(shí),根據(jù)預(yù)設(shè)加密規(guī)則對(duì)待加密數(shù)據(jù)從起始加密位置處開始進(jìn)行加密,即加密后的待加密數(shù)據(jù)有未加密的數(shù)據(jù)(即明文數(shù)據(jù))和加密數(shù)據(jù),實(shí)現(xiàn)了對(duì)待加密數(shù)據(jù)進(jìn)行局部加密,從而提高了加密效率,而且在對(duì)加密后的待加密數(shù)據(jù)進(jìn)行解密時(shí),可以有效地提高解密的效率,從而縮短了加密和解密的時(shí)間。
[0007]在上述技術(shù)方案中,優(yōu)選地,所述按照預(yù)設(shè)加密規(guī)則從所述起始加密位置對(duì)所述待加密數(shù)據(jù)進(jìn)行加密的步驟,具體包括:將所述預(yù)設(shè)加密長(zhǎng)度作為當(dāng)前加密長(zhǎng)度;處理步驟:根據(jù)所述起始加密位置和所述預(yù)設(shè)加密長(zhǎng)度對(duì)所述待加密數(shù)據(jù)進(jìn)行加密,判斷所述待加密數(shù)據(jù)中是否存在未處理數(shù)據(jù);在所述待加密數(shù)據(jù)中存在未處理數(shù)據(jù)時(shí),將所述未處理數(shù)據(jù)作為待加密數(shù)據(jù),對(duì)所述起始加密位置和所述當(dāng)前加密長(zhǎng)度進(jìn)行更新,根據(jù)更新后的起始加密位置和當(dāng)前加密長(zhǎng)度執(zhí)行所述處理步驟,直到判定所述待加密數(shù)據(jù)中不存在所述未處理數(shù)據(jù)為止;否則,結(jié)束對(duì)所述待加密數(shù)據(jù)的加密。
[0008]在該技術(shù)方案中,從待加密數(shù)據(jù)的起始加密位置開始對(duì)待加密數(shù)據(jù)進(jìn)行加密,得到一段長(zhǎng)度為預(yù)設(shè)加密長(zhǎng)度的密文數(shù)據(jù),然后在該密文數(shù)據(jù)之后的一段數(shù)據(jù)不進(jìn)行加密,即為明文數(shù)據(jù),若該待處理數(shù)據(jù)中還存在未處理數(shù)據(jù)(即待加密數(shù)據(jù)中的在該明文數(shù)據(jù)之后的一段數(shù)據(jù)),則將未處理數(shù)據(jù)作為待加密數(shù)據(jù),并循環(huán)執(zhí)行上述步驟,直到判定待處理數(shù)據(jù)中不存在未處理數(shù)據(jù)為止,使得加密后的待加密數(shù)據(jù)中存在有密文數(shù)據(jù)和明文數(shù)據(jù),從而實(shí)現(xiàn)了對(duì)待加密數(shù)據(jù)的局部加密。
[0009]另外,對(duì)所述起始加密位置和所述當(dāng)前加密長(zhǎng)度進(jìn)行更新的步驟,具體包括:根據(jù)當(dāng)前加密長(zhǎng)度和預(yù)設(shè)明文長(zhǎng)度對(duì)起始加密位置進(jìn)行更新,若待加密數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度小于或等于預(yù)設(shè)加密長(zhǎng)度,則將待加密數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度作為當(dāng)前加密長(zhǎng)度,若待加密數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度大于預(yù)設(shè)加密長(zhǎng)度,則將預(yù)設(shè)加密長(zhǎng)度作為當(dāng)前加密長(zhǎng)度。
[0010]在上述任一技術(shù)方案中,優(yōu)選地,所述判斷所述待加密數(shù)據(jù)中是否存在未處理數(shù)據(jù)的步驟,具體包括:獲取預(yù)設(shè)明文長(zhǎng)度,并通過以下公式判斷所述待加密數(shù)據(jù)中是否存在所述未處理數(shù)據(jù),
[0011 ] L^iH= Lftiern X (LarfLaj),
[0012]其中,L_表示所述未處理數(shù)據(jù)的長(zhǎng)度,L待MS表示所述待加密數(shù)據(jù)的長(zhǎng)度,Ue表示所述預(yù)設(shè)加密長(zhǎng)度,L明表示所述預(yù)設(shè)明文長(zhǎng)度,η為大于O的整數(shù),若_<0,則判定所述待加密數(shù)據(jù)中不存在所述未處理數(shù)據(jù),若_>0,則判定所述待加密數(shù)據(jù)中存在所述未處理數(shù)據(jù)。
[0013]在該技術(shù)方案中,未處理數(shù)據(jù)的長(zhǎng)度為待加密數(shù)據(jù)的長(zhǎng)度減去密文數(shù)據(jù)的長(zhǎng)度和明文數(shù)據(jù)的長(zhǎng)度,若未處理數(shù)據(jù)的長(zhǎng)度小于或等于零,說明已經(jīng)完成對(duì)待加密數(shù)據(jù)的加密,若未處理數(shù)據(jù)的長(zhǎng)度大于零,說明繼續(xù)循環(huán)上述中的處理步驟,直到未處理數(shù)據(jù)的長(zhǎng)度小于零為止,從而保證了判斷是否對(duì)待加密數(shù)據(jù)繼續(xù)進(jìn)行加密的準(zhǔn)確性和可靠性。
[0014]在上述任一技術(shù)方案中,優(yōu)選地,所述判斷所述預(yù)設(shè)加密長(zhǎng)度是否小于所述待加密數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度之后,還包括:若判定所述預(yù)設(shè)加密長(zhǎng)度大于或等于所述待加密數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度,則重新設(shè)置預(yù)設(shè)加密長(zhǎng)度,所述重新設(shè)置的預(yù)設(shè)加密長(zhǎng)度小于所述待加密數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度。
[0015]在該技術(shù)方案中,若預(yù)設(shè)加密長(zhǎng)度大于或等于待加密數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度,則重新設(shè)置比待加密數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度小的預(yù)設(shè)加密長(zhǎng)度,根據(jù)重新設(shè)置的預(yù)設(shè)加密長(zhǎng)度對(duì)待加密數(shù)據(jù)進(jìn)行加密,如此,加密后的待加密數(shù)據(jù)同時(shí)具有明文數(shù)據(jù)和密文數(shù)據(jù),即實(shí)現(xiàn)了對(duì)待加密數(shù)據(jù)的局部加密。
[0016]本發(fā)明的第二方面提出了一種解密方法,包括:獲取待解密數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度、預(yù)設(shè)解密長(zhǎng)度和起始解密位置;判斷所述預(yù)設(shè)解密長(zhǎng)度是否小于所述待解密數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度;若所述預(yù)設(shè)解密長(zhǎng)度小于所述待解密數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度,按照預(yù)設(shè)解密規(guī)則從所述起始解密位置對(duì)所述待解密數(shù)據(jù)進(jìn)行解密。
[0017]在該技術(shù)方案中,根據(jù)預(yù)設(shè)解密規(guī)則在待解密數(shù)據(jù)的起始解密位置處開始進(jìn)行解密,待解密數(shù)據(jù)可以是由上述任一項(xiàng)加密方法加密得到的待解密數(shù)據(jù),即待解密數(shù)據(jù)具有明文數(shù)據(jù)和密文數(shù)據(jù),也就是說在對(duì)待解密數(shù)據(jù)解密時(shí),僅對(duì)待解密數(shù)據(jù)中的密文數(shù)據(jù)進(jìn)行解密,從而有效地提高了解密效率和縮短了解密時(shí)間。
[0018]具體地,可以根據(jù)待解密數(shù)據(jù)在加密時(shí)的起始加密位置和預(yù)設(shè)加密長(zhǎng)度確定解密時(shí)的起始解密位置和預(yù)設(shè)解密長(zhǎng)度。
[0019]在上述技術(shù)方案中,優(yōu)選地,所述按照預(yù)設(shè)解密規(guī)則從所述起始解密位置對(duì)所述待解密數(shù)據(jù)進(jìn)行解密的步驟,具體包括:將所述預(yù)設(shè)解密長(zhǎng)度作為當(dāng)前解密長(zhǎng)度;處理步驟:根據(jù)所述起始解密位置和所述預(yù)設(shè)解密長(zhǎng)度對(duì)所述待解密數(shù)據(jù)進(jìn)行解密,判斷所述待解密數(shù)據(jù)中是否存在未處理數(shù)據(jù);在所述待解密數(shù)據(jù)中存在所述未處理數(shù)據(jù)時(shí),將所述未處理數(shù)據(jù)作為所述待解密數(shù)據(jù),對(duì)所述起始解密位置和所述當(dāng)前解密長(zhǎng)度進(jìn)行更新,根據(jù)更新后的起始解密位置和當(dāng)前解密長(zhǎng)度執(zhí)行所述處理步驟,直到判定所述待解密數(shù)據(jù)中不存在所述未處理數(shù)據(jù)為止;否則,結(jié)束對(duì)所述待解密數(shù)據(jù)的解密。
[0020]在上述任一技術(shù)方案中,優(yōu)選地,所述判斷所述待解密數(shù)據(jù)中是否存在未處理數(shù)據(jù)的步驟,具體包括:獲取所述待解密數(shù)據(jù)的預(yù)設(shè)明文長(zhǎng)度,并通過以下公式判斷所述待解密數(shù)據(jù)中是否存在所述未處理數(shù)據(jù),
[0021 ] 睡=Lf馨Brn X (LsrfLaj),
[0022]其中,L_表示所述未處理數(shù)據(jù)的長(zhǎng)度,L撤輕表示所述待解密數(shù)據(jù)的長(zhǎng)度,Ue表示所述預(yù)設(shè)解密長(zhǎng)度,L明表示所述預(yù)設(shè)明文長(zhǎng)度,η為大于O的整數(shù),若_ < O,則判定所述待解密數(shù)據(jù)中不存在所述未處理數(shù)據(jù),若_>0,則判定所述待解密數(shù)據(jù)中存在所述未處理數(shù)據(jù)。
[0023]在上述任一技術(shù)方案中,優(yōu)選地,所述判斷所述預(yù)設(shè)解密長(zhǎng)度是否小于所述待解密數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度之后,還包括:若判定所述預(yù)設(shè)解密長(zhǎng)度大于或等于所述待解密數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度,則重新設(shè)置預(yù)設(shè)解密長(zhǎng)度,所述重新設(shè)置的預(yù)設(shè)解密長(zhǎng)度小于所述待解密數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度。
[0024]本發(fā)明的第三方面提出了一種加密裝置,包括:獲取單元,用于獲取待加密數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度、預(yù)設(shè)加密長(zhǎng)度和起始加密位置;第一判斷單元,用于判斷所述預(yù)設(shè)加密長(zhǎng)度是否小于所述待加密數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度;加密單元,用于在所述第一判斷單元的判斷結(jié)果為是時(shí),按照預(yù)設(shè)加密規(guī)則從所述起始加密位置對(duì)所述待加密數(shù)據(jù)進(jìn)行加密。
[0025]在該技術(shù)方案中,在預(yù)設(shè)加密長(zhǎng)度小于待加密數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度時(shí),根據(jù)預(yù)設(shè)加密規(guī)則對(duì)待加密數(shù)據(jù)從起始加密位置處開始進(jìn)行加密,即加密后的待加密數(shù)據(jù)有未加密的數(shù)據(jù)(即明文數(shù)據(jù))和密文數(shù)據(jù),實(shí)現(xiàn)了對(duì)待加密數(shù)據(jù)進(jìn)行局部加密,從而提高了加密效率,而且在對(duì)加密后的待加密數(shù)據(jù)進(jìn)行解密時(shí),可以有效地提高解密的效率,從而縮短了