shamir-mnemonic
SLIP-39 Shamir Mnemonics
Decision gist · record as of 2026-08-14
Yes, if you need a reference SLIP-0039 implementation for testing, verification, or non-sensitive prototyping. The low install friction and zero extra runtime dependencies make it suitable as a library dependency. No, if you need to handle production secrets—the package explicitly warns it is unsuitable for that purpose and lacks hardening against side-channel attacks. Dormant maintenance is acceptable for a stable cryptographic standard but means no active support.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- The package explicitly warns it is not suitable for handling sensitive production secrets due to lack of side-channel attack hardening; use only for testing and verification on non-sensitive data.
- Low friction: pure Python wheel with only dataclasses as a runtime dependency.
- Dormant maintenance status (820 days since last release) means no active development, but the stable SLIP-0039 specification it implements is unlikely to require frequent updates.
License · maintenance · safety
MIT (permissive) — MIT license permits free use, modification, and distribution with minimal restrictions—suitable for both open-source and proprietary projects.
last release 2024-05-16 (820 days)
0 known vulnerabilities (OSV.dev, 2026-08-14) · 168,058 downloads/mo, #10,456 on PyPI
Alternatives
Verify before relying
pip install shamir-mnemonic
from shamir_mnemonic import generate_mnemonics, combine_mnemonics
# Split a secret into 5 shares, requiring 3 to recover
shares = generate_mnemonics(group_threshold=1, groups=[(3, 5)])
recovered_secret = combine_mnemonics(shares[:3])- Whether the implementation has undergone formal security audit or cryptographic review beyond the stated reference implementation purpose.
- Current real-world adoption or compatibility with other SLIP-0039 implementations in production systems.
What it is and what it does
This package is a reference implementation of SLIP-0039, the Shamir's Secret Sharing standard for mnemonic codes. It splits a secret into unique shares distributed among participants, requiring a specified minimum number of shares to reconstruct the original secret—knowledge of fewer shares reveals nothing about the secret. The package provides both a programmatic API and an optional CLI tool for creating and recovering shares.
The implementation is intentionally not hardened against side-channel attacks and explicitly warns against use with sensitive production secrets; its stated purpose is to verify correctness of other implementations. It supports custom multi-group schemes (e.g., requiring completion of multiple threshold groups) and includes test vectors for validation. Runtime dependencies are minimal: only dataclasses on Python 3.6–3.7, and zero extra dependencies on Python 3.7+.
Use it for
- Verify correctness of other SLIP-0039 implementations by comparing against this reference.
- Split a wallet seed or master secret into shares for distributed backup or recovery testing.
- Implement threshold-based secret recovery in applications that need to distribute trust across multiple parties.
- Create custom multi-group backup schemes where different groups must each reach their own threshold.
- Educational exploration of Shamir's Secret Sharing and SLIP-0039 specification mechanics.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need a reference SLIP-0039 implementation for testing, verification, or non-sensitive prototyping.
The low install friction and zero extra runtime dependencies make it suitable as a library dependency. No, if you need to handle production secrets—the package explicitly warns it is unsuitable for that purpose and lacks hardening against side-channel attacks. Dormant maintenance is acceptable for a stable cryptographic standard but means no active support.
Install
shamir-mnemonic on PyPI
Before you install
Low friction: pure Python wheel with only dataclasses as a runtime dependency. Dormant maintenance status (820 days since last release) means no active development, but the stable SLIP-0039 specification it implements is unlikely to require frequent updates.
The package explicitly warns it is not suitable for handling sensitive production secrets due to lack of side-channel attack hardening; use only for testing and verification on non-sensitive data.
License in practice
MIT license permits free use, modification, and distribution with minimal restrictions—suitable for both open-source and proprietary projects.
Quickstart
pip install shamir-mnemonic
from shamir_mnemonic import generate_mnemonics, combine_mnemonics
# Split a secret into 5 shares, requiring 3 to recover
shares = generate_mnemonics(group_threshold=1, groups=[(3, 5)])
recovered_secret = combine_mnemonics(shares[:3])
Verify before relying
- Whether the implementation has undergone formal security audit or cryptographic review beyond the stated reference implementation purpose.
- Current real-world adoption or compatibility with other SLIP-0039 implementations in production systems.
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release <4.0,>=3.6 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 1 packagedataclasses |
| Maintenance | Dormant 820 days since the last release |
| First released | |
| Downloads | 168,058 / month, #10,456 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | License :: OSI Approved :: MIT LicenseProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9 |
Evidence: shamir_mnemonic-0.3.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “shamir secret sharing”
- shamir-mnemonicImplements SLIP-0039 Shamir's Secret Sharing to split a secret into…
- microsoft-security-utilities-secret-maskerDetects and masks sensitive data in text using regex patterns, with…
- spake2Implements SPAKE2, a password-authenticated key exchange (PAKE)…
Give your agent the search over MCP, or paste the wish link into any chat.
More Cryptography packages
Certifi provides Mozilla's curated collection of root SSL certificates for Python applications to validate TLS hosts and verify certificate trustworthiness.
cryptography provides cryptographic recipes and low-level primitives for symmetric encryption, message digests, key derivation, and other common cryptographic algorithms in Python.
Pure-Python RSA encryption, decryption, signing, and key generation following PKCS#1 v1.5, with command-line and library interfaces.
pyOpenSSL wraps OpenSSL's SSL/TLS functionality for Python, providing high-level connection objects and certificate handling through a Python-friendly interface around OpenSSL's cryptographic operations.
Provides Microsoft Entra ID token-based authentication for Azure SDK clients through a set of TokenCredential implementations that handle OAuth flows and managed identity support.
PyNaCl provides Python bindings to libsodium for digital signatures, secret-key and public-key encryption, hashing, message authentication, and password-based key derivation.
See also mnemonic · bip-utils · slip10 · borsh-construct · robocorp-vault · microsoft-security-utilities-secret-masker · SLH-DSA · spake2 · aws-cdk.aws-secretsmanager · bip32