mloda-anonymizer-binary
The license-gated binary behind mloda's anonymizer FeatureGroup: keyed HMAC-SHA256 pseudonyms of a utf8 column, as 64 lowercase hex characters. Nulls stay null. The binary sends no data anywhere.
Install
pip install "mloda-enterprise[anonymizer]"
This brings the FeatureGroup, this wheel and pyarrow.
Wheels exist for Linux x86_64 and aarch64 (manylinux2014), macOS x86_64 (10.12+) and arm64 (11.0+), and Windows x86_64, Python 3.10 or newer. There is no source distribution.
License
Every run needs a license entitling anonymizer_binary, read from the first of these that is set:
MLODA_LICENSE_FILE: path to the license fileMLODA_LICENSE_KEY: the license token itself
Without one the binary exits with a license error before reading any data. A license that names an unknown key id may need a newer release of this wheel.
Key
The pseudonymization key is 32 bytes, given as 64 hex characters in the environment variable that the
FeatureGroup's pii_key_env option names. Keep it secret and stable: another key gives unrelated
pseudonyms, so changing it re-tokenizes everything.
To get the same tokens as the anonymizer-rs tool for its master key file, use the key it derives
(HKDF-SHA256, no salt, info anonymizer-rs-anon) from the file's raw bytes. Hex-encoding the master key
file itself also passes the format check but gives tokens that never match.
import hashlib, hmac, pathlib
master = pathlib.Path("master.key").read_bytes()
assert len(master) >= 32, "the anonymizer-rs tool rejects master keys under 32 bytes"
prk = hmac.new(bytes(32), master, hashlib.sha256).digest()
print(hmac.new(prk, b"anonymizer-rs-anon\x01", hashlib.sha256).hexdigest())
A master key of 32 bytes 0x11 gives 14dd3905a43d3e02b42887fea94185e3881af0b62c8d5f6a7ccf470df9446477.
Metadata
Release files for mloda-anonymizer-binary 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| mloda_anonymizer_binary-0.1.2-py3-none-win_amd64.whl | Python 3 | none | Windows x86-64 | Details |
| mloda_anonymizer_binary-0.1.2-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | Python 3 | none | Linux glibc 2.17+ x86-64 | Details |
| mloda_anonymizer_binary-0.1.2-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl | Python 3 | none | Linux glibc 2.17+ ARM64 | Details |
| mloda_anonymizer_binary-0.1.2-py3-none-macosx_11_0_arm64.whl | Python 3 | none | macOS 11.0+ ARM64 | Details |
| mloda_anonymizer_binary-0.1.2-py3-none-macosx_10_12_x86_64.whl | Python 3 | none | macOS 10.12+ x86-64 | Details |
Total release size: 3.1 MB
Release files / mloda_anonymizer_binary-0.1.2-py3-none-win_amd64.whl
| Download URL | mloda_anonymizer_binary-0.1.2-py3-none-win_amd64.whl |
|---|---|
| Size | 588.6 kB |
| Tags | Python 3 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
a703ad7abdf9152e27bb2c94f801a82172a93effc3d7ab26988b7d60e25d6079
|
|
BLAKE2b-256 checksum How to use checksums |
86d8e9e791a8b5de7976852b8319129c09b5298a2dfda2fdeff091cedf2da798
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 9, 2026.
Transparency logRelease files / mloda_anonymizer_binary-0.1.2-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | mloda_anonymizer_binary-0.1.2-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 695.3 kB |
| Tags | Linux glibc 2.17+ x86-64 Python 3 |
|
SHA-256 checksum How to use checksums |
67db9abe73552eb24e6a2d478fafa2003ebb071fdd588fbecf98291dc5a524dd
|
|
BLAKE2b-256 checksum How to use checksums |
48ddc71cc77975d0ae1570b17a5304c8540cb42cc2e35d8cf18b0e11ea054fa9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 9, 2026.
Transparency logRelease files / mloda_anonymizer_binary-0.1.2-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | mloda_anonymizer_binary-0.1.2-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 615.9 kB |
| Tags | Linux glibc 2.17+ ARM64 Python 3 |
|
SHA-256 checksum How to use checksums |
9df6a32a66fc8a6aa8316d547d745c1953fec10d7c6cd8523860ccd974dba5f5
|
|
BLAKE2b-256 checksum How to use checksums |
5e57e5f54439f867bbded5686cfee59d7c4104f6c541bca0ecc79300b3b02d05
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 9, 2026.
Transparency logRelease files / mloda_anonymizer_binary-0.1.2-py3-none-macosx_11_0_arm64.whl
| Download URL | mloda_anonymizer_binary-0.1.2-py3-none-macosx_11_0_arm64.whl |
|---|---|
| Size | 573.5 kB |
| Tags | Python 3 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
43b5f1b10f85aed4ed1684164b834817a39166128554654ed1f957700cfc9ceb
|
|
BLAKE2b-256 checksum How to use checksums |
501566c05ee77762ff7aa5f9ae00546e62750379c8f0861186989f8503a061ff
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 9, 2026.
Transparency logRelease files / mloda_anonymizer_binary-0.1.2-py3-none-macosx_10_12_x86_64.whl
| Download URL | mloda_anonymizer_binary-0.1.2-py3-none-macosx_10_12_x86_64.whl |
|---|---|
| Size | 664.5 kB |
| Tags | Python 3 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
c21053198c82804b93a9d448edb19e919b30d33347f148801d0a21703d2b87cc
|
|
BLAKE2b-256 checksum How to use checksums |
d348f4d6e704bb692ef6d2f6f4826f9843693ac558a18ac9ba914f4ff6f29e52
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 9, 2026.
Transparency log