MicroPython:Библиотеки/ucryptolib: различия между версиями
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Myagkij (обсуждение | вклад) (Новая страница: «{{MicroPython/Панель перехода}} {{Перевод от Сubewriter}} {{Myagkij-редактор}} <syntaxhighlight lang="python" enclose="div"> =...») |
Myagkij (обсуждение | вклад) Нет описания правки |
||
Строка 2: | Строка 2: | ||
{{Перевод от Сubewriter}} | {{Перевод от Сubewriter}} | ||
{{Myagkij-редактор}} | {{Myagkij-редактор}} | ||
=Модуль ucryptolib – криптографические шифры<ref>[http://docs.micropython.org/en/latest/library/ucryptolib.html docs.micropython.org - ucryptolib – cryptographic ciphers]</ref>= | |||
== Классы == | |||
* Класс ucryptolib.aes | |||
** Метод класса __init__(key, mode[, IV]) – инициализирует объект шифра, подходящий для шифрования/расшифровки. Примечание: после инициализации объект шифра можно использовать только для шифрования или расшифровки. Запуск decrypt() после encrypt() и наоборот не поддерживается. | |||
Параметры: | |||
*** key – ключ шифрования/расшифровки (это значение вроде объекта bytes). | |||
*** mode – это: | |||
**** 1 (или ucryptolib.MODE_ECB, если есть) для режима электронной кодовой книги (ECB). | |||
**** 2 (или ucryptolib.MODE_CBC, если есть) для режима сцепления блоков шифротекста (CBC). | |||
**** 3 (или ucryptolib.MODE_CTR, если есть) для режима счетчика (CTR). | |||
*** IV – это вектор инициализации для режима CBC и начальное значение счетчика для режима CTR. | |||
** encrypt(in_buf[, out_buf]) – зашифровывает in_buf. Если аргумент out_buf не задан, возвращенный результат будет в виде вновь созданного объекта bytes, под который только что была выделена память. В противном случае результат будет записан в изменяемый буфер out_buf. Кроме того, в аргументах in_buf и out_buf может быть задан один и тот же изменяемый буфер, и в этом случае данные будут зашифрованы на месте. | |||
** decrypt(in_buf[, out_buf]) – расшифровывает данные. В остальном работает аналогично encrypt(). | |||
Версия от 14:14, 4 октября 2020
Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.
Модуль ucryptolib – криптографические шифры[1]
Классы
- Класс ucryptolib.aes
- Метод класса __init__(key, mode[, IV]) – инициализирует объект шифра, подходящий для шифрования/расшифровки. Примечание: после инициализации объект шифра можно использовать только для шифрования или расшифровки. Запуск decrypt() после encrypt() и наоборот не поддерживается.
Параметры:
- key – ключ шифрования/расшифровки (это значение вроде объекта bytes).
- mode – это:
- 1 (или ucryptolib.MODE_ECB, если есть) для режима электронной кодовой книги (ECB).
- 2 (или ucryptolib.MODE_CBC, если есть) для режима сцепления блоков шифротекста (CBC).
- 3 (или ucryptolib.MODE_CTR, если есть) для режима счетчика (CTR).
- IV – это вектор инициализации для режима CBC и начальное значение счетчика для режима CTR.
- encrypt(in_buf[, out_buf]) – зашифровывает in_buf. Если аргумент out_buf не задан, возвращенный результат будет в виде вновь созданного объекта bytes, под который только что была выделена память. В противном случае результат будет записан в изменяемый буфер out_buf. Кроме того, в аргументах in_buf и out_buf может быть задан один и тот же изменяемый буфер, и в этом случае данные будут зашифрованы на месте.
- decrypt(in_buf[, out_buf]) – расшифровывает данные. В остальном работает аналогично encrypt().
<syntaxhighlight lang="python" enclose="div">