RC4程序設(shè)計和數(shù)據(jù)分析比較_第1頁
RC4程序設(shè)計和數(shù)據(jù)分析比較_第2頁
RC4程序設(shè)計和數(shù)據(jù)分析比較_第3頁
RC4程序設(shè)計和數(shù)據(jù)分析比較_第4頁
RC4程序設(shè)計和數(shù)據(jù)分析比較_第5頁
已閱讀5頁,還剩41頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

摘要RC4是RSA公司設(shè)計的密鑰流生成算法,本文采用Java程序分別實現(xiàn)了RC4算法和線性同余算法,并完成了流密碼對應(yīng)RC4相應(yīng)的加密解密程序設(shè)計。本文還對RC4與在特定情況下的線性同余法進行對比,對運行程序的實驗數(shù)據(jù)進行分析比較,在實驗過程中發(fā)現(xiàn)RC4本身產(chǎn)生的隨機序列與線性同余法的隨機序列各有優(yōu)劣,線性同余法的隨機序列整體上均衡性好一些;游程方面,周期在256字節(jié)之間RC4比線性同余法更好,大于256字節(jié)后則線性同余法更好。關(guān)鍵詞:RC4;流密碼;隨機序列;線性同余法Abstract RC4isakeyflowgenerationalgorithmdesignedbyRSAcompany.Inthispaper,JavaprogramsareusedtoimplementRC4algorithmandlinearcongruencealgorithmrespectively,andtheencryptionanddecryptionprogramdesignofflowpasswordcorrespondingtoRC4iscompleted.ThispaperalsocomparesRC4withthelinearcongruencemethodunderspecificcircumstances,andanalyzesandcomparestheexperimentaldataoftherunningprogram.Intheexperimentalprocess,itisfoundthattherandomsequencesgeneratedbyRC4havetheirownadvantagesanddisadvantagescomparedwiththerandomsequencesgeneratedbythelinearcongruencemethod,andtherandomsequencesgeneratedbythelinearcongruencemethodhavebetterequilibriumonthewhole.Intermsofrunningdistance,RC4isbetterthanthelinearcongruencemethodwhenthecycleisbetween256bytes,andbetterthanthelinearcongruencemethodwhenthecycleisgreaterthan256bytes.Keywords:RC4;Streamcipher;Randomsequence;Linearcongruencemethod目錄第一章緒論 第一章緒論1.1課題背景和意義流密碼是目前被比較廣泛使用的密碼,在被使用的同時,密碼學(xué)學(xué)者們也對其不斷的研究探討,最早出現(xiàn)的Vernam密碼,具有“一次一密”的特性,Vernam利用產(chǎn)生的隨機的不會發(fā)生重復(fù)的字符對明文進行加密,其產(chǎn)生的密文也具有唯一性,使得密文被使用過一次后,被使用過的密文就不會在其他消息中再次被使用,這就使得密鑰個數(shù)要與明文長度相等才行,否則明文加密就達不到“一次一密”的效果,因為要使加密達到“一次一密”效果,所以在對密鑰的管理分配等方面具有相當大的難度,在后來,“一次一密”的密碼體制也被Shannon證明是理論上不可破譯的。因為“一次一密”不可被破譯,并且其實現(xiàn)難度較大,因為“一次一密”的密鑰產(chǎn)生、分配與管理相對困難,在建立一次一密的密碼系統(tǒng)時,必須在傳輸明文的時候交換傳輸一串與明文長度一樣的密鑰流,使其使用范圍收到了極大的限制,在網(wǎng)絡(luò)世界中也比較容易產(chǎn)生安全隱患,在保密強度大的情況下,該體制就被舍棄,因此奠定了流密碼技術(shù)的發(fā)展基石,流密碼由此而產(chǎn)生,流密碼包含的算法產(chǎn)生的序列具有比較強的隨機性。流密碼包含同步流密碼與自同步流密碼兩類,同步流密碼的原理是:由流密碼產(chǎn)生的密鑰流獨立于明文信息,其內(nèi)部狀態(tài)只由上一刻的內(nèi)部狀態(tài)決定,與傳輸?shù)拿魑臎]有任何關(guān)系。它具有信息傳輸錯誤率低的特點,即一個符號在傳輸時候發(fā)生錯誤,也不能夠?qū)竺娴姆柈a(chǎn)生影響。自同步流密碼與同步流密碼相反,它十分依賴明文信息或密文信息,如果在傳輸時候明文或密文產(chǎn)生了錯誤,則會嚴重影響傳輸?shù)馁|(zhì)量。因為原理上的問題,使得該自同步流密碼在社會中存在十分稀少,更多的是流密碼中的另一類——同步流密碼。在2000年時候,歐洲提出一個以征集新的流密碼方案為目的之一的NESSIE計劃,其一直持續(xù)到了2003年,在此次流密碼征集中,歐洲委員會收到了6個同步流密碼算法,0個自同步流密碼算法,但是因為這些收集到的流密碼算法在安全性方面存在一些問題,所以這些收集到的流密碼算法都落選了。在同一時期,日本也提出了與NESSIE相似的計劃,把一些密碼算法用于政府和工商業(yè)領(lǐng)域。在日本提出的計劃之后,2004年歐洲又啟動了一個新的工程:ECRYPT,在這次的ECRYPT工程中,他們從各個地區(qū)中得到了34個流密碼算法,這次得到的流密碼算法比NESSIE計劃多的多。從這里可以看出,當時社會各界對于具有安全性的流密碼有多么的渴望,又可能是因為要證明精心設(shè)計過的流密碼可以與AES算法相比較,甚至在某些方面某些環(huán)境下流密碼具有超越AES算法的優(yōu)點。如今在流密碼方面主要研究的有兩項:1.衡量密鑰流好壞的標準通過流密碼算法產(chǎn)生的序列能否擁有足夠的隨機,也就是隨機性的強度,對密鑰流的好壞具有重要的影響。如果算法越安全,那么其密鑰流就越與真隨機性相近。2.構(gòu)造長周期和高復(fù)雜度的密鑰流序列流密碼的設(shè)計中密鑰流產(chǎn)生器有:鐘控序列產(chǎn)生器、基于線性反饋移位寄存器的前饋序列產(chǎn)生器和非線性組合產(chǎn)生器等。在流密碼被廣泛使用時,與流密碼相關(guān)的分析攻擊逐漸顯露,Kerckhoff就根據(jù)攻擊者是否知道明文、密文等相關(guān)信息,把分析攻擊分為四種:唯密文攻擊、已知明文攻擊、選擇明文攻擊、選擇密文攻擊。當然,針對流密碼的攻擊還有線性攻擊、代數(shù)攻擊等。線性攻擊主要是建立統(tǒng)計區(qū)分器,通過區(qū)分兩個不同的概率分布來獲得流密碼的弱點。流密碼的分析與設(shè)計是處于保密狀態(tài)的,之所以處于保密狀態(tài),是因為在很多需要用到通信以及其他保密的用途中,流密碼價值非常大。因為流密碼加密時候密鑰長度取決于明文長度,因此流密碼具有長度可以根據(jù)需要來改變的特點,其運算速度也比較快,在對密文進行傳輸?shù)臅r候,其傳輸?shù)恼_率高,出錯率低,因為流密碼具有以上的優(yōu)點,所以流密碼在如今注重效率和安全的時代,自然而然的成為了密碼應(yīng)用的主流,具有偽隨機性的RC4是流密碼的重要成員以及代表之一。1.2研究內(nèi)容本文闡述了密碼學(xué)的由來、近代密碼學(xué)和現(xiàn)代密碼學(xué)發(fā)展的事件,介紹流密碼從如何產(chǎn)生到被推廣的歷程。本文一共分為四個章節(jié)第一章主要介紹流密碼產(chǎn)生的雛形,流密碼的種類,流密碼在近年來被作為項目的歷程以及與流密碼相關(guān)的分析攻擊等。第二章主要介紹了密碼學(xué)的由來,密碼學(xué)的發(fā)展,密鑰隨機性的分類,隨機數(shù)的真?zhèn)闻c產(chǎn)生等。第三章是實驗過程與數(shù)據(jù)分析,此章詳細介紹了RC4用java的設(shè)計流程,指出實現(xiàn)代碼時簡化的地方,RC4算法實現(xiàn)的流程;詳細分析了線性同余法中符合滿周期的特定情況,指出了游程、初始值、游程對于線性同余法的影響,對比了RC4與線性同余法的周期、游程和均衡性,并作出了對比結(jié)果總結(jié)。第四章是總結(jié)與展望,此章對本文的研究和數(shù)據(jù)分析進行了總結(jié),對不足進行了說明,針對不足提出了下一個目標與計劃第二章密碼學(xué)簡介2.1密碼學(xué)的由來密碼學(xué)是研究如何在不被除接受者和發(fā)送者以外的人獲得傳遞符號或信息的一門學(xué)科。密碼學(xué)家RonRivest曾說過:“密碼學(xué)是關(guān)于如何在敵人存在的環(huán)境中通訊”,密碼學(xué)是一門研究與密碼相關(guān)的學(xué)科,密碼的安全性與隱蔽性是重中之重,信息傳遞也是如此,在傳遞信息的過程中,能夠把信息涵義隱蔽地傳遞出去也是密碼學(xué)的重點。密碼學(xué)最早約于公元前400年產(chǎn)生,密碼的使用歷史與人類使用文字的歷史相當。中國從古代開始就已經(jīng)有一些用近于密碼雛形的通信手段,宋朝時期的曾公亮等編撰《武經(jīng)總要》就記載了這么一個和密碼學(xué)相關(guān)故事,在北宋時期,宋朝的某個將領(lǐng)在作戰(zhàn)中就用過由40個字組成的五言律詩,把40種作戰(zhàn)情況以及要求用在這40個字組成的律詩中,這種用暗含的方式把字表示為作戰(zhàn)方式,就已經(jīng)具有加密體制的特點了。密碼形成一門學(xué)科的時候是20世紀70年代,計算機在那個時代開始進入高速發(fā)展期,密碼也逐漸被推動起來,從而形成了一門專門用于計算機科學(xué)的密碼學(xué)學(xué)科。因為計算機的高速運算作用,那些研究密碼設(shè)計的專家們也由此得到極大的便利,他們可以不必在紙上實現(xiàn)繁雜的設(shè)計時產(chǎn)生一些不必要的錯誤。歷史上最著名的密碼機Enigma于德國1919年設(shè)計出,這部密碼機層被用于第二次世界大戰(zhàn),因為這臺密碼機,世界大戰(zhàn)時期英國將近有10個月都解讀不出德國潛艇所發(fā)出的信號的含義。這臺密碼機屬于轉(zhuǎn)輪密碼機,雖然轉(zhuǎn)輪密碼機加密速度快,但是其密鑰量被限制了,在第二次世界大戰(zhàn)末期,引出了一場加密與破譯加密的對抗風暴。那時候波蘭人發(fā)現(xiàn)德國所發(fā)出的電報中的前幾個字母不斷重復(fù)出現(xiàn),于是針對其下手,后來破解了Enigma密碼機,接著又把如何破譯該密碼機的方法交給了英國與法國。著名的英國數(shù)學(xué)家艾倫·麥席森·圖靈帶領(lǐng)他的團隊們在二戰(zhàn)時期通過尋找德國人選擇密鑰的失誤,成功奪得了德軍的部分密碼本,從而拿到密鑰,并且利用明文攻擊等手段,破解了大量德軍重要情報內(nèi)容。這一時期屬于近代密碼學(xué)時期。近代密碼學(xué)這一階段的開始真正源于香農(nóng)在二十世紀40年代末期發(fā)表的論文。近代密碼學(xué)在發(fā)展歷程中最重要的突破是“數(shù)據(jù)加密標準”(DES)的出現(xiàn),一方面,它的意義在于密碼學(xué)從政府走向民間。另一方面,DES密碼設(shè)計中的思想(S盒等)被后來大部分分組密碼采用。 現(xiàn)代密碼學(xué)中,密碼體制可以分為對稱密碼與非對稱密碼體制,流密碼被包含與對稱密碼體制中,RC4則是流密碼的一部分,其可以相對容易地實現(xiàn)對任意長度信息加密。RC4全名是“RivestCipher4”,是密碼學(xué)家RonRivest在1987年間設(shè)計發(fā)明的RC4加密系統(tǒng)并用于他的公司的商業(yè)密碼,因此RC4最初為商業(yè)秘密。作為商業(yè)密碼的RC4一直到1994年9月份才被人匿名公開在網(wǎng)絡(luò)世界中,使得RC4不再為專有的商業(yè)秘密,它的泄露無從而知,但是它推動了RC4的使用。RC4算法可以改變密鑰長度,以隨機置換為基礎(chǔ),產(chǎn)生一個極大的周期秘鑰流,使得它加密的信息相對安全,并且該算法的運行速度較快。現(xiàn)代的密碼體制有兩種,由于密文是通過密鑰與明文作用產(chǎn)生的,在加密時候的密鑰與解密時候密鑰是否相同,在密鑰與明文作用產(chǎn)生密文的過程中,能否在這個過程推導(dǎo)出密文與密鑰作用的過程,決定了該密碼體制是否是對稱密鑰體制。對稱密鑰加密又叫作私鑰加密,即發(fā)送信息的人和接收信息的人利用相同的密鑰對明文或密文進行加密或解密。其優(yōu)點是加解密的速度極快,比較適用于對傳送的數(shù)據(jù)進行加密,這些數(shù)據(jù)的量也可以是巨大的。2.2隨機數(shù)與偽隨機數(shù)隨機數(shù)在與密碼相關(guān)的領(lǐng)域中起了很大的作用,現(xiàn)在所使用的很多偽隨機算法都是以隨機性為目的而產(chǎn)生,隨機數(shù)是針對隨機性實驗過后得到的結(jié)果。隨機性包含兩個概念:真隨機性和偽隨機性。真隨機性:指下一個產(chǎn)生的結(jié)果無法預(yù)測,就如拋硬幣一般,它拋出去后的顯示的是人頭還是數(shù)字,這只能猜測,無法真真切切的在看之前得知結(jié)果。又如打雷閃電一般,無法知道它下一次雷劈到的具體位置是哪。真隨機性具有均勻分布與獨立的特性,使得隨機數(shù)分布一致,在序列中不能由其他數(shù)推導(dǎo)出來。產(chǎn)生的隨機數(shù)具有不可預(yù)測性,一般運用于認證、會話秘鑰產(chǎn)生等。偽隨機性:指通過指定的隨機比特樣本中,1和0出現(xiàn)的數(shù)目相等或無限接近,即“10”“01”這兩個的數(shù)量應(yīng)該相等或無限接近,滿足這類的數(shù)字能使人看起來是隨機的。偽隨機性具有有邊界的特性,因為偽隨機數(shù)是通過算法,如線性同余法產(chǎn)生隨機數(shù),算法是確定的,而且算法是具有范圍的,使得產(chǎn)生的序列不具有真隨機性,但是一般情況下可以經(jīng)受隨機性的檢測。因為真的隨機數(shù),很難獲取,也很難鏈接到網(wǎng)絡(luò)上,所以需要計算機通過算法產(chǎn)生偽隨機數(shù)。偽隨機數(shù)生成的算法有很多種,線性同余法在眾多的偽隨機數(shù)生成算法中脫穎而出,它一般用于偽隨機數(shù)發(fā)生器,產(chǎn)生相應(yīng)的偽隨機數(shù)供用戶使用。線性同余法產(chǎn)生偽隨機數(shù)中,可以根據(jù)特定的取值產(chǎn)生偽隨機數(shù)。線性同余法在產(chǎn)生偽隨機數(shù)的時候,其模的值必須盡可能大,因為當模的值太小時,其容易被“肉眼”一眼看出其數(shù)據(jù)有哪些,這樣就不具有偽隨機擁有的特性了。RC4中的偽隨機序列生成算法也具有偽隨機性,RC4一般用于用戶傳遞信息,保證用戶傳遞的信息不那么容易地被他人破譯出來。第三章實驗過程和結(jié)果分析3.1RC4RC4算法是在電子信息中的一種加解密技術(shù)手段,一般用于各種網(wǎng)絡(luò)通訊,它是一種密鑰長度可變的、面向字節(jié)操作的流密碼。RC4是一種非線性變換算法,其最重要的部分有兩個:密鑰編制算法(KSA),偽隨機序列生成算法(PRGA)互聯(lián)網(wǎng)中如今有許多C語言實現(xiàn)的RC4算法,他們都需要兩個向量,一個是S,另一個是T,雖然RC4實現(xiàn)中確實需要兩個向量,但是把向量T產(chǎn)生過程簡化到j(luò)產(chǎn)生時刻中也許會簡潔些。因此我在用java實現(xiàn)RC4時,簡化了向量T產(chǎn)生的步驟。另外,我發(fā)現(xiàn)把置換算法寫成單個方法更方便使用,這樣就不需要在每個模塊中都寫一次置換操作,寫成單個方法后再使用,使得編寫效率會更高一點。RC4實現(xiàn)的主要步驟有以下四個:初始化S盒,置換操作,通過偽隨機序列生成算法生成密鑰流,對明文或密文異或操作。1.一開始生成一個能容納256字節(jié)的S盒,從0到255按照升序賦值于S盒。for(inti=0;i<256;i++){s[i]=i;}2.接著通過置換操作,使得S盒被打亂,此處為密鑰編制算法(KSA),對S盒中的每一個字節(jié)都處理一次,共處理256次。每執(zhí)行一次循環(huán)都會使得j產(chǎn)生一個新的值,這個值由密鑰和S盒相關(guān),j加上特定時候的S與T相加再模256的到新的j,再對s[i]與s[j]進行置換操作。i的從0開始改變,每次變化使得S盒中元素都能產(chǎn)生變化,每次產(chǎn)生的j都能保證其具有一定的隨機性,遍歷了256次后,得到初始的S盒。for(inti=0;i<256;i++){j=(j+s[i]+key.charAt(i%key.length()))%256;swap(s,i,j);}此處的key.charAt(i%key.length())在C語言中原本是T[i],T[I]=Key[i%keylen],簡化了向量T后,減少了for循環(huán)的使用,使得代碼更加簡潔。置換算法如下publicvoidswap(Integer[]s,inti,intj){ IntegerTemp=s[i]; s[i]=s[j]; s[j]=Temp; }通過不斷變換S盒中原來的值,使其帶有一定的隨機性。 3.打亂S盒后,通過偽隨機序列生成算法(PRNG)產(chǎn)生具有偽隨機性的密鑰流。由于RC4加解密都需要把密鑰拓展為256字節(jié),使得密鑰流能夠與明文或密文進行異或操作。例如密鑰為abcd時,它會一直重復(fù)密鑰n次,直至abcd能夠填滿256字節(jié)。inti=0,j=0; for(intk=0;k<plainLength;k++){ i=(i+1)%256; j=(j+s[i])%256; swap(s,i,j); keySchedul[k]=(char)(s[(s[i]+s[j])%256]).intValue(); } 該偽隨機序列生成算法產(chǎn)生的序列稱為偽隨機序列,它的原理是不斷的變換S盒中值的位置,把s[i]和s[j]相加獲得的值模256,得到S盒中該改變時刻的值輸為位密鑰流該時刻的值。4.最后通過明文與密鑰流異或(xor)產(chǎn)生密文,因為該算法屬于對稱加密,所以要把密文變成明文,只需要再次把加密的密文與密鑰流異或(xor)就能夠恢復(fù)成明文。 for(inti=0;i<clearOrCipher.length();i++){ cipher.append((char)(clearOrCipher.charAt(i)^keySchedul[i])); }3.1.1RC4數(shù)據(jù)分析及結(jié)論(1)滿周期S盒是由0至255進行初始排序,再通過KSA對S盒進行打亂,從而產(chǎn)生混亂的序列,因為在S盒中,其內(nèi)部的數(shù)據(jù)不重復(fù),通過KSA后也沒有產(chǎn)生重復(fù)的數(shù)據(jù),僅僅是交換s[i]和s[j]的值,所以此時的RC4的S盒滿足滿周期的性質(zhì),此時RC4的S盒是滿周期狀態(tài)的。在RC4的偽隨機序列生成算法中,i與j的獲取都與256求余,密鑰流的取值也由求余256所得。當明文長度為16、32、64、65536、131072時,得到的隨機序列數(shù)據(jù): 1)明文長度取值為16時:74 250 65 46 177 201 114 21 201 47 7 73 153 56 81 218 2)明文取值長度為32時:74 250 65 46 177 201 114 21 201 47 7 73 153 56 81 218 246 195 16 229 139 142 201 177 147 151 24 67 38 190 229 65 3)明文取值長度為64時:74 250 65 46 177 201 114 21 201 47 7 73 153 56 81 218 246 195 16 229 139 142 201 177 147 151 24 67 38 190 229 65 31 44 224 208 159 73 62 251 148 170 186 159 11 131 45 17 177 97 146 84 0 193 152 118 169 3 66171 186 117 1 11 4)明文取值長度為65536時:74 250 65 46 177 201 114 21 201 47 7 73 153 56 81 218 246 195 16229 139 142 201 177 147 151 24 67 38 190 229 65 31 44 224 208 159 73 62 251 148 170 186 ··· 75 177 235 192 251 99 210 52 185 239 162 126 199 128 124 103 132 214 30 73 254 231 237 235 131 5)明文取值長度為131072時:74 250 65 46 177 201 114 21 201 47 7 73 153 56 81 218 246 195 16 229 139 142 201 177 147 151 24 67 38190 229 65 31 44 224 208 ··· 28 90 29 179 22 162 182 221 154 46 37 98 6 56 64 107 210 180 104 20 134 168224 134 230 163 156 由RC4的偽隨機序列生成算法產(chǎn)生的數(shù)據(jù)可知,因為S盒的容量為256,所以其值只有256個,當明文輸入的長度足夠長時,通過偽隨機序列生成算法產(chǎn)生的值會發(fā)生重復(fù),所以RC4的偽隨機序列生成算法不能產(chǎn)生滿周期數(shù)。(2)游程及均衡性分析 對密鑰長度取值為5,明文長度分別取值為16,32,64,128···65536,131072,以下表3-1-1分別列出了16,32,64,65536,131072的游程:滿周期游程161001010111110101000001101110101100011100100111100101010111001001101111111100100110011001111000101000111011010321001010111110101000001101110101100011100100111100101010111001001101111111···100011101100100110110001100100111001011111000100001110011010111110111001011000001 6410010101111101010000011011101011000111001001···1011100000111011011000110110001110000110010010101010001100000110011000111011010101001111000010101010111011101011101011101165536100101011111010100000110111010110001110010011110010101011100100110111111110010011001100111100010100011101101011···11111001100111100001001101011011110100100111111110111001111110110111101011100000111310721001010111110101000001101110101100011100100111100101010111001001101111111100100110011001111000101000111011010···100110100010100100001103101010001110000010000110111001101010001110011100表3-1-1RC4滿周期數(shù)與游程從上表3-1-1中可知,當RC4中的偽隨機序列生成算法利用明文長度取值為16時,其為0游程的數(shù)目為28,1游程的數(shù)目為29;明文長度取值為32時,其為0游程的數(shù)目為56,1游程的數(shù)目為56;明文長度取值為64時,其為0游程的數(shù)目為110,1游程的數(shù)目為110;明文長度取值為65536時,其為0游程的數(shù)目為114983,1游程的數(shù)目為114983;明文長度取值為131072時,其為0游程的數(shù)目為229547,1游程的數(shù)目為229548。 另外再使明文長度取值為2的n次方,n≥4,如下表3-1-2所示:滿周期0→11→0162829325656641101101282212212564414415128888881024180018012048359935994096719171928192144001440016384288122881332768574915749265536114983114983131072229547229548表3-1-2RC4滿周期游程數(shù)1和0的交替 由上述表3-1-1和表3-1-2可知,由RC4中偽隨機序列生成算法產(chǎn)生的數(shù)據(jù)具有偽隨機性,0和1的游程數(shù)相等或相差1,由此可知,RC4中的算法具有均衡性。3.2線性同余法線性同余法是如今最廣泛使用的偽隨機數(shù)生成算法之一,它是通過對上一個數(shù)開始進行運算并取模,即a=cmodm,表示c=mq+a,a范圍為0≤a<m,隨機序列{Xn}由以下公式產(chǎn)生:其中n≥0,0≤a<m,0≤c<m。當n為0時,X0被稱為初始種子或初始值,此時0≤X0<m。在線性同余法中,能否產(chǎn)生相對合格的隨機數(shù)取決于a,c,m。例如當a=7,c=0,m=36,X0=1時,得到的序列{Xn}為{1,7,13,19,25,31,1,7,13,…},有此序列得知該序列的周期為6,然而因為m為36,36比6大得多,所以不適合把該序列作為密鑰序列。從這里可以得知,應(yīng)當存在a,c,m取于某值,使得隨機數(shù)的周期能夠與模m相近或相等時,它的周期為接近最大周期或為最大周期。3.2.1線性同余法數(shù)據(jù)分析及結(jié)論(1)滿周期 1)當取a為5,c為1,m為16時,得到的數(shù)據(jù)如下: 6 15 12 13 2 11 8 9 14 7 4 5 10 3 0 1 所得周期為16,與模16相等,無重復(fù)數(shù)據(jù),屬于滿周期。 2)當取a為11,c為1,m為16時,得到的數(shù)據(jù)如下 12 5 8 9 4 13 0 1 12 5 8 9 4 13 0 1 所得周期為8,小于模16,不屬于滿周期。 3)當取a為13,c為1,m為16時,得到的數(shù)據(jù)如下 14 7 12 13 10 3 8 9 6 15 4 5 2 11 0 1 所得周期為16,與模16相等,無重復(fù)數(shù)據(jù),屬于滿周期。 4)當取a為5,c為1,m為64時,得到的數(shù)據(jù)如下 6 31 28 13 2 11 56 25 62 55 20 37 58 35 48 49 54 15 12 61 50 59 40 9 46 39 4 21 42 19 32 33 38 63 60 45 34 43 24 57 30 23 52 5 26 3 16 17 22 47 44 29 18 27 8 41 14 7 36 53 10 51 0 1 所得周期為64,與模64相等,無重復(fù)數(shù)據(jù),屬于滿周期。 5)當取a為5,c為1,m為65536時,其數(shù)據(jù)為:6 31 156 781 3906 19531 32120 29529 16574 17335 21140 40165 4218 21091 39920 2993 14966 9295 46476 35773 47794 42363 15208 10505 ··· 55050 13107 0 1 從得到的數(shù)據(jù)可以發(fā)現(xiàn)該周期也為65536,與模65536相等,無重復(fù)數(shù)據(jù),屬于滿周期。當更改m為131072時,也得到該周期為131072,同樣屬于滿周期。 再經(jīng)由多次改變a的值與m的值,我得出了以下結(jié)論與規(guī)律:①c和m互質(zhì); ②m的所有質(zhì)因子的積能整除a-1; ③若m是4的倍數(shù),則a-1也是; ④a,c是正整數(shù); ⑤a滿足8n-3,并且m滿足2的n次方(n大于等于4)。當滿足以上條件時,該周期必定為滿周期。(2)游程以及均衡性分析分別取上述滿周期時的m值為16,32,64,65536,131072,其中a為5,c為1,如下表3-2-1所示:滿周期游程1611101111110011011010111000100111101111001011010110321110111111110011011010111100011001111101011110100···10001001111011110010101101010011064111011111111001101101011111000110011111101101111010010010111101010001111000011000111011011111100111101110010111011101000100110111010···10010110111000101001111011110010011010110101100110655361110111111001110011000011011111010000101001100010010111111101011110001110011010110011000000101111101000011101101111010010100101001001110011100101···11001100110011013107211101111110011100110000110111110100001010011000100101110111110101111000101110011010110011010000001011111010000111011011110101001010010100···100110011001100110表3-2-1線性同余法滿周期數(shù)與游程 從表3-2-1中得知滿周期為16的0游程的數(shù)目為13個,1游程的數(shù)目為14個;滿周期為32的0游程的數(shù)目為25,1游程的數(shù)目為26個;滿周期為65536的0游程的數(shù)目為245760個,1游程的數(shù)目為245761個;滿周期為131072的0游程的數(shù)目為524289個,1游程的數(shù)目為524290個。 另外,我獲得了以a為5,c為1,m為2的n次方,其中n≥4的情況下滿周期的0與1的游程數(shù)據(jù)如下表3-2-2所示:滿周期0→11→01613143225266480811281921932564484495121024102510242304230520485120512140961126411265819224576245771638453248532493276811468811468965536245760245761131072524289524290表3-2-2線性同余法滿周期游程數(shù)1和0的交替 從表3-2-1與表3-2-2的數(shù)據(jù)得知:無論滿周期的摸m值大小,其游程0與1總是相差1。所以從數(shù)據(jù)中可以得到一個結(jié)論:在通過特定的條件,如指定a、c為某一值,m為2的n次方,n≥4,使得線性同余法達到滿周期條件,即在周期m內(nèi),各個數(shù)值都出現(xiàn)且只出現(xiàn)1次,因為各個數(shù)值出現(xiàn)的頻率相同的,且各數(shù)值出現(xiàn)的位置不完全是固定的,所以符合了均勻分布,也符合了均衡性。(3)滿周期初始值分析 取線性同余法中a、c、m分別為5、1、16,初始值分別為1、2、3,得到的序列值如下圖3-2-1所示:圖3-2-1序列5、1、16初始值 取線性同余法中a、c、m分別為5、1、32,初始值分別為1、2、3,得到的序列值如下圖3-2-2所示:圖3-2-2序列5、1、32初始值 取線性同余法中a、c、m分別為13、1、32,初始值分別為1、2、3,得到的序列值如下圖3-2-3所示:圖3-2-3序列13、1、16初始值 對在確定線性同余法中的周期為滿周期,a為定值,只改變模m的前提下,分別對滿周期的初始值即X0進改變,得到不同的序列;接著改變a的值,模m不變,再分別改變初始值X0進行實驗,從而觀察初始值X0的取值對序列有無影響。最初設(shè)置了a取值為5,c取值為1,m取值為16與32,設(shè)置初始值X0分別為1,2,3,得到序列如圖3-2-1和圖3-2-2所示;再改變a值,使a值分別為5與13,c取值為1,m取值為32,得到序列如圖3-2-2和圖3-2-3所示。 從3個圖可以得知,改變初始值X0只會對值出現(xiàn)的Xn產(chǎn)生移位效果,但是如果以某一定值為標準,則初始值的改變不會對滿周期有影響,不會改變原本定好的Xn,因為相對位置還是確定的。如圖3-2-1所示的序列,假如取1為定值,1后面產(chǎn)生的數(shù)不會因為初始值的改變而使得其不為6,只會使得1的位置由原來X0變?yōu)閄113.3RC4與線性同余法對比RC4線性同余法周期取值為16、32、64、65536、131072當密鑰長度為5時:周期取值為16時,序列產(chǎn)生的值無發(fā)生重復(fù);當周期取值為32、64、65536、131072時,序列中的值發(fā)生重復(fù)當a取值為5,c取值為1時:模m取值為16、32、64、65536、131072時,序列中的值無發(fā)生重復(fù)游程周期取值為16、32、64、128、256、512、1024、2048、4096、8192、16384、32768、65536、131072時其為0的游程數(shù)目為:28,56,110,221,441,888,1800,3599,7191,14400,28812,57491,114983,229547周期取值為16、32、64、128、256、512、1024、2048、4096、8192、16384、32768、65536、131072時其為0的游程數(shù)目為:13,25,80,192,448,1024,2304,5120,11264,24576,53248,114688,245760,524289均衡性由表3-1-2可知,當密鑰長度為5時,明文長度改變,從得到的游程數(shù)據(jù)可知:部分序列游程0和1游程數(shù)相等,部分游程0和1游程數(shù)相差1。所以RC4不具有均衡性由表3-2-2可知,當a取值為5,c取值為1時,改變模m的值與RC4明文長度相等,從的到的游程數(shù)據(jù)可知:游程0和1的游程數(shù)總是相差1。所以線性同余法具有均衡性表3-3-1RC4與線性同余法比較 由表3-3-1可以總結(jié)出以下結(jié)論: 1.在周期方面,RC4中偽隨機序列生成算法的周期長度取決于明文長度以及S盒的容量,其明文長度可以無限延長;線性同余法的周期則取決于m,達到滿周期需要特殊的a、c、m的取值,達不到特定條件則不能滿周期。在此方面RC4比線性同余法好。在周期相等的前提下,RC4的偽隨機序列生成算法可以取任意值,其周期不為滿周期。在RC4中,雖然S盒中的值不會重復(fù),但是由偽隨機序列生成算法產(chǎn)生的密鑰流會重復(fù);線性同余法滿周期時,其值不會在周期內(nèi)發(fā)生重復(fù)。 2.在游程方面,在周期相等情況下,當周期在16到256之間,RC4的0游程的數(shù)目比線性同余法多,當周期大于256時,線性同余法的0游程的數(shù)目比RC4多。這個是由RC4的值最大為256導(dǎo)致的。因此在256字節(jié)時,RC4比線性同余法好,當大于256字節(jié)后,線性同余法則比RC4更難破解。 3.在均衡性方面,在周期相等的情況下,由RC4的偽隨機序列生成算法生成的值的游程可知,有部分游程0和1相等,部分游程的0和1相差1,而線性同余法的游程0和1全都相差1,所以線性同余法具有均衡性,RC4的偽隨機序列生成算法在均衡性方面比線性同余法差一點,RC4的偽隨機序列生成算法則介于均衡性與均勻性之間。 4.總體來說,RC4生成的密鑰流會因為S盒的容量而被限制,導(dǎo)致密鑰數(shù)值在一定情況下出現(xiàn)重復(fù),線性同余法在周期內(nèi)產(chǎn)生的數(shù)值則不會出現(xiàn)重復(fù),線性同余法更具有隨機性。由于RC4產(chǎn)生的密鑰流會出現(xiàn)重復(fù),也就是說會因為上一個的值的影響使得結(jié)果發(fā)生重復(fù),所以RC4比線性同余法更適合用于傳輸信息,線性同余法更適合用于產(chǎn)生隨機數(shù)。第四章:總結(jié)與展望4.1總結(jié)最初實現(xiàn)RC4時,我對RC4的實現(xiàn)原理還不清楚,在查詢部分資料后才知道當密鑰長度不足256時,不足的那些空位會由密鑰循環(huán)填充,例如密鑰為1,2,3,4,5,因為該密鑰只有5位,故其會一直不斷重復(fù)這個密鑰,即1,2,3,4,5,1,2,3,4,5…。RC4和線性同余法一樣,都具有偽隨機性,但是RC4的隨機性相對于線性同余法來說還是沒那么好,因為RC4的偽隨機序列生成算法中,由于256這個范圍與線性同余法模m相比還是相對較小的,并且其密鑰序列的生成需要依靠明文,產(chǎn)生的密鑰序列會發(fā)生重復(fù),線性同余法的周期在滿足滿周期的條件下可以任意擴大,并且滿周期的情況下在周期內(nèi)不會產(chǎn)生重復(fù)的值,RC4密鑰具有可延伸性,其明文密鑰可以達到相當大的字節(jié),所以在生活中,RC4一般用于通信傳輸中,對傳輸?shù)男畔⑦M行加解密處理,而線性同余法則更多地用于偽隨機數(shù)生成器,產(chǎn)生偽隨機數(shù),如今也用于短信驗證碼的生成。在實現(xiàn)代碼途中,由于糾結(jié)向量T的作用,導(dǎo)致項目的執(zhí)行效率低下,后來才發(fā)現(xiàn)T可以使S盒更具有隨機性,使S盒更混亂。在查找的資料中,得知RC4是有可能會受到弱密鑰的攻擊的,假如使用的密鑰為如密鑰,那么在十萬字節(jié)以內(nèi)密鑰流的序列就有很大的可能發(fā)生重復(fù),發(fā)生重復(fù)后,密文的安全性就可能降低,使得密文可能會被破解,而如果達到一百萬時,密鑰流的序列就會完全重復(fù)。此時對密鑰進行檢測就比較重要了;RC4另一個缺點在于其密鑰需要提前傳輸密鑰。雖然其有被破解的風險,但是缺點在優(yōu)點之前則將近可以忽略:1.根據(jù)目前研究的結(jié)果,沒有任何的數(shù)據(jù)分析對密鑰長度超過128位的RC4有效2.RC4實現(xiàn)相對簡單,便于用于軟件之中。3.RC4對硬件資源消耗低。線性同余法在學(xué)校上課期間就接觸過一點,那時候大致了解其實現(xiàn)方法,并且完成了部分的代碼。在最初的了解中,只知道滿周期是什么,但是對其滿周期的條件還相當模糊,僅僅知道周期與模m相等則為滿周期,后來才知道當什么條件下才能達到滿周期,就如文中所說的,當a取值為8n-3,c為1,m為2的n次方,n≥4情況下能夠使線性同余法達到滿周期。這是因為其滿足了c與m互質(zhì),m如果是4的倍數(shù),a-1也應(yīng)是4的倍數(shù)。在最初的實現(xiàn)線性同余法時,我把其運行產(chǎn)生的結(jié)果放在一個文本中,由于是用二維數(shù)組實現(xiàn),所以我可以觀察定值為m,變值為a的時候,a對滿周期的影響。通過網(wǎng)上查資料,接觸到了第一組滿周期數(shù)據(jù),也就是a為5,c為1,m為16,X0為1,這時候產(chǎn)生的數(shù)據(jù)少,肉眼可以直接觀察。接著我改變m的值,改為20,因為20滿足c為4的倍數(shù)的條件,發(fā)現(xiàn)其不是滿周期。我又把數(shù)值修改為32,發(fā)現(xiàn)其周期剛好為32,這時候我就想,16是2的倍數(shù),32也是2的倍數(shù),且一個是2的4次方,另一個是2的5次方,這之間理論上有聯(lián)系。在測試了更多組數(shù)據(jù)后我發(fā)現(xiàn)只要是滿足2的n次方的數(shù),在a為5,c為1的時候都為滿周期。在后來的調(diào)試中,僅改變a的值,其他不變,發(fā)現(xiàn)改變a的值后,以c為1,m為32為例,當a取值分別為5、13、21時,其周期為滿周期,于是我把這些值用于更大的數(shù),例如64、128、256直到65536與131720時,發(fā)現(xiàn)這些周期都為滿周期,于是總結(jié)了a的取值規(guī)律:8n-3。線性同余法在實現(xiàn)游程時,一開始用像16、32、64這些數(shù)來測試,所以一開始數(shù)游程數(shù)的時候都人工去數(shù),計算游程的難度相對較小,但是測試相對較大的數(shù)據(jù)時候,例如上千的數(shù)據(jù),則只能去用軟件計算游程數(shù),而且用軟件計算游程數(shù)可以保證無太大誤差。線性同余方法速度快,如果對乘數(shù)和模數(shù)進行適當?shù)倪x擇,可以滿足用于評價一個隨機數(shù)產(chǎn)生器的準則:(1)這個函數(shù)應(yīng)該在重復(fù)之前產(chǎn)生出0到m之間的所有數(shù),例如m為1000時,在發(fā)生重復(fù)前,1到1000之間所有的數(shù)都出現(xiàn)一次;(2)產(chǎn)生的序列應(yīng)該看起來是隨機的;4.2展望在實現(xiàn)畢設(shè)過程中,我學(xué)到了很多知識,但是也在學(xué)習(xí)過程中認識到了自己的不足之處,如對時間的分配問題,在實現(xiàn)畢設(shè)時,由于已經(jīng)開始實習(xí)了,工作時候只是單純的工作,導(dǎo)致畢設(shè)一直被延期;在編程方面也相對薄弱,整個設(shè)計過程中,在游程方面是請教好友幫忙處理游程數(shù)的;在數(shù)據(jù)分析方面,對于線性同余法滿周期的分析,并沒有更深入的探究除了2的n次方以外的m取值規(guī)律,對線性同余法探究的不夠徹底。因此在接下來我會對不足之處進行修改以及學(xué)習(xí):1.在工作期間也分配好學(xué)習(xí)時間,不能因工作而丟棄學(xué)習(xí)2.提高java編程的能力,學(xué)習(xí)相應(yīng)的框架以應(yīng)未來之需3.繼續(xù)學(xué)習(xí)密碼學(xué)及其相關(guān)知識,深入研究線性同余法滿周期與RC4其他規(guī)律參考文獻[1]梁勇,戴開宇.Java語言程序設(shè)計與數(shù)據(jù)結(jié)構(gòu)[M],機械工業(yè)出版社,2018.8[2]韓露露等.一種組合式偽隨機數(shù)發(fā)生器的構(gòu)造,小型微型計算機系統(tǒng)[J],2019.3[3]陳小松.密碼學(xué)及信息安全基礎(chǔ)[M].清華大學(xué)出版社.2018.10[4]王方鑫.基于RC4算法分析與研究[J],科技風,2019.1[5]劉程遠.基于RC4算法的流密碼原理與實現(xiàn)[J],信息技術(shù)與網(wǎng)絡(luò)安全,2018.9[6]侯整風等.RC4流密碼算法的分析與改進[J],計算機工程與應(yīng)用,2014.04[7]趙偉,曹云飛.RC4的秘鑰碰撞[J],通信技術(shù),2013.12[8]宋維平.流密碼與RC4算法[J],吉林師范大學(xué)學(xué)報(自然科學(xué)版),2005.05[9]王信敏.RC4算法的分析[D],山東大學(xué),2016.05[10]宮大力.流密碼算法的研究與設(shè)計[D],南京航空航天大學(xué),2011.03[11]張大偉,邵英海,左壘.基于線性同余法的偽隨機數(shù)產(chǎn)生算法[J],遼東學(xué)院學(xué)報(自然科學(xué)版),2018.09[12]張斌;徐超;馮登國.流密碼的設(shè)計與分析:回顧、現(xiàn)狀與展望[J],密碼學(xué)報,2016.12[13]陳一陽,陳恭亮.流密碼典型分析方法及實例[J],上海交通大學(xué)信息安全工程學(xué)院,2010.06[14]胡亮,遲令,袁巍等.RC4算法的密碼分析與改進[J],吉林大學(xué)學(xué)報(理學(xué)版),2012.05[15]羅啟彬,張健.流密碼的現(xiàn)狀和發(fā)展[J],信息與電子工程,2006.02致謝隨著論文的結(jié)束,我認識到我的大學(xué)生涯即將結(jié)束,在學(xué)校的求學(xué)也即將結(jié)束,心中頓生許多感慨。首先感謝我的指導(dǎo)老師陳小松教授,他為我畢業(yè)設(shè)計選題以及論文框架的敲定提出了指導(dǎo)性的意見,并在整個寫作過程都提出了寶貴性的意見,他豐富的教學(xué)經(jīng)驗使得我更加熱愛該學(xué)科,他開闊的思維使得我在數(shù)據(jù)測試時能夠?qū)?shù)據(jù)的把握突飛猛進。在學(xué)術(shù)上,老師嚴謹認真,在生活上老師又是那么平易近人,以朋友的身份和我們交流溝通。記得論文提綱修改時,因為平時工作沒有太多時間去找老師交流,所以當晚上9點多找他時,他仍能耐心地給我修改意見,真的非常感謝。想跟他說一聲:辛苦您了,謝謝!其次,感謝學(xué)校所有老師們,他們在我的整個學(xué)生生涯起到至關(guān)重要的作用。他們不僅為我傳授知識,也像朋友那樣當我們遇到困難時,給予我們幫助。其中,我的輔導(dǎo)員胡順林老師,有很多次給我們很多驚喜,非常開心能做她的學(xué)生。Sandy老師是陪了我們經(jīng)過大學(xué)二年的老師,因為她從大一到大二教我們不同的課程,陪著我們成長,非常感謝她,她的課對我的職業(yè)生涯很有用。還要感謝各課程老師,因為老師們不僅豐富了自己的文化課,也開拓了視野,為畢業(yè)設(shè)計的論文打下了基礎(chǔ)。再次,感謝我學(xué)校的同學(xué)、學(xué)生會、室友。他們在生活中給予我很多關(guān)懷。很開心能在學(xué)生會認識很多志同道合的小伙伴,因為他們,讓我覺得做一切都是非常值得的。也很感謝我的舍友們,雖然有時會有些小摩擦,但總能彼此寬容諒解,讓我有在家的感覺。最后,感謝我的家人,他們給予我生活上的資助,學(xué)習(xí)上的動力。也會在我迷茫時給我建議。特別是爸爸媽媽,真的很感謝他們,不會給我壓力,讓我擁有足夠的空間去發(fā)展。在此,我再一次向各位幫助過我、為我指明方向的老師和朋友們表示感謝!附錄附錄1packagetest2;//線性同余法importjava.io.*;importjava.util.*;publicclassline_mode{ /** *@paramargs *@throwsIOException */ publicstaticvoidmain(String[]args)throwsIOException{ //TODOAuto-generatedmethodstub Scannerinput=newScanner(System.in); System.out.println("分別輸入a,b,m");//輸入a=5,b=1,m=32 inta0=input.nextInt();//輸入5 intb0=input.nextInt();//輸入1 intm0=input.nextInt();//輸入32 System.out.println("輸入縱列多少行,請比m0大1或以上"); intshu=input.nextInt(); inta[][]=newint[m0+1][shu];//創(chuàng)建二維數(shù)組,然后在循環(huán)里面賦值給它 intX0=1; intnum[]=newint[m0]; Filefile=newFile("D:\\數(shù)據(jù)\\value166.xls"); FileWriterout=newFileWriter(file); //用二維數(shù)組實現(xiàn) intnum1=0; intnum2=0; for(inti1=a0;a0<m0;a0++){ if(num1<m0){ num1++; } intz=X0; for(intn=0;n<shu;n++){ inty=n+1; intXy=(a0*z+b0)%m0; z=Xy; a[num1][n]=Xy; Strings=Integer.toBinaryString(a[num1][n]);//十進制轉(zhuǎn)二進制 out.write(a[num1][n]+"\t");//\t是橫向打表,\n是縱向打表 } out.write("\n"); } out.close();//main函數(shù)結(jié)束 }}代碼執(zhí)行結(jié)果:附錄2packagetest2;//RC4publicclassMyRC4{ publicstaticvoidmain(String[]args){ MyRC4rc4=newMyRC4(); Stringclear="helloworld1234567";//明文 Stringkey="abcde";//秘鑰,長度為5 Stringcipher=rc4.encrypt(clear,key);//密文 Stringdecrypt=rc4.encrypt(cipher,key);//解密 System.out.println("明文為:"+clear+"\n"+"密鑰為:"+key+"\n\n" +"密文為:"+cipher+"\n"+"解密為:"+decrypt); } publicStringencrypt(finalStringclearOrCipher,finalStringkey){//對文本進行加密或解密 Integer[]S=newInteger[256];//S盒 Character[]keySchedul=newCharacter[clearOrCipher.length()];//生成的密鑰流數(shù)組 StringBuffercipher=newStringBuffer();//密文文本 ksa(S,key);//打亂S盒 rpga(S,keySchedul,clearOrCipher.length());//獲得密鑰流 for(inti=0;i<clearOrCipher.length();i++){ cipher.append((char)(clearOrCipher.charAt(i)^keySchedul[i]));//進行異或操作 } returncipher.toString(); } //初始化向量S,打亂S盒,使其具有隨機性 publicvoidksa(Integer[]s,Stringkey){ for(inti=0;i<256;i++){ s[i]=i; } intj=0; for(inti=0;i<256;i++){ j=(j+s[i]+key.charAt(i%key.length()))%256;//打亂S盒 swap(s,i,j); } } //偽隨機生成算法,利用明文字符長度生成密鑰流 publicvoidrpga(Integer[]s,Character[]keySchedul,intplainLength){ inti=0,j=0; for(intk=0;k<plainLength;k++){//明文長度 i=(i+1)%256; j=(j+s[i])%256; swap(s,i,j); keySchedul[k]=(char)(s[(s[i]+s[j])%256]).intValue();//產(chǎn)生密鑰流,準備加解密 } } //置換 publicvoidswap(Integer[]s,inti,intj){ IntegerTemp=s[i]; s[i]=s[j]; s[j]=Temp; }}代碼執(zhí)行結(jié)果:

