用于數(shù)據(jù)處理的方法和設(shè)備的制作方法
【專利摘要】本發(fā)明的實施例涉及用于數(shù)據(jù)處理的方法和相應(yīng)設(shè)備。其中該方法包括根據(jù)數(shù)據(jù)的類型或功能來對數(shù)據(jù)進行劃分。該方法還包括對劃分后的數(shù)據(jù)進行加密。進一步,該方法包括以BLOB字段形式來存儲加密后的數(shù)據(jù)。利用本發(fā)明所提供的方法和相應(yīng)設(shè)備,經(jīng)過處理后的各類型數(shù)據(jù)互不影響,從而便于數(shù)據(jù)移植和合并。另外,采用加密方式存儲數(shù)據(jù)從而避免了信息的外泄,提高了數(shù)據(jù)的安全性。進一步,由于對整型數(shù)據(jù)采用變長方式進行存儲,并且按需求分配存儲單元,從而節(jié)省了存儲空間。
【專利說明】用于數(shù)據(jù)處理的方法和設(shè)備
【技術(shù)領(lǐng)域】
[0001]本發(fā)明的示例性實施例涉及用于數(shù)據(jù)處理的方法和設(shè)備。
【背景技術(shù)】
[0002]BLOB (binary large object)稱為二進制大對象,其是可以存儲二進制文件的容器。通常,BLOB在計算機領(lǐng)域中是數(shù)據(jù)庫用來存儲二進制文件的字段類型。BLOB是一個大文件,典型的BLOB是一張圖片或一個聲音文件。由于此類文件的尺寸較大,必須使用特殊的方式來處理,例如通過上傳、下載或者存放將圖片或聲音等文件的二進制數(shù)據(jù)保存到數(shù)據(jù)庫中,并可以從數(shù)據(jù)庫里恢復(fù)成指定文件。盡管BLOB在數(shù)據(jù)庫存儲方面顯示出優(yōu)勢,但當前并沒有利用BLOB實現(xiàn)對數(shù)據(jù)(特別是游戲中的玩家數(shù)據(jù)信息)的加密存儲。
【發(fā)明內(nèi)容】
[0003]本發(fā)明的示例性實施例旨在解決至少上面的一些技術(shù)問題,提供一種有效的數(shù)據(jù)加密存儲機制,使得數(shù)據(jù)(特別是游戲玩家數(shù)據(jù))易于安全高效地存儲,便于移植和合并。
[0004]為此,根據(jù)本發(fā)明的一個方面,提供一種用于數(shù)據(jù)處理的方法。該方法包括根據(jù)數(shù)據(jù)的類型或功能來對數(shù)據(jù)進行劃分。該方法還包括對劃分后的數(shù)據(jù)進行加密。進一步,該方法還包括以BLOB字段形式來存儲加密后的數(shù)據(jù)。
[0005]在一個實施例中,其中所述數(shù)據(jù)是與游戲玩家的用戶數(shù)據(jù)相關(guān)的數(shù)據(jù)。
[0006]在另一實施例中,所述用戶數(shù)據(jù)涉及玩家的一個或多個用戶屬性、游戲等級、游戲物品或游戲?qū)櫸铩?br>
[0007]在進一步的實施例中,其中對劃分后的數(shù)據(jù)進行加密包括為劃分后的數(shù)據(jù)分配相應(yīng)的字節(jié)存儲空間以及將劃分后的數(shù)據(jù)轉(zhuǎn)換成字節(jié)并存儲到分配的字節(jié)存儲空間。
[0008]在一個實施例中,其中根據(jù)數(shù)據(jù)轉(zhuǎn)換成字節(jié)后的實際字節(jié)數(shù)量來分配字節(jié)存儲空間。
[0009]在另一實施例中,其中對劃分后的數(shù)據(jù)進行加密包括按順序和類型對劃分后的數(shù)據(jù)進行加密。
[0010]在又一實施例中,該方法進一步包括根據(jù)字段順序?qū)用芎蟮臄?shù)據(jù)進行解密以及當確定解密的數(shù)據(jù)存在錯誤時,根據(jù)字段順序?qū)罄m(xù)數(shù)據(jù)解密而忽略錯誤的解密數(shù)據(jù)。
[0011]根據(jù)本發(fā)明的另一個方面,提供一種用于數(shù)據(jù)處理的設(shè)備。該設(shè)備包括用于根據(jù)數(shù)據(jù)的類型或功能來對數(shù)據(jù)進行劃分的裝置。該設(shè)備還包括用于對劃分后的數(shù)據(jù)進行加密的裝置。進一步,該設(shè)備還包括用于以BLOB字段形式來存儲加密后的數(shù)據(jù)的裝置。
[0012]進一步,所述設(shè)備還包括用于實現(xiàn)上述各個方法實施例中的相應(yīng)多個步驟的相應(yīng)
>J-U ρ?α裝直。
[0013]利用根據(jù)本發(fā)明的多個方面和實施例的用于數(shù)據(jù)處理的方法和設(shè)備,經(jīng)過處理后的各類型數(shù)據(jù)互不影響,從而便于數(shù)據(jù)移植和合并。另外,采用加密方式存儲數(shù)據(jù)從而避免了信息的外泄,提高了數(shù)據(jù)的安全性。進一步,由于對整型數(shù)據(jù)采用變長方式進行存儲,并且按需求分配存儲單元,從而節(jié)省了存儲空間。
【專利附圖】
【附圖說明】
[0014]根據(jù)下面結(jié)合附圖的示例性實施方式的詳細描述,本發(fā)明的上述和其他目的、特征和優(yōu)勢將變得明顯,在附圖中:
[0015]圖1示意性示出根據(jù)本發(fā)明一個實施例的用于數(shù)據(jù)處理的方法的流程圖;以及
[0016]圖2是示意性示出根據(jù)本發(fā)明又一個實施例的用于數(shù)據(jù)處理的設(shè)備的框圖。
【具體實施方式】
[0017]本發(fā)明的實施例提供了基于BLOB的數(shù)據(jù)存儲加密系統(tǒng)。具體地,本發(fā)明的實施例提出將數(shù)據(jù)按照類型或功能進行劃分,并接著分別存儲于一個BLOB字段中,其中可以對各類型的數(shù)據(jù)按特定順序和類型進行編碼,從而在讀取數(shù)據(jù)時,只需發(fā)送編碼后的數(shù)據(jù)即可獲得具體的數(shù)據(jù)。
[0018]下面將結(jié)合相應(yīng)的附圖來詳細描述本發(fā)明的多個實施方式。
[0019]圖1示意性示出根據(jù)本發(fā)明一個實施例的用于數(shù)據(jù)處理的方法100的流程圖。如圖1中所示,在步驟SlOl中,方法100根據(jù)數(shù)據(jù)的類型或功能來對數(shù)據(jù)進行劃分。這里,所述數(shù)據(jù)可以是與游戲玩家的用戶數(shù)據(jù)相關(guān)的數(shù)據(jù)。具體地,該用戶數(shù)據(jù)可以涉及玩家的一個或多個用戶屬性、游戲等級、游戲物品或游戲?qū)櫸铩?br>
[0020]接著,在步驟S102處,方法100對劃分后的數(shù)據(jù)進行加密。在進行加密處理后,方法100在步驟S103處以BLOB字段形式來存儲加密后的數(shù)據(jù)。
[0021]在一個實施例中,其中對劃分后的數(shù)據(jù)進行加密包括為劃分后的數(shù)據(jù)分配相應(yīng)的字節(jié)存儲空間以及將劃分后的數(shù)據(jù)轉(zhuǎn)換成字節(jié)并存儲到分配的字節(jié)存儲空間。在另一實施例中,其中對劃分后的數(shù)據(jù)進行加密包括按順序和類型對劃分后的數(shù)據(jù)進行加密。
[0022]例如,可以按照玩家的等級、年齡、物品或?qū)櫸锏鹊牟煌愋蛿?shù)據(jù)來將各個數(shù)據(jù)定義為整型int (例如對于等級)、短整型short int (例如對于年齡)、長整型long int (例如對于物品)或字符串型string(例如對于寵物)。接著,可以將這些不同的數(shù)據(jù)類型轉(zhuǎn)換成二進制字節(jié)(byte)來進行存儲。例如,對于int型數(shù)據(jù),其通常占用4個字節(jié)的存儲空間,因此可以分配4個字節(jié)來進行存儲。這里,分配既可以由數(shù)據(jù)管理員預(yù)先統(tǒng)一設(shè)定,也可以根據(jù)不同的數(shù)據(jù)類型大小來分別預(yù)先設(shè)定。在一個實施例中,可以根據(jù)數(shù)據(jù)轉(zhuǎn)換成字節(jié)后的實際字節(jié)數(shù)量來分配字節(jié)存儲空間。例如,盡管int型數(shù)據(jù)通常占用4個字節(jié),但當實際的數(shù)據(jù)僅需要2個字節(jié)的存儲空間時,則可以僅向其分配2個字節(jié)的存儲空間。這樣,剩余的2個字節(jié)的存儲空間可以用于存儲其他類型的數(shù)據(jù),從而節(jié)省了數(shù)據(jù)的存儲開銷,并且最大化存儲區(qū)的使用率。
[0023]盡管未示出,在一個實施例中,在使用本發(fā)明的自定義順序和字段類型及最小整型的加密方法后,可以根據(jù)數(shù)據(jù)的重要性或安全性等級選擇性地應(yīng)用對稱加密或非對稱加密技術(shù)來進行進一步的數(shù)據(jù)加密
[0024]關(guān)于對稱加密,其加密和解密都使用相同密鑰的加密算法,S卩加密密鑰能夠從解密密鑰中推算出來,同時解密密鑰也可以從加密密鑰中推算出來,從而算法公開、計算量小、加密速度快、加密效率高??梢栽诒景l(fā)明中使用的對稱加密算法例如現(xiàn)有的DES算法、TDEA算法或類似算法。
[0025]關(guān)于非對稱加密,其與對稱加密算法不同,非對稱加密算法需要兩個密鑰:公開密鑰(public key)和私有密鑰(private key)。公開密鑰與私有密鑰是一對,如果用公開密鑰對數(shù)據(jù)進行加密,只有用對應(yīng)的私有密鑰才能解密。如果用私有密鑰對數(shù)據(jù)進行加密,那么只有用對應(yīng)的公開密鑰才能解密。與對稱密鑰加密相比,優(yōu)點在于無需共享的通用密鑰,解密的私鑰不發(fā)往任何用戶。即使公鑰在網(wǎng)上被截獲,如果沒有與其匹配的私鑰,也無法解密,所截獲的公鑰是沒有任何用處的。非對稱加密的典型應(yīng)用是數(shù)字簽名??梢栽诒景l(fā)明中使用的非對稱加密算法例如現(xiàn)有的RSA算法或類似算法。
[0026]返回到圖1的流程圖,在步驟S103中,方法100以BLOB字段形式來存儲加密后的數(shù)據(jù)。換句話說,本發(fā)明加密后的數(shù)據(jù)可以轉(zhuǎn)換成二進制字節(jié)數(shù)組,并且接著以BLOB字段的形式來進行存儲。這樣,根據(jù)本發(fā)明的示例性實施例,可以將用戶數(shù)據(jù)序列化成字節(jié)輸出流(OutputStream)后以BLOB字段的形式寫入數(shù)據(jù)庫中。
[0027]例如,oracle中BLOB字段的處理在java和pl/sql環(huán)境下可以通過插入一個空的BLOB并且接著更新該紀錄的BLOB來完成插入操作。之后,使用字節(jié)輸入流(InputStream)將數(shù)據(jù)讀出然后反序列化為原始用戶數(shù)據(jù)或?qū)ο?。另外,在BLOB存取的過程中,通過先存入和BLOB相關(guān)的控制數(shù)據(jù),如文件的名字,然后查詢定位BLOB字段,以獲得存儲的用戶數(shù)據(jù)。
[0028]盡管未示出,在又一實施例中,方法100進一步包括根據(jù)字段順序?qū)用芎蟮臄?shù)據(jù)進行解密以及當確定解密的數(shù)據(jù)存在錯誤時,根據(jù)字段順序?qū)罄m(xù)數(shù)據(jù)解密而忽略錯誤的解密數(shù)據(jù)。例如,當在按字段順序?qū)?shù)據(jù)進行解密過程中,當發(fā)現(xiàn)解密后的數(shù)據(jù)類型存在錯誤時,并不停止對后續(xù)加密數(shù)據(jù)的解密,而是忽略該存在錯誤的數(shù)據(jù)類型的解密,繼續(xù)進行后續(xù)數(shù)據(jù)的解密,直至完成整個數(shù)據(jù)的解密。這得益于本發(fā)明的實施例的加密過程中,根據(jù)數(shù)據(jù)類型進行加密,從而各個不同類型數(shù)據(jù)之間互不影響,由此改進數(shù)據(jù)的穩(wěn)定性。
[0029]上面結(jié)合圖1描述了本發(fā)明的用于數(shù)據(jù)處理的方法100以及其在多個實施例中的擴展和變形??梢岳斫獾氖?,經(jīng)過本發(fā)明處理后的各類型數(shù)據(jù)互不影響,從而便于數(shù)據(jù)移植和合并。另外,采用加密方式來存儲數(shù)據(jù),從而避免了信息的外泄,提高了數(shù)據(jù)的安全性。進一步,由于對整型數(shù)據(jù)采用變長方式進行存儲,并且按需求分配存儲單元,從而節(jié)省了存儲空間。
[0030]圖2是示意性示出根據(jù)本發(fā)明又一個實施例的用于數(shù)據(jù)處理的設(shè)備200的框圖。該設(shè)備200包括用于根據(jù)數(shù)據(jù)的類型或功能來對數(shù)據(jù)進行劃分的劃分裝置201。該設(shè)備200還包括用于對劃分后的數(shù)據(jù)進行加密的加密裝置202。進一步,該設(shè)備還包括用于以BLOB字段形式來存儲加密后的數(shù)據(jù)的存儲裝置203。進一步,所述設(shè)備還包括用于實現(xiàn)上述各個方法實施例中的相應(yīng)多個步驟的相應(yīng)裝置。
[0031]具體地,在一個實施例中,所述數(shù)據(jù)是與游戲玩家的用戶數(shù)據(jù)相關(guān)的數(shù)據(jù)。
[0032]在又一實施例中,所述用戶數(shù)據(jù)涉及玩家的一個或多個用戶屬性、游戲等級、游戲物品或游戲?qū)櫸铩?br>
[0033]在附加的實施例中,其中用于對劃分后的數(shù)據(jù)進行加密的劃分裝置包括用于為劃分后的數(shù)據(jù)分配相應(yīng)的字節(jié)存儲空間的裝置以及用于將劃分后的數(shù)據(jù)轉(zhuǎn)換成字節(jié)并存儲到分配的字節(jié)存儲空間的裝置。
[0034]在一個實施例中,其中根據(jù)數(shù)據(jù)轉(zhuǎn)換成字節(jié)后的實際字節(jié)數(shù)量來分配字節(jié)存儲空間。
[0035]在另一實施例中,用于對劃分后的數(shù)據(jù)進行加密的加密裝置包括用于按順序和類型對劃分后的數(shù)據(jù)進行加密的裝置。
[0036]在又一實施例中,所述設(shè)備還包括用于在使用本發(fā)明的自定義順序和字段類型及最小整型的加密后,根據(jù)數(shù)據(jù)的重要性或安全性等級選擇性地應(yīng)用對稱加密或非對稱加密技術(shù)來進行進一步加密的裝置。
[0037]在進一步的實施例中,該設(shè)備200進一步包括用于根據(jù)字段順序?qū)用芎蟮臄?shù)據(jù)進行解密的裝置以及用于當確定解密的數(shù)據(jù)存在錯誤時,根據(jù)字段順序?qū)罄m(xù)數(shù)據(jù)解密而忽略錯誤的解密數(shù)據(jù)的裝置。
[0038]利用根據(jù)本發(fā)明的多個方面和實施例的用于數(shù)據(jù)處理的設(shè)備,經(jīng)過處理后的各類型數(shù)據(jù)互不影響,從而便于數(shù)據(jù)移植和合并。另外,采用加密方式存儲數(shù)據(jù)從而避免了信息的外泄,提高了數(shù)據(jù)的安全性。進一步,由于對整型數(shù)據(jù)采用變長方式進行存儲,并且按需求分配存儲單元,從而節(jié)省了存儲空間。
[0039]綜上,結(jié)合附圖對本發(fā)明的各個實施例進行了詳細的描述。本領(lǐng)域技術(shù)人員可以理解本發(fā)明的實施例可以通過硬件、軟件、固件、模塊或者其結(jié)合來實現(xiàn),也可以在供任何合適數(shù)據(jù)處理系統(tǒng)使用的信號承載介質(zhì)上所設(shè)置的計算機程序產(chǎn)品中體現(xiàn)本發(fā)明。這種信號承載介質(zhì)可以是傳輸介質(zhì)或用于機器可讀信息的可記錄介質(zhì),包括磁介質(zhì)、光介質(zhì)或其他合適介質(zhì)。可記錄介質(zhì)的示例包括:硬盤驅(qū)動器中的磁盤或軟盤、用于光驅(qū)的光盤、磁帶,以及本領(lǐng)域技術(shù)人員所能想到的其他介質(zhì)。本領(lǐng)域技術(shù)人員應(yīng)該認識到,具有合適編程裝置的任何計算終端都將能夠執(zhí)行如程序產(chǎn)品中體現(xiàn)的本發(fā)明方法的步驟。
[0040]應(yīng)當注意,為了使本發(fā)明更容易理解,上面的描述省略了對于本領(lǐng)域的技術(shù)人員來說是公知的、并且對于本發(fā)明的實現(xiàn)可能是必需的更具體的一些技術(shù)細節(jié)。
[0041]盡管已經(jīng)公開了本發(fā)明的特定實施方式,但本領(lǐng)域技術(shù)人員將理解可針對特定的實施例做出改變而不會偏離本發(fā)明的精神和范圍。因此,本發(fā)明不限于特定的實施例,并且所附權(quán)利要求包含本發(fā)明范圍內(nèi)的任何和所有這樣的應(yīng)用、修改和實施例。
【權(quán)利要求】
1.一種用于數(shù)據(jù)處理的方法,包括: 根據(jù)數(shù)據(jù)的類型或功能來對數(shù)據(jù)進行劃分; 對劃分后的數(shù)據(jù)進行加密;以及 以BLOB字段形式來存儲加密后的數(shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的方法,其中所述數(shù)據(jù)是與游戲玩家的用戶數(shù)據(jù)相關(guān)的數(shù)據(jù)。
3.根據(jù)權(quán)利要求1所述的方法,其中所述用戶數(shù)據(jù)涉及玩家的一個或多個用戶屬性、游戲等級、游戲物品或游戲?qū)櫸铩?br>
4.根據(jù)權(quán)利要求1所述的方法,其中對劃分后的數(shù)據(jù)進行加密包括: 為劃分后的數(shù)據(jù)分配相應(yīng)的字節(jié)存儲空間;以及 將劃分后的數(shù)據(jù)轉(zhuǎn)換成字節(jié)并存儲到分配的字節(jié)存儲空間。
5.根據(jù)權(quán)利要求4所述的方法,其中根據(jù)數(shù)據(jù)轉(zhuǎn)換成字節(jié)后的實際字節(jié)數(shù)量來分配字節(jié)存儲空間。
6.根據(jù)權(quán)利要求1所述的方法,其中對劃分后的數(shù)據(jù)進行加密包括按順序和類型對劃分后的數(shù)據(jù)進行加密。
7.根據(jù)權(quán)利要求1所述的方法,進一步包括: 根據(jù)字段順序?qū)用芎蟮臄?shù)據(jù)進行解密;以及 當確定解密的數(shù)據(jù)存在錯誤時,根據(jù)字段順序?qū)罄m(xù)數(shù)據(jù)解密而忽略錯誤的解密數(shù)據(jù)。
8.一種用于數(shù)據(jù)處理的設(shè)備,包括: 用于根據(jù)數(shù)據(jù)的類型或功能來對數(shù)據(jù)進行劃分的裝置; 用于對劃分后的數(shù)據(jù)進行加密的裝置;以及 用于以BLOB字段形式來存儲加密后的數(shù)據(jù)的裝置。
9.根據(jù)權(quán)利要求8所述的設(shè)備,其中所述數(shù)據(jù)是與游戲玩家的用戶數(shù)據(jù)相關(guān)的數(shù)據(jù)。
10.根據(jù)權(quán)利要求8所述的設(shè)備,其中所述用戶數(shù)據(jù)涉及玩家的一個或多個用戶屬性、游戲等級、游戲物品或游戲?qū)櫸铩?br>
11.根據(jù)權(quán)利要求8所述的設(shè)備,其中用于對劃分后的數(shù)據(jù)進行加密的裝置包括: 用于為劃分后的數(shù)據(jù)分配相應(yīng)的字節(jié)存儲空間的裝置;以及 用于將劃分后的數(shù)據(jù)轉(zhuǎn)換成字節(jié)并存儲到分配的字節(jié)存儲空間的裝置。
12.根據(jù)權(quán)利要求11所述的設(shè)備,其中根據(jù)數(shù)據(jù)轉(zhuǎn)換成字節(jié)后的實際字節(jié)數(shù)量來分配字節(jié)存儲空間。
13.根據(jù)權(quán)利要求8所述的設(shè)備,其中對劃分后的數(shù)據(jù)進行加密包括按順序和類型對劃分后的數(shù)據(jù)進行加密。
14.根據(jù)權(quán)利要求8所述的設(shè)備,進一步包括: 用于根據(jù)字段順序?qū)用芎蟮臄?shù)據(jù)進行解密的裝置;以及 用于當確定解密的數(shù)據(jù)存在錯誤時,根據(jù)字段順序?qū)罄m(xù)數(shù)據(jù)解密而忽略錯誤的解密數(shù)據(jù)的裝置。
【文檔編號】G06F17/30GK104281612SQ201310284896
【公開日】2015年1月14日 申請日期:2013年7月3日 優(yōu)先權(quán)日:2013年7月3日
【發(fā)明者】方勇 申請人:人人游戲網(wǎng)絡(luò)科技發(fā)展(上海)有限公司