密码学笔记之 RSA加密

什么是RSA

1977年,三位数学家Rivest、Shamir 和 Adleman 设计了一种算法,可以实现非对称加密。这种算法用他们三个人的名字命名,叫做RSA算法。

RSA算法基于一个十分简单的数论事实:将两个大质数相乘十分容易,但是想要对其乘积进行因式分解却极其困难,因此可以将乘......

密码学概览 入门笔记

密码学术语

对称密码 symmetric cryptography

公钥密码 public-key cryptography/非对称密码 asymmetric cryptography

混合密码系统 hybrid cryptosystem

单向散列函数(one-way hash funct......

cryptokit更轻松的在python中实现加密解密

安装

pip install cryptokit

AES 使用

from cryptokit import AESCrypto

message = "hello cryptokit"

crypto = AESCrypto('WDMG1e38igW53Yu......

密码学笔记之 AES加密

什么是 AES

AES(高级加密标准) 在密码学中又称Rijndael加密法, 这个标准用来替代原先的DES

AES的历史过程

1997年4月15日,美国ANSI发起征集AES

2000年10月2日,NIST宣布Rijndael作为新的AES加密方案

什么是 Rijnda......

密码学笔记之 什么是SHA

举个现实生活的例子

我们每个人都需要一个用于区分自己与他人不同的标志

也许你会想用姓名或者身份证等来代表你,但是这些都不是有效的区分你和他人的方法

因为姓名可能重复身份证可以伪造。所以目前最可靠的可能就是你的基因序列了,

但这样做的成本就太高了,所以指纹是一个不错的选择

......

Python装饰器

什么是装饰器

Python中的装饰器本质上就是在不改变函数本身的情况下包装一个函数成为另一个函数的语法糖

装饰器简单示例

def ......

使用cryptography进行AES的cbc模式加密

cryptography 是一个python加密库

cryptography is a package designed to expose cryptographic primitives and recipes to Python developers. 文档 cryptograph......

Python内建函数

Python内建模块

sys.getrefcount 获取对象引用计数

import sys

words = 'Hello world!'

sys.getrefcount(words)

sys.getrecursionlimit 获取递归最大层数

import sys

s......

发布你的Python包

简史

disutils从1998年便已经是python标准库的一部分。它最早由Greg Ward开发。

在2000年开发停止,从那以后,一些开发人员开始在其基础上继续开发他们自己的工具。其中

最成功的继任者便是打包库setuptools

使用setuptools打包python库......