教你如何保護電腦一、每天關(guān)機前要做的清洗:

雙擊“我的電腦”—

—右鍵點C盤——點“屬性”——點“磁盤清理”——點“確定”——再點“是”——再點“確定”。清理過程中,您可看得到未經(jīng)您許可(您可點“查看文件”看,就知道了)進來的“臨時文件”被清除了,盤的空間多了。對D,E,F(xiàn)盤也要用這法進行。

二、隨時要進行的清理

:

打開網(wǎng)頁——點最上面一排里的“工具”——點“Internet選項”——再點中間的“Internet臨時文件”中的“刪除文件”——再在“刪除所有脫機內(nèi)容”前的方框里打上勾——再點“確定”——清完后又點“確定”。這樣,可為打開網(wǎng)和空間提高速度。

三、一星期進行的盤的垃圾清理

:

點“開始”——用鼠標指著“所有程序”,再指著“附件”,再指著“系統(tǒng)工具”,再點“磁盤粹片整理程序”——點C盤,再點“碎片整理”(這需要很長時間,最好在您去吃飯和沒用電腦時進行。清理中您可看到您的盤里的狀況,可將清理前后對比一下)——在跳出“清理完成”后點“關(guān)閉”。按上述,對D,E,F(xiàn)盤分別進行清理。

