在线观看国产区-在线观看国产欧美-在线观看国产免费高清不卡-在线观看国产久青草-久久国产精品久久久久久-久久国产精品久久久

美章網 資料文庫 數據加密技術范文

數據加密技術范文

本站小編為你精心準備了數據加密技術參考范文,愿這些范文能點燃您思維的火花,激發您的寫作靈感。歡迎深入閱讀并收藏。

數據加密技術

一:數據加密方法

在傳統上,我們有幾種方法來加密數據流。所有這些方法都可以用軟件很容易的實現,但是當我們只知道密文的時候,是不容易破譯這些加密算法的(當同時有原文和密文時,破譯加密算法雖然也不是很容易,但已經是可能的了)。最好的加密算法對系統性能幾乎沒有影響,并且還可以帶來其他內在的優點。例如,大家都知道的pkzip,它既壓縮數據又加密數據。又如,dbms的一些軟件包總是包含一些加密方法以使復制文件這一功能對一些敏感數據是無效的,或者需要用戶的密碼。所有這些加密算法都要有高效的加密和解密能力。

幸運的是,在所有的加密算法中最簡單的一種就是“置換表”算法,這種算法也能很好達到加密的需要。每一個數據段(總是一個字節)對應著“置換表”中的一個偏移量,偏移量所對應的值就輸出成為加密后的文件。加密程序和解密程序都需要一個這樣的“置換表”。事實上,80x86cpu系列就有一個指令‘xlat’在硬件級來完成這樣的工作。這種加密算法比較簡單,加密解密速度都很快,但是一旦這個“置換表”被對方獲得,那這個加密方案就完全被識破了。更進一步講,這種加密算法對于黑客破譯來講是相當直接的,只要找到一個“置換表”就可以了。這種方法在計算機出現之前就已經被廣泛的使用。

對這種“置換表”方式的一個改進就是使用2個或者更多的“置換表”,這些表都是基于數據流中字節的位置的,或者基于數據流本身。這時,破譯變的更加困難,因為黑客必須正確的做幾次變換。通過使用更多的“置換表”,并且按偽隨機的方式使用每個表,這種改進的加密方法已經變的很難破譯。比如,我們可以對所有的偶數位置的數據使用a表,對所有的奇數位置使用b表,即使黑客獲得了明文和密文,他想破譯這個加密方案也是非常困難的,除非黑客確切的知道用了兩張表。

與使用“置換表”相類似,“變換數據位置”也在計算機加密中使用。但是,這需要更多的執行時間。從輸入中讀入明文放到一個buffer中,再在buffer中對他們重排序,然后按這個順序再輸出。解密程序按相反的順序還原數據。這種方法總是和一些別的加密算法混合使用,這就使得破譯變的特別的困難,幾乎有些不可能了。例如,有這樣一個詞,變換起字母的順序,slient可以變為listen,但所有的字母都沒有變化,沒有增加也沒有減少,但是字母之間的順序已經變化了。

但是,還有一種更好的加密算法,只有計算機可以做,就是字/字節循環移位和xor操作。如果我們把一個字或字節在一個數據流內做循環移位,使用多個或變化的方向(左移或右移),就可以迅速的產生一個加密的數據流。這種方法是很好的,破譯它就更加困難!而且,更進一步的是,如果再使用xor操作,按位做異或操作,就就使破譯密碼更加困難了。如果再使用偽隨機的方法,這涉及到要產生一系列的數字,我們可以使用fibbonaci數列。對數列所產生的數做模運算(例如模3),得到一個結果,然后循環移位這個結果的次數,將使破譯次密碼變的幾乎不可能!但是,使用fibbonaci數列這種偽隨機的方式所產生的密碼對我們的解密程序來講是非常容易的。

在一些情況下,我們想能夠知道數據是否已經被篡改了或被破壞了,這時就需要產生一些校驗碼,并且把這些校驗碼插入到數據流中。這樣做對數據的防偽與程序本身都是有好處的。但是感染計算機程序的病毒才不會在意這些數據或程序是否加過密,是否有數字簽名。所以,加密程序在每次load到內存要開始執行時,都要檢查一下本身是否被病毒感染,對與需要加、解密的文件都要做這種檢查!很自然,這樣一種方法體制應該保密的,因為病毒程序的編寫者將會利用這些來破壞別人的程序或數據。因此,在一些反病毒或殺病毒軟件中一定要使用加密技術。

循環冗余校驗是一種典型的校驗數據的方法。對于每一個數據塊,它使用位循環移位和xor操作來產生一個16位或32位的校驗和,這使得丟失一位或兩個位的錯誤一定會導致校驗和出錯。這種方式很久以來就應用于文件的傳輸,例如xmodem-crc。這是方法已經成為標準,而且有詳細的文檔。但是,基于標準crc算法的一種修改算法對于發現加密數據塊中的錯誤和文件是否被病毒感染是很有效的。

