密碼學摘要

2022-05-06 15:00:12 字數 1405 閱讀 2743

這學期學了密碼學,雖然也是一門打水課,但是不記點什麼確實就真的是水過去了...好歹對稱金鑰演算法,公鑰演算法,數字簽名什麼的要簡單記述一下,別人問的時候至少要知道說些什麼。。。

對稱金鑰演算法:

對稱金鑰加密和解密時使用的金鑰是同乙個金鑰,其優點是加密速度快,缺點是不能作為身份驗證,金鑰發放困難。常見的對稱加密演算法有rc2,rc4,des,3des,idea,sdbi等。

當然,還會導致每一對通訊放都要儲存一對金鑰,導致金鑰管理困難。

公開金鑰演算法:

公開金鑰加密和解密使用的金鑰是不同的金鑰,分別稱為公鑰和私鑰,公鑰可以公開,私鑰則必須保密只能歸金鑰所有者擁有。其缺點是對大容量的資訊加密速度慢,優點是可以作為身份認證,而且金鑰傳送方式比較簡單安全。

關於公鑰與私鑰的加密與解密:私鑰加密公鑰可以解密;公鑰加密私鑰也可以解密。分別用於加密與簽名。

你只要想:既然是加密,那肯定是不希望別人知道我的訊息,所以只有我才能解密,所以可得出加密時公鑰負責加密,私鑰負責解密;同理,既然是簽名,那肯定是不希望有人冒充我發訊息,只有我才能發布這個簽名,所以可得出簽名時私鑰負責簽名,公鑰負責驗證

其中,rsa演算法基於大整數因數分解的困難性,elgamal演算法基於有限域內求離散對數的困難性。

rsa演算法:

原文為m,公鑰為(e, n), 私鑰為(d, n),其中n = pq (兩個大質數乘積)

c = me mod n,    (加密)

m = cd mod n = med mod n = m,   (解密)

已知(e, n)如何計算d?

ed mod phi(n)  =  ed mod (p-1)(q-1)  =  1

d與e在 (p-1)(q-1) 下互為逆元

已知e, p, q, 可以對數時間計算d

困難在於大質數乘積n的分解

零知識:a向b證明a掌握某事,但不想讓b知道這件事的內容。

feige-fiat-shamir身份驗證體制:仲裁人選擇乙個隨機數n為兩個大素數的乘積,分別產生公鑰與私鑰。甲有公鑰與私鑰,乙有公鑰,通過t次協議驗證甲有私鑰。

diffie-hellman:最早的公開金鑰演算法,用於分配金鑰,不能用於加密與解密。

甲選擇乙個數x,向乙傳送x = g^x mod n,

乙選擇乙個數y,向甲傳送y = g^y mod n;

甲計算k = y^x mod n,

乙計算k' = x^y mod n;

shamir的三次通過協議:甲乙雙方不用交換任何秘密金鑰或公開金鑰就可以安全通訊。

乙個可交換的對稱密碼: ea( eb(m) ) = eb( ea(m) );   (有點類似於diffie-hellman啊......)

學會了什麼呢。。。。學完後其實也就是鞏固了一下初等數論而已,明白了以前還不是很明白的一些知識... 囧

密碼學 密碼學基礎

密碼學是研究編制密碼和破譯密碼的技術科學。密碼學的安全目標至少包含三個方面 保密性 完整性 可用性。完整性 資源只有授權方以授權的方式進行修改,所有資源沒有授權則不能修改。可用性 資源只有在適當的時候被授權方訪問,並按需求使用。密碼系統由5部分組成 1 明文空間m 全體明文的集合 2 密文空間c 全...

密碼學 柵欄密碼

使用的時候通過設定解密的偏移量不一樣的話,會得出不同的解碼內容 一直設定不同的偏移位數 直到找到帶有cyberpeace 開頭的解碼內容 偏移量也就是分組的數字長度 一般就是flag了 有時候它也會全部的解碼都沒有flag的標誌,這時候一定仔細看題目給出的條件 還有的情況就是在題目裡面它會提示給你數...

密碼學 密碼學中幾種攻擊模式

本科畢業設計做完之後,一直覺得自己需要系統來學習一下密碼學,密碼學是乙個古老的學科,前人已經研究了太多太多,而伴隨著量子計算的逐漸發展,之前制定出來的密碼演算法都面臨著被淘汰的危險。今天記錄一下根據密碼分析者知道資訊的多少,密碼學中分為常見的幾種攻擊模式,以及它們主要用於什麼場合。在介紹攻擊模式之前...