電腦系統(tǒng)越來越慢,怎么刪除臨時文件啊

1.關(guān)閉"休眠"

方法:打開[控制面板]→[電源選項]→[休眠],把"啟用休眠"前面的勾去掉

說明:休眠是系統(tǒng)長時間一種待機狀態(tài),使您在長時間離開電腦時保存操作狀態(tài),如果您不是經(jīng)常開著電腦到別處去的話,那就把它關(guān)了吧!

☆立即節(jié)省:256M

2.關(guān)閉"系統(tǒng)還原"

方法:打開[控制面板]→[系統(tǒng)]→[系統(tǒng)還原],把"在所有驅(qū)動器上關(guān)閉系統(tǒng)還原'勾上

說明:系統(tǒng)還原是便于用戶誤操作或產(chǎn)生軟件問題時的一種挽救手段,可以回復(fù)到誤操作以前的狀態(tài).不建議初級用戶使用.當然,它采用的是跟蹤手段,需要記錄大量信息,所消耗的資源也要很大的.

☆立即節(jié)省:數(shù)百M

(根據(jù)還原點的多少而不同)

您也可以在不關(guān)閉系統(tǒng)還原的前提下,相應(yīng)的減少系統(tǒng)還原所占的磁盤空間,這只會減少可用還原點的數(shù)目,一般還原點有一兩個就夠了吧.

