密码学基础系列

1、说明

密码学是研究编制密码和破译密码的技术科学。研究密码变化的客观规律,应用于编制密码以保守通信秘密的,称为编码学;应用于破译密码以获取通信情报的,称为破译学,总称密码学。(百度百科)
密码学基础系列教程是关于编码学的基础知识。我认为我的教程有以下特点:
一、实用性
只讲述最有用的部分,比如,在介绍PBKDF2算法时,并不会介绍mk的长度这个参数,因为多数情况下用不到,同时,为便于读者深入了解,每篇都会附上参考文献。
二、可参考性
我不是密码学权威,我的密码学知识主要基于NIST系列资料(见文末参考文献部分)、《密码编码学和网络安全》等书籍和自己多年工作经验积累。重要的概念弄清楚出处是非常有必要的,有参考文献的,我会把参考文献列举出来,供读者查阅求证,如果是自己的观点,我会说明,让读者心中有数。
三、完备性
我会把多数人需要用到的密码学知识都讲述到。
四、有示例代码
大部分内容都有Python示例代码,大部分代码会同时兼容Python 2.7和Python 3,不兼容的代码我会说明适用的Python版本。

2、文章目录

基础知识

密码学家的工具箱

伪随机数

伪随机数

对称加密

对称加密(一)分组密码
对称加密(二)流加密(待补充)
Java 11的新加密算法ChaCha20-Poly1305
简化版的DES加密Python实现
RC4加密
白盒加密(待补充)

不对称加密

RSA与不对称秘钥

秘钥交换

Diffie-Hellman秘钥交换

消息摘要函数

消息摘要函数
C语言实现SHA256算法

基于密码的消息摘要

基于密码的消息摘要简介(待补充)
C语言实现HMAC算法
PBKDF2算法

数字签名

Python RSA数字签名实践

密码学实践

安全算法的强度

密码学理论

埃拉托色尼筛选法求素数
Python解中国剩余定理(孙子定理)
RSA私钥、公钥文件分析

3、参考资料

[NIST] Computer Security Resource Center

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Guide to BluetoothSecurity原文 本出版物可免费从以下网址获得:https://doi.o...
    公子小水阅读 12,628评论 0 6
  • 〇、序言 货币由于其天然属性决定了其与安全不可分割的联系,从最早的金库、保险柜、镖局到后来的ATM机、运钞车;从存...
    怒马2048阅读 39,460评论 4 79
  • 密码编码学与网络安全 review lecture01 经典加密技术 什么是安全,如何认识信息安全? 安全性是绝对...
    lucipher1987阅读 7,313评论 1 1
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,262评论 25 709
  • 月上柳梢,人约黄昏。长情难复,寄于何方?看明月高挂,望星辰依旧,有谁知此生何依。 梦里山河,画里楼阁。清风弄月,昭...
    墨燔阅读 1,248评论 0 0