[發明專利]一種基于隨機函數的分組加密算法的構造方法有效
| 申請號: | 201210022476.6 | 申請日: | 2012-02-01 |
| 公開(公告)號: | CN102571330A | 公開(公告)日: | 2012-07-11 |
| 發明(設計)人: | 王勇 | 申請(專利權)人: | 王勇 |
| 主分類號: | H04L9/08 | 分類號: | H04L9/08 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 541004 廣西壯族自治區桂林市桂*** | 國省代碼: | 廣西;45 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 隨機 函數 分組 加密算法 構造 方法 | ||
技術領域
本發明屬于信息安全領域,涉及一類加密算法的構造方法,特別是分組加密算法的構造方法。
背景技術
現有的加密系統都是基于確定的加密算法,固然有方便,便于廣泛使用和標準化,容易得到廣泛的評價的好處,但是,這些算法都有非常清楚和固定的結構,只有明文、密鑰和一些參數是變換的,它們都在固定的算法框架下參與運算,得到密文。這些對密碼系統自由度的制約因素也對密碼系統的安全性造成不好的影響,大量的密碼分析也是針對算法確定的情形,這些分析已經假設算法已經知道。我們可以將確定的算法視為一個確定性的函數。假如一個加密算法對應的函數是隨機的、不確定的,則密碼分析者很難著手。與傳統的確定函數相對,我們這里提出隨機函數的概念,即這個函數的表達式、結構和形式是隨機的,不確定的,比如隨機函數y=F(a,b,c),F(a,b,c)只是一個抽象表示,并沒有明確的形式,它的具體形式可能是f1(a,b,c)、f2(a,b,c)、f3(a,b,c)、f4(a,b,c)之中的一個函數。
發明內容
現有的許多密碼分析都是針對同一算法、同一密鑰的情況下,需要以大量的選擇(或已知)明文密文對作為前提。本發明中構造的密碼系統將是隨機的,而且不同的分組的加密的函數具體形式是變化的,依靠隨機函數來實現,隨機函數的具體形式的確定由一個編碼來實現,我們稱為確定編碼。由于算法是變化的,且可能對于不同的分組是不同的,所以密碼分析者無法獲得相同算法的大量的已知明文密文對,即使存在同一算法的大量明文密文對,密碼分析者也無從知道哪個分組采用哪個算法,哪些分組采用相同的算法,從而很難實施密碼分析。在本發明中擴充了密鑰的結構,讓密鑰不僅僅是參與參數性的運算,而且還起到驅動算法的變換,參與算法隨機性的確定的作用。
本發明的關鍵是利用隨機函數來構造加密算法,相比較傳統的利用確定函數的算法,具有以下優勢:一、現有的確定算法僅僅是輸入變量(傳統密鑰)的變化,基于隨機函數的密碼算法其函數也是變化的,這種變化導致計算中的中間結果和最終的結果的變換更加激烈和難于分析,更容易產生雪崩效應;二、基于隨機函數的算法對于分析者不確定,現有的公開的密碼分析方法往往針對確定的算法,而隨機函數本身不確定,使得密碼分析很難著手;三、基于隨機函數的算法可以勉強用特別的數學方法來表示,包括使用開關函數等來表示,但是,這種方法使得基于隨機函數的算法的數學形式及其表達異常復雜,從數學上分析和破譯非常困難,但是另外一方面隨機函數在具體的計算情況下,卻只采用其中的單個具體的形式,在計算上卻并不復雜,即具有破譯難,而使用容易的優點。而傳統的方法在增加復雜度和破譯難度的同時,往往會增加加密和解密的運算量;四、有些密碼分析基于概率統計,統計結果只是一個平均值,對于變換的隨機算法,不僅參數是變換的,而且函數本身也是變換的,很明顯統計結果更加不可靠,不完備,概率分布更加分散,均方差大,而確定的算法僅僅是一些變量性參數有變化,所以相應的一些概率統計特征會更加相似、更加接近,而概率分布更加集中。基于概率統計的分析方法對這種基于隨機函數的加密系統也會變得不太有效;五、在有意設計的隨機函數中,可以將一個隨機函數的多個具體函數的特征設定為相反的、相互抵消、互補的,舉比較簡單的例子,函數F有兩種具體形式f1和f2,如果f1的0的概率偏大,則可以選擇0的概率偏小的f2與之配伍,經過多輪類似的處理,相關的信息會消失,以防止給密碼分析提供任何線索。
?本發明利用隨機函數來構造加密算法,所以算法是隨機的,進一步,算法的每一個分組都采用不同的具體函數形式。隨機函數是無法加密的,必須依靠一定的數據來確定算法的具體函數形式,這一數據與密鑰與某些明文bit位和(或)明文分組的位置有關系。在本發明中先設計算法的大致框架,算法的一些部件是確定的,另外一些部件則是采用隨機函數,隨機函數的具體形式應該在某些方面具有相似的效果,比如運算量、輸出值、冗余等,以防止密碼分析者找到蛛絲馬跡以確定算法。在加密的過程中,總密鑰一方面參與確定隨機函數算法的具體形式,由于要求每一個分組的具體函數形式不一樣,所以不僅僅密鑰的一部分參與決定算法,而且,明文的某些信息,比如前一個分組的明文,明文分組的位置也參與決定當前分組所采用加密算法的具體形式,另一方面總密鑰的一部分也起到作為傳統密鑰的作用,即作為參數輸入算法參與運算。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于王勇,未經王勇許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210022476.6/2.html,轉載請聲明來源鉆瓜專利網。





