m209
A historically accurate M-209 library written in Python 3
Author: Brian Neal <bgneal@gmail.com>
Version: 1.0.0
Date: November 6, 2025
Home Page: https://github.com/gremmie/m209
License: MIT License (see LICENSE.txt)
Documentation: https://m209.readthedocs.org
The M-209 is a mechanical cipher machine used by the US military during World War II and up to the Korean War. The M-209 is also known as the CSP-1500 by the US Navy. The M-209 is an example of a Hagelin device, a family of mechanical cipher machines created by Swedish inventor Boris Hagelin.
This project is a Python 3 library and command-line utility for encrypting and decrypting text by simulating the operation of an actual M-209 device.
Please see the documentation for library usage, tutorials and references.
Metadata
Release files for m209 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| m209-1.0.0.tar.gz | 30.0 kB | Without provenance | Details for m209-1.0.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| m209-1.0.0-py3-none-any.whl | Python 3 | none | any | Details for m209-1.0.0-py3-none-any.whl |
Total release size: 68.0 kB
Release files / m209-1.0.0.tar.gz
| Download URL | m209-1.0.0.tar.gz |
|---|---|
| Size | 30.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fbcb6f589fb9e88f7ec8ddd47cf608c9fc863a7052e1e9ea6812b13c76fa4eb1
|
|
BLAKE2b-256 checksum How to use checksums |
2f29c331c2d090e6dec8f5e76532615285ff437c4ef3ac1656a0040401314480
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.1
|
Release files / m209-1.0.0-py3-none-any.whl
| Download URL | m209-1.0.0-py3-none-any.whl |
|---|---|
| Size | 38.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5c00d5664913716f5cc47299dcb62fbdfd696ca630b98459221f98632d280ec1
|
|
BLAKE2b-256 checksum How to use checksums |
11d9ce68e07626c50855c90152f36aa88b291694fc8e56f2a3f12a31f1dbc289
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.1
|
Security for m209 1.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.