密碼學初學者可以理解的密碼學庫
區塊鏈、加密貨幣、VPN、數字證書……這些概念的背後基石都是密碼學,瞭解密碼學的原理和經典實現方法對於學習理解前面的應用是大有裨益的。
cryptoC 作為一個供密碼學初學者入門的密碼學庫,實現了以下經典的密碼系統:
-
對稱密碼系統
- DES (DES 3-DES)
- AES
-
公鑰密碼系統
- RSA
- ECC
-
MAC
- SHA (SHA1 SHA512)
- MD5
-
數字簽名
- DSA
- 大數運算
-
其他工具
- base64
- asn1
安裝方法
- 下載程式碼
# git clone https://github.com/qshchenmo/cryptoC.git
- 編譯安裝
# make # make install
- 執行測試程式
# cd example/rsa # make # ./test_rsa
缺點
- 本程式的目的是供密碼學初學者瞭解對經典密碼系統的實現,因此未對效能進行優化。
參考資料
[1]Understanding Cryptography, Christof Paar / Jan Pelzl
[2]密碼學與網路安全