Skip to main content

Cryptographically advanced and secure random string/number generator forstrings, numbers, and bytes & hex

Reason this release was yanked:

Insecure! Please use latest

Project description

CryptoStrings

A cryptographically secure random generator for strings, numbers, and bytes.

Features

  • Generate secure random bytes with configurable security levels (medium, high, paranoid).
  • Generate secure random strings in various charsets: hex, base64, alphanumeric, printable, ascii, digits.
  • Generate secure random numbers with a specified number of bits.

Installation

Install from PyPI:

pip install CryptoStrings

Usage

from CryptoStrings.core import generate_bytes, generate_string, generate_number

# Generate 32 secure random bytes
random_bytes = generate_bytes(32)

# Generate a 16-character secure hex string
random_hex = generate_string(16, charset='hex')

# Generate a 64-character secure base64 string
random_b64 = generate_string(64, charset='base64')

# Generate a secure 128-bit random number
random_number = generate_number(128)

API

generate_bytes(length, security_level='high')

Generates cryptographically secure random bytes.

  • length: Number of bytes to generate.
  • security_level: 'medium', 'high', or 'paranoid'. Higher levels use more entropy sources.

generate_string(length, charset='hex', security_level='high')

Generates a secure random string.

  • length: Length of the string.
  • charset: 'hex', 'base64', 'alphanumeric', 'printable', 'ascii', 'digits'.
  • security_level: Passed to generate_bytes.

generate_number(bits, security_level='high')

Generates a secure random integer with the specified number of bits.

  • bits: Number of bits.
  • security_level: Passed to generate_bytes.

Example

from CryptoStrings.core import (
    generate_string,
    generate_number,
    generate_bytes
)

print("\n🔐 SECURE STRING EXAMPLES\n" + "-"*40)
print("Base64 Token (64 chars):")
print(generate_string(64, charset='base64'))
print("\nHex Token (32 chars):")
print(generate_string(32, charset='hex'))
print("\nAlphanumeric Password (20 chars):")
print(generate_string(20, charset='alphanumeric'))
print("\nPrintable ASCII (50 chars):")
print(generate_string(50, charset='printable'))
print("\nLetters Only (A-Z, a-z, 30 chars):")
print(generate_string(30, charset='ascii'))
print("\nDigits Only (10 digits):")
print(generate_string(10, charset='digits'))

print("\n🔢 SECURE NUMBER EXAMPLES\n" + "-"*40)
print("128-bit secure number:")
print(generate_number(128))
print("\n256-bit secure number:")
print(generate_number(256))
print("\n12-bit secure number:")
print(generate_number(12))

print("\n📦 SECURE BYTES EXAMPLES\n" + "-"*40)
print("128-bit key (16 bytes, hex):")
print(generate_bytes(16).hex())
print("\n256-bit key (32 bytes, hex):")
print(generate_bytes(32).hex())
print("\n64 bytes (raw output):")
raw_bytes = generate_bytes(64)
print(f"Raw length: {len(raw_bytes)}")
print(raw_bytes)

License

MIT License


Author: Sammy Folkhome
Email: support@vincio.cc

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

cryptostrings-1.0.0.tar.gz (2.9 kB view details)

Uploaded Source

Built Distribution

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

cryptostrings-1.0.0-py3-none-any.whl (3.3 kB view details)

Uploaded Python 3

File details

Details for the file cryptostrings-1.0.0.tar.gz.

File metadata

  • Download URL: cryptostrings-1.0.0.tar.gz
  • Upload date:
  • Size: 2.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.0

File hashes

Hashes for cryptostrings-1.0.0.tar.gz
Algorithm Hash digest
SHA256 1e14c7a633562fefb3f72a80a8ee129d31e321508778ed33dabd12eeadf21357
MD5 6144892ce05fab820e1e0c5711c56556
BLAKE2b-256 1cf999abadef28b1eb76d352f9b02c9105b289e1e7b2ea7a3f7d15647302c420

See more details on using hashes here.

File details

Details for the file cryptostrings-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: cryptostrings-1.0.0-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.11.0

File hashes

Hashes for cryptostrings-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 51e9751f5da96050e6c1f865a319b38c170341f000a53fe161ef0d5f769b1a47
MD5 e300650d3102f1dd17632be0d8fe5891
BLAKE2b-256 b55cec4148025300ea22c2848599e51dcb2bf1167ad8e2bc1bde81ea6d61b21a

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