Skip to main content

ISCC: Reference Implementation

Project description

ISCC - Spec and Reference Code

Build Version License Downloads

The International Standard Content Code is a proposal for an open standard for decentralized content identification. This repository contains the specification of the proposed ISCC Standard and a reference implementation in Python3. The latest published version of the specification can be found at iscc.codes

NOTE: This is a low level reference implementation. For easy generation of ISCC codes see: iscc-cli

Installing the reference code

The reference code is published with the package name iscc on Python Package Index. Install it with:

pip install iscc

Using the reference code

A short example on how to create an ISCC Code with the reference implementation.

import iscc

# Generate ISCC Component Codes
mid, title, extra = iscc.meta_id('Title of Content')
cid = iscc.content_id_text('some text')
did = iscc.data_id('path/to/mediafile.doc')
iid, tophash = iscc.instance_id('path/to/mediafile.doc')

# Join ISCC Components to fully qualified ISCC Code
iscc_code = '-'.join([mid, cid, did, iid])
print('ISCC:{}'.format(iscc_code))

Working with the specification

The entire ISCC Specification is written in plain text Markdown. The markdown content is than built and published with the excellent mkdocs documetation tool. If you have some basic command line skills you can build and run the specification site on your own computer. Make sure you have the git and Python installed on your system and follow these steps on the command line:

git clone https://github.com/iscc/iscc-specs.git
cd iscc-specs
pip install -r requirements.txt
mkdocs serve

All specification documents can be found in the ./docs subfolder or the repository. The recommended editor for the markdown files is Typora. If you have commit rights to the main repository you can deploy the site with a simple mkdocs gh-deploy.

Contribute

Pull requests and other contributions are welcome. Use the Github Issues section of this project to discuss ideas for the ISCC Specification. You may also want join our developer chat on Telegram at https://t.me/iscc_dev.

License

All of documentation is licensed under the CC-BY-SA 4.0.

Reference code is licensed under BSD-2-Clause.

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-1.0.5.tar.gz (25.1 kB view details)

Uploaded Source

Built Distribution

iscc-1.0.5-py3-none-any.whl (23.8 kB view details)

Uploaded Python 3

File details

Details for the file iscc-1.0.5.tar.gz.

File metadata

  • Download URL: iscc-1.0.5.tar.gz
  • Upload date:
  • Size: 25.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.0 CPython/3.6.4 Windows/10

File hashes

Hashes for iscc-1.0.5.tar.gz
Algorithm Hash digest
SHA256 1fb987e400aec1f5031234d8cd4847e9436cf7a501205b1a8283e7b6abc4df50
MD5 b4fe9d815663a96fba5409a1b616bace
BLAKE2b-256 e48ec0e1de7747491348dcd4c453359b96d1a531eae803ac360b709a479f4bac

See more details on using hashes here.

File details

Details for the file iscc-1.0.5-py3-none-any.whl.

File metadata

  • Download URL: iscc-1.0.5-py3-none-any.whl
  • Upload date:
  • Size: 23.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.0 CPython/3.6.4 Windows/10

File hashes

Hashes for iscc-1.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 4eebe023c38346a5eb59da2da6e6e2fe617404c0bd0de82241c26f04d1d763d8
MD5 c6d92e0889ca8f6c52a2de6c7dde7780
BLAKE2b-256 28dde439732bb882aa338473dc202de1b5aabe73ef34426634acc1289863f081

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page