密碼學介紹

2022-09-12 00:42:26 字數 1773 閱讀 2302

密碼學分類

網路開發準則對稱加密演算法

加密&解密都是使用乙個金鑰

非對稱加密演算法

-用公鑰加密,私鑰解密

-用私鑰加密,公鑰解密

特點

1.演算法公開

2.對於相同的資料加密,得到的結果是一樣的

3.得到的結果都是定長的32位

md5用途:

1.密碼:(伺服器不需要知道使用者的真實密碼,資料庫儲存的是加密密碼)

2.搜尋

ios 高階 執行終端命令:md5 -s "ios"

ios :md5 ("ios") = 1bdf605991920db11cbdf8508204c4eb

高階:md5 ("高階") = fa11f8c07c1629d5f0ab1cfecdf1f686

md5 ("123.png") = 812749e1a307f38fd0a88b54bea55ff2

md5 ("456.png") = 9ef5055324e69f335d69b27ea40d2202

4.檔案完整性校驗

b: 上傳:(斷點續傳)上傳md5和檔案上傳完生成的md5值是否一樣

sskeychain使用

- (void)viewdidload 

- (void)loaduserinfo

- (ibaction)login:(id)sender

}pwd = [pwd hmacmd5stringwithkey:key];

nslog(@"現在的密碼是:%@",pwd);

if ([self isloginwithuserid:userid password:pwd]) else

}- (void)s**epwdwithaccount:(nsstring*)account pwd:(nsstring*)pwd

}- (nsstring*)getkeywithaccount:(nsstring*)count else

}- (bool)isloginwithuserid:(nsstring*)userid password:(nsstring*)pwd else

}

加密/解密使用相同的秘鑰; 秘鑰的保管十分重要

加密:$ openssl enc -des-ecb -k 616263 -nosalt -in msg1.txt -out msg1.bin

解密:$ openssl enc -des-ecb -k 616263 -nosalt -in msg1.bin -out msg1.txt -d

檢視加密後的二進位制檔案:$ xxd msg1.bin

加密:$ openssl enc -des-cbc -k 616263 -iv 0000000000000000 -nosalt -in a.txt -out msg1.bin

解密:$ openssl enc -des-cbc -k 616263 -iv 0000000000000000 -nosalt -in msg1.bin -out msg4.txt -d

檢視加密後的二進位制檔案:$ xxd msg1.bin

openssl生成秘鑰

rsa演算法有兩個作用乙個是加密乙個是數字簽名。

生成秘鑰:$ openssl genrsa -out ca.key 1024

密碼學簡單介紹

本文簡要地介紹了現代密碼學的一些基礎理論,供參考。1 加密技術概述 乙個密碼系統的安全性只在於金鑰的保密性,而不在演算法的保密性。對純資料的加密的確是這樣。對於你不願意讓他看到這些資料 資料的明文 的人,用可靠的加密演算法,只要破解者不知道被加密資料的密碼,他就不可解讀這些資料。但是,軟體的加密不同...

密碼學 密碼學基礎

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

《現代密碼學》第一章 經典密碼學介紹

第一章 經典密碼學介紹 1.1密碼學和現代密碼學 a.現代密碼學與古典密碼學的區別 1.2對稱金鑰加密的基本設定 a.b.加密的語法 金鑰產生演算法 gen 一種概率演算法 加密演算法 enc 輸入金鑰 k,明文 m,輸出密文c。記為enck m 解密演算法 dec 輸入金鑰 k,密文c,輸出明文 ...