用戶數(shù)據(jù)的加密方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,具體涉及一種用戶數(shù)據(jù)的加密方法及裝置。
【背景技術(shù)】
[0002]隨著網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,互聯(lián)網(wǎng)應(yīng)用已無處不在。云存儲作為云計(jì)算概念上延伸和發(fā)展,可以滿足用戶通過臺式電腦、智能手機(jī)、平板電腦、筆記本電腦等不同類型的終端通過有線網(wǎng)絡(luò)或無線網(wǎng)絡(luò),隨時隨地訪問存放在云存儲中的用戶數(shù)據(jù),極大地方便了用戶信息獲取、分享的便利性。由于互聯(lián)網(wǎng)的開放性,互聯(lián)網(wǎng)上的服務(wù)器需要對終端上傳的用戶數(shù)據(jù)進(jìn)行加密保護(hù),以保證用戶數(shù)據(jù)的安全,這里的用戶數(shù)據(jù)可以是用戶賬戶密碼。
[0003]服務(wù)器上一般有專門的數(shù)據(jù)庫用于存儲用戶賬戶信息,其中用戶賬戶密碼是以密文的形式存儲,一方面保證運(yùn)維人員不能直觀的獲知用戶賬戶密碼,另一方面也避免數(shù)據(jù)庫信息泄露后用戶賬戶密碼被破解。因此,用戶賬戶密碼的加密技術(shù)顯得尤其重要。
【發(fā)明內(nèi)容】
[0004]鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的用戶數(shù)據(jù)的加密方法及裝置。
[0005]根據(jù)本發(fā)明的一個方面,提供了一種用戶數(shù)據(jù)的加密方法,所述用戶數(shù)據(jù)包括用戶賬戶密碼,所述方法包括:
[0006]獲取所述用戶賬戶密碼的明文,并得到所述用戶賬戶密碼的獲取時間作為時間戳信息;
[0007]利用預(yù)設(shè)加密算法,將所述時間戳信息與隨機(jī)數(shù)的組合進(jìn)行加密,得到第一密鑰;
[0008]利用所述預(yù)設(shè)加密算法,將所述用戶賬戶密碼的明文與所述第一密鑰進(jìn)行加密,得到用戶賬戶密碼的密文;
[0009]將所述用戶賬戶密碼的密文存儲到數(shù)據(jù)庫中。
[0010]根據(jù)本發(fā)明的另一方面,提供了一種用戶數(shù)據(jù)的加密裝置,所述用戶數(shù)據(jù)包括用戶賬戶密碼,所述裝置包括:
[0011]獲取模塊,適于獲取所述用戶賬戶密碼的明文,并得到所述用戶賬戶密碼的獲取時間作為時間戳信息;
[0012]第一加密模塊,適于利用預(yù)設(shè)加密算法,將所述時間戳信息與隨機(jī)數(shù)的組合進(jìn)行加密,得到第一密鑰;
[0013]第二加密模塊,適于利用所述預(yù)設(shè)加密算法,將所述用戶賬戶密碼的明文與所述第一密鑰進(jìn)行加密,得到用戶賬戶密碼的密文;
[0014]存儲模塊,適于將所述用戶賬戶密碼的密文存儲到數(shù)據(jù)庫中。
[0015]本發(fā)明提供的用戶數(shù)據(jù)的加密方法及裝置,通過兩次加密得到用戶賬戶密碼的密文,第一次加密是將時間戳信息與隨機(jī)數(shù)進(jìn)行加密得到第一密鑰,第二次加密是將用戶賬戶密碼的明文與第一密鑰進(jìn)行加密得到用戶賬戶密碼的密文,兩次加密提升了用戶賬戶密碼的密文的安全性,提高了密文破解的難度。就算數(shù)據(jù)庫信息泄露,用戶賬戶密碼也不易被破解,因而提升了整個網(wǎng)站服務(wù)系統(tǒng)的安全性。
[0016]上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說明書的內(nèi)容予以實(shí)施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點(diǎn)能夠更明顯易懂,以下特舉本發(fā)明的【具體實(shí)施方式】。
【附圖說明】
[0017]通過閱讀下文優(yōu)選實(shí)施方式的詳細(xì)描述,各種其他的優(yōu)點(diǎn)和益處對于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實(shí)施方式的目的,而并不認(rèn)為是對本發(fā)明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
[0018]圖1示出了根據(jù)本發(fā)明一個實(shí)施例的用戶數(shù)據(jù)的加密方法的流程圖;
[0019]圖2示出了根據(jù)本發(fā)明另一個實(shí)施例的用戶數(shù)據(jù)的加密方法的流程圖;
[0020]圖3示出了根據(jù)本發(fā)明一個實(shí)施例的用戶數(shù)據(jù)的加密裝置的功能框圖。
【具體實(shí)施方式】
[0021]下面將參照附圖更詳細(xì)地描述本公開的示例性實(shí)施例。雖然附圖中顯示了本公開的示例性實(shí)施例,然而應(yīng)當(dāng)理解,可以以各種形式實(shí)現(xiàn)本公開而不應(yīng)被這里闡述的實(shí)施例所限制。相反,提供這些實(shí)施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。
[0022]圖1示出了根據(jù)本發(fā)明一個實(shí)施例的用戶數(shù)據(jù)的加密方法的流程圖。如圖1所示,該方法包括如下步驟:
[0023]步驟S101,獲取用戶賬戶密碼的明文,并得到用戶賬戶密碼的獲取時間作為時間戳信息。
[0024]—般來說,用戶在某個網(wǎng)站上注冊時,網(wǎng)站需要用戶填寫用戶賬戶名、用戶賬戶密碼、注冊郵箱、真實(shí)姓名、身份證、驗(yàn)證碼、是否同意用戶協(xié)議等用戶注冊信息。網(wǎng)站的服務(wù)器在獲取這些信息后,會將其存儲在數(shù)據(jù)庫中。尤其是用戶賬戶密碼,它是驗(yàn)證用戶身份的重要信息,服務(wù)器要以密文的形式存儲用戶賬戶密碼。
[0025]本發(fā)明中,在用戶注冊時,服務(wù)器獲取到用戶賬戶密碼的明文,進(jìn)一步服務(wù)器還獲取用戶賬戶密碼的獲取時間作為時間戳信息。
[0026]步驟S102,利用預(yù)設(shè)加密算法,將時間戳信息與隨機(jī)數(shù)的組合進(jìn)行加密,得到第一密鑰。
[0027]在對用戶賬戶密碼的明文進(jìn)行加密之前,首先將時間戳信息與隨機(jī)數(shù)的組合進(jìn)行加密,得到第一密鑰。這里,隨機(jī)數(shù)保證第一密鑰的唯一性,避免時間戳信息相同的用戶使用相同的第一密鑰。
[0028]步驟S103,利用預(yù)設(shè)加密算法,將用戶賬戶密碼的明文與第一密鑰進(jìn)行加密,得到用戶賬戶密碼的密文。
[0029]在得到第一密鑰后,利用相同的加密算法,將用戶賬戶密碼的明文與第一密鑰進(jìn)行加密,得到用戶賬戶密碼的密文。
[0030]步驟S104,將用戶賬戶密碼的密文存儲到數(shù)據(jù)庫中。
[0031]將用戶賬戶密碼的密文存儲到數(shù)據(jù)庫中,以備后續(xù)用戶登錄訪問時驗(yàn)證用戶身份。
[0032]本實(shí)施例提供的用戶數(shù)據(jù)的加密方法通過兩次加密得到用戶賬戶密碼的密文,第一次加密是將時間戳信息與隨機(jī)數(shù)進(jìn)行加密得到第一密鑰,第二次加密是將用戶賬戶密碼的明文與第一密鑰進(jìn)行加密得到用戶賬戶密碼的密文,兩次加密提升了用戶賬戶密碼的密文的安全性,提高了密文破解的難度。就算數(shù)據(jù)庫信息泄露,用戶賬戶密碼也不易被破解,因而提升了整個網(wǎng)站服務(wù)系統(tǒng)的安全性。
[0033]圖2示出了根據(jù)本發(fā)明另一個實(shí)施例的用戶數(shù)據(jù)的加密方法的流程圖。如圖2所示,該方法包括如下步驟:
[0034]步驟S201,接收攜帶有利用第二密鑰加密后的用戶賬戶密碼信息的用戶注冊請求,第二密鑰是服務(wù)器提供的密鑰。
[0035]用戶常規(guī)注冊時,會向服務(wù)器發(fā)送用戶注冊請求,該用戶注冊請求中攜帶用戶在網(wǎng)站填寫的用戶賬戶名、用戶賬戶密碼、注冊郵箱、真實(shí)姓名、身份證、驗(yàn)證碼、是否同意用戶協(xié)議等用戶注冊信息。然而,如果網(wǎng)站前端直接將用戶賬戶密碼的明文通過http請求傳遞給服務(wù)器,在傳遞過程中http請求有可能會被截獲導(dǎo)致用戶賬戶密碼泄露,因此,本發(fā)明采用加密技術(shù)傳遞用戶賬戶密碼。
[0036]具體的,網(wǎng)站前端先向服務(wù)器申請密鑰,本文稱為是第二密鑰。網(wǎng)站前端在得到用戶填寫的用戶賬戶密碼后,先使用第二密鑰對用戶賬戶密碼進(jìn)行加密,然后將加密后的用戶賬戶密碼信息攜帶在用戶注冊請求中傳遞給服務(wù)器。
[0037]可選地,本步驟中用戶注冊請求可以為基于https (Secure Hypertext TransferProtocol,安全超文本傳輸協(xié)議)的請求,https協(xié)議是由SSL+HTTP協(xié)議構(gòu)建的可進(jìn)行加密傳輸、身份認(rèn)證的網(wǎng)絡(luò)協(xié)議,它使用安全套接