一種xml與關(guān)系數(shù)據(jù)庫(kù)的安全轉(zhuǎn)換方法
【專利摘要】用XML作為中間轉(zhuǎn)換載體來(lái)實(shí)現(xiàn)關(guān)系數(shù)據(jù)庫(kù)中數(shù)據(jù)在網(wǎng)絡(luò)上的共享,一種基于ADO.NET實(shí)現(xiàn)XML文檔與關(guān)系數(shù)據(jù)庫(kù)轉(zhuǎn)換的方法,避免XML文檔與關(guān)系數(shù)據(jù)庫(kù)轉(zhuǎn)換中存在的問(wèn)題。
【專利說(shuō)明】—種XML與關(guān)系數(shù)據(jù)庫(kù)的安全轉(zhuǎn)換方法
【技術(shù)領(lǐng)域】
[0001]一種XML與關(guān)系數(shù)據(jù)庫(kù)的安全轉(zhuǎn)換方法是計(jì)算機(jī)中關(guān)于數(shù)據(jù)轉(zhuǎn)換安全方面的領(lǐng)域。
【背景技術(shù)】
[0002]關(guān)系數(shù)據(jù)庫(kù)對(duì)于數(shù)據(jù)的存儲(chǔ),成熟而穩(wěn)重,所以采用關(guān)系數(shù)據(jù)庫(kù)存儲(chǔ)數(shù)據(jù)目前仍然是主流。
【發(fā)明內(nèi)容】
[0003][0003]我們通過(guò)國(guó)家專利檢索沒(méi)有發(fā)現(xiàn)關(guān)于此系統(tǒng)方面的資料。一種XML與關(guān)系數(shù)據(jù)庫(kù)的安全轉(zhuǎn)換方法其主要方法是:
利用XML文檔作為中間文件進(jìn)行數(shù)據(jù)庫(kù)問(wèn)信息交換,必須實(shí)現(xiàn)數(shù)據(jù)庫(kù)和XML文檔之間的數(shù)據(jù)交換。待交換的數(shù)據(jù)先以XML檔的格式從源數(shù)據(jù)庫(kù)中提取出來(lái),再經(jīng)過(guò)解析、驗(yàn)證,然后導(dǎo)入到目標(biāo)數(shù)據(jù)庫(kù)中。傳統(tǒng)的利XML技術(shù)進(jìn)行異構(gòu)數(shù)據(jù)庫(kù)信息交換過(guò)程是:從數(shù)據(jù)源導(dǎo)出數(shù)據(jù),生成XML文檔,將XML文檔中的數(shù)據(jù)轉(zhuǎn)儲(chǔ)到目標(biāo)數(shù)據(jù)源中。XML與關(guān)數(shù)據(jù)庫(kù)之間的數(shù)據(jù)轉(zhuǎn)換換涉及XML格式分析處理及對(duì)相應(yīng)的數(shù)據(jù)庫(kù)操作,通過(guò)對(duì)XML與關(guān)系數(shù)據(jù)庫(kù)的特征的比較,得出轉(zhuǎn)換的實(shí)質(zhì)是:
(1)從XML中的數(shù)據(jù)到關(guān)系模式中字段的映射
(2)從XML中數(shù)據(jù)的相互位置關(guān)系到關(guān)系模式中元組與元組的關(guān)系及元組與字段的笑系的映射。
[0004]在數(shù)據(jù)庫(kù)之間交換數(shù)據(jù)時(shí),對(duì)于部分重要數(shù)據(jù)應(yīng)該考慮數(shù)據(jù)的安全性,可以利用XML的加密技術(shù)來(lái)實(shí)現(xiàn)。發(fā)送方把形成的XML文檔在經(jīng)過(guò)加密處理后發(fā)送給接收方,接收方通過(guò)解密XML文檔形成明文的XML文檔,然后再存入自己的數(shù)據(jù)庫(kù),這樣可以保證數(shù)據(jù)在交換過(guò)程中的安全性。
[0005]具體實(shí)現(xiàn)方法:
1、關(guān)系數(shù)據(jù)庫(kù)到XML的轉(zhuǎn)換:微軟的.NET框架使用AD0.NET技術(shù)進(jìn)行數(shù)據(jù)的訪問(wèn)和存取,AD0.NET完全集成了 XML功能。其XML功能主要是通過(guò)DataSet對(duì)象實(shí)現(xiàn)的,DataSet內(nèi)的數(shù)據(jù)完全采用XML格式定義。使用DataSet將數(shù)據(jù)庫(kù)數(shù)據(jù)轉(zhuǎn)換為XML格式是非常容易的,只需將數(shù)據(jù)庫(kù)內(nèi)的數(shù)據(jù)讀人DataSet,然后寫(xiě)入XML。
[0006]2、XML到關(guān)系數(shù)據(jù)庫(kù)的轉(zhuǎn)換:把XML文檔的數(shù)據(jù)導(dǎo)人數(shù)據(jù)庫(kù)中,首先要建贏從XML到關(guān)系數(shù)據(jù)庫(kù)的結(jié)構(gòu)映射,即根據(jù)XML文檔的結(jié)構(gòu)定義文檔Schema和相應(yīng)的規(guī)則,在關(guān)系數(shù)據(jù)庫(kù)中建立對(duì)應(yīng)表結(jié)構(gòu),然后解析XML文檔,把數(shù)據(jù)導(dǎo)入建好的表。
[0007]3、XML加密:XML加密技術(shù)沒(méi)有特定的密算法,可以應(yīng)用目前流行的加密算法,如對(duì)稱加密、不對(duì)稱加密.Hash算法等。本文采用的是對(duì)稱加密算法AES,在.NET平臺(tái)下實(shí)現(xiàn)的。
[0008]4、XML解密:經(jīng)過(guò)加密的XML文件發(fā)送到接受方后,使用相同的密鑰按相同的算法就能進(jìn)行解密,解密過(guò)程與加密過(guò)程正好相反。
[0009]本發(fā)明介紹了 XML與關(guān)系數(shù)據(jù)庫(kù)相巨轉(zhuǎn)換的方法,在傳統(tǒng)的異構(gòu)數(shù)據(jù)庫(kù)相互轉(zhuǎn)換的基礎(chǔ)上,增加安全轉(zhuǎn)換機(jī)制。利用XML加密技術(shù),對(duì)XML數(shù)據(jù)進(jìn)行加密,實(shí)現(xiàn)了 XML與關(guān)系數(shù)據(jù)庫(kù)的安全轉(zhuǎn)換。文中所有的轉(zhuǎn)換方法都是在.NET2.0下實(shí)現(xiàn)的。
【權(quán)利要求】
1.一種XML與關(guān)系數(shù)據(jù)庫(kù)的安全轉(zhuǎn)換方法其特征是加密碼XML檔,將XML教據(jù)抽象成為DOM(文檔對(duì)象模型),并提取被加密對(duì)象信息,按通信雙方約定的某種加密密鑰和加密算法對(duì)其進(jìn)行加密,然后將加密的結(jié)果按照W3C規(guī)定的XML標(biāo)記格式替換原有的信息,形成加密后的XML數(shù)據(jù)。
2.根據(jù)權(quán)利要求1的XML的加密,其加密碼后的文檔依然保持XML文件的數(shù)據(jù)格式加密元素時(shí),元素的標(biāo)記也同時(shí)被加密,而加密元素內(nèi)容時(shí),加密后的數(shù)據(jù)僅僅替換該標(biāo)記中元素的內(nèi)容。
3.根據(jù)權(quán)利要求2的加密后的XML數(shù)據(jù)格式則與關(guān)系數(shù)據(jù)庫(kù)進(jìn)行安全轉(zhuǎn)換;XML與關(guān)系數(shù)據(jù)庫(kù)之間的數(shù)據(jù)轉(zhuǎn)換換涉及XML格式分析處理及對(duì)相應(yīng)的數(shù)據(jù)庫(kù)操作,通過(guò)對(duì)XML與關(guān)系數(shù)據(jù)庫(kù)的特征的比較,得出轉(zhuǎn)換的實(shí)質(zhì)是:(I)從XML中的數(shù)據(jù)到關(guān)系模式中字段的映射,(2)從XML中數(shù)據(jù)的相互位置關(guān)系到關(guān)系模式中元組與元組的關(guān)系及元組與字段的笑系的映射。
【文檔編號(hào)】G06F17/30GK103778147SQ201210406412
【公開(kāi)日】2014年5月7日 申請(qǐng)日期:2012年10月23日 優(yōu)先權(quán)日:2012年10月23日
【發(fā)明者】羅正偉 申請(qǐng)人:鎮(zhèn)江華揚(yáng)信息科技有限公司