二.基于公鑰的加密算法

一個好的加密算法的重要特點之一是具有這種能力:可以指定一個密碼或密鑰,并用它來加密明文,不同的密碼或密鑰產生不同的密文。這又分為兩種方式:對稱密鑰算法和非對稱密鑰算法。所謂對稱密鑰算法就是加密解密都使用相同的密鑰,非對稱密鑰算法就是加密解密使用不同的密鑰。非常著名的pgp公鑰加密以及rsa加密方法都是非對稱加密算法。加密密鑰,即公鑰,與解密密鑰,即私鑰,是非常的不同的。從數學理論上講,幾乎沒有真正不可逆的算法存在。例如,對于一個輸入‘a’執行一個操作得到結果‘b’,那么我們可以基于‘b’,做一個相對應的操作,導出輸入‘a’。在一些情況下,對于每一種操作,我們可以得到一個確定的值,或者該操作沒有定義(比如,除數為0)。對于一個沒有定義的操作來講,基于加密算法,可以成功地防止把一個公鑰變換成為私鑰。因此,要想破譯非對稱加密算法,找到那個唯一的密鑰,唯一的方法只能是反復的試驗,而這需要大量的處理時間。

rsa加密算法使用了兩個非常大的素數來產生公鑰和私鑰。即使從一個公鑰中通過因數分解可以得到私鑰,但這個運算所包含的計算量是非常巨大的,以至于在現實上是不可行的。加密算法本身也是很慢的,這使得使用rsa算法加密大量的數據變的有些不可行。這就使得一些現實中加密算法都基于rsa加密算法。pgp算法(以及大多數基于rsa算法的加密方法)使用公鑰來加密一個對稱加密算法的密鑰,然后再利用一個快速的對稱加密算法來加密數據。這個對稱算法的密鑰是隨機產生的,是保密的,因此,得到這個密鑰的唯一方法就是使用私鑰來解密。

我們舉一個例子:假定現在要加密一些數據使用密鑰‘12345’。利用rsa公鑰,使用rsa算法加密這個密鑰‘12345’,并把它放在要加密的數據的前面(可能后面跟著一個分割符或文件長度,以區分數據和密鑰),然后,使用對稱加密算法加密正文,使用的密鑰就是‘12345’。當對方收到時,解密程序找到加密過的密鑰,并利用rsa私鑰解密出來,然后再確定出數據的開始位置,利用密鑰‘12345’來解密數據。這樣就使得一個可靠的經過高效加密的數據安全地傳輸和解密。

我們經常需要一種措施來保護我們的數據,防止被一些懷有不良用心的人所看到或者破壞。在信息時代,信息可以幫助團體或個人,使他們受益,同樣,信息也可以用來對他們構成威脅,造成破壞。在競爭激烈的大公司中,工業間諜經常會獲取對方的情報。因此,在客觀上就需要一種強有力的安全措施來保護機密數據不被竊取或篡改。數據加密與解密從宏觀上講是非常簡單的,很容易理解。加密與解密的一些方法是非常直接的,很容易掌握,可以很方便的對機密數據進行加密和解密。

主站蜘蛛池模板: 亚洲福利视频网 | 成人在线一区二区三区 | 五月天第一页 | 亚洲精品免费观看 | 中文字幕在线精品视频入口一区 | 国产成人综合精品一区 | 久久久久久久国产精品视频 | 自拍亚洲国产 | 羞羞网站 | a级国产视频 | www.麻豆| 亚洲欧美在线免费 | 亚洲午夜久久久久中文字幕 | 国产精品久久久久久久人热 | 久久国产经典视频 | 亚洲天码中文字幕第一页 | 影音先锋5566夜色资源网 | 五月天婷婷色综合 | 亚洲免费视 | 久久久精品久久久久久久久久久 | 夜色资源网站 | 四虎影视久久久免费 | 自拍偷拍欧美视频 | 最近免费中文字幕大全视频 | 精品国产一区二区三区久久影院 | 久久艹综合 | www.激情五月.com | 亚洲国产精品一区二区首页 | 日本a级精品一区二区三区 欧洲精品在线观看 | 一区二区三区国产精品 | 欧美成人精品手机在线观看 | 最新欧美精品一区二区三区 | 亚洲欧美视频在线观看 | 久草免费色站 | 久久久国产高清 | 中文国产成人精品少久久 | 国产乱码精品一区二区三 | www.99爱| 亚洲一区自拍 | 亚洲区精品久久一区二区三区 | 欧美四虎精品二区免费 |