skillfed

pyDes

Pure python implementation of DES and TRIPLE DES encryption algorithm

pydes v2.0.1 218.0K downloads/30d#9,346 on PyPI
Permissive license Public Domain Abandoned released

What it is and what it does

pyDes is a pure Python implementation of the DES and Triple DES block cipher algorithms. It provides both DES-EDE3 with a 24 byte key and DES-EDE2 with a 16 byte key for symmetric encryption and decryption. The package has no external runtime dependencies and works with both Python 2 and Python 3, making it portable across environments.

The package is classified as mature but has been abandoned since its single release on 2016-05-06. DES itself is cryptographically broken by modern standards and should not be used for new security-critical applications. This package is most useful for decrypting legacy data, interfacing with older systems that still use DES, or educational exploration of symmetric encryption—not for protecting sensitive information in new systems.

Use it for:

  • Decrypt legacy data or files encrypted with DES or Triple DES from older systems.
  • Integrate with legacy applications or protocols that require DES cipher support.
  • Educational study of symmetric encryption algorithms and block cipher operation modes.
  • Reverse-engineer or analyze existing DES-encrypted communications in a controlled environment.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Pure Python implementation of DES and Triple DES encryption algorithms, supporting DES-EDE3 with a 24 byte key and DES-EDE2 with a 16 byte key.

No, unless you are maintaining legacy code that specifically requires DES decryption. The package is abandoned with no maintenance since 2016, and DES is cryptographically broken. For new encryption needs, use modern alternatives. For legacy compatibility, verify whether a maintained fork exists first.

Install

pydes on PyPI

pip

pip install pydes

uv

uv add pydes

poetry

poetry add pydes

Installing pyDes

Before you install

High install friction: the package is abandoned (last release 2016-05-06, no updates in 3752 days) with no active maintenance. Installation requires building from source tarball with no runtime dependencies to smooth the process.

License in practice

Public Domain license places no restrictions on use, modification, or redistribution—you may use this code freely in any context without attribution or licensing obligations.

Quickstart

pip install pyDes

from pyDes import des, triple_des

key = b'encryption_key'
cipher = des(key)
encrypted = cipher.encrypt(b'plaintext')

DES and Triple DES are cryptographically broken and should not be used for new security-sensitive applications; this package is suitable only for legacy system compatibility or educational purposes.

Verify before relying

  • Whether this implementation has been audited for constant-time or side-channel resistance.
  • Current real-world usage patterns and whether any active forks or maintained alternatives exist.
  • Specific Python version compatibility beyond the unspecified classifier declarations.

Package facts

License Public Domain (permissive)
Python support not specified
Install friction high — source build required
Runtime dependencies none
Maintenance abandoned — 3,752 days since the last release
First released
Downloads 218,011/month — #9,346 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pyDes-2.0.1.tar.gz

Keywords: DES, TRIPLE-DES, ENCRYPTION, ALGORITHM, SECURITY

Development Status :: 6 - MatureLicense :: Public DomainProgramming Language :: PythonProgramming Language :: Python :: 2Programming Language :: Python :: 3Topic :: Security :: Cryptography

Tags

DES encryption pythontriple DES implementationDES-EDE3 DES-EDE2symmetric encryption algorithmcryptographic cipher pure python
legacy-cryptoabandoned

More Cryptography packages