Skip to main content

Gerador de carteiras cripto determinísticas baseadas em funções algébricas.

Project description

AlgebraCripto 📐🔐

[!CAUTION] STRICTLY EDUCATIONAL / EXPERIMENTAL This library implements custom cryptographic seed generation based on linear and geometric functions. It does not follow audited industry standards (like BIP-39 mnemonic phrases) and is highly experimental. Do NOT use this library to store real funds on mainnets. You are entirely responsible for any loss of funds if you decide to use this in production.

Furthermore, using "mental" attributes (like birth dates) as coordinates without a strong password results in extremely weak entropy. This makes funds vulnerable to rapid brute-force attacks!

AlgebraCripto is a Python library that generates deterministic cryptocurrency wallets (EVM and Solana) based on mental coordinates and algebraic functions. Instead of saving 12 standard words, you remember geometric figures, mathematical limits, and an optional (but highly recommended) strong password!

Installation

To install the core library (for backend generation without visual plotting):

pip install algebracripto

If you plan to use the visual CLI generator to plot the mathematical paths to a PDF, you must install the optional visualizer dependencies:

pip install algebracripto[visualizer]

How It Works

AlgebraCripto uses the formulas of geometric curves to generate entropy. You define an origin point (e.g., Point(x, y)) and provide a password. The engine generates a random curve passing through that point to find a "Recovery Point".

The mathematical properties of this curve, combined securely with a PBKDF2 HMAC SHA256 KDF (using your password as a salt), derive a deterministic 32-byte seed.

[!NOTE] The Password Parameter (password) is 100% Optional. If you omit the password (e.g., password=""), the library will fall back to a static generic salt. This is useful for rapid local testing but provides zero cryptographic protection if your base coordinates are predictable (like a birth year). Always use a strong password for real use cases.

Usage Example

Core Usage (Generating a Wallet)

from algebracripto import AlgebraCrypto, Point, Network

# 1. Initialize the Crypto Manager
wallet_manager = AlgebraCrypto()

# 2. Define a mental point and a strong password (optional but secure)
origin = Point(x=5421, y=9912)
my_password = "SuperStrongPassword123!"

# 3. Create a deterministic Line-based wallet
wallet = wallet_manager.create_line_wallet(
    origin=origin, 
    network=Network.EVM, 
    password=my_password
)

# 4. Save the recovery data
recovery_point = wallet.recovery_data["recovery_point"]
print(f"Write this down! Recovery X: {recovery_point.x}, Y: {recovery_point.y}")

# 5. Access your keys
print(f"EVM Public Key: {wallet.keys.public_key}")
print(f"EVM Private Key: {wallet.keys.private_key}")

Recovering the Wallet

If you lose your private key but remember your password, your origin mental coordinates, and the recovery_point, you can recover the exact same wallet:

recovered_keys = wallet_manager.recover_line_wallet(
    origin=origin, 
    recovery_point=recovery_point, 
    network=Network.EVM, 
    password=my_password
)

assert recovered_keys.private_key == wallet.keys.private_key

Complete API Reference

The AlgebraCrypto main class orchestrates all wallet generation capabilities. All generation methods return a WalletData (containing the recovery data and keys), and recovery methods return the WalletKeys itself.

Parameters shared across methods:

  • network (Network Enum): Target network, either Network.EVM or Network.SOLANA. Defaults to Network.EVM.
  • password (str): User passphrase converted into a cryptographic salt. Defaults to "" (no password).

1. Line Curvature

  • create_line_wallet(origin: Point, network, password) -> WalletData: Uses linear slope equations relative to the mental origin.
  • recover_line_wallet(origin: Point, recovery_point: Point, network, password) -> WalletKeys

2. Pythagorean Circle

  • create_circle_wallet(center: Point, network, password) -> WalletData: Uses the radius created from Pythagorean pairs from the center point.
  • recover_circle_wallet(center: Point, recovery_point: Point, network, password) -> WalletKeys

3. Parabolic Bounds

  • create_parabola_wallet(vertex: Point, network, password) -> WalletData: Generates a random parabola intersecting the vertex.
  • recover_parabola_wallet(vertex: Point, recovery_point: Point, network, password) -> WalletKeys

4. Equation Intersections

  • create_intersection_wallet(m1: int, m2: int, network, password) -> WalletData: Computes the geometric intersection point of two linear system coordinates defined by slopes m1 and m2.
  • recover_intersection_wallet(m1: int, m2: int, intercept_1: int, intercept_2: int, network, password) -> WalletKeys

5. Trigonometric Waves

  • create_wave_wallet(amplitude: int, network, target_peak: int = 7, password) -> WalletData: Utilizes frequency-based trigonometry. target_peak defaults to 7.
  • recover_wave_wallet(amplitude: int, peak_x_coordinate: int, network, target_peak: int = 7, password) -> WalletKeys

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

algebracripto-0.1.1.tar.gz (11.5 kB view details)

Uploaded Source

Built Distribution

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

algebracripto-0.1.1-py3-none-any.whl (12.8 kB view details)

Uploaded Python 3

File details

Details for the file algebracripto-0.1.1.tar.gz.

File metadata

  • Download URL: algebracripto-0.1.1.tar.gz
  • Upload date:
  • Size: 11.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for algebracripto-0.1.1.tar.gz
Algorithm Hash digest
SHA256 627c9ef51f2001b48cbc1c7f29b75acbcc08d4743d22246edc088ed653db74ca
MD5 47873c9e4bbd92ebee26c4eaca079f55
BLAKE2b-256 5498f5937ee14e0bf22852423e43744656abd31f6f67fc825786ab4cd22f3d51

See more details on using hashes here.

Provenance

The following attestation bundles were made for algebracripto-0.1.1.tar.gz:

Publisher: publish.yml on marcelomeloni/algebracripto

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file algebracripto-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: algebracripto-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 12.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for algebracripto-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e565ccf65015d84e239063cf8074b8d80dee297a0af339ac64491934aac93aec
MD5 64ea867da18e1526de571e057b34634a
BLAKE2b-256 9e1df79193cc3edf4e9ee090dc4cb82c211a18218b74005e093c7668966acf92

See more details on using hashes here.

Provenance

The following attestation bundles were made for algebracripto-0.1.1-py3-none-any.whl:

Publisher: publish.yml on marcelomeloni/algebracripto

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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