Source: Криптография в python
← Renderedmarkdown source:
---
description: Криптография в стандартной библиотеке python
tags: python-standart-library python
title: Криптография в python
---
Щифрование данных позволяет проверять целостность при передаче и скрывать содержимое от несанкционированного доступа.
[hashlib](https://docs.python.org/3/library/hashlib.html) предоставляет интерфейс доступа к алгоритмам хеширования. Конкретный список доступных алгоритмов зависит от от плоатформы реализации. По дефолту доступны все алгоритмы OpenSSL: SHA1, SHA224, SHA256, SHA384, SHA512 и MD5. Список поддерживаемых алгоритмов можно получить так `hashlib.algorithms_guaranteed`, а список доступных - так: `hashlib.algorithms_available`
Модуль поддерживает инкрементное обновление
[hmac](https://docs.python.org/3/library/hmac.html) реализует цифровые подписи и верификацию. Его можно использовать для проверки целостности данных
[secrets](https://docs.python.org/3/library/hmac.html) предоставляет безопасный генератор случайных значений для хеширования и верификации. Его следует использовать в подобных задачах вместо обычсной рендом-генерации, т.к. он более стойкий. П для управления такими данными, как пароли, аутентификация учетной записи, токены безопасности и связанные с ними секреты. Доступна генерация чисел и токенов.
Более расширенный функционал предоставляют сторонние модулей [cryptography](https://github.com/pyca/cryptography) и [PyCryptodome](https://github.com/Legrandin/pycryptodome).
На основе нативного бекенда и сторонних модулей реализован [python-jose](https://github.com/mpdavis/python-jose), предоставляющий JavaScript Object Signing and Encryption (JOSE) - веб-подпись JSON (JWS), веб-шифрование JSON (JWE), веб-ключ JSON (JWK) и веб-алгоритмы JSON (JWA). В частности это используется в [[fastapi]] для [[oauth2]]
Смотри еще:
- [[python-standart-library]]
- [[fastapi]]
[fastapi]: fastapi "Fastapi"
[oauth2]: oauth2 "OAuth2"
[python-standart-library]: ../lists/python-standart-library "Стандартная библиотека python и полезные ресурсы"