Skip to main content

Memorable Unique Identifier

Project description

muid

Memorable Unique Identifiers

This makes no sense!

It makes no sense for a unique identifier to be memorable. That's antithetical.

And yet ...

If you are patient, try this:

from muid.memorable import muid4, mhash, mpretty
key  = muid4()       
print( mhash(key) )             

To produce unique identifier hashed to ... (stare hard)

f01dab1e-ca70-403a-a0c7-00f6c29596c4

which is within a few character translations of "readable hex":

foldable-cato-4o3a-aoct-oof6c29596c4

and transformed by mpretty() into

Foldable Cat  

using the supplied corpus of readable hex-like scrabble words.

The upshot

If you are prepared to wait minutes or hours for your unique identifiers, their hexadecimal hashes can be memorable phrases which might play a role in your application.

Mining

Got nothing better to do?

from muid.memorable import mine
mine()

Terminology

The set of strings refered to as "readable hex" is defined as the image of uuid strings (i.e. things generated by str(uuid.uuid4()) under the map which swaps out characters as follows: (5->s,1->l,7->t,0->o)

For worry warts ...

You can generate approximately 2.71 quintillion uuid4() before the risk of collision exceeds fifty percent. When using muid the relevant number is not the number of uuid's requested, but the number of attempts, which is reported. One would be surprised, to put it mildly, if this proves to be a a real issue. One can also provide Memorable.uuid with a different generator, such as one that produces longer random string.

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

muid-0.0.4.tar.gz (6.0 kB view details)

Uploaded Source

Built Distribution

muid-0.0.4-py3-none-any.whl (6.5 kB view details)

Uploaded Python 3

File details

Details for the file muid-0.0.4.tar.gz.

File metadata

  • Download URL: muid-0.0.4.tar.gz
  • Upload date:
  • Size: 6.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.4

File hashes

Hashes for muid-0.0.4.tar.gz
Algorithm Hash digest
SHA256 8dbd32d97593bec19652d73c2c9ac9e51e622a2ac6830d13591cc4a492aa8684
MD5 44a69321aada9d32f04da13e18e8ad23
BLAKE2b-256 26a9ba09eea114d95bb77ea4b996abe46a8f838d176737a7cde441bcf368b1f8

See more details on using hashes here.

File details

Details for the file muid-0.0.4-py3-none-any.whl.

File metadata

  • Download URL: muid-0.0.4-py3-none-any.whl
  • Upload date:
  • Size: 6.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.4

File hashes

Hashes for muid-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 68ff818642323727db15740a16ec85799d4e56b91bda351d2e3125c37ac97929
MD5 52228c42c7f9ec67d1d924c82e965ad8
BLAKE2b-256 1f1ce2870599b286e9753ae6bbecad7393f245cbb7fbf0b5648f99e56fb0a4df

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