Skip to main content

Squeak library

Project description

squeak

GitHub release codecov

Python library for Squeak protocol.

Requirements

  • python3

Test

make test

Install

pip install squeaklib

Examples

Create a squeak, verify its signature with the public key, and decrypt the content:

import time

from bitcoin.core import lx

from squeak.core import CheckSqueak
from squeak.core import MakeSqueakFromStr
from squeak.core.keys import SqueakPrivateKey

private_key = SqueakPrivateKey.generate()

block_height = 0
block_hash = lx('4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b')

content = "Hello world!"
timestamp = int(time.time())

squeak, secret_key = MakeSqueakFromStr(
    private_key,
    content,
    block_height,
    block_hash,
    timestamp,
)

CheckSqueak(squeak)  # No exception raised

print(squeak.GetHash())  # prints b"\x9e\xeb\xbc)N\x94\xe2\x85\x9b(d\x7f\x1e7\xb5{\xcbY\xef\xd4;\xf7P\xfe\x19'Q\xb7\x7f\xbda\xaf"
print(squeak.GetPubKey())  # prints SqueakPublicKey('02d2fe30552bb5ec3b6822cec25b7dd7d4163974e28f2f4ef40d1f9d09086704c6')
print(squeak.GetDecryptedContentStr(secret_key))  # Hello world!

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

squeaklib-0.13.1.tar.gz (10.5 kB view details)

Uploaded Source

Built Distribution

squeaklib-0.13.1-py2.py3-none-any.whl (15.5 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file squeaklib-0.13.1.tar.gz.

File metadata

  • Download URL: squeaklib-0.13.1.tar.gz
  • Upload date:
  • Size: 10.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.12

File hashes

Hashes for squeaklib-0.13.1.tar.gz
Algorithm Hash digest
SHA256 c8465272ea2ea2cf1866480b570710cfa2c17cf3908fae51091123637ffd6d0e
MD5 8822a72048ff3b876e6ff0eb971b8d35
BLAKE2b-256 2a5777a33bdeafd1fa0447f5f1ca140c0499c9bf897dcf83d77b4ec66a7e6c49

See more details on using hashes here.

File details

Details for the file squeaklib-0.13.1-py2.py3-none-any.whl.

File metadata

  • Download URL: squeaklib-0.13.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 15.5 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.12

File hashes

Hashes for squeaklib-0.13.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 a54eaaed9a3d1d4ece203ed8227d348f7a0fd45275194020a0e688f0cd8a1275
MD5 207e40a64a64b55acb569c14da8df0dd
BLAKE2b-256 9b2cc7eded8c4f24bc40affbf3b7fae389c3bf26094a1b6aca172de5b0c24ccd

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