2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩16頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p>  課程名稱: 網(wǎng)絡(luò)與信息安全 </p><p>  設(shè)計(jì)題目: RC4加密算法的實(shí)現(xiàn) </p><p>  專 業(yè): 班級: </p><p>  學(xué)生姓名: </p>

2、<p><b>  一.系統(tǒng)設(shè)計(jì)的目標(biāo)</b></p><p>  隨著信息化的發(fā)展,人們在信息傳遞,數(shù)據(jù)共享等方面的要求越來越高。但與此同時,數(shù)據(jù)的保密、個人的隱私保護(hù)也越來越困難,迫使人們不得不采取相應(yīng)的措施來提高信息的安全性。在此條件下,加密技術(shù)應(yīng)運(yùn)而生。加密作為一把系統(tǒng)安全的鑰匙,是實(shí)現(xiàn)信息安全的重要手段之一,正確的使用加密技術(shù)可以確保信息的安全。</p>

3、<p>  人們所熟悉的加密技術(shù)很多,比如數(shù)字簽名、版權(quán)注冊、軟盤加密、軟件鎖等等。本人的設(shè)計(jì)思想是利用文件夾的加密來實(shí)現(xiàn)對軟件或文件的安全加密。在此設(shè)計(jì)基礎(chǔ)上編寫了一個程序,該軟件操作簡單方便,適用于個人PC上對文件的加密。用戶可自選密鑰對重要文件或可執(zhí)行程序進(jìn)行加密,防止未授權(quán)用戶竊密。</p><p>  本文描述了利用文件夾的加密來實(shí)現(xiàn)對文件或程序的保護(hù)方案。采用了“對稱式”加密技術(shù)即采用文件逐

4、字節(jié)與密碼異或方式對文件或可執(zhí)行程序加密。選用C++編程語言,設(shè)計(jì)了一個加密程序,該程序不拘泥于花俏的界面,僅使用了一個簡單的對話框,具有簡單實(shí)用的特點(diǎn)。在該方案的實(shí)現(xiàn)中,由于使用了可靠的密碼學(xué)算法,使軟件加密的強(qiáng)度大大提高。</p><p><b>  二.系統(tǒng)原理:</b></p><p>  1. RC4加密算法原理: </p><p>

5、  RC4加密算法是大名鼎鼎的RSA三人組中的頭號人物Ron Rivest在1987年設(shè)計(jì)的密鑰長度可變的流加密算法簇。之所以稱其為簇,是由于其核心部分的S-box長度可為任意,但一般為256字節(jié)。該算法的速度可以達(dá)到DES加密的10倍左右。 </p><p>  RC4算法的原理很簡單,包括初始化算法和偽隨機(jī)子密碼生成算法兩大部分。假設(shè)S-box長度和密鑰長度均為為n。先來看看算法的初始化部分(用類C偽代碼表示

6、): </p><p>  for (i=0; i<n; i++) </p><p><b>  s=i; </b></p><p><b>  j=0; </b></p><p>  for (i=0; i<n; i++) </p><p><b> 

7、 { </b></p><p>  j=(j+s+k)%256; </p><p>  swap(s, s[j]); </p><p><b>  } </b></p><p>  在初始化的過程中,密鑰的主要功能是將S-box攪亂,i確保S-box的每個元素都得到處理,j保證S-box的攪亂是隨機(jī)的。而不同

8、的S-box在經(jīng)過偽隨機(jī)子密碼生成算法的處理后可以得到不同的子密鑰序列,并且,該序列是隨機(jī)的: </p><p><b>  i=j=0; </b></p><p>  while (明文未結(jié)束) </p><p><b>  { </b></p><p><b>  ++i%=n; &l

9、t;/b></p><p>  j=(j+s)%n; </p><p>  swap(s, s[j]); </p><p>  sub_k=s((s+s[j])%n); </p><p><b>  } </b></p><p>  得到的子密碼sub_k用以和明文進(jìn)行xor運(yùn)算,得到密文,

