Skip to main content

Quick Base58 encoding/decoding.

Project description

Quick Base58 (qbase58)

A quick base58 encoder/decoder implementation written in C, with Python bindings.

Install

pip install qbase58

Usage

import qbase58

string = b"Hello, World!"

encoded = qbase58.encode(string)
print(f"Encoded: {encoded}")

decoded = qbase58.decode(encoded)
print(f"Decoded: {decoded}")

Benchmark

Comparing with the two other Python base58 libraries:

--- Data Set: SMALL (size=100 bytes) ---
base58   => avg: 45.1845 ms (std: 2.7698 ms) over 1000 iterations
based58  => avg: 12.7324 ms (std: 0.1445 ms) over 1000 iterations
qbase58  => avg: 6.5189 ms (std: 0.0414 ms) over 1000 iterations

--- Data Set: MEDIUM (size=1000 bytes) ---
base58   => avg: 763.2404 ms (std: 3.9402 ms) over 500 iterations
based58  => avg: 646.2393 ms (std: 2.4316 ms) over 500 iterations
qbase58  => avg: 320.7714 ms (std: 1.1277 ms) over 500 iterations

--- Data Set: LARGE (size=5000 bytes) ---
base58   => avg: 319.6193 ms (std: 1.5274 ms) over 10 iterations
based58  => avg: 320.4021 ms (std: 1.2545 ms) over 10 iterations
qbase58  => avg: 162.0134 ms (std: 0.7824 ms) over 10 iterations

See scripts/benchmark.py for benchmarking details.

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

qbase58-1.0.4.tar.gz (9.0 kB view details)

Uploaded Source

Built Distributions

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

