Skip to main content

marearts crystal for encryption and decryption

Project description

MareArts Crystal

MareArts Crystal is a Python package for encryption, decryption, and serial key management. It provides a simple interface for generating and validating serial keys, encrypting and decrypting strings and files, and performing date-based operations.

Installation

Install MareArts Crystal using pip:

pip install marearts-crystal

Usage

Here's a comprehensive guide on how to use MareArts Crystal:

from marearts_crystal import ma_crystal

# Initialize with a secret key
secret_key = "your_secret_key_here"
skm = ma_crystal(secret_key)

# Generate a serial key
username = "john_doe"
start_date = "2023-07-01"
end_date = "2023-12-31"
serial_key = skm.generate_serial_key(username, start_date, end_date)
print(f"Generated Serial Key: {serial_key}")

# Validate the serial key
validated_start, validated_end = skm.validate_serial_key(username, serial_key)
print(f"Validated Start Date: {validated_start}")
print(f"Validated End Date: {validated_end}")

# Date validation
if skm.validate_date("2024-07-01", "2024-12-31"):
    print("Date range is valid")
else:
    print("Date range is invalid")

# Get today's date
print("Today's date:", skm.get_today_date())

# Generate end dates
print("Tomorrow:", skm.generate_end_date(0, 0, 1))
print("Next month:", skm.generate_end_date(0, 1, 0))
print("Next year:", skm.generate_end_date(1, 0, 0))

# Try with an invalid key
invalid_result = skm.validate_serial_key(username, "invalid_key")
print(f"Invalid Key Result: {invalid_result}")

invalid_result = skm.validate_serial_key("wrong_name", serial_key)
print(f"Invalid Key Result: {invalid_result}")

# String encryption and decryption
original_string = "Hello, MareArts Crystal!"
encrypted = skm.encrypt_string(original_string)
print(f"Encrypted: {encrypted}")

decrypted = skm.decrypt_string(encrypted)
print(f"Decrypted: {decrypted}")

# Decryption with wrong key
wrong_key = "wrong_secret_key"
wrong_skm = ma_crystal(wrong_key)
wrong_decryption = wrong_skm.decrypt_string(encrypted)
print(f"Decryption with wrong key: {wrong_decryption}")

# File encryption and decryption
input_filename = "example.bin"  # This can be any file, binary or text
output_encrypted_filename = "example_encrypted.bin"

# Read and encrypt the file
with open(input_filename, "rb") as file:
    file_content = file.read()
encrypted_content = skm.encrypt_data(file_content)

# Save the encrypted content
with open(output_encrypted_filename, "wb") as file:
    file.write(encrypted_content)
print(f"File '{input_filename}' has been encrypted and saved as '{output_encrypted_filename}'")

# Decrypt the file
input_encrypted_filename = output_encrypted_filename
output_decrypted_filename = "example_decrypted.bin"

# Read and decrypt the file
with open(input_encrypted_filename, "rb") as file:
    encrypted_content = file.read()
decrypted_content = skm.decrypt_data(encrypted_content)

if decrypted_content:
    # Save the decrypted content
    with open(output_decrypted_filename, "wb") as file:
        file.write(decrypted_content)
    print(f"File '{input_encrypted_filename}' has been decrypted and saved as '{output_decrypted_filename}'")
else:
    print("Decryption failed. The file might be corrupted or the wrong key was used.")

Features

  • Serial key generation and validation
  • Date validation and manipulation
  • String encryption and decryption
  • File encryption and decryption
  • Secure key management

License

This project is licensed under the MIT License

Support

www.marearts.com

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

marearts_crystal-0.1.27-cp311-cp311-win_amd64.whl (48.9 kB view details)

Uploaded CPython 3.11 Windows x86-64

marearts_crystal-0.1.27-cp311-cp311-macosx_10_9_universal2.whl (100.3 kB view details)

Uploaded CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64)

File details

Details for the file marearts_crystal-0.1.27-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for marearts_crystal-0.1.27-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 f38d620d2f9983966d7813c88bbe99bcbfd3181a4e222c7e070c1289678b7969
MD5 b7debeb76afc9af6e34f098d8b19fe61
BLAKE2b-256 9a081159b1ff35c907a4f6368fdfa02bbafd063fdd9401afc7070550a9e98415

See more details on using hashes here.

File details

Details for the file marearts_crystal-0.1.27-cp311-cp311-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for marearts_crystal-0.1.27-cp311-cp311-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 2a92614a285b60b7108c6984ec5fdb2dff86fe3e63faaa5a8ca37fc50243dc80
MD5 c50783a8bf3e1c4ae65e30fee86b9ecc
BLAKE2b-256 362ac00884cc8f8b8d2f7f6511433693c91b4faabc24c469f749e9ebda251a30

See more details on using hashes here.

File details

Details for the file marearts_crystal-0.1.27-cp311-cp311-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for marearts_crystal-0.1.27-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 227c66ecd59c2f7ee79e536feba03fb19de15e90a986765f5eeff34c02e7650a
MD5 baa7025ef47b84c0bc559d500e860104
BLAKE2b-256 3346fee9980646e6f9f181b752ca7c5c181d4c69c8b7469efb23f27314fdc083

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