10、解密過程也完全相同。 </p><p>  由于RC4算法加密是采用的xor,所以,一旦子密鑰序列出現(xiàn)了重復(fù),密文就有可能被破解。關(guān)于如何破解xor加密,請參看Bruce Schneier的Applied Cryptography一書的1.4節(jié)Simple XOR,在此我就不細(xì)說了。那么,RC4算法生成的子密鑰序列是否會出現(xiàn)重復(fù)呢?經(jīng)過我的測試,存在部分弱密鑰,使得子密鑰序列在不到100萬字節(jié)內(nèi)就發(fā)生了完全的重復(fù)

11、,如果是部分重復(fù),則可能在不到10萬字節(jié)內(nèi)就能發(fā)生重復(fù),因此,推薦在使用RC4算法時,必須對加密密鑰進(jìn)行測試,判斷其是否為弱密鑰。 </p><p>  但在2001年就有以色列科學(xué)家指出RC4加密算法存在著漏洞,這可能對無線通信網(wǎng)絡(luò)的安全構(gòu)成威脅。 </p><p>  以色列魏茨曼研究所和美國思科公司的研究者發(fā)現(xiàn),在使用“有線等效保密規(guī)則”(WEP)的無線網(wǎng)絡(luò)中,在特定情況下,人們可以

12、逆轉(zhuǎn)RC4算法的加密過程,獲取密鑰,從而將己加密的信息解密。實(shí)現(xiàn)這一過程并不復(fù)雜,只需要使用一臺個人電腦對加密的數(shù)據(jù)進(jìn)行分析,經(jīng)過幾個小時的時間就可以破譯出信息的全部內(nèi)容。 </p><p>  專家說,這并不表示所有使用RC4算法的軟件都容易泄密,但它意味著RC4算法并不像人們原先認(rèn)為的那樣安全。這一發(fā)現(xiàn)可能促使人們重新設(shè)計(jì)無線通信網(wǎng)絡(luò),并且使用新的加密算法。</p><p>  三.

13、系統(tǒng)功能分析:</p><p><b>  圖1:系統(tǒng)功能圖</b></p><p><b>  圖2:系統(tǒng)流程圖</b></p><p><b>  四.系統(tǒng)實(shí)現(xiàn): </b></p><p>  設(shè)計(jì)的核心部分仍是算法的核心部分,根據(jù)des算法的原理,建立相關(guān)的變量,和函數(shù),

14、完成對8位字符的加密,解密。而對于文件的加密與解密只需要在文件的讀取時,按加密的位數(shù)讀取然后調(diào)用算法,加密后保存到一個文件,一直到文件的末尾,從而實(shí)現(xiàn)文件的加密。而解密是加密的逆過程,只要將密鑰按反順序使用即可,算法一致,調(diào)用的函數(shù)也都一樣。</p><p><b>  1.功能要求</b></p><p>  (1)設(shè)計(jì)操作界面;(如圖3)</p>&

15、lt;p><b>  圖3</b></p><p>  (2)對輸入的明文可以進(jìn)行加解密;(如圖4)</p><p> ?。?)對指定的文件可以加解密。(圖5)</p><p>  對文件夾進(jìn)行解密:(圖6)</p><p><b>  詳細(xì)設(shè)計(jì) </b></p><p&g

16、t;<b>  字符加解密數(shù)據(jù)流圖</b></p><p>  字符加解密數(shù)據(jù)流圖(7)</p><p><b>  一層數(shù)據(jù)流圖(8)</b></p><p><b>  二層數(shù)據(jù)流圖(9)</b></p><p><b>  附錄:</b></p

17、><p><b>  源程序代碼:</b></p><p><b>  RC4算法的實(shí)現(xiàn):</b></p><p>  void RC4::swap(baseType *i,baseType *j)</p><p><b>  {</b></p><p> 

18、 baseType temp;</p><p><b>  temp=*i;</b></p><p><b>  *i=*j;</b></p><p><b>  *j=temp;</b></p><p><b>  }</b></p>&l