方法:...[系統(tǒng)還原]-選擇一個"可用驅(qū)動器"-[設(shè)置]-調(diào)整"要使用的磁盤空間"

3.關(guān)閉"遠程管理"

方法:打開[控制面板]→[系統(tǒng)]→[遠程],把"允許從這臺計算機發(fā)送遠程協(xié)助邀請"前面的勾去掉.

說明:誰會經(jīng)常用到這種功能呢?它占用的不是磁盤空間,但是會影響系統(tǒng)運行速度.

☆提高系統(tǒng)性能

4.關(guān)閉"自動更新"

方法:打開[控制面板]→[自動更新]→選"關(guān)閉自動更新"

說明:系統(tǒng)更新占用的也不是磁盤空間,您可以在有可用更新時到微軟的更新頁面上更新,而不是總需要一個進程監(jiān)視那是不是有可用更新.

☆提高系統(tǒng)性能

5.關(guān)閉"索引服務(wù)"

方法:[開始]→[運行]→輸入"msconfig"→[服務(wù)]

去掉indexing

servise前面的勾

說明:索引服務(wù)是提高系統(tǒng)搜索速的的,誰沒事總在系統(tǒng)里搜來搜去啊

☆提高系統(tǒng)性能

6.減少開機加載的啟動項

方法:[開始]→[運行]→輸入"msconfig"→[啟動]

