非常教程

Python参考手册

加密 | Cryptography

hmac

2.2版本中的新功能。

源代码: Lib / hmac.py

该模块实现了RFC 2104所述的HMAC算法。

hmac.new(key[, msg[, digestmod]])

返回一个新的hmac对象。如果msg存在,则进行方法调用update(msg)digestmod是HMAC对象使用的摘要构造函数或模块。它默认为hashlib.md5构造函数。

HMAC对象具有以下方法:

HMAC.update(msg)

msg字符串更新hmac对象。重复的调用相当于所有参数串联的单个调用:m.update(a); m.update(b)相当于m.update(a + b)

HMAC.digest()

返回传递给该update()方法的字符串的摘要。该字符串的长度与给定构造函数的digest_size相同。它可能包含非ASCII字符,包括NUL字节。

警告

digest()验证例程期间,当比较外部提供摘要的输出时,建议使用该compare_digest()功能而不是==操作员来降低定时攻击的脆弱性。

HMAC.hexdigest()

就像digest()除了摘要以长度的两倍返回包含十六进制数字的长度。这可以用于在电子邮件或其他非二进制环境中安全地交换该值。

警告

hexdigest()验证例程期间,当比较外部提供摘要的输出时,建议使用该compare_digest()功能而不是==操作员来降低定时攻击的脆弱性。

HMAC.copy()

返回hmac对象的副本(“克隆”)。这可用于有效计算共享初始子字符串的字符串摘要。

该模块还提供以下帮助功能:

hmac.compare_digest(a, b)

返回a == b。此功能采用旨在通过避免基于内容的短路行为来防止时序分析的方法,使其适用于密码学。ab必须是相同的类型:unicode或者是类似字节的对象。

注意

如果ab的长度不同,或者发生错误,定时攻击理论上可以揭示ab类型和长度的信息- 但不是它们的值。

2.7.7版本的新功能。

加密 | Cryptography相关

Python

Python 是一种面向对象的解释型计算机程序设计语言,由荷兰人 Guido van Rossum 于1989年发明,第一个公开发行版发行于1991年。 Python 是纯粹的自由软件, 源代码和解释器 CPython 遵循 GPL 协议。Python 语法简洁清晰,特色之一是强制用空白符( white space )作为语句缩进。

主页 https://www.python.org/
源码 https://github.com/python/cpython
版本 2.7
发布版本 2.7.13

Python目录

1.内置常量 | Built-in Constants
2.内置例外 | Built-in Exceptions
3.内置函数 | Built-in Functions
4.内置类型 | Built-in Types
5.编译器 | Compiler
6.加密 | Cryptography
7.数据压缩 | Data Compression
8.数据持久性 | Data Persistence
9.数据类型 | Data Types
10.调试和分析 | Debugging & Profiling
11.开发工具 | Development Tools
12.文件和目录访问 | File & Directory Access
13.文件格式 | File Formats
14.构架 | Frameworks
15.输入 | Importing
16.输入/输出 | Input/ouput
17.国际化 | Internationalization
18.网络 | Internet
19.网络数据 | Internet Data
20.翻译 | Interpreters
21.语言 | Language
22.记录 | Logging
23.Mac OS
24.MS Windows
25.多媒体 | Multimedia
26.联网 | Networking
27.数字与数学 | Numeric & Mathematical
28.操作系统 | Operating System
29.可选操作系统 | Optional Operating System
30.限制执行 | Restricted Execution
31.运行 | Runtime
32.SGI IRIX
33.软件包装与分销 | Software Packaging & Distribution
34.字符串 | String
35.结构化标记 | Structured Markup
36.Tk
37.Unix
38.Python 简介
39.Python pass 语句
40.Python 循环嵌套
41.Python 运算符
42.Python log10() 函数
43.Python log() 函数
44.Python floor() 函数
45.Python fabs() 函数
46.Python exp() 函数
47.Python cmp() 函数
48.Python ceil() 函数
49.Python abs() 函数
50.Python Number(数字)
51.Python pow() 函数
52.Python modf() 函数
53.Python min() 函数
54.Python max() 函数
55.Python asin() 函数
56.Python acos() 函数
57.Python uniform() 函数
58.Python shuffle() 函数
59.Python seed() 函数
60.Python random() 函数
61.Python randrange() 函数
62.Python choice() 函数
63.Python sqrt() 函数
64.Python round() 函数
65.Python radians() 函数
66.Python degrees() 函数
67.Python tan() 函数
68.Python sin() 函数
69.Python hypot() 函数
70.Python cos() 函数
71.Python atan2() 函数
72.Python atan() 函数
73.Python 元组
74.Python 列表(List)
75.Python 字符串
76.Python 字典(Dictionary)
77.Python 日期和时间
78.Python 函数
79.Python 模块
80.Python capitalize()方法
81.Python center()方法
82.Python count() 方法
83.Python expandtabs()方法
84.Python endswith()方法
85.Python encode()方法
86.Python decode()方法
87.Python find()方法
88.Python index()方法
89.Python 异常处理
90.Python isspace()方法
91.Python isnumeric()方法
92.Python islower()方法
93.Python isdigit()方法
94.Python isalpha()方法
95.Python isalnum()方法
96.Python isupper()方法
97.Python istitle()方法
98.Python min()方法
99.Python max()方法
100.Python maketrans()方法