Spec-Zone.ru › Python 2.7

sha — Алгоритм дайджеста сообщений SHA-1

Устарело начиная с версии 2.5: Используйте модуль hashlib вместо него.

Этот модуль реализует интерфейс к алгоритму безопасного хеширования NIST, известному как SHA-1. SHA-1 является улучшенной версией исходного алгоритма хеширования SHA. Он используется так же, как и модуль md5: используйте new() для создания объекта sha, затем передавайте этому объекту произвольные строки с помощью метода update(), и в любой момент вы можете запросить дайджест конкатенации строк, переданных ему до этого. Дайджесты SHA-1 имеют 160 бит, а не 128 бит MD5.

sha.new([string])

Возвращает новый объект sha. Если string присутствует, вызывается метод update(string).

Следующие значения предоставляются как константы в модуле и как атрибуты объектов sha, возвращаемых new():

sha.blocksize

Размер блоков, подаваемых в функцию хеширования; он всегда равен 1. Этот размер используется для хеширования произвольной строки.

sha.digest_size

Размер результирующего дайджеста в байтах. Он всегда равен 20.

Объект sha имеет те же методы, что и объекты md5:

sha.update(arg)

Обновляет объект sha строкой arg. Повторные вызовы эквивалентны одному вызову с конкатенацией всех аргументов: m.update(a); m.update(b) эквивалентно m.update(a+b).

sha.digest()

Возвращает дайджест строк, переданных методу update() до сих пор. Это строка из 20 байтов, которая может содержать не-ASCII символы, включая нулевые байты.

sha.hexdigest()

Подобно digest(), за исключением того, что дайджест возвращается как строка длиной 40, содержащая только шестнадцатеричные цифры. Это может быть использовано для безопасного обмена значениями по электронной почте или в других небинарных средах.

sha.copy()

Возвращает копию (клонирование) объекта sha. Это можно использовать для эффективного вычисления дайджестов строк, у которых есть общая начальная подстрока.

См. также

Стандарт безопасного хеширования

Алгоритм безопасного хеширования определяется документом NIST FIPS PUB 180-2: Стандарт безопасного хеширования, опубликованным в августе 2002 года.

Криптографический набор инструментов (безопасное хеширование)

Ссылки от NIST на различные сведения о безопасном хешировании.

© 2001–2020 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/2.7/library/sha.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API