Metadata-Version: 2.4
Name: mtsl
Version: 0.1.0.6
Summary: An easy to use, minimal trust security layer.
Author: Preston Coley
Author-email: prestoncoley0920@proton.me
Classifier: Programming Language :: Python :: 3
Classifier: Operating System :: OS Independent
Requires-Python: >=3.6
Description-Content-Type: text/markdown
Requires-Dist: pyelle>=0.1.0
Requires-Dist: cryptography>=45.0.3
Requires-Dist: argon2-cffi>=25.1.0
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

# MTSL

MTSL is an easy-to-use, relatively simple, low blast radius security layer.

It works similar to the TLS socket wrapper from `ssl`.

Example:

```python
from mtsl import MTSLContext
import socket

ctx = MTSLContext()
ctx.authority_file("authority.pub.elle")
ctx.subject_files('subject.pub.elle', 'subject.sec.elle')

sock = socket.socket()

sock.connect('12.34.56.78')

secure_sock = ctx.wrap_socket(sock)

# send/recv works from here
# conn from `socket.accept()` works this way as well

sock.listen()
while 1:
    c, addr = sock.accept()
    with ctx.wrap_socket(c) as secure_conn:
        pass  # send/recv works from here
```

Read source code for full technical details if you're a nerd like me.  
Or just float off into the ether and accept that I had to know what I was doing so you don't.