去掉不必要的啟動項

說明:必要的啟動項

一般"系統(tǒng)盤\windows\system32下的最好不要去掉;而肯定能去掉的有

TINTSETP

IMJPMIG

IMSCMIG

QQ

☆加快開機速度

7.合理設(shè)置虛擬內(nèi)存

方法:打開[控制面板]→[系統(tǒng)]→[高級]-[性能]設(shè)置-[高級]-[虛擬內(nèi)存]更改-在"自定義大小"中填入數(shù)值

說明:一般的最小值是物理內(nèi)存的1.5倍,最大值是物理內(nèi)存的3倍;如果您經(jīng)常運行大型軟件的話最小值應(yīng)該設(shè)為(物理內(nèi)存*1.5*0.2+物理內(nèi)存*1.5),最大值應(yīng)為(物理內(nèi)存*3*0.2+物理內(nèi)存*3)

☆提高系統(tǒng)性能

8.取消系統(tǒng)失敗時的日志文件和詢問

打開[控制面板]→[系統(tǒng)]→[高級]→[啟動和故障恢復(fù)]→[系統(tǒng)失敗]

去掉"將事件寫入系統(tǒng)日志""發(fā)送錯誤警報"

☆提高系統(tǒng)性能

9.刪除無用的文件

方法:打開[控制面板]→[文件夾選項]→[查看]→[顯示所有文件和文件夾]

