Skip to main content

High-performance Python bindings for ISO 24138:2024 (ISCC)

Project description

iscc-lib

CI PyPI License

High-performance Python bindings for ISO 24138:2024 -- International Standard Content Code (ISCC). Built on a Rust core for speed, with a Pythonic API that is a drop-in replacement for iscc-core.

What is ISCC

The ISCC is a similarity-preserving fingerprint and identifier for digital media assets. ISCCs are generated algorithmically from digital content, just like cryptographic hashes. However, instead of using a single cryptographic hash function to identify data only, the ISCC uses various algorithms to create a composite identifier that exhibits similarity-preserving properties (soft hash).

Installation

pip install iscc-lib

Quick Start

import iscc_lib as ic

result = ic.gen_meta_code_v0("ISCC Test Document!")
print(f"Meta-Code: {result['iscc']}")

API Overview

Code Generators

Function Description
gen_meta_code_v0 Generate a Meta-Code from metadata fields
gen_text_code_v0 Generate a Text-Code from plain text
gen_image_code_v0 Generate an Image-Code from pixel data
gen_audio_code_v0 Generate an Audio-Code from Chromaprint data
gen_video_code_v0 Generate a Video-Code from frame signatures
gen_mixed_code_v0 Generate a Mixed-Code from Content-Codes
gen_data_code_v0 Generate a Data-Code from bytes or stream
gen_instance_code_v0 Generate an Instance-Code from bytes or stream
gen_iscc_code_v0 Generate a composite ISCC-CODE
gen_sum_code_v0 Generate an ISCC-SUM from a file path

Utilities

  • Text processing: text_clean, text_remove_newlines, text_trim, text_collapse
  • Algorithm primitives: alg_simhash, alg_minhash_256, alg_cdc_chunks, sliding_window
  • Soft hashing: soft_hash_video_v0
  • Encoding: encode_base64
  • Codec: iscc_decompose
  • Streaming: DataHasher, InstanceHasher, SumHasher for incremental processing
  • Diagnostics: conformance_selftest

Streaming functions (gen_data_code_v0, gen_instance_code_v0) accept both bytes and file-like objects (BinaryIO).

Links

License

Apache-2.0

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

iscc_lib-0.5.0.tar.gz (110.2 kB view details)

Uploaded Source

Built Distributions

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

iscc_lib-0.5.0-cp310-abi3-win_amd64.whl (430.3 kB view details)

Uploaded CPython 3.10+Windows x86-64

iscc_lib-0.5.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (530.4 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ x86-64

iscc_lib-0.5.0-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (972.6 kB view details)

Uploaded CPython 3.10+macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

File details

Details for the file iscc_lib-0.5.0.tar.gz.

File metadata

  • Download URL: iscc_lib-0.5.0.tar.gz
  • Upload date:
  • Size: 110.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for iscc_lib-0.5.0.tar.gz
Algorithm Hash digest
SHA256 a9a0376f3cb715f3b21cf7cd4779c7e41e30959350bd458101b61c2a7003d52b
MD5 8d148060ed32f45977732a0f01891b74
BLAKE2b-256 c372e815e72deca85daaedd7a4a74464818e3204af9fe9ed2cf703ce0dfd27a9

See more details on using hashes here.

Provenance

The following attestation bundles were made for iscc_lib-0.5.0.tar.gz:

Publisher: release.yml on iscc/iscc-lib

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

File details

Details for the file iscc_lib-0.5.0-cp310-abi3-win_amd64.whl.

File metadata

  • Download URL: iscc_lib-0.5.0-cp310-abi3-win_amd64.whl
  • Upload date:
  • Size: 430.3 kB
  • Tags: CPython 3.10+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for iscc_lib-0.5.0-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 444caff1c7654e11df43d2ceaea5dd45bdacc3a71a61412f4890fae80d86bcba
MD5 4c76da17af8094f303ff67fcae58e8f7
BLAKE2b-256 1b7c26eb1f95ac52b707419e4399860ee0b6d76b50afa5b666a140c18e8321ad

See more details on using hashes here.

Provenance

The following attestation bundles were made for iscc_lib-0.5.0-cp310-abi3-win_amd64.whl:

Publisher: release.yml on iscc/iscc-lib

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

File details

Details for the file iscc_lib-0.5.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for iscc_lib-0.5.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5da17d975a7fa638269b605c6001345e07cc4718b79540ca6cefd43b7a6af360
MD5 4035f8c2dd1579c9d97c3721c114f15a
BLAKE2b-256 79377b4db3c0575f7ffd0a3e47d508b5d322bc4951995eca1711f9c34f81beef

See more details on using hashes here.

Provenance

The following attestation bundles were made for iscc_lib-0.5.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on iscc/iscc-lib

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

File details

Details for the file iscc_lib-0.5.0-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for iscc_lib-0.5.0-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 9bf6dd3b3236714df427d786c5eca2ab221105e017091c4a26b0cf5515e673d0
MD5 7408bfda6231f0706c0f2b7a54d00793
BLAKE2b-256 8790aeb1eae164f156c47cd30765ba0d6273559da7acc3d0269edeebfdd69692

See more details on using hashes here.

Provenance

The following attestation bundles were made for iscc_lib-0.5.0-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: release.yml on iscc/iscc-lib

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