🛠️ToolsShed

Générateur de clés aléatoires

Générez des clés API, secrets et tokens cryptographiquement sécurisés avec longueur et jeu de caractères personnalisés.

Questions Fréquentes

Implémentation du Code

import secrets
import string
import base64
import os

def generate_hex_key(bytes_count: int = 32) -> str:
    """Generate a cryptographically secure hex key."""
    return secrets.token_hex(bytes_count)

def generate_base64_key(bytes_count: int = 32) -> str:
    """Generate a URL-safe base64 key (no padding)."""
    return secrets.token_urlsafe(bytes_count)

def generate_alphanumeric_key(length: int = 32) -> str:
    """Generate a random alphanumeric key."""
    alphabet = string.ascii_letters + string.digits
    return "".join(secrets.choice(alphabet) for _ in range(length))

def generate_custom_key(length: int = 32, charset: str = "") -> str:
    """Generate a key from a custom character set."""
    if not charset:
        charset = string.ascii_letters + string.digits + "!@#$%^&*()-_=+"
    return "".join(secrets.choice(charset) for _ in range(length))

def generate_bytes_key(bytes_count: int = 32) -> bytes:
    """Generate raw random bytes."""
    return os.urandom(bytes_count)


if __name__ == "__main__":
    print("256-bit hex key:    ", generate_hex_key(32))
    print("256-bit base64 key: ", generate_base64_key(32))
    print("32-char alphanum:   ", generate_alphanumeric_key(32))
    print("32-char custom:     ", generate_custom_key(32))
    print("Raw bytes (hex):    ", generate_bytes_key(16).hex())

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.