【正文】
通過論文的撰寫,使我能夠更系統(tǒng)、全面地學(xué)習(xí)計(jì)算機(jī)相關(guān)的前沿理論知識(shí),并得以借鑒眾多專家學(xué)者的寶貴經(jīng)驗(yàn),這對(duì)于我今后的工作和我為之服務(wù)的企業(yè),無疑是不可多得的寶貴財(cái)富。在比如在數(shù)據(jù)傳入PEKS系統(tǒng)時(shí)也未做保密處理,可能會(huì)存在漏洞,但由于我的知識(shí)匱乏,這一方面我也仍在努力。 }} 第四章 系統(tǒng)測試測試內(nèi)容測試方法測試結(jié)果備注數(shù)據(jù)存儲(chǔ)啟動(dòng)系統(tǒng),進(jìn)行操作測試通過10臺(tái)計(jì)算機(jī),每臺(tái)不少于50次數(shù)據(jù)加密強(qiáng)度對(duì)數(shù)據(jù)加密強(qiáng)度進(jìn)行破解通過對(duì)兩組數(shù)據(jù)進(jìn)行破解,失敗數(shù)據(jù)檢索啟動(dòng)系統(tǒng),進(jìn)行操作測試通過穩(wěn)定些兼容性通過 第五章 結(jié)束語數(shù)據(jù)安全與信息系統(tǒng)的穩(wěn)定可靠息息相關(guān),因此,數(shù)據(jù)安全問題得到了越來越廣泛的關(guān)注。//獲取私鑰的參數(shù)d,n BigInteger n=new BigInteger(nStr)。 return 0。 } catch (IOException e1) { ()。a。 BigInteger m = new BigInteger(ptext)。 element_init_G1(tmp2, parampairing)。 } } PEKS系統(tǒng)實(shí)現(xiàn)(1)生成密鑰后,對(duì)即將進(jìn)行加密存儲(chǔ)的數(shù)據(jù)的關(guān)鍵進(jìn)行PEKS加密,其中pk為公鑰,keyword為關(guān)鍵詞,keywordlen為關(guān)鍵詞長度,cipher為密文,具體實(shí)現(xiàn)代碼如下:int PEKS(sysparams *param, pubkey *pk, unsigned char *keyword, int keywordLen, PEKSCipher *cipher) //PEKS密文生成函數(shù){ element_t r, tmp1, tmp2。 } catch (NoSuchAlgorithmException ex) { (()).log(, null, ex)。 BigInteger d = ()。} RSA加密系統(tǒng)初始化public class RSA { //創(chuàng)建密鑰對(duì)生成器,指定加密和解密算法為RSA public String[] Skey_RSA(int keylen){//輸入密鑰長度 String[] output = new String[5]。}(2) 當(dāng)系統(tǒng)進(jìn)行存儲(chǔ)操作時(shí),首先系統(tǒng)會(huì)生成密鑰,調(diào)用keygen函數(shù)生成密鑰,其中pk為公鑰,sk為私鑰。 size_t count = fread(s, 1, 1000, fp)。 }Trapdoor。 }sysparams。而在數(shù)據(jù)檢索時(shí),關(guān)鍵詞的作用不言而喻。:采用目前先進(jìn)的技術(shù)及實(shí)現(xiàn)方法,保證系統(tǒng)各項(xiàng)功能性能良好。輸出(2):首先計(jì)算,隨機(jī)數(shù),輸出(3):輸出(4)(:令S=[A,B],如果,輸出“yes”,否則輸出“no,”。A對(duì)XA的值保密存放而使YA能被B公開獲得。人們已能分解多個(gè)十進(jìn)制位的大素?cái)?shù)。e1和e2是一對(duì)相關(guān)的值,e1可以任意取,但要求e1與(p1)*(q1)互質(zhì);再選擇e2,要求(e2*e1)mod((p1)*(q1))=1。這個(gè)標(biāo)準(zhǔn)用來替代原先的DES,已經(jīng)被多方分析且廣為全世界所使用。算法是一組規(guī)則,規(guī)定如何進(jìn)行加密和解密。信息既已操作,其操作行為會(huì)隨之記錄,這是基于公平公正性進(jìn)行考慮的,所以必須要滿足這一點(diǎn) 第二章 數(shù)據(jù)安全保護(hù)的主要應(yīng)用技術(shù)本文主要涉及的是數(shù)據(jù)安全,所以各種加密算法是重中之重。應(yīng)運(yùn)而生的數(shù)據(jù)安全系統(tǒng)可以對(duì)存儲(chǔ)介質(zhì)提供加密保護(hù),即使系統(tǒng)出現(xiàn)失控或別的一些故障,數(shù)據(jù)安全系統(tǒng)依舊為數(shù)據(jù)安全提供者保障。信息安全的特性如下,保密性,完整性,可用性,可控性,不可否認(rèn)性。這導(dǎo)致了一個(gè)重要問題,就是在一些網(wǎng)絡(luò)系統(tǒng)中,用戶信息很可能被直接在網(wǎng)絡(luò)中獲取明文信息,導(dǎo)致信息泄露。從網(wǎng)上的調(diào)查數(shù)據(jù)可知,現(xiàn)如今大部分的信息泄露主要是內(nèi)部人員所為,也就是說外來黑客的攻擊只占小部分,大部分的信息泄露都是由于數(shù)據(jù)存儲(chǔ)的管理制度不完善,內(nèi)部人員隨意竊取導(dǎo)致。正是因?yàn)樾畔r(shí)代的到來,所以信息安全尤其顯得重要。可搜索加密分為帶關(guān)鍵詞檢索的對(duì)稱加密和帶關(guān)鍵詞檢索的公鑰加密??v觀當(dāng)今社會(huì),信息的存儲(chǔ)逐漸取代了傳統(tǒng)的紙質(zhì)形式,轉(zhuǎn)而大多是以電子形式進(jìn)行的。加密技術(shù)是保護(hù)數(shù)據(jù)機(jī)密性和隱私的一種較為有效的手段,然而對(duì)加密后的數(shù)據(jù)進(jìn)行檢索卻是一項(xiàng)非常困難的工作。 公鑰加密?,F(xiàn)實(shí)生活中,計(jì)算機(jī)信息安全,網(wǎng)絡(luò)信息安全都與我們自身息息相關(guān)。然而一旦這些介質(zhì)受到攻擊,明文形式保存的信息就會(huì)遭到泄露,那么所帶來的后果將是十分嚴(yán)重的,輕則需要重新錄入,重則面臨巨大損失。數(shù)據(jù)安全作為信息安全的核心組成部分,在信息安全中起著至關(guān)重要的作用。由此,各種新技術(shù)便應(yīng)運(yùn)而生。保證信息的完整性是保障數(shù)據(jù)安全的基礎(chǔ),也是前提數(shù)據(jù)的存儲(chǔ)時(shí)運(yùn)行在一個(gè)大的并且是實(shí)時(shí)開放的網(wǎng)絡(luò)中的,所以對(duì)于機(jī)密數(shù)據(jù)的訪問是必須要經(jīng)過身份驗(yàn)證,以確保信息是來自真實(shí)身份的發(fā)送方。對(duì)稱性加密也稱為密鑰加密。使用子密鑰對(duì)其中一半應(yīng)用循環(huán)功能,然后將輸出與另一半進(jìn)行“異或”運(yùn)算;接著交換這兩半,這一過程會(huì)繼續(xù)下去,但最后一個(gè)循環(huán)不交換。常用非對(duì)稱加密算法:RSA算法是一種非對(duì)稱密碼算法,所謂非對(duì)稱,就是指該算法需要一對(duì)密鑰,使用其中一個(gè)加密,則需要用另一個(gè)才能解密。假設(shè)存在一種無須分解大數(shù)的算法,那它肯定可以修改成為大數(shù)分解算法。但是注意,這個(gè)密鑰交換協(xié)議/算法只能用于密鑰的交換,而不能進(jìn)行消息的加密和解密。(4)關(guān)鍵詞檢索算法:輸入關(guān)鍵詞w的限門以及一個(gè)PEKS密文如果w=w’,該算法返回”Yes”,否則返回”No”。因此確保數(shù)據(jù)信息的安全存儲(chǔ)成為實(shí)現(xiàn)信息安全的首要條件。所以當(dāng)用戶需要存儲(chǔ)數(shù)據(jù)時(shí),首先應(yīng)選擇數(shù)據(jù)的存儲(chǔ)路徑,然后進(jìn)入數(shù)據(jù)輸入界面輸入數(shù)據(jù),當(dāng)數(shù)據(jù)輸入完成后,系統(tǒng)將執(zhí)行上述操作 數(shù)據(jù)的關(guān)鍵詞由于本系統(tǒng)是基于PEKS的數(shù)據(jù)存儲(chǔ),PEKS即帶有關(guān)鍵詞搜索的公鑰加密。當(dāng)用戶提出獲取關(guān)鍵詞w的數(shù)據(jù)時(shí),用戶首先通過用戶模塊生成搜索陷門,然后將搜索陷門傳送給存儲(chǔ)模塊進(jìn)行檢索。(4) PEKS密文結(jié)構(gòu)體 typedef struct PEKSCipher{ element_t c1, c2。 FILE *fp = stdin。 } rv = pairing_is_symmetric(pairing)。 element_random(skalpha)。 RSAPrivateCrtKey prk = (RSAPrivateCrtKey)()。 output[2]=()。 String cipher = (keyword1, content1)。 element_pow_zn(cipherc1, pkg, r)。 try { BigInteger e = new BigInteger(eStr)。 }(3) PEKS系統(tǒng)在加密完數(shù)據(jù)和關(guān)鍵詞后會(huì)將兩個(gè)密文一起發(fā)送給存儲(chǔ)模塊進(jìn)行存儲(chǔ),存儲(chǔ)模塊調(diào)用IO輸出流,將密文寫入文件中實(shí)現(xiàn)存儲(chǔ),具體代碼實(shí)現(xiàn)如下FileOutputStream fos = new FileOutputStream(current)。 SaveImpl si = new SaveImpl()。 element_from_hash(tmp,keyword,keywordLen)。 else return 1。i。在數(shù)據(jù)加密的過程中 ,使用RSA和DES等加密技術(shù),在很大程度上對(duì)數(shù)據(jù)安全進(jìn)行了加強(qiáng),保證了數(shù)據(jù)加密強(qiáng)度的同時(shí)也增加了數(shù)據(jù)安全存儲(chǔ)的效率。還有教過我的所有老師們,你們嚴(yán)謹(jǐn)細(xì)致、一絲不茍的作風(fēng)一直是我工作、學(xué)習(xí)中的榜樣;他們循循善誘的教導(dǎo)和不拘一格的思路給予我無盡的啟迪。 [Managementof Computing and Information Systems]: Security andProtection—Unauthorized accessGeneral TermsDesign, Experimentation, SecurityKeywordsLogic Flaw,Web Application Security, Extended Finite StateMachine, SQL Signature, InvariantPermission to make digital or hard copies of all or part of this work forpersonal or classroom use is granted without fee provided that copies arenot made or distributed for profit or mercial advantage and that copiesbear this notice and the full citation on the first page. To copy otherwise, torepublish, to post on servers or to redistribute to lists, requires prior specificpermission and/or a fee.CODASPY’12, February 7–9, 2012, San Antonio, Texas, USA.Copyright 2012 ACM 9781450310918/12/02 ...$.Databasebacked web applications have bee a prevalent venue for disseminating information and services. An enormous amount of information is made accessible on Internet through web applications, which interact with the backend database on behalf of users. While providing great convenience to users, those web applications also attract a large number of security exploits. According to a recent survey [29], the attacks that successfully disclose or tamper sensitiveinformation by promising vulnerable web applications account for more than 30% of all the cyber attacks. For instance, on June 2010, it was reported that a vulnerability of ATamp。首先誠摯的感謝我的論文指導(dǎo)老師胡程瑜老師。該系統(tǒng)可在不用對(duì)數(shù)據(jù)解密的情況下對(duì)數(shù)據(jù)進(jìn)行關(guān)鍵詞查找,保證了效率的同時(shí)也保證了其安全性和穩(wěn)定性。//解密明文 byte[] mt=()。 element_pairing(tmp, cipherc1, twt)。(1) 當(dāng)用戶輸入關(guān)鍵詞keyword結(jié)束后,系統(tǒng)會(huì)將keyword發(fā)送給PEKS系統(tǒng),調(diào)用其中的陷門函數(shù),生成加密后的關(guān)鍵詞密文,具體實(shí)現(xiàn)代碼如下,其中sk為私鑰,keyword為關(guān)鍵詞,keywordLen為關(guān)鍵詞長度int trapdoor(sysparams *param, privatekey *sk, unsigned char *keyword, int keywordLen, Trapdoor *tw) { element_t tmp。 PEKSSystem peksSys = new PEKSSystem()。 } catch (UnsupportedEncodingException ex) { (()).log(, null, ex)。 return 0。 element_init_Zr(r, parampairing)。 String content1 = ()。 output[0]=()。 //指定密鑰的長度,初始化密鑰對(duì)生成器 KeyPair kp = ()。 element_init_Zr(skalpha, parampairing)。 rv = pairing_init_set_buf(pairing, PairingInitString,strlen(PairingInitString))。 int rv。(3) 私鑰結(jié)構(gòu)體 typedef struct privatekey{ element_t alpha。在用戶模塊中包含公鑰加密算法E,偽隨機(jī)序列生成器G,加密關(guān)鍵詞所需的帶密鑰的和秘密參數(shù)UN的安全哈希函數(shù)H,帶密鑰c的偽隨機(jī)函數(shù)。該系統(tǒng)是將數(shù)據(jù)以密文的形式存入硬盤,所以數(shù)據(jù)存儲(chǔ)系統(tǒng)需要保證以明文形式輸入的數(shù)據(jù)可以輸送至加密系統(tǒng)。can initialize from sample from