- 相關(guān)推薦
基于Excel的數(shù)據(jù)加密方案的論文范文
[摘要] Excel是目前辦公系統(tǒng)以及實驗數(shù)據(jù)處理中常用的應(yīng)用系統(tǒng)之一。大量重要的敏感數(shù)據(jù)被集中存放在文件里,數(shù)據(jù)的安全性是大多數(shù)用戶非常關(guān)切的。本文提出了幾種加密方案,并對它們的原理和使用方法做了詳細說明。然后對各種加密方案安全性能方面進行對比分析,為用戶在保護excel敏感數(shù)據(jù)方面提供了一些借鑒。
[關(guān)鍵詞] Excel 安全性 加密 分析
一、實現(xiàn)過程
1.基于Excel自身的加密。對于Excel文件,可認(rèn)為有工作簿組成,而工作簿由若干工作表組成。因此,基于Excel本身,可采取兩種保護方法:工作表保護和工作簿保護。
(1)工作表保護。點擊“工具”—>“保護”,—>“保護工作表”,可以設(shè)定密碼保護你的工作表,以防止自己無意的修改或他人未經(jīng)授權(quán)的修改。此功能可使非法用戶只能看到工作表內(nèi)容,但無法對文件進行修改。如果用戶想在總體保護表的情況下對表的個別數(shù)據(jù)進行修改,可在保護工作表之前,設(shè)置“單元格格式”-“保護”選項,選擇鎖定或隱藏復(fù)選框。取消鎖定則在保護工作表之后仍可修改此區(qū)域數(shù)據(jù)。設(shè)置隱藏可使保護工作表之后,隱藏公式數(shù)據(jù)。
(2)工作簿保護。Excel為用戶提供了二種方式來保護工作薄。點擊“工具”—>保護”—>“保護工作簿”,可以設(shè)定密碼保護你的工作簿的結(jié)構(gòu)和窗口。保護“結(jié)構(gòu)”,是指工作簿中的工作表將不能進行移動、刪除、隱裁、取消隱跟或重新命名,不能插入新的工作表。保護“窗口”可以在打開工作簿時保持窗口的固定位位置和大小。
上述兩種方法存在一些問題:即在保護之后,非法用戶雖然無法修改文件內(nèi)容但仍能看到文件內(nèi)容,從而泄露重要數(shù)據(jù)。因此這兩種可認(rèn)為是對合法用戶(管理員)起到一定的防止誤操作的輔助手段,無法從根本保護數(shù)據(jù)不被泄露。
(3)文件口令保護。點擊“工具”—>“選項”,—>“安全性”可以設(shè)定打開權(quán)限密碼或修改權(quán)限密碼保護你Excel文件。
設(shè)置打開權(quán)限密碼之后,在沒有輸入正確的密碼之前,Excel將不允許用戶打開這一Excel文件,從而也就無法看到文件內(nèi)容。設(shè)置修改權(quán)限密碼之后,在輸入打開權(quán)限密碼后,Excel文件將繼續(xù)要求您輸入修改密碼,如果密碼無效,則只能以只讀方式打開。但是這種方法打開之后,如果做了修改,系統(tǒng)會提示你另存文件,另存之后,新的文件修改密碼自動失效,打開密碼仍起作用。
2.基于Excel文件的加密。鑒于采用上述方法使文件部分?jǐn)?shù)據(jù)能夠被非法用戶得到,我們采用對整個文件進行加密,極大地增加了安全性,原理如下:整個系統(tǒng)有兩個模塊構(gòu)成,加密模塊encrypt和解密模塊decrypt。當(dāng)需要加密文件時,命令格式為:encryptexcel文件名。當(dāng)需要解密文件時,命令格式為:decryptexcel文件名。
加密原理為:假設(shè)文件原始內(nèi)容為M,用戶隨機選定一個密鑰為P,然后M和P異或運算得到密文C。即:。
解密原理為:密文C和密鑰P異或運算得到原始內(nèi)容。即:。
實際上,只要對加密文件再加一次密,即得原始文件,即只需一個加密模塊即可。
實現(xiàn)主要代碼如下:
#include
#include
void main(int argc,char *argv[])
{FILE *fp1,*fp2; //fp1:原始文件內(nèi)容;fp2:加密文件內(nèi)容。
if(argc!=3) exit(0);
if((fp1=fopen(argv[1],"rb"))==NULL)
{printf("Can not open the filen");
exit(0);}
fp2=fopen(argv[2],"wb");
while(!feof(fp1))
fputc(fgetc(fp1)^30,fp2);
fclose(fp1);
fclose(fp2);}
3.基于單元格的加密。在實際應(yīng)用中,我們有時并不需要加密所有數(shù)據(jù),如職工工資表,我們只需對工資數(shù)據(jù)等設(shè)計個人隱私的信息進行加密,而諸如職工名、性別、籍貫等不敏感信息則不需要保護。在這種情況下,我們可將加密單位設(shè)計為單元格,從而更方便用戶的使用,并且加密更加安全具體。對于單元格的加密,我們采用VBA編程技術(shù)。比如,要對應(yīng)發(fā)工資這一項進行加密保護。主要代碼如下:
Sub encrpt_pay()
Dim i As Integer
For i = 2 To 10‘加密數(shù)據(jù)所在的范圍
Range("E" + Format(i)) = Range("A" + Format(i)) Xor 32
Next
End Sub
這樣非法用戶看到的只是一些無實際意義的信息,從而保護了加密信息,如需解密,再執(zhí)行一次即可。對其他重要的信息方法類似。不再說明。下一步,我們將考慮并設(shè)計更加安全并方便用戶使用的保護方案。
參考文獻:
[1]張丹:喬春華.EXCEL工作表的保護.內(nèi)蒙古科技與經(jīng)濟.2004.22
[2]潭浩強編著.C程序設(shè)計.清華大學(xué)出版社,1999
【基于Excel的數(shù)據(jù)加密方案的論文】相關(guān)文章:
網(wǎng)絡(luò)數(shù)據(jù)庫加密電子商務(wù)論文10-08
關(guān)于計算機信息數(shù)據(jù)安全與加密研究的論文10-09
計算機信息數(shù)據(jù)的安全與加密技術(shù)論文10-09
基于旅游管理的時空數(shù)據(jù)模型研究論文10-08
計算機數(shù)據(jù)加密技術(shù)及運用實踐探究論文10-09
數(shù)據(jù)加密技術(shù)中計算機安全應(yīng)用論文10-11
論計算機數(shù)據(jù)加密技術(shù)及運用實踐論文10-09
計算機安全對數(shù)據(jù)加密技術(shù)的應(yīng)用論文10-09