【正文】
通過論文的撰寫,使我能夠更系統(tǒng)、全面地學(xué)習(xí)計算機(jī)相關(guān)的前沿理論知識,并得以借鑒眾多專家學(xué)者的寶貴經(jīng)驗,這對于我今后的工作和我為之服務(wù)的企業(yè),無疑是不可多得的寶貴財富。在比如在數(shù)據(jù)傳入PEKS系統(tǒng)時也未做保密處理,可能會存在漏洞,但由于我的知識匱乏,這一方面我也仍在努力。 }} 第四章 系統(tǒng)測試測試內(nèi)容測試方法測試結(jié)果備注數(shù)據(jù)存儲啟動系統(tǒng),進(jìn)行操作測試通過10臺計算機(jī),每臺不少于50次數(shù)據(jù)加密強(qiáng)度對數(shù)據(jù)加密強(qiáng)度進(jìn)行破解通過對兩組數(shù)據(jù)進(jìn)行破解,失敗數(shù)據(jù)檢索啟動系統(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)實現(xiàn)(1)生成密鑰后,對即將進(jìn)行加密存儲的數(shù)據(jù)的關(guān)鍵進(jìn)行PEKS加密,其中pk為公鑰,keyword為關(guān)鍵詞,keywordlen為關(guān)鍵詞長度,cipher為密文,具體實現(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)建密鑰對生成器,指定加密和解密算法為RSA public String[] Skey_RSA(int keylen){//輸入密鑰長度 String[] output = new String[5]。}(2) 當(dāng)系統(tǒng)進(jìn)行存儲操作時,首先系統(tǒng)會生成密鑰,調(diào)用keygen函數(shù)生成密鑰,其中pk為公鑰,sk為私鑰。 size_t count = fread(s, 1, 1000, fp)。 }Trapdoor。 }sysparams。而在數(shù)據(jù)檢索時,關(guān)鍵詞的作用不言而喻。:采用目前先進(jìn)的技術(shù)及實現(xiàn)方法,保證系統(tǒng)各項功能性能良好。輸出(2):首先計算,隨機(jī)數(shù),輸出(3):輸出(4)(:令S=[A,B],如果,輸出“yes”,否則輸出“no,”。A對XA的值保密存放而使YA能被B公開獲得。人們已能分解多個十進(jìn)制位的大素數(shù)。e1和e2是一對相關(guān)的值,e1可以任意取,但要求e1與(p1)*(q1)互質(zhì);再選擇e2,要求(e2*e1)mod((p1)*(q1))=1。這個標(biāo)準(zhǔn)用來替代原先的DES,已經(jīng)被多方分析且廣為全世界所使用。算法是一組規(guī)則,規(guī)定如何進(jìn)行加密和解密。信息既已操作,其操作行為會隨之記錄,這是基于公平公正性進(jìn)行考慮的,所以必須要滿足這一點 第二章 數(shù)據(jù)安全保護(hù)的主要應(yīng)用技術(shù)本文主要涉及的是數(shù)據(jù)安全,所以各種加密算法是重中之重。應(yīng)運而生的數(shù)據(jù)安全系統(tǒng)可以對存儲介質(zhì)提供加密保護(hù),即使系統(tǒng)出現(xiàn)失控或別的一些故障,數(shù)據(jù)安全系統(tǒng)依舊為數(shù)據(jù)安全提供者保障。信息安全的特性如下,保密性,完整性,可用性,可控性,不可否認(rèn)性。這導(dǎo)致了一個重要問題,就是在一些網(wǎng)絡(luò)系統(tǒng)中,用戶信息很可能被直接在網(wǎng)絡(luò)中獲取明文信息,導(dǎo)致信息泄露。從網(wǎng)上的調(diào)查數(shù)據(jù)可知,現(xiàn)如今大部分的信息泄露主要是內(nèi)部人員所為,也就是說外來黑客的攻擊只占小部分,大部分的信息泄露都是由于數(shù)據(jù)存儲的管理制度不完善,內(nèi)部人員隨意竊取導(dǎo)致。正是因為信息時代的到來,所以信息安全尤其顯得重要??伤阉骷用芊譃閹шP(guān)鍵詞檢索的對稱加密和帶關(guān)鍵詞檢索的公鑰加密??v觀當(dāng)今社會,信息的存儲逐漸取代了傳統(tǒng)的紙質(zhì)形式,轉(zhuǎn)而大多是以電子形式進(jìn)行的。加密技術(shù)是保護(hù)數(shù)據(jù)機(jī)密性和隱私的一種較為有效的手段,然而對加密后的數(shù)據(jù)進(jìn)行檢索卻是一項非常困難的工作。 公鑰加密?,F(xiàn)實生活中,計算機(jī)信息安全,網(wǎng)絡(luò)信息安全都與我們自身息息相關(guān)。然而一旦這些介質(zhì)受到攻擊,明文形式保存的信息就會遭到泄露,那么所帶來的后果將是十分嚴(yán)重的,輕則需要重新錄入,重則面臨巨大損失。數(shù)據(jù)安全作為信息安全的核心組成部分,在信息安全中起著至關(guān)重要的作用。由此,各種新技術(shù)便應(yīng)運而生。保證信息的完整性是保障數(shù)據(jù)安全的基礎(chǔ),也是前提數(shù)據(jù)的存儲時運行在一個大的并且是實時開放的網(wǎng)絡(luò)中的,所以對于機(jī)密數(shù)據(jù)的訪問是必須要經(jīng)過身份驗證,以確保信息是來自真實身份的發(fā)送方。對稱性加密也稱為密鑰加密。使用子密鑰對其中一半應(yīng)用循環(huán)功能,然后將輸出與另一半進(jìn)行“異或”運算;接著交換這兩半,這一過程會繼續(xù)下去,但最后一個循環(huán)不交換。常用非對稱加密算法:RSA算法是一種非對稱密碼算法,所謂非對稱,就是指該算法需要一對密鑰,使用其中一個加密,則需要用另一個才能解密。假設(shè)存在一種無須分解大數(shù)的算法,那它肯定可以修改成為大數(shù)分解算法。但是注意,這個密鑰交換協(xié)議/算法只能用于密鑰的交換,而不能進(jìn)行消息的加密和解密。(4)關(guān)鍵詞檢索算法:輸入關(guān)鍵詞w的限門以及一個PEKS密文如果w=w’,該算法返回”Yes”,否則返回”No”。因此確保數(shù)據(jù)信息的安全存儲成為實現(xiàn)信息安全的首要條件。所以當(dāng)用戶需要存儲數(shù)據(jù)時,首先應(yīng)選擇數(shù)據(jù)的存儲路徑,然后進(jìn)入數(shù)據(jù)輸入界面輸入數(shù)據(jù),當(dāng)數(shù)據(jù)輸入完成后,系統(tǒng)將執(zhí)行上述操作 數(shù)據(jù)的關(guān)鍵詞由于本系統(tǒng)是基于PEKS的數(shù)據(jù)存儲,PEKS即帶有關(guān)鍵詞搜索的公鑰加密。當(dāng)用戶提出獲取關(guān)鍵詞w的數(shù)據(jù)時,用戶首先通過用戶模塊生成搜索陷門,然后將搜索陷門傳送給存儲模塊進(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)鍵詞后會將兩個密文一起發(fā)送給存儲模塊進(jìn)行存儲,存儲模塊調(diào)用IO輸出流,將密文寫入文件中實現(xiàn)存儲,具體代碼實現(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ù),在很大程度上對數(shù)據(jù)安全進(jìn)行了加強(qiáng),保證了數(shù)據(jù)加密強(qiáng)度的同時也增加了數(shù)據(jù)安全存儲的效率。還有教過我的所有老師們,你們嚴(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)可在不用對數(shù)據(jù)解密的情況下對數(shù)據(jù)進(jìn)行關(guān)鍵詞查找,保證了效率的同時也保證了其安全性和穩(wěn)定性。//解密明文 byte[] mt=()。 element_pairing(tmp, cipherc1, twt)。(1) 當(dāng)用戶輸入關(guān)鍵詞keyword結(jié)束后,系統(tǒng)會將keyword發(fā)送給PEKS系統(tǒng),調(diào)用其中的陷門函數(shù),生成加密后的關(guān)鍵詞密文,具體實現(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]=()。 //指定密鑰的長度,初始化密鑰對生成器 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ù)存儲系統(tǒng)需要保證以明文形式輸入的數(shù)據(jù)可以輸送至加密系統(tǒng)。can initialize from sample from