todajs

1.1.13 • Public • Published

Bootstrap logo

TODA Files: A Cryptographic Asset Structure

A TODA file is a representation of a digital asset. It is based on a novel cryptographic data structure.

This package contains the library for interacting with low-level structures, as well as higher-level abstractions for application design. It additionally contains the toda command-line tool to assist with development, debugging, admin and support. Further, the CLI now contains a quick-start server for serving and viewing assets.

Table of contents

Command Line Suite

npm install -g todajs using node >= 16 LTS, < 19

See the command line tools documentation

Code Layout

core:

Defines Hash and Packet, the only two core data structures. Includes a rig (structure) checker, which assesses asset integrity.

  • Atoms: an ordered hashmap of : pairs
  • Shield: utilities for creating and checking shielded values
  • ReqSat: utilities for creating and parsing Requirements and Satisfactions packets
  • Interpret: the rig checker
  • Twist: an abstraction over Hash and Packets which represents twists
  • TwistBuilder: a factory for Twists

abject:

Higher-level structures describing contents of TODA assets, and how to apply the rig checker to determine their integrity.

  • Actionable: any TODA object requiring a line of integrity
  • DelegableActionable: a TODA object which depends on the integrity of a another in a particular way
  • DI: Basic container for fields and values
  • Primitive: Boxes up values for float, string, boolean in a well-specified byte representation
  • Capability: a DelegableActionable intended for authorization

TODA Client

Coming soon: while the command-line tools provide a window into the range of functionality provided by the core libraries, these are being abstracted into an application developer-friendly class.

Readme

Keywords

none

Package Sidebar

Install

npm i todajs

Weekly Downloads

188

Version

1.1.13

License

Apache License 2.0

Unpacked Size

3.21 MB

Total Files

422

Last publish

Collaborators

  • csulpizi
  • sfertman
  • adamgravitis
  • dann.toliver