單向函式是啥?謝謝單向函式是什麼

2021-03-04 08:06:14 字數 5095 閱讀 7071

1樓:百度使用者

單向函式是進行資料加密/編碼的一種演算法

單向函式一般用於產生訊息摘要,金鑰加密等,常見的有:

md5(message digest algorithm 5):是rsa資料安全公司開發的一種單向雜湊演算法,md5被廣泛使用,可以用來把不同長度的資料塊進行暗碼運算成乙個128位的數值;

sha(secure hash algorithm)這是一種較新的雜湊演算法,可以對任意長度的資料運算生成乙個160位的數值;

mac(message authentication code):訊息認證**,是一種使用金鑰的單向函式,可以用它們在系統上或使用者之間認證檔案或訊息。hmac(用於訊息認證的金鑰雜湊法)就是這種函式的乙個例子。

crc(cyclic redundancy check):迴圈冗餘校驗碼,crc校驗由於實現簡單,檢錯能力強,被廣泛使用在各種資料校驗應用中。占用系統資源少,用軟硬體均能實現,是進行資料傳輸差錯檢測地一種很好的手段(crc 並不是嚴格意義上的雜湊演算法,但它的作用與雜湊演算法大致相同,所以歸於此類)。

2樓:匿名使用者

設函式 y = f(x)

如果不存在這樣乙個函式 f(y)=f(f(x))=x

那麼f就是乙個單項函式

單向函式是什麼.?

3樓:匿名使用者

4)單向雜湊函式介紹(hash function,雜湊函式):

將任意長度的訊息m對映/換算成固定長度值h(雜湊值,或訊息摘要md, message digest),最大的特點為其具有單向性。

h=h(m)

hash函式用於訊息認證(或身份認證)以及數字簽名。

特性:(1) 給定m,可算出h.

(2) 給定h,根據h(m)=h反推出m是非常困難的。

(3) 給定m,要找到另外乙個訊息m*,使其滿足h(m*)=h(m)=h 是非常困難的。

注 (見 參考e,p75):

-從理論上說,有很多訊息能生成相同的訊息摘要。因為訊息的長度是任意的,而摘要的長度是固定的。

-對於固定1000 bit的訊息和固定128 bit的摘要,平均來說,有2872個訊息與之對應,測試似乎不可能成功。

-對於乙個128 bit的訊息摘要演算法,大約需要嘗試2128個(長短不一的)訊息,才能找到乙個訊息摘要與給定的摘要數值相吻合(作為攻擊,當然該訊息可為經篡改後的訊息)。注:這裡是用無數次的「嘗試」,而非簡單從h反推出m。

-對於乙個128 bit的訊息摘要演算法,需要嘗試264個訊息才能找到兩個具有相同摘要的訊息。

-為什麼將訊息摘要定為128 bit? 因為訊息摘要為m bit,任何人想要得到兩個具有相同摘要的訊息,大約需要嘗試2m/2個訊息。 若m=64, 則需檢查232個訊息,這在計算上是可行的。

所以使m=128, 檢查264個訊息目前在計算上是不可行的。

應用舉例講解:

(i) 儲存於銀行計算機內的使用者密碼採用雜湊值,用於保密。

(ii)alice要bob寫乙份關於解雇fred的報告,而bob是fred的朋友,想做「雙面人」。

(iii)為文件和程式生成「指紋」或「dna」。

在實際應用中,hash函式是基於壓縮函式的。

(refc_p42_hash函式)

給定任意長度的訊息,hash函式輸出長度為m的雜湊值(即訊息摘要)。

壓倒函式的輸入為

(1) 明文訊息分組 mi。

(2) 前一壓縮資料的輸出 cvi-1 (***pressed vector)。

注:-第乙個壓縮函式的輸入m1為和iv (initial vector)。

-壓縮函式的輸出值為前所有分組的雜湊值;最後乙個分組的雜湊值即為整個訊息的雜湊值,即訊息摘要md。

hash函式演算法介紹: md5演算法 和 sha-1演算法。

md5演算法:

