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 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.2.0.tar.gz (102.7 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.2.0-cp310-abi3-win_amd64.whl (439.3 kB view details)

Uploaded CPython 3.10+Windows x86-64

iscc_lib-0.2.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (543.0 kB view details)

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

iscc_lib-0.2.0-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (988.1 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.2.0.tar.gz.

File metadata

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

File hashes

Hashes for iscc_lib-0.2.0.tar.gz
Algorithm Hash digest
SHA256 3215b71ac7b90376d21b3c4bcaf27868ab380055d43e0d5e0a378c06263599c1
MD5 04f8f82efde9bb9d745d2a20e1e42f78
BLAKE2b-256 803e74da0211914d1ef9628109ca4a1f5fa643bebe0cc9e4132df0c8d815ba73

See more details on using hashes here.

Provenance

The following attestation bundles were made for iscc_lib-0.2.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.2.0-cp310-abi3-win_amd64.whl.

File metadata

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

File hashes

Hashes for iscc_lib-0.2.0-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 e097bba51e73a7ffa72aff1f72827bbf1d863fe461eb3b8d3da07498d8e4d497
MD5 8256399e71da238fe509b8130a5bf8ac
BLAKE2b-256 8471be276fbc4791b144da067bed9d76ef4cc0a48f5202b2e1558d643ce90e86

See more details on using hashes here.

Provenance

The following attestation bundles were made for iscc_lib-0.2.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.2.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for iscc_lib-0.2.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ddc67a7c02be3e11658c86c4b455770ab102c4be8878d9ef730403b06223662a
MD5 3db1c6aedbf24fe1724c708d95be9c90
BLAKE2b-256 9b0b6076ce581e5cffae91da02d37568bfc22a682dcb4e010c19b463bf07bc16

See more details on using hashes here.

Provenance

The following attestation bundles were made for iscc_lib-0.2.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.2.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.2.0-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 e0c25a32c033c7f598c59f579bc628796af243b959cc456b5ce8c48c48006ecc
MD5 cdc53fa64e6eed54da0136e4f23cd043
BLAKE2b-256 3a4547f79150cf93e1623d21131dc4a889906cc302df47ff57b092f789b54474

See more details on using hashes here.

Provenance

The following attestation bundles were made for iscc_lib-0.2.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