Oracle Spatial數(shù)據(jù)加密的實(shí)際操作
我們今天是要和大家一起討論的是Oracle Spatial數(shù)據(jù)加密問(wèn)題的探討,我前兩天在相關(guān)網(wǎng)站看見(jiàn)的資料,覺(jué)得實(shí)用性很好,于是今天就拿出來(lái)供大家分享。希望會(huì)給你帶來(lái)一些幫助在此方面。
Oracle 9i2 特色功能:
1、返回值為自定義對(duì)象類(lèi)型的函數(shù)。例如SDO_GEOMETRY數(shù)據(jù)類(lèi)型。
2、可以用Java或C語(yǔ)言編寫(xiě)存儲(chǔ)過(guò)程。
Oracle Spatial 高級(jí)功能可以使用返回值為SDO_GEOMETRY數(shù)據(jù)類(lèi)型的自定義函數(shù)作為幾何列獲取空間數(shù)據(jù)。
Oracle Spatial數(shù)據(jù)加密實(shí)現(xiàn):
1、簡(jiǎn)單的數(shù)據(jù)加密。
1)創(chuàng)建返回值為SDO_GEOMETRY數(shù)據(jù)類(lèi)型的自定義函數(shù),從BLOB(或其他任意的數(shù)據(jù)類(lèi)型)數(shù)據(jù)中解密出SDO_GEOMETRY數(shù)據(jù)并返回。
2)解密過(guò)程需要給函數(shù)傳入一個(gè)密鑰參數(shù),這個(gè)密鑰參數(shù)來(lái)自于你的客戶端程序或Web應(yīng)用程序。
這樣,別人就無(wú)法解析你存儲(chǔ)于Spatial中的數(shù)據(jù)了。
2、高級(jí)的Oracle Spatial數(shù)據(jù)加密。
1)用C語(yǔ)言創(chuàng)建返回值為SDO_GEOMETRY數(shù)據(jù)類(lèi)型的自定義函數(shù),從BLOB(或其他任意的數(shù)據(jù)類(lèi)型)數(shù)據(jù)中解密出SDO_GEOMETRY數(shù)據(jù)并返回。這一步需要有OCI接口相關(guān)的編程技術(shù),因此實(shí)現(xiàn)難度稍高一些。
2)C語(yǔ)言程序讀取機(jī)器的硬件碼,經(jīng)過(guò)運(yùn)算后得出服務(wù)端的密鑰。
3)讀取數(shù)據(jù)時(shí)還要給函數(shù)傳入客戶端的密鑰參數(shù),兩個(gè)密鑰結(jié)合才是可以對(duì)數(shù)據(jù)進(jìn)行解密的最終密鑰。當(dāng)然,數(shù)據(jù)入庫(kù)時(shí)也要用相應(yīng)的密鑰進(jìn)行Oracle Spatial數(shù)據(jù)加密。
這樣,你的空間數(shù)據(jù)就僅僅可以被特定的客戶端和服務(wù)器所獲取,其他程序無(wú)法獲取。
【編輯推薦】