/dcrtimejs

Primary LanguageJavaScript

Dcrtimejs

Javascript library to use dcrtime

Table of Contents

Install

Make sure you have nodejs 7.6+ and yarn or npm installed.

yarn

yarn add dcrtimejs

npm

npm install --save dcrtimejs

Docs

DcrtimeResponse

Properties

Name Type Description
digests array array of objects containing the SHA256, result and servertimestamp

setNetwork

Sets the dcrtime server that will be used. Default is mainnet. If network is "testnet", it will be set to testnet instead.

Param Type
network string

timestamp

Timestamps an array of SHA256 hashs using dcrtime.

Param Type Description
digests Array[string] Array of SHA256 hashs
id [optional] string Identifier that can be used if a unique identifier is required

Returns: Promise.<DcrtimeResponse> - The data from dcrtime.

timestampFromBase64

Timestamps an array of base 64 encoded strings using dcrtime.

Param Type Description
base64s Array[string] Array of base64 encoded strings
id [optional] string Identifier that can be used if a unique identifier is required

Returns: Promise.<DcrtimeResponse> - The data from dcrtime.

verify

Verifies if an array of SHA256 hashs is anchored to the blockchain.

Param Type Description
digests Array[string] Array of SHA256 hashs
id [optional] string Identifier that can be used if a unique identifier is required

Returns: Promise.<DcrtimeResponse> - The data from dcrtime.

verifyFromBase64

Verifies if an array of base 64 encoded strings is anchored to the blockchain.

Param Type Description
base64s Array[string] Array of base64 encoded strings
id [optional] string Identifier that can be used if a unique identifier is required

Returns: Promise.<DcrtimeResponse> - The data from dcrtime.

getSHA256fromBase64

Calculates the SHA256 hash of a 64bit encoded string

Param Type Description
base64 string base64 encoded string

Returns: string - The SHA256 hash.

Results

The 'result' key in the returned object means:

Result Description
0 Success.
1 the file was already in the server. Timestamp failed.
2 the file was NOT found in the server, which means it is not anchored.

Usage

import dcrtime from "dcrtimejs";

dcrtime.setNetwork("testnet");
dcrtime.timestamp(["9F86D081884C7D659A2FEAA0C55AD015A3BF4F1B2B0B822CD15D6C15B0F00A08"], "dcrtimejs");
dcrtime.timestampFromBase64(["dGVzdA=="], "dcrtimejs");
dcrtime.verify(["9F86D081884C7D659A2FEAA0C55AD015A3BF4F1B2B0B822CD15D6C15B0F00A08"], "dcrtimejs");
dcrtime.verifyFromBase64(["dGVzdA=="], "dcrtimejs");