Skip to main content

Unpredictable random number generation for cryptography (random + secrets module combined.)

This project has been archived.

The maintainers of this project have marked this project as archived. No new releases are expected.

Project description

secretrandom

The combination of the random module's features with the security of the secrets module for unpredictable RNG and password generation.

Includes:

  • Password & passcode generation for authentication.
  • Random number generation features from the random module.
  • Powered with ⚡true optimization and unpredictability.⚡

Changelog can be found here

Documentation guide

All functions:

  • randpwd() — Password generation
  • randcode() — Passcode and PIN generation
  • randint() — Random whole integer generation
  • randflt() — Random float generation
  • choice() — For random choices
  • shuffle() — For random shuffles

randpwd()

Generates strong or weak passwords based on the length (1st argument) and the strength (2nd argument).


import secretrandom

password = secretrandom.randpwd(17, 'strong')
print(password) # Prints out strong password with 17 chars.
    

NOT RECOMMENDED! Generate weak passwords for demostration.


password = secretrandom.randpwd(0, 'weak')
print(password) # Prints out weak password like Tran$f0rm3rsr0ck!
    

randcode()

Generates passcodes or PINs based on the length as the only argument.


passcode = secretrandom.randcode(6)
print(passcode) # Prints out passcode with 6 integers
    

randint()

Random whole integer generator starting from 1st arg to 2nd arg with steps (3rd arg)


random_num = secretrandom.randint(1, 4)
print(random_num) # Prints out a number between 1-4
    

OR


random_num = secretrandom.randint(1, 6, 2)
print(random_num) # Prints out a number either 2, 4, or 6
    

randflt()

Random float generator from 1st arg to 2nd arg


random_flt = secretrandom.randflt(1, 2)
print(random_flt) # Prints out random float from 1 to 2 (like 1.673)
    

choice()

Chooses part of a list of values.


choice = secretrandom.choice('abcd')
print(choice) # Prints out what it chose (either a, b, c, or d)
    

And finally shuffle()

Shuffles a list of values.


data = ['a', 'b', 'c', 'd']
secretrandom.shuffle(data)
print(data) # Shuffles the list of values.
    

Any questions? Email here

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

secretrandom-2.1.tar.gz (3.0 kB view details)

Uploaded Source

Built Distribution

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

secretrandom-2.1-py3-none-any.whl (3.3 kB view details)

Uploaded Python 3

File details

Details for the file secretrandom-2.1.tar.gz.

File metadata

  • Download URL: secretrandom-2.1.tar.gz
  • Upload date:
  • Size: 3.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for secretrandom-2.1.tar.gz
Algorithm Hash digest
SHA256 6fb89bd5480f9121340b574a344846fb369cd29b83773f455fb6a83f31f54f08
MD5 081b2ed66376437bbc96b8c3d3af692a
BLAKE2b-256 947804fe02bddf75915010691e71310d4cdfc85a9ae5cbc33f8f491a09f9f9fd

See more details on using hashes here.

File details

Details for the file secretrandom-2.1-py3-none-any.whl.

File metadata

  • Download URL: secretrandom-2.1-py3-none-any.whl
  • Upload date:
  • Size: 3.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for secretrandom-2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b5af9f9c0cfdde1d660709ac5d6ce33b1d1a52a1fa7546ba28b643cc682d603f
MD5 1ec470a7c55c56f2d6d031eadc1c3551
BLAKE2b-256 189fceade94149148ae93e9fd99c94642f4375c99d84eb13ddffe6f49a15f817

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