Skip to main content

Experimental geometric hash and XOF research package

Project description

TriCube

TriCube is an experimental geometric hash and extendable-output function (XOF) research package. It exposes a small Python API for hashing, hex digests, XOF output, and deterministic test streams.

TriCube is not a production cryptography library. It has not received independent cryptanalysis and must not be used for passwords, signatures, message authentication, key derivation, encryption, blockchain consensus, production random streams, or any security-critical application.

The full project repository is:

https://github.com/RRG314/tricube-hash

The current manuscript draft is kept with the repository:

https://github.com/RRG314/tricube-hash/tree/main/paper

Install

python -m pip install tricube

For local development from the repository:

python -m pip install -e ".[test]"
python -m pytest -q

Python API

import tricube

digest = tricube.hash(b"abc")
hex_digest = tricube.hexdigest(b"abc")
out = tricube.xof(b"abc", 64)
stream = tricube.stream(seed=123, n=1024)

print(hex_digest)
print(tricube.security_notice())

The main public functions are:

  • tricube.hash(data, domain=None) -> bytes
  • tricube.hexdigest(data, domain=None) -> str
  • tricube.xof(data, n, domain=None) -> bytes
  • tricube.stream(seed, n, domain=None) -> bytes
  • tricube.self_test() -> bool
  • tricube.version() -> str
  • tricube.security_notice() -> str

Command Line

python -m tricube hash --hex 616263
python -m tricube xof --hex 616263 --bytes 64
python -m tricube stream --seed 123 --bytes 1024 --out stream.bin
python -m tricube self-test
python -m tricube vectors
python -m tricube security-notice

After installation, the same interface is available through the tricube console command:

tricube self-test
tricube hash --hex 616263

Current Status

This package contains the clean Python reference implementation and fixed test vectors. The public GitHub repository also contains the standalone C implementation, benchmarks, external-battery scripts, documentation, and the manuscript draft.

The current evidence supports continued research and external review. It does not establish collision resistance, preimage resistance, pseudorandomness, or security for real applications.

License

TriCube is released under the MIT License.

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

tricube-0.1.0.tar.gz (14.1 kB view details)

Uploaded Source

Built Distribution

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

tricube-0.1.0-py3-none-any.whl (13.1 kB view details)

Uploaded Python 3

File details

Details for the file tricube-0.1.0.tar.gz.

File metadata

  • Download URL: tricube-0.1.0.tar.gz
  • Upload date:
  • Size: 14.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for tricube-0.1.0.tar.gz
Algorithm Hash digest
SHA256 cf89e6d8a87321cc59ca185a027e4f8915c67b26672999cffd3eb6ed46825bdf
MD5 433278b3e21709389b7649c35928f4b3
BLAKE2b-256 9626b83a0d977122627383b4e706d27bb0c1ebdcb3b3b9dc7b4c1d1878f9de1e

See more details on using hashes here.

File details

Details for the file tricube-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: tricube-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 13.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for tricube-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5f09f80297c333025c4f90872304fca7395c64333a51ef77f43c858628dd3357
MD5 f689acf7b31d2458cd405609e9568dd4
BLAKE2b-256 02bd5b0a0f36016edd8c95a02b6771adcb5426cc8e3d40dd9449f3777020a96b

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