ussl
– SSL/TLS module¶
This module implements a subset of the corresponding CPython
module,
as described below. For more information, refer to the original
CPython documentation: ssl
.
This module provides access to Transport Layer Security (previously and widely known as “Secure Sockets Layer”) encryption and peer authentication facilities for network sockets, both client-side and server-side.
Functions¶
-
ussl.
wrap_socket
(sock, server_side=False, keyfile=None, certfile=None, cert_reqs=CERT_NONE, ca_certs=None)¶ Takes a
stream
sock (usually usocket.socket instance ofSOCK_STREAM
type), and returns an instance of ssl.SSLSocket, which wraps the underlying stream in an SSL context. Returned object has the usualstream
interface methods likeread()
,write()
, etc. In MicroPython, the returned object does not expose socket interface and methods likerecv()
,send()
. In particular, a server-side SSL socket should be created from a normal socket returned fromaccept()
on a non-SSL listening server socket.Depending on the underlying module implementation in a particular
MicroPython port
, some or all keyword arguments above may be not supported.
Warning
Some implementations of ussl
module do NOT validate server certificates,
which makes an SSL connection established prone to man-in-the-middle attacks.