對任意長度的訊息m作為輸入,產生乙個128 bit的雜湊值/訊息摘要。

(refc_p43_md5演算法)

演算法包括5個步驟:

(1) 附加填充位:填充訊息,使訊息的長度位乙個比512倍數小64位的數,填充位數為1~512。填充方法:

原訊息的後面第一位填1,其餘填0。(例如:設訊息為「abc」。

)(2) 附加長度:將原訊息的64位表示附加在填充後的訊息後面,這時處理後的訊息的長度恰好為512的整數倍。(續上例)

若原訊息的長度大於264時,則用原訊息長度mod264的64位表示附加在填充後的訊息後面。

(3) 初始化md的緩衝區:緩衝區共有4個32 bit的暫存器 a、b、c、d, 各暫存器的初始值為

a: 01 23 45 67

b: 89 ab cd ef

c: fe dc ba 98

d: 76 54 32 10

(4) 按512 bit的訊息分組處理輸入訊息:該步為md5的主迴圈,包括4輪。

(refc_p44_主迴圈處理)

每個迴圈均以當前正在處理的512 bit的分組yq和128 bit的緩衝值abcd為輸入,然後更新緩衝內容。

以上4輪操作類似,每輪進行16次操作,各輪操作過程見下圖。

(refc_p44_某輪執行過程)

每一輪的非線性函式不同,4次所用的非線性函式分別記為 f、g、h、i。

f(x,y,z)=(x y) ((~x) z)

g(x,y,z)=(x z) ( y (~z))

h(x,y,z)=x y z

i(x,y,z)=y (x (~z))

其中: :邏輯按位與 :邏輯按位或

~:邏輯按位反 :邏輯按位異或

注:t表:t[i]=232abs(sin(i))

安全雜湊函式演算法(sha, secure hash algorithm):

sha由美國nist(國家標準與技術研究所)和nsa(國家標準協會)設計,用於數字簽名(ds)。

sha-1為sha的修改版,於2023年發布。

sha-1產生訊息摘要的過程與md5類似,但輸入為度小於232 bit的訊息,而輸出為160 bit的雜湊值(即訊息摘要md),訊息仍需填充使其最後為512的整數倍。

注:與md5比較:

-附加填充位和附加訊息長度與md5相同。

-初始化緩衝器:sha用兩個緩衝區,每個區均有

5個32位的暫存器,分別為 a、b、c、d、e和h0、h1、h2、h3、h4。另有一單字緩衝區。

-按512 bit分組處理輸入訊息,主迴圈包括4輪(和md5一樣),但每輪操作20次(md5為16次)

(詳見參考資料)

2.5 數字信封

用於保證資料在傳輸過程中的安全。對稱加密效率高,但金鑰不適合在公共網路傳遞,而非對稱加密傳遞簡單,但效率低下。數字信封技術取二合一,即取對稱加密的高效性和非對稱加密的靈活性。

(refb_p385_數字信封)

-兩個不同的加密解密過程:明文的加密/解密,金鑰的加密/解密。首先使用對稱加密演算法對資料加密;然後,利用非對稱加密演算法對對稱加密過的金鑰進行加密,過程包括:

(1) 傳送訊息時,傳送方生成乙個對稱金鑰。

(2) 傳送方使用自己的對稱加密的金鑰和演算法對欲傳送的資料進行加密,形成資料密文。

(3) 傳送方使用接收方提供的公鑰,對自己的金鑰進行加密。

(4) 傳送方通過網路將加密後的密文和金鑰傳輸到接收方。

(5) 接收方用私鑰對加密後的傳送方金鑰進行解密,獲得對稱金鑰。

(6) 接收方使用還原出的金鑰對資料進行解密,得到資料明文。

應用兩層加密體制,在內層運用對稱加密技術,每次傳送訊息都可以重新生成新的金鑰,保證訊息的安全性。在外層,利用非對稱加密技術加密對稱金鑰,保證金鑰傳遞的安全性。

2.6 身份認證技術的發展

網路使用者的身份認證可以用下列3中基本方法之一或它們的組合來實現。