C:\Documents

and

Settings\用戶名\Cookies\除index文件外的所有文件(瀏覽網(wǎng)頁產(chǎn)生的記錄文件)

C:\Documents

and

Settings\用戶名\Local

Settings\Temp\下的所有文件(用戶臨時文件)

C:\Documents

and

Settings\用戶名\LocalSettings\TemporaryInternet

Files\下的所有文件(瀏覽網(wǎng)頁記錄的多媒體信息,加速以后瀏覽)

C:\Documents

and

Settings\用戶名\Local

Settings\History\下的所有文件(訪問歷史紀錄)

C:\Documents

and

Settings\用戶名\Recent\下的所有文件(最近瀏覽文件的快捷方式)

C:\WINDOWS\Temp\下的所有文件(臨時文件)

C:\WINDOWS\ServicePackFiles下的所有文件(升級sp1或sp2后的備份文件)

C:\WINDOWS\Driver

Cache\i386下的壓縮文件(驅(qū)動程序的備份文件)

C:\WINDOWS\SoftwareDistribution\download下的所有文件(未完成的軟件下載)

C:\Windows\下以

$u...

開頭的隱藏文件(微軟更新安裝文件備份)

☆立即節(jié)省:數(shù)百M

10.磁盤碎片整理

下面該做的就是磁盤碎片整理了,只有整理之后才能獲得更多的空間哦^_^