qbase58-1.0.4-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (18.6 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

qbase58-1.0.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (18.6 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

qbase58-1.0.4-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (18.5 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

qbase58-1.0.4-cp313-cp313-musllinux_1_2_x86_64.whl (33.4 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

qbase58-1.0.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (34.3 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

qbase58-1.0.4-cp312-cp312-musllinux_1_2_x86_64.whl (33.3 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

qbase58-1.0.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (34.4 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

qbase58-1.0.4-cp311-cp311-musllinux_1_2_x86_64.whl (33.0 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

qbase58-1.0.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (34.0 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

qbase58-1.0.4-cp310-cp310-musllinux_1_2_x86_64.whl (32.9 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

qbase58-1.0.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (34.0 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

qbase58-1.0.4-cp39-cp39-musllinux_1_2_x86_64.whl (32.8 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

qbase58-1.0.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (33.8 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

qbase58-1.0.4-cp38-cp38-musllinux_1_2_x86_64.whl (32.7 kB view details)

Uploaded CPython 3.8musllinux: musl 1.2+ x86-64

qbase58-1.0.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (34.2 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

File details

Details for the file qbase58-1.0.4.tar.gz.

File metadata

  • Download URL: qbase58-1.0.4.tar.gz
  • Upload date:
  • Size: 9.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for qbase58-1.0.4.tar.gz
Algorithm Hash digest
SHA256 a8c4532948c87836040c936351e600baf01bb33e45e30c1e931710cd3692b1f7
MD5 19cbf0719bc9faaffad628268b117011
BLAKE2b-256 f13d45f78c8e91bd0e1a509c350a1178e19761174842860479c82e3f70a498a2

See more details on using hashes here.

Provenance

The following attestation bundles were made for qbase58-1.0.4.tar.gz:

Publisher: release.yaml on qvecs/qbase58

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

File details

Details for the file qbase58-1.0.4-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for qbase58-1.0.4-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 08ab771bf11988b0a0dd6ddbf1814609cf5704985fa058d1ce84ff850a86dd1a
MD5 d4b254ee6c75a56d3c7d2aff0ff2b57f
BLAKE2b-256 f1f957730b0837d752be5d66e074f09e64ee67109d4ef8d7d2f7d8dc80d2a1a5

See more details on using hashes here.

Provenance

The following attestation bundles were made for qbase58-1.0.4-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yaml on qvecs/qbase58

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

File details

Details for the file qbase58-1.0.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for qbase58-1.0.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 41c1eee958a2a996a1b6e9ab6680c2baf0c77fc98879c225bbf5bf37ed6c79fb
MD5 9d4506a6c37a9aafb266e85a4e42ce66
BLAKE2b-256 5e21d1fa9faab34a23ab4a7f288d577c11a2bfe9e18e317c8ad81ac858abb32f

See more details on using hashes here.

Provenance

The following attestation bundles were made for qbase58-1.0.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yaml on qvecs/qbase58

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

File details

Details for the file qbase58-1.0.4-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for qbase58-1.0.4-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1e5820a8f9cbe73305c2c78243cf6afc0599c46f7ae20cd1ea834cc91fdf778d
MD5 36a3820a1b41bb6d513d47029c403dbe
BLAKE2b-256 02d7875d73695699be38deefa9f63933f6fbe0272147e3cfee935dd3f3bb5c95

See more details on using hashes here.

Provenance

The following attestation bundles were made for qbase58-1.0.4-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yaml on qvecs/qbase58

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

File details

Details for the file qbase58-1.0.4-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for qbase58-1.0.4-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 38e5c09cf37a994ddeb7d68f76c3f44c04756d224c4c9e524d6132855e149ae6
MD5 3de86768be3333befa1bd2acd85b71bf
BLAKE2b-256 a3677469b17885cb290bd569c2008f77814670289719f2e5a2944866dcc905dc

See more details on using hashes here.

Provenance

The following attestation bundles were made for qbase58-1.0.4-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: release.yaml on qvecs/qbase58

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

File details

Details for the file qbase58-1.0.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for qbase58-1.0.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4a1892b752828564b06628fdac5e39dcbd41e91526b4d5bc84fd24fddb0eabed
MD5 d85b0c94da1d929bdb898c6a0019adc2
BLAKE2b-256 2ce1fa56ef29f7bdcc3dbbf4e886c4f5cb9d4c024d39da63af0bd0429c2e304c

See more details on using hashes here.

Provenance

The following attestation bundles were made for qbase58-1.0.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yaml on qvecs/qbase58

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

File details

Details for the file qbase58-1.0.4-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for qbase58-1.0.4-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 6bde43041383cfdca524c41a9a30c1d13124fbfeb165a6c9da783ac6f23ec4e7
MD5 ad9fd8fbfc7b29c23c6b7504aa218769
BLAKE2b-256 24c22ed800a5baea30c437262b14a47763bc422d162519f5b2f04da8d8b52fa9

See more details on using hashes here.

Provenance

The following attestation bundles were made for qbase58-1.0.4-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: release.yaml on qvecs/qbase58

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

File details

Details for the file qbase58-1.0.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for qbase58-1.0.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 575f357aa274f08ff817193dde07b89b1715c6f5a3d47391ff2e2d1b2b32a7fd
MD5 3dc46b44723914f381c71d9e5d8edebe
BLAKE2b-256 81514146b1e3deaeeedc0b556c60982e7faa0f81fc900355db8cfe7660841528

See more details on using hashes here.

Provenance

The following attestation bundles were made for qbase58-1.0.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yaml on qvecs/qbase58

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

File details

Details for the file qbase58-1.0.4-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for qbase58-1.0.4-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a49b840a0c6ff3189fbe62c267ddeed1b26f4eba5bc0b5a45466c33770372ee5
MD5 1651663472e29155c061014b4a4da4bd
BLAKE2b-256 9de6e94009ea3328230fb3edbf7faf60a5929b6367a3258f5cd2b9f116ea9777

See more details on using hashes here.

Provenance

The following attestation bundles were made for qbase58-1.0.4-cp311-cp311-musllinux_1_2_x86_64.whl:

Publisher: release.yaml on qvecs/qbase58

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

File details

Details for the file qbase58-1.0.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for qbase58-1.0.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 485bc950e99d0e97e209439222fa7adcbbcfebcebf6324aa0769377764dd623e
MD5 4b84cd1217b2aaeafec0cdd7efded8a7
BLAKE2b-256 babcc18acfac2b497fa33afd0bc649df61700571441b56f577149d65c4968432

See more details on using hashes here.

Provenance

The following attestation bundles were made for qbase58-1.0.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yaml on qvecs/qbase58

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

File details

Details for the file qbase58-1.0.4-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for qbase58-1.0.4-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 edb4f0745f9e739a091619707e2218d5399f56d6cfeb87714ab7623769f3346d
MD5 baa17b1bac0603be83f38aa4a09a8433
BLAKE2b-256 b03f54c48b1084d94702e30008ce91b013e7cab146f5a8b1dff5506ddbcd7647

See more details on using hashes here.

Provenance

The following attestation bundles were made for qbase58-1.0.4-cp310-cp310-musllinux_1_2_x86_64.whl:

Publisher: release.yaml on qvecs/qbase58

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

File details

Details for the file qbase58-1.0.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for qbase58-1.0.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f76d25e5cb694fe1271e67d9df171561c7802252ed319f7ef4e7c47d5381616f
MD5 ca8302494e764f61a9d20cab4ee063ce
BLAKE2b-256 a0e0d31e0dffd25cd27994dbb0aff6b534866a4c4c401817c8a169b548158e51

See more details on using hashes here.

Provenance

The following attestation bundles were made for qbase58-1.0.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yaml on qvecs/qbase58

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

File details

Details for the file qbase58-1.0.4-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for qbase58-1.0.4-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a654603909e4e8243255e1d98e20f513e5019edbb85381bc4394410471ebc51c
MD5 93e7b3d0d00ccc1c98a3320d82cb96a8
BLAKE2b-256 11c8d08495accb64575171de9af14f08c5b2e0781fafe18dcb767c233cd5281b

See more details on using hashes here.

Provenance

The following attestation bundles were made for qbase58-1.0.4-cp39-cp39-musllinux_1_2_x86_64.whl:

Publisher: release.yaml on qvecs/qbase58

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

File details

Details for the file qbase58-1.0.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for qbase58-1.0.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0686fdd2e16a37c3d7fac9bc90602abc266d1e76de220f9993407dbd8a2dca56
MD5 6677761441db6df676d0b021b95727e5
BLAKE2b-256 6180bafb3ff0372bbd0afc9b37eb7b8cca52e314bfa99d2112fea87e0fd691a5

See more details on using hashes here.

Provenance

The following attestation bundles were made for qbase58-1.0.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yaml on qvecs/qbase58

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

File details

Details for the file qbase58-1.0.4-cp38-cp38-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for qbase58-1.0.4-cp38-cp38-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 73b6c612f85ef5d431b69a32cad324d87be28a887a8b76cf70ea322b6a0e6b10
MD5 0436b33371cff3288fdec9c5efcc2938
BLAKE2b-256 c5aaf69a0f5c2b9473b70df9e9c173e38f3c99263107765773016ab7034189c1

See more details on using hashes here.

Provenance

The following attestation bundles were made for qbase58-1.0.4-cp38-cp38-musllinux_1_2_x86_64.whl:

Publisher: release.yaml on qvecs/qbase58

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

File details

Details for the file qbase58-1.0.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for qbase58-1.0.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d966de6831f5392ec31e350fa9de993a2804091e21423ae2a9dfe6b7a9c777f7
MD5 0e12a7b0418d02a290d2582e37aadcb9
BLAKE2b-256 0be028cd99849d3bad8a3130b48e805d66c0087d6ca85ab80903c8dc3a246b58

See more details on using hashes here.

Provenance

The following attestation bundles were made for qbase58-1.0.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yaml on qvecs/qbase58

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