(1) 所知(knowledge): 驗證使用者的密碼,口令等。

(2) 所有(possession): 所掌握的使用者的身份證、護照、信用卡等。

(3) 特徵(characteristics):所掌握的使用者的指紋、聲音、筆記、手型,虹膜,dna、動作等。

4樓:匿名使用者

單項函式就是不可逆函式。。

存在嚴格意義上的單向函式嗎

5樓:凌月霜丶

單向函式滿足 對於所有屬於 f 定義域的任一 x ,可以很容易計算 f( x ) = y; 對於幾乎所有屬於 f 值域的任一 y ,則在計算上不可能求出 x 使得 y = f( x )。

一函式f若滿足下列二條件,則f稱為單向函式:

① 對於所有屬於 f 定義域的任一 x ,可以很容易計算 f( x ) = y;

②對於幾乎所有(almost all)屬於 f 值域的任一 y ,則在計算上不可能(***putationally infeasible)求出 x 使得 y = f( x );

什麼是單向陷門函式??

6樓:柳琴魂

單向陷門函式是有乙個陷門的一類特殊單向函式。它首先是乙個單向函式,

在乙個方向上易於計算而反方向卻難於計算。但是,如果知道那個秘密陷門,則也能很容易在另乙個方向計算這個函式。即已知x,易於計算f(x),而已知f(x),卻難於計算x。

然而,一旦給出f(x)和一些秘密資訊y,就很容易計算x。在公開金鑰密碼中,計算f(x)相當於加密,陷門y相當於私有金鑰,而利用陷門y求f(x)中的x則相當於解密。

什麼是單向陷門函式??

7樓:匿名使用者

單向陷門函式單向陷門函式(one-way trapdoor function)定義:  一「可逆」函式f若滿足下列二條件,則f稱為單向陷門函式:  1.

對於所有屬於f定義域的任一x,可以很容易算出f(x) = y;  2.對於幾乎所有屬於f值域的任一y,則在計算上除非獲得陷門,否則不可能求出x,使得x = f^(-1)(y),f^(-1)為f的反函式。但若有一額外資料z(稱為陷門),則可以很容易的求出 x = f^(-1)(y)。

  單向函式與單向陷門函式的差異在於可逆與不可逆。若單向陷門函式存在,則任何單向陷門函式均可用來設計公開金鑰密碼系統。同時,若單向函式滿足交換性,則單向函式也可能用來設計公開金鑰密碼系統。

(出自 http://baike.baidu.

什麼是門函式什麼是單向陷門函式??

矩形脈衝函式就是門函式,就是像一道門一樣,比如在一定定義域內值為1,其他為0。值為1的定義域稱為寬度,1就稱為幅度。門函式多用於研究頻譜函式。單向陷門 函式就是門函式。單向陷門函式是有乙個陷門的一類特殊單向函式。單向陷門函式包含兩個明顯特徵 一是單向性,二是存在陷門。所謂單向性,也稱不可逆性,即對於...

液控單向閥的用途是啥,請問液控單向閥的作用是什麼?整個液壓系統的壓力和流量是什麼計算的?

1 保持壓力。滑閥式換向閥都有間隙洩漏現象,只能短時間保壓。當有保壓要求時,可在油路上加一個液控單向閥,利用錐閥關閉的嚴密性,使油路長時間保壓。2 液壓缸的 支承 在立式液壓缸中,由於滑閥和管的洩漏,在活塞和活塞桿的重力下,可能引起活塞和活塞桿下滑。將液控單向閥接於液壓缸下腔的油路,則可防止液壓缸活...

液壓單向閥的工作原理是什麼,專用單向閥的特點及工作原理?

雪琳戀庚 工作原理 液壓單向閥是依靠控制流體壓力,可以使單向閥反向流通的閥。這種閥在煤礦機械的液壓支護裝置中佔有較重要的地位。液壓單向閥與普通單向閥不同之處是多了一 個控制油路k,當控制油路未接通壓力油液時,液壓單向閥就象普通單向閥一樣工作,壓力油只從進油口流向出油口,不能反向流動。當控制油路油控制...