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.2.tar.gz (6.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: muid-0.0.2.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.2.tar.gz
Algorithm Hash digest
SHA256 8bbb99ea0bae684428a523592e85619cde8577e07e5dc9149965c41c9f34df25
MD5 08f576db4475d3b28abb383472392e94
BLAKE2b-256 d26073650a11f98a4464d0f98eaf4b90c87aa88b0fa43dce2d5c4d79cee23a33

See more details on using hashes here.

File details

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

File metadata

  • Download URL: muid-0.0.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f5e7d9753a546be535d701632d316ab3539c26c489e85da180633fc28dc3fab1
MD5 5f3afaa6383a85c7595ac2500dc5fab9
BLAKE2b-256 cb9ef54b04c21d28c44b643d9c161d01c967f1d3afbb025b35363d298c53227f

See more details on using hashes here.

Supported by

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