一级日韩免费大片,亚洲一区二区三区高清,性欧美乱妇高清come,久久婷婷国产麻豆91天堂,亚洲av无码a片在线观看

VFP中數據表加密簡(jiǎn)單算法

時(shí)間:2025-10-31 00:07:04 信息安全畢業(yè)論文

VFP中數據表加密簡(jiǎn)單算法

  VFP中數據表加密簡(jiǎn)單算法

  摘要:Microsoft Visual FoxPro(以下簡(jiǎn)稱(chēng)為VFP)作為小型數據庫管理系統的杰出代表[1],用其進(jìn)行小型數據庫系統的設計比較簡(jiǎn)單、方便,但同時(shí)有一個(gè)比較突出的問(wèn)題:VFP沒(méi)有像其它數據庫那樣提供密碼訪(fǎng)問(wèn)功能,數據保密性不強。

  提出了一種可行的簡(jiǎn)單方法,對VFP中的數據表進(jìn)行加密與解密,以期在實(shí)際應用中,加強數據的安全性。

  關(guān)鍵詞關(guān)鍵詞:VFP;數據表;DBF;加密;解密;算法

  1加密必要性

  VFP中所有信息以二維表(DBF格式文件)形式組織并存放,由于VFP本身的數據保密功能較弱,沒(méi)有提供密碼訪(fǎng)問(wèn)的保護功能,因此利用VFP對數據進(jìn)行管理時(shí),面臨一個(gè)較為嚴重的安全問(wèn)題:任何用戶(hù)只要進(jìn)入數據庫管理系統后均可以直接使用VFP自由地打開(kāi)、修改甚至刪除數據庫系統中的數據表文件。

  而數據表作為存儲信息的主要數據文件,一旦被毫無(wú)限制地訪(fǎng)問(wèn)、修改,將對數據庫系統造成致命的破壞。

  因此,在利用VFP設計數據管理系統時(shí),必須采取有效手段對數據庫系統中的數據表進(jìn)行加密與解密。

  2加密基本原理

  2.1DBF文件基本結構

  DBF數據結構分為兩部分:頭記錄(header record)部分和數據記錄(data record)部分。

  頭記錄從文件0位置開(kāi)始,定義數據表的結構以及與其它數據有關(guān)的信息;數據記錄部分緊接在頭記錄之后,包含了數據表的實(shí)際數據內容。

  而VFP本身提供多個(gè)底層函數,可以方便靈活地將DBF文件以低級格式打開(kāi),并對文件頭句柄進(jìn)行訪(fǎng)問(wèn)和操作。

  2.2加密、解密基本過(guò)程

  數據加密就是把數據信息(即明文)轉換為不可辨識的形式(即密文)的過(guò)程,目的是讓非法人員不能識別,反之,將密文轉變?yōu)槊魑牡倪^(guò)程就是解密[2]。

  目前對VFP中數據表進(jìn)行加密常用的方式是:使用隨機偽碼加密、使用VFP本身的底層函數加密等,本文主要利用VFP提供的底層函數和異或算法對數據表加密和解密,此方法簡(jiǎn)單、利于實(shí)現(該方法后文中簡(jiǎn)稱(chēng)為FX算法)。

  異或運算最大的特點(diǎn)就是A^B^B=A,也就是說(shuō),當對同一個(gè)數進(jìn)行2次相同的異或運算時(shí),結果還是這個(gè)數[3]。

  因此利用異或算法的特征,可以使用VFP提供的底層函數打開(kāi)數據表文件,并利用密鑰對其進(jìn)行首次異或運算得到密文,此時(shí),數據表文件的數據已被改變。

  因此,直接打開(kāi)該表時(shí),將會(huì )提示非正常表文件;解密時(shí)利用密鑰對密文進(jìn)行第二次異或運算,根據異或運算的特征,數據表文件在進(jìn)行第二次異或運算后,將還原為初始數據(即還原為明文),此時(shí)可以正常打開(kāi)并訪(fǎng)問(wèn)數據表。

  基本過(guò)程如圖1所示。

  3加密模型實(shí)現

  以設計一個(gè)較為簡(jiǎn)單的教務(wù)管理系統加密程序為例,教務(wù)系統的主要數據包括:學(xué)生表student.dbf、教師表teacher、成績(jì)表score,均通過(guò)數據庫admin.dbc建立連接,進(jìn)行統一管理。

  系統登錄模塊中通常為學(xué)生、教師、管理人員等多個(gè)不同的登錄端口,如不采用適當的加密措施,造成的結果為:學(xué)生登錄成功后,可以隨意打開(kāi)各個(gè)DBF數據表,甚至可以對其進(jìn)行修改。

  加密的主要目的為:管理員退出數據庫管理系統時(shí),調用相應的加密模塊,利用指定的密鑰對數據庫中的數據表文件進(jìn)行異或運算,將其轉換為普通用戶(hù)不能識別的密文,使其不能訪(fǎng)問(wèn)已加密的數據表;進(jìn)入數據庫管理系統時(shí),再次調用解密模塊,利用密鑰將已加密的密文轉換為明文,使用戶(hù)能夠正常訪(fǎng)問(wèn)數據表。

  4結語(yǔ)

  本文討論的FX算法加密方式主要使用VFP本身的底層函數和異或運算對數據表進(jìn)行加密,算法簡(jiǎn)單有效;密鑰可以定期更換,且加密后的數據只需利用密鑰通過(guò)簡(jiǎn)單的再次異或運算即可解密;該方法始終是在內存中進(jìn)行的,故即使系統出錯,重新啟動(dòng)系統也無(wú)妨,同時(shí)加密與解密模塊的代碼基本相同,無(wú)需分別定制單獨的加密與解密模塊,對于小型的VFP數據系統來(lái)說(shuō),是一種較為實(shí)用和有效的安全保護方法。

  參考文獻:

  [1]王利.Visual FoxPro程序設計[M].北京:高等教育出版社,2006.

  [2]段鋼.加密與解密[M].北京:電子工業(yè)出版社,2003.

  [3]車(chē)紫輝.VFP中DBF表的加密和解密方法[J].保定學(xué)院學(xué)報, 2010,23(3):5355.

【VFP中數據表加密簡(jiǎn)單算法】相關(guān)文章:

排序算法的算法思想和使用場(chǎng)景總結11-20

算法結題報告01-24

在經(jīng)歷中成長(cháng)作文:簡(jiǎn)單?不簡(jiǎn)單!02-25

簡(jiǎn)歷中簡(jiǎn)單的自我評價(jià)12-10

面試中簡(jiǎn)單的自我介紹11-12

簡(jiǎn)歷中簡(jiǎn)單的自我介紹12-02

面試中的簡(jiǎn)單自我介紹10-15

簡(jiǎn)單的生活中的語(yǔ)錄集合96句02-21

簡(jiǎn)單的生活中的語(yǔ)錄匯編90條01-25

簡(jiǎn)單的生活中的語(yǔ)錄集合66條01-19

一级日韩免费大片,亚洲一区二区三区高清,性欧美乱妇高清come,久久婷婷国产麻豆91天堂,亚洲av无码a片在线观看