Skip to main content

extremely simple wrapper around crypt(3)

Project description

pyphash is a Python extension module that wraps the C library function crypt, which performs passphrase hashing, in the simplest possible fashion. It exposes one function, named crypt, which works just like the C crypt except that it is thread safe:

>>> pyphash.crypt("swordfish", "$5e$z4x3Zlhs")
'$5$z4x3Zlhs$g7JP4M7HZw5L25Xwklbd2nQ2rfjzVGFB1SJutFnmvK4'

You have to create settings strings yourself.

This module is not intended to be used by programs that actually need to hash passphrases—if it were, it would at least also provide access to crypt_gensalt. Rather, its purpose is to be a test case for the packaging toolchain for C extension modules. Linux distributions are changing how they provide the shared library that implements crypt, and Python packaging must adapt. See manylinux bug #305 for the gory details.

For thread safety, the module actually uses the reentrant variant of crypt called crypt_r, and looks for it in crypt.h rather than unistd.h. It will fail to compile if this function or this header is not available.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyphash-0.0.1.tar.gz (7.1 kB view details)

Uploaded Source

File details

Details for the file pyphash-0.0.1.tar.gz.

File metadata

  • Download URL: pyphash-0.0.1.tar.gz
  • Upload date:
  • Size: 7.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.4.2 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.4

File hashes

Hashes for pyphash-0.0.1.tar.gz
Algorithm Hash digest
SHA256 cf6ed5a485ad50d2ee2d1cba9f4a3dcaa4d87dce4111e6530272ece5d07b0ae5
MD5 f8ee7be189f6054977593d269b703f22
BLAKE2b-256 80df14338728d4735e279eb4025976b9d0b7892c176e7618ddd6c6c6dc430ca6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page