19、t;p>  void RC4::s_box(baseType *s,char *key,int keyLen)</p><p><b>  {</b></p><p>  int i=0,j=0;</p><p>  for(i=0;i<256;i++)</p><p><b>  s[i]=i;&

20、lt;/b></p><p>  for(i=0;i<256;i++)</p><p><b>  {</b></p><p>  j=(j+s[i]+key[i%keyLen])%256;</p><p>  swap(&s[i],&s[j]);</p><p>&l

21、t;b>  }</b></p><p><b>  }</b></p><p>  void RC4::encryption(char *src,char *key,int keyLen,int srcLen)</p><p><b>  {</b></p><p>  int i

22、=0,j=0,k=0,index=0;</p><p>  baseType s[256];</p><p>  ::memset((void *)s,0,256);</p><p>  s_box(s,key,keyLen);</p><p>  for(i=0;i<srcLen;i++)</p><p>&l

23、t;b>  {</b></p><p><b>  ++j%=256;</b></p><p>  k=(k+s[j])%256;</p><p>  swap(&s[j],&s[k]);</p><p>  index=(s[j]+s[k])%256;</p><p

24、>  src[i]^=s[index];</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  我寫的代碼:</b></p><p><b>  字符串解密:</b></p><

25、;p>  char *key=new char;</p><p>  m_key.GetWindowText(key,255);</p><p>  CString strKey(" ",256);</p><p>  strKey.Format("%s",key);</p><p>  if(s

26、trKey.IsEmpty())</p><p><b>  {</b></p><p>  MessageBox("你還沒有輸入密鑰!",NULL,MB_OK);</p><p><b>  return;</b></p><p><b>  }</b>&

27、lt;/p><p>  char *src=new char;</p><p>  m_detStr.GetWindowText(src,100);</p><p>  CString strSrc(" ",101);</p><p>  strSrc.Format("%s",strSrc);</p&

28、gt;<p>  if(strSrc.IsEmpty())</p><p><b>  {</b></p><p>  MessageBox("請輸入你要加密的字符串!",NULL,MB_OK);</p><p><b>  return;</b></p><p>

29、<b>  }</b></p><p>  rc4.encryption(src,key,(int)strlen(key),(int)strlen(src));</p><p>  m_srcStr.SetWindowText(src);</p><p>  字符串加密:char *key=new char;</p><p

30、>  m_key.GetWindowText(key,255);</p><p>  CString strKey(" ",256);</p><p>  strKey.Format("%s",key);</p><p>  if(strKey.IsEmpty())</p><p><b&g

31、t;  {</b></p><p>  MessageBox("你還沒有輸入密鑰!",NULL,MB_OK);</p><p><b>  return;</b></p><p><b>  }</b></p><p>  char *src=new char;<

32、;/p><p>  m_srcStr.GetWindowText(src,100);</p><p>  CString strSrc(" ",101);</p><p>  strSrc.Format("%s",strSrc);</p><p>  if(strSrc.IsEmpty())</p&g

33、t;<p><b>  {</b></p><p>  MessageBox("請輸入你要加密的字符串!",NULL,MB_OK);</p><p><b>  return;</b></p><p><b>  }</b></p><p> 

34、 rc4.encryption(src,key,(int)strlen(key),(int)strlen(src));</p><p>  m_detStr.SetWindowText(src);</p><p><b>  到上面那部分</b></p><p><b>  打開文件:</b></p><

35、;p>  CString lpszFilter="text file (*.txt)|*.txt|Microsoft doc (*.doc)|*.doc|Data Files (*.xlc;*.xls)|*.xlc; *.xls|All Files (*.*)|*.*||";</p><p>  CString readBuf(" ",1000);</p&g

36、t;<p>  CString lpszDefExt=".txt";</p><p>  CString lpszFileName="*.txt";</p><p>  char *ch1=new char;</p><p>  char ch[9];</p><p>  ::memset

37、((void *)ch,0,9);</p><p>  char str[200];</p><p>  ::memset((void *)str,0,200);</p><p>  CFileDialog *fileOpen=new CFileDialog( true, lpszDefExt, lpszFileName, OFN_HIDEREADONLY |

38、 OFN_OVERWRITEPROMPT, lpszFilter, NULL );</p><p>  if(!fileOpen->DoModal())</p><p><b>  {</b></p><p>  MessageBox("Open failly!",NULL,MB_OK);</p>&l

39、t;p><b>  return;</b></p><p><b>  }</b></p><p>  CString filePath=fileOpen->GetPathName();</p><p>  m_srcFile.SetWindowText(LPCTSTR(filePath));</p&g

40、t;<p>  保存文件:CString lpszFilter="text file (*.txt)|*.txt|Microsoft doc (*.doc)|*.doc|Data Files (*.xlc;*.xls)|*.xlc; *.xls|All Files (*.*)|*.*||";</p><p>  CString lpszDefExt=".txt&q

41、uot;;</p><p>  CString lpszFileName="*.txt";</p><p>  CFileDialog *fileSave=new CFileDialog( false, lpszDefExt, lpszFileName, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, lpszFilter, NU

42、LL );</p><p>  CFile cFile;</p><p>  if(!fileSave->DoModal())</p><p><b>  {</b></p><p>  MessageBox("failed!",NULL,MB_OK);</p><p>

43、<b>  return;</b></p><p><b>  }</b></p><p>  CArchive ar(&cFile,CArchive::load);</p><p>  CString filePath=fileSave->GetPathName();</p><p>

44、;  m_detFile.SetWindowText(filePath);</p><p>  if(cFile.Open(LPCTSTR(filePath),CFile::modeCreate|CFile::modeWrite)==0)</p><p><b>  {</b></p><p>  MessageBox("Open f

45、ailly!",NULL,MB_OK);</p><p><b>  return;</b></p><p><b>  }</b></p><p><b>  文件加密:</b></p><p>  char key[256];</p><p&

46、gt;  ::memset((void *)key,' ',256);</p><p>  char ch[101];</p><p>  ::memset((void *)ch,' ',101);</p><p>  m_key.GetWindowText(key,strlen(key));</p><p>

47、  CString key1;</p><p>  key1.Format("%s",key);</p><p>  if(key1.IsEmpty())</p><p><b>  {</b></p><p>  MessageBox("你還沒有輸入密鑰!",NULL,MB_OK

48、);</p><p><b>  return;</b></p><p><b>  }</b></p><p>  CString srcFilePath(" ",200);</p><p>  m_srcFile.GetWindowText(srcFilePath);<

49、/p><p>  if(srcFilePath.IsEmpty())</p><p><b>  {</b></p><p>  MessageBox("你還沒有選擇源文件",NULL,MB_OK);</p><p><b>  return;</b></p><

50、p><b>  }</b></p><p>  CFile srcFile;</p><p>  if(srcFile.Open(LPCTSTR(srcFilePath),CFile::modeRead)==0)</p><p><b>  {</b></p><p>  MessageBox

51、("源文件打開失敗!",NULL,MB_OK);</p><p><b>  return;</b></p><p><b>  }</b></p><p>  CArchive srcAr(&srcFile,CArchive::load);</p><p>  int

52、fileLen=srcFile.GetLength();</p><p>  CString detFilePath(" ",200);</p><p>  m_detFile.GetWindowText(detFilePath);</p><p>  if(detFilePath.IsEmpty())</p><p>&

53、lt;b>  {</b></p><p>  MessageBox("你還沒有選擇目標(biāo)文件",NULL,MB_OK);</p><p><b>  return;</b></p><p><b>  }</b></p><p>  CFile detFile;&

54、lt;/p><p>  if(detFile.Open(LPCTSTR(detFilePath),CFile::modeCreate|CFile::modeWrite)==0)</p><p><b>  {</b></p><p>  MessageBox("目標(biāo)文件打開失敗!",NULL,MB_OK);</p>

55、<p><b>  return;</b></p><p><b>  }</b></p><p>  CString len;</p><p>  len.Format("%d",fileLen);</p><p>  if(fileLen<=100)<

56、/p><p><b>  {</b></p><p>  srcFile.Read((void *)ch,fileLen);</p><p>  rc4.encryption(ch,key,strlen(key),strlen(ch));</p><p>  detFile.Write((void *)ch,strlen(c

57、h));</p><p><b>  }</b></p><p>  if(fileLen>100)</p><p><b>  {</b></p><p>  int k=0,i=0;</p><p>  k=fileLen/100;</p><p

58、>  for(i=0;i<k;i++)</p><p><b>  {</b></p><p>  srcFile.Read((void *)ch,100);</p><p>  rc4.encryption(ch,key,strlen(key),100);</p><p>  detFile.Write((

59、void *)ch,100);</p><p><b>  }</b></p><p>  k=fileLen%100;</p><p><b>  if(k!=0)</b></p><p><b>  {</b></p><p>  srcAr.Rea

60、d((void *)ch,k);</p><p>  rc4.encryption(ch,key,strlen(key),k);</p><p>  detFile.Write((void *)ch,k);</p><p><b>  }</b></p><p><b>  }</b></p&

61、gt;<p>  MessageBox("恭喜您,加密成功!",NULL,MB_OK);</p><p>  srcFile.Close();</p><p>  detFile.Close();</p><p><b>  文件解密:</b></p><p>  char key[2

62、56];</p><p>  ::memset((void *)key,' ',256);</p><p>  char ch[101];</p><p>  ::memset((void *)ch,' ',101);</p><p>  m_key.GetWindowText(key,strlen(key))

63、;</p><p>  CString key1;</p><p>  key1.Format("%s",key);</p><p>  if(key1.IsEmpty())</p><p><b>  {</b></p><p>  MessageBox("你還沒有

64、輸入密鑰!",NULL,MB_OK);</p><p><b>  return;</b></p><p><b>  }</b></p><p>  CString srcFilePath(" ",200);</p><p>  m_srcFile1.GetWindo

65、wText(srcFilePath);</p><p>  if(srcFilePath.IsEmpty())</p><p><b>  {</b></p><p>  MessageBox("你還沒有選擇源文件",NULL,MB_OK);</p><p><b>  return;<

66、;/b></p><p><b>  }</b></p><p>  CFile srcFile;</p><p>  if(srcFile.Open(LPCTSTR(srcFilePath),CFile::modeRead)==0)</p><p><b>  {</b></p>

67、<p>  MessageBox("源文件打開失敗!",NULL,MB_OK);</p><p><b>  return;</b></p><p><b>  }</b></p><p>  CArchive srcAr(&srcFile,CArchive::load);<

68、/p><p>  int fileLen=srcFile.GetLength();</p><p>  CString detFilePath(" ",200);</p><p>  m_detFile1.GetWindowText(detFilePath);</p><p>  if(detFilePath.IsEmpty(

69、))</p><p><b>  {</b></p><p>  MessageBox("你還沒有選擇目標(biāo)文件",NULL,MB_OK);</p><p><b>  return;</b></p><p><b>  }</b></p>&l

70、t;p>  CFile detFile;</p><p>  if(detFile.Open(LPCTSTR(detFilePath),CFile::modeCreate|CFile::modeWrite)==0)</p><p><b>  {</b></p><p>  MessageBox("目標(biāo)文件打開失敗!"

71、,NULL,MB_OK);</p><p><b>  return;</b></p><p><b>  }</b></p><p>  CString len;</p><p>  len.Format("%d",fileLen);</p><p> 

72、 if(fileLen<=100)</p><p><b>  {</b></p><p>  srcFile.Read((void *)ch,fileLen);</p><p>  rc4.encryption(ch,key,strlen(key),strlen(ch));</p><p>  detFile.W

73、rite((void *)ch,strlen(ch));</p><p><b>  }</b></p><p>  if(fileLen>100)</p><p><b>  {</b></p><p>  int k=0,i=0;</p><p>  k=fileL

74、en/100;</p><p>  for(i=0;i<k;i++)</p><p><b>  {</b></p><p>  srcFile.Read((void *)ch,100);</p><p>  rc4.encryption(ch,key,strlen(key),100);</p>&l

75、t;p>  detFile.Write((void *)ch,100);</p><p><b>  }</b></p><p>  k=fileLen%100;</p><p><b>  if(k!=0)</b></p><p><b>  {</b></p&g

76、t;<p>  srcAr.Read((void *)ch,k);</p><p>  rc4.encryption(ch,key,strlen(key),k);</p><p>  detFile.Write((void *)ch,k);</p><p><b>  }</b></p><p><b

77、>  }</b></p><p>  MessageBox("恭喜您,解密成功!",NULL,MB_OK);</p><p>  srcFile.Close();</p><p>  detFile.Close();</p><p><b>  界面設(shè)計(jì):</b></p>

78、<p>  m_tab.InsertItem(0," 字符串加密 ");</p><p>  m_tab.InsertItem(1," 文件加密 ");</p><p>  cPage0.Create(IDD_PAGE0_DIALOG,GetDlgItem(IDC_TAB1));</p><p>  cPage1

79、.Create(IDD_PAGE1_DIALOG,GetDlgItem(IDC_TAB1));</p><p>  CRect rect; </p><p>  m_tab.GetClientRect(&rect); </p><p>  rect.top+=20; </p><p>  rect.bottom-=4; </p&

80、gt;<p>  rect.left+=4;</p><p>  rect.right-=4; </p><p>  cPage0.MoveWindow(&rect); </p><p>  cPage1.MoveWindow(&rect); </p><p>  cPage0.ShowWindow(TRUE);

81、 </p><p>  m_tab.SetCurSel(0);</p><p>  int CurSel; </p><p>  CurSel=m_tab.GetCurSel(); </p><p>  switch(CurSel) </p><p>  { case 0: </p><p> 

82、 cPage0.ShowWindow(TRUE); </p><p>  cPage1.ShowWindow(FALSE); </p><p><b>  break; </b></p><p><b>  case 1: </b></p><p>  cPage0.ShowWindow(FALSE

83、); </p><p>  cPage1.ShowWindow(TRUE); </p><p><b>  break; </b></p><p><b>  case 2: </b></p><p>  cPage0.ShowWindow(FALSE); </p><p>

84、  cPage1.ShowWindow(FALSE); </p><p><b>  break; </b></p><p>  default: ; </p><p><b>  } </b></p><p>  *pResult = 0;</p><p><b>

85、;  五.總結(jié):</b></p><p><b>  提出問題:</b></p><p>  RC4加密后的的長度是 多少(例如MD5的加密后的長度是固定的)? </p><p>  用RC4加密后的字符串長度和原來的一樣嗎? </p><p>  用RC4加密后的字符串中間會不會出現(xiàn)\0? </p&g

86、t;<p>  用strlen得到的長度一定對嗎?</p><p><b>  解決問題:</b></p><p>  在一些場合,常需要用到一些簡單的加密算法,這里的RC4就可以說是最簡單的一種。只要設(shè)置一個足夠強(qiáng)的密碼,就可以適用于一些非常簡單的場合了。我是用來加密HTTP傳送的數(shù)據(jù)的。 </p><p>  RC4函數(shù)(加密

87、/解密)    其實(shí),RC4只有加密,將密文再加密一次,就是解密了。 </p><p>  GetKey函數(shù)  隨機(jī)字符串產(chǎn)生器,呵呵,為了方便,大多數(shù)加密算法都有一個隨機(jī)密碼產(chǎn)生器,我也就附帶一個了。 </p><p>  ByteToHex函數(shù)  把字節(jié)碼轉(zhuǎn)為十六進(jìn)制碼,一個字節(jié)兩個十六進(jìn)制。研究發(fā)現(xiàn),十六進(jìn)制字符串非常適合在HTTP中傳輸,Ba

88、se64中的某些字符會造成轉(zhuǎn)義,挺麻煩的。 </p><p>  HexToByte函數(shù)  把十六進(jìn)制字符串,轉(zhuǎn)為字節(jié)碼。服務(wù)器也按照十六進(jìn)制字符串的形式把數(shù)據(jù)傳回來,這里就可以解碼啦。同時,使用十六進(jìn)制字符串傳輸,避開了傳輸過程中多國語言的問題。 </p><p>  Encrypt函數(shù)    把字符串經(jīng)RC4加密后,再把密文轉(zhuǎn)為十六進(jìn)制字符串返回,可直接用

89、于傳輸。 Decrypt函數(shù)    直接密碼十六進(jìn)制字符串密文,再解密,返回字符串明文。</p><p><b>  六.心得體會:</b></p><p>  課程設(shè)計(jì)不僅是對已學(xué)知識的檢驗(yàn),更是對學(xué)生動手能力以及綜合能力的鍛煉。</p><p>  在我們小組組長的帶領(lǐng)下,以及通過全小組同學(xué)的共同努力,我們完成了課程設(shè)計(jì)

90、的任務(wù)。在此期間,我們溫故了課堂上學(xué)過的知識,還有查找各種資料,對RC加密算法有了進(jìn)一步的了解和掌握。</p><p>  平常學(xué)習(xí)的知識點(diǎn),感覺已掌握,但是通過這次課程設(shè)計(jì)對自己學(xué)過的知識的檢閱,發(fā)現(xiàn)很多東西并不是想象的那么簡單,做起來的時候還是會因?yàn)榇中拇笠鈱?dǎo)致課程設(shè)計(jì)中出現(xiàn)很多小的錯誤。課程設(shè)計(jì)培養(yǎng)了自己的動手能力,對以前學(xué)習(xí)的知識起到了好的鞏固作用,并且對以后課程學(xué)習(xí)打下了堅(jiān)實(shí)的基礎(chǔ)作用。</p&g

91、t;<p>  通過整個小組成員的努力也學(xué)會了團(tuán)結(jié)與合作,全小組的同學(xué)個個干勁十足,很好的完成了自己的任務(wù),成功地設(shè)計(jì)出了我們的RC加密算法系統(tǒng)。感謝老師為我們提供了這次課程設(shè)計(jì)的機(jī)會。通過此次課程設(shè)計(jì)鞏固了以前所學(xué)過的知識,而且學(xué)到了很多在書本上所沒有學(xué)到過的知識。通過這次課程設(shè)計(jì)我也明白了很多事理。它使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識與實(shí)踐相結(jié)合起來,從理論中得出結(jié)論,

92、才能真正為社會服務(wù),從而提高自己的實(shí)際動手能力和獨(dú)立思考的能力。</p><p><b>  七.致謝:</b></p><p>  在這次課程設(shè)計(jì)的完成過程中,我得到了許多人的幫助。</p><p>  首先我要感謝我的老師在課程設(shè)計(jì)上給予我的指導(dǎo)、提供給我的支持和幫助,這是我能順利完成這次報(bào)告的主要原因,更重要的是老師幫我解決了許多技術(shù)上的

93、難題,讓我能把系統(tǒng)做得更加完善。在此期間,我不僅學(xué)到了許多新的知識,而且也開闊了視野,提高了自己的設(shè)計(jì)能力。</p><p>  其次,我要感謝幫助過我的同學(xué),他也為我解決了不少我不太明白的設(shè)計(jì)上的難題。同時也感謝學(xué)院為我提供良好的做畢業(yè)設(shè)計(jì)的環(huán)境。最后再一次感謝所有在設(shè)計(jì)中曾經(jīng)幫助過我的良師益友和同學(xué)</p><p><b>  八.參考文獻(xiàn):</b></p&

94、gt;<p>  [1] 梁亞聲等.計(jì)算機(jī)網(wǎng)絡(luò)安全教程.第2版.北京:機(jī)械工業(yè)出版社,2008</p><p>  [2] Willian Stallings著,孟慶樹,王麗娜等譯.密碼編碼學(xué)與網(wǎng)絡(luò)安全.北京:電子工業(yè)出版社,2009</p><p>  [3] 劉文濤.網(wǎng)絡(luò)安全編程技術(shù)與實(shí)例.北京:機(jī)械工業(yè)出版社2008</p><p>  [4

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論