MicroPython:Библиотеки/ussl: различия между версиями

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
(Новая страница: «{{MicroPython/Панель перехода}} {{Перевод от Сubewriter}} {{Myagkij-редактор}} <syntaxhighlight lang="python" enclose="div"> =...»)
 
Нет описания правки
 
Строка 3: Строка 3:
{{Myagkij-редактор}}
{{Myagkij-редактор}}


=Модуль ussl – модуль для работы с SSL/TLS<ref>[http://docs.micropython.org/en/latest/library/ussl.html docs.micropython.org - ussl – SSL/TLS module]</ref>=


В этом модуле реализована часть функционала соответствующего модуля CPython. Более подробно читайте в документации к CPython о модуле [https://docs.python.org/3.5/library/ssl.html#module-ssl ssl].
В этом модуле реализован доступ к протоколу TLS (от англ. «transport level security», т.е. «защита транспортного уровня»), предшественником которого является протокол SSL (от англ. «secure sockets layer», т.е. «слой защищенных сокетов»), и средствам для одноранговой аутентификации для сетевых сокетов (и с клиентской, и с серверной стороны).
== Функции ==
* ussl.wrap_socket(sock, server_side=False, keyfile=None, certfile=None, cert_reqs=CERT_NONE, ca_certs=None) – берет потоковый объект sock (обычно экземпляр usocket.socket типа SOCK_STREAM) и возвращает экземпляр ssl.SSLSocket, обертывающий объект sock SSL-контекстом. У возвращенного объекта будут привычные для потокового объекта методы вроде read(), write() и т.д. В MicroPython у возвращенного объекта не будет сокетного интерфейса и методов вроде recv(), send() и т.д. В частности, серверный SSL-сокет необходимо создавать из обычного сокета, возвращаемого методом [http://docs.micropython.org/en/latest/library/usocket.html#usocket.socket.accept accept()] на серверном сокете без SSL, у которого включен режим прослушивания.
Некоторые или даже все именованные аргументы выше на некоторых MicroPython-портах не поддерживаются.
Внимание: Некоторые реализации модуля ussl НЕ ПРОВЕРЯЮТ серверные сертификаты, из-за чего установленное SSL-соединение может быть уязвимо к атаке посредника.
== Исключения ==
* ssl.SSLError – этого исключения НЕ СУЩЕСТВУЕТ. Вместо него используется базовый класс OSError.
== Константы ==
* ussl.CERT_NONE, ussl.CERT_OPTIONAL и ussl.CERT_REQUIRED – поддерживаемые значения для аргумента cert_regs.


<syntaxhighlight lang="python" enclose="div">
<syntaxhighlight lang="python" enclose="div">

Текущая версия от 19:52, 2 сентября 2020

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.


Модуль ussl – модуль для работы с SSL/TLS[1]

В этом модуле реализована часть функционала соответствующего модуля CPython. Более подробно читайте в документации к CPython о модуле ssl.

В этом модуле реализован доступ к протоколу TLS (от англ. «transport level security», т.е. «защита транспортного уровня»), предшественником которого является протокол SSL (от англ. «secure sockets layer», т.е. «слой защищенных сокетов»), и средствам для одноранговой аутентификации для сетевых сокетов (и с клиентской, и с серверной стороны).

Функции

  • ussl.wrap_socket(sock, server_side=False, keyfile=None, certfile=None, cert_reqs=CERT_NONE, ca_certs=None) – берет потоковый объект sock (обычно экземпляр usocket.socket типа SOCK_STREAM) и возвращает экземпляр ssl.SSLSocket, обертывающий объект sock SSL-контекстом. У возвращенного объекта будут привычные для потокового объекта методы вроде read(), write() и т.д. В MicroPython у возвращенного объекта не будет сокетного интерфейса и методов вроде recv(), send() и т.д. В частности, серверный SSL-сокет необходимо создавать из обычного сокета, возвращаемого методом accept() на серверном сокете без SSL, у которого включен режим прослушивания.

Некоторые или даже все именованные аргументы выше на некоторых MicroPython-портах не поддерживаются. Внимание: Некоторые реализации модуля ussl НЕ ПРОВЕРЯЮТ серверные сертификаты, из-за чего установленное SSL-соединение может быть уязвимо к атаке посредника.

Исключения

  • ssl.SSLError – этого исключения НЕ СУЩЕСТВУЕТ. Вместо него используется базовый класс OSError.

Константы

  • ussl.CERT_NONE, ussl.CERT_OPTIONAL и ussl.CERT_REQUIRED – поддерживаемые значения для аргумента cert_regs.

<syntaxhighlight lang="python" enclose="div">

См.также

Внешние ссылки