方法:[開始]→[程序]→[附件]→[系統(tǒng)工具]→[磁盤碎片整理]...(記得先"分析"后"整理")二。發(fā)信人:

liushafeng

(終結(jié)者),

信區(qū):

Hardware

題:

減少Win

XP資源占用的八大技巧

Windows

XP被微軟稱為其歷史上最優(yōu)秀的操作系統(tǒng),有讓你眼花繚亂的各種功能、更快的速度,當然這一切都對計算機的硬件提出了更高的要求,如果你希望Windows

XP能夠盡可能少地占用你有限的

雖然Windows

XP被微軟自稱為有史以來最穩(wěn)定、功能最強大的Windows操作系統(tǒng),并且運行速度飛快——啟動速度甚至比同樣配置的Win

2000還要快許多,你可能依然不滿足于此,希望

一、使用樸素界面

XP安裝后默認的界面包括任務(wù)欄、開始選單、桌面背景、窗口、按鈕等都采用的是XP的豪華、炫目的風格,但缺點顯而易見,它們將消耗掉不少系統(tǒng)資源,但實用意義不大。

[方法]鼠標右鍵單擊桌面空白處,在彈出選單點擊“屬性”進入顯示屬性設(shè)置窗口,將“主題、外觀”都設(shè)置為“Windows經(jīng)典”,將桌面背景設(shè)置為“無”,按確定保存退出。

二、減少啟動時加載項目

許多應(yīng)用程序在安裝時都會自作主張?zhí)砑又料到y(tǒng)啟動組,每次啟動系統(tǒng)都會自動運行,這不僅延長了啟動時間,而且啟動完成后系統(tǒng)資源已經(jīng)被吃掉不少![方法]選擇“開始”選單的“運行”,鍵入“msconfig”啟動“系統(tǒng)配置實用程序”,進入“啟動”標,在此窗口列出了系統(tǒng)啟動時加載的項目及來源,仔細查看你是否需要它自動加載,否則清除項目前的復(fù)選框,加載的項目愈少,啟動的速度自然愈快。此項需要重新啟動方能生效。

三、優(yōu)化視覺效果

[方法]選擇“系統(tǒng)屬性”中的“高級”標簽進入“性能選項”界面,其中“視覺效果”中可供選擇的包括:自動設(shè)置為最佳、最佳外觀、最佳性能、自定義。選中的效果越多則占用的系統(tǒng)資源越多,選定“最佳性能”項將關(guān)閉列表中列出諸如淡入淡出、平滑滾動、滑動打開等所有視覺效果。

四、關(guān)閉系統(tǒng)還原

默認情況下系統(tǒng)還原功能處于啟用狀態(tài),每個驅(qū)動器約被占用高達4%~12%的硬盤空間,并且系統(tǒng)還原的監(jiān)視系統(tǒng)會自動創(chuàng)建還原點,這樣在后臺運行就會占用較多的系統(tǒng)資源。

[方法]鼠標右鍵點擊桌面“我的電腦”中的“屬性”進入“系統(tǒng)屬性”設(shè)置窗口,選擇“系統(tǒng)還原”標簽,將“在所有驅(qū)動器上關(guān)閉系統(tǒng)還原”置為選中狀態(tài)

五、加快選單顯示速度

[方法]運行注冊表編輯器,進入“HKEY_CURRENT_USERControl

PanelDesktop”,將名稱為MenuShowDelay的數(shù)據(jù)值由原來默認的400修改為0,修改后XP的開始選單、甚至應(yīng)用軟件的選單顯示速度都會明顯加快。

六、啟用DMA傳輸模式

所謂DMA,即直接存儲器存儲模式,指計算機周邊設(shè)備(主要指硬盤)可直接與內(nèi)存交換數(shù)據(jù),這樣可加快硬盤讀寫速度,提高速據(jù)傳輸速率。

[方法]選擇“系統(tǒng)屬性”中的“硬件”標簽,打開“設(shè)備管理器”,其中“IDE控制器

”有兩項“Primary

IDE

Channel”及“Secondary

IDE

Channel”,依次進入“屬性→高

級設(shè)置”,該對話框會列出目前IDE接口所連接設(shè)備的傳輸模式,點擊列表按鈕將“傳輸模

式”設(shè)置為“DMA(若可用

七、移動臨時文件儲存路徑

多數(shù)應(yīng)用軟件在運行時都會產(chǎn)生臨時文件,而且這些臨時文件都默認保存于啟動分區(qū)

C盤,長時間頻繁讀寫C盤極易產(chǎn)生大量文件碎片,從而影響C盤性能,而C盤又是儲存系統(tǒng)啟動核心文件的分區(qū),C盤的性能直接影響到系統(tǒng)的穩(wěn)定性與運行效率。應(yīng)盡量將應(yīng)用軟件安裝于啟動盤以外的分區(qū)并定期對硬盤進行整理,此舉可最大程度避免產(chǎn)生磁盤碎片,將啟動或讀寫速度保持在最佳狀態(tài)。

Internet

Explorer臨時文件夾

[方法]在IE主窗口中,依次進入“工具→Internet選項→常規(guī)”標簽,打開“Intern

et臨時文件”設(shè)置界面,點擊“移動文件夾”按鈕將原來保存于C盤的臨時目錄移動至C盤

以外的驅(qū)動器中,如果你使用的是寬帶,可將“臨時文件夾”使用空間設(shè)置為最小值1M

刻錄時產(chǎn)生的臨時文件

[方法]文件在刻錄之前都會保存于C盤的刻錄臨時文件夾中,進入資源管理器,選擇刻錄機盤符并單擊鼠標右鍵選單的“屬性”項,在“錄制”標簽下可將此臨時文件夾安置于

其它驅(qū)動器。

我的文檔

[方法]鼠標右鍵點擊“我的文檔”,在屬性設(shè)置項中可將“我的文檔”默認的保存路

徑修改至其它盤符。

八、增加虛擬內(nèi)存

[方法]進入“性能選項”的“高級”設(shè)置窗口,首先將“處理器計劃”及“內(nèi)存使用

”都調(diào)整為“程序”優(yōu)化模式。點擊“更改”按鈕進入虛擬內(nèi)存設(shè)置窗口,若你的內(nèi)存大

于256M,建議你禁用分頁文件。默認的分頁文件為物理內(nèi)存的1.5倍。禁用系統(tǒng)緩存需重新啟動系統(tǒng)。如果你的內(nèi)存低于256M,請勿禁用分頁文件,否則會導(dǎo)致系統(tǒng)崩潰或無法再啟動XP!

三windows使用時間長了,自然就會產(chǎn)生這樣那樣的臨時文件,影響系統(tǒng)速度,讓人煩心。對于老鳥來說,可以通過修改注冊表、手動優(yōu)化系統(tǒng)性能來提高速度,而對新手來說比較困難。這里我們可以下載一些專門的系統(tǒng)優(yōu)化軟件,進行一些簡單的設(shè)計,就能達到我們想要的效果。這里我推薦一些常用又好使的軟件:WINDOWS優(yōu)化王、優(yōu)化大師、超級兔子等。其中WINDOWS優(yōu)化王非常好用,一看就會、功能全面、省時省心。

完全清理[

]垃圾

藏在XP中的一個秘密武器,可以完整清除垃圾文件

藏在XP中的一個秘密武器,可以完整清除垃圾文件

你有用過Windows內(nèi)置的清理磁盤功能嗎?

它并不能完全地清洗Windows內(nèi)不需要的檔案,因為它的功能被隱藏了,本篇將會把它被封印了的功能完全打開。適用的窗口板本

除了Win95及Win98外

這個方法階適用于Win98se、Win2000、WinME、WinXP

現(xiàn)在介紹兩個「清理磁盤」工具的指令:

SAGESET

SAGERUN

首先在「開始」>「執(zhí)行」

然后輸入

cleanmgr

/sageset:99

設(shè)定:

特別模式「清理磁盤」工具會執(zhí)行,你會發(fā)覺多了很多清理選擇,選擇你想要清理的檔案,通常全部都可以刪除,完成你的選擇后再按「確定」。然后再打開「開始」>「運行」

輸入:cleanmgr

/SAGERUN:99

殺毒1

這種情況往往表現(xiàn)在打開IE時,在IE界面的左下框里提示:正在打開網(wǎng)頁,但老半天沒響應(yīng)。在任務(wù)管理器里查看進程,(進入方法,把鼠標放在任務(wù)欄上,按右鍵—任務(wù)管理器—進程)看看CPU的占用率如何,如果是100%,可以肯定,是感染了病毒,這時你想運行其他程序簡直就是受罪。這就要查查是哪個進程貪婪地占用了CPU資源.找到后,最好把名稱記錄下來,然后點擊結(jié)束,如果不能結(jié)束,則要啟動到安全模式下把該東東刪除,還要進入注冊表里,(方法:開始—運行,輸入regedit)在注冊表對話框里,點編輯—查找,輸入那個程序名,找到后,點鼠標右鍵刪除,然后再進行幾次的搜索,往往能徹底刪除干凈。

殺毒2

今天在這里為大家提供兩則小技巧,以便幫你強行殺死頑固病毒進程。

根據(jù)進程名查殺

這種方法是通過WinXP系統(tǒng)下的taskkill命令來實現(xiàn)的,在使用該方法之前,首先需要打開系統(tǒng)的進程列表界面,找到病毒進程所對應(yīng)的具體進程名。

接著依次單擊“開始→運行”命令,在彈出的系統(tǒng)運行框中,運行“cmd”命令;再在DOS命令行中輸入“taskkill/imaaa”格式的字符串命令,單擊回車鍵后,頑固的病毒進程“aaa”就被強行殺死了。比方說,要強行殺死“conime。exe”病毒進程,只要在命令提示符下執(zhí)行“taskkill/imconime。exe”命令,要不了多久,系統(tǒng)就會自動返回結(jié)果。

根據(jù)進程號查殺

上面的方法,只對部分病毒進程有效,遇到一些更“頑固”的病毒進程,可能就無濟于事了。此時你可以通過Win2000以上系統(tǒng)的內(nèi)置命令——ntsd,來強行殺死一切病毒進程,因為該命令除System進程、SMSS。EXE進程、CSRSS。EXE進程不能“對付”外,基本可以對付其它一切進程。但是在使用該命令殺死病毒進程之前,需要先查找到對應(yīng)病毒進程的具體進程號。

考慮到系統(tǒng)進程列表界面在默認狀態(tài)下,是不顯示具體進程號的,因此你可以首先打開系統(tǒng)任務(wù)管理器窗口,再單擊“查看”菜單項下面的“選擇列”命令,在彈出的設(shè)置框中,將“PID(進程標志符)”選項選中,單擊“確定”按鈕。返回到系統(tǒng)進程列表頁面中后,你就能查看到對應(yīng)病毒進程的具體PID了。

接著打開系統(tǒng)運行對話框,在其中運行“cmd”命令,在命令提示符狀態(tài)下輸入“ntsd-cq-pPID”命令,就可以強行將指定PID的病毒進程殺死了。例如,發(fā)現(xiàn)某個病毒進

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論