Skip to content
This repository has been archived by the owner on Jan 4, 2022. It is now read-only.

Dash Platform Protocol v0.16.0

Compare
Choose a tag to compare
@shumkov shumkov released this 26 Oct 20:31
· 96 commits to master since this release
9df7bbf

Features

  • use Buffers for binary data (#238, #240, #241, #246, #247, #261, #262, #263, #266)
  • Identifier property type (#252, #265, #267, #268)
  • byteArray JSON Schema keyword instead of contentEncoding (#245, #248, #251, #254, #260)
  • use 32 random bytes instead of blockchain address for entropy (#250, #259)
  • validate and store all identity keys instead of the first one (#234, #237, #242)
  • validate document upon creation (#255)
  • hash methods responds with Buffer (#249)
  • introduce a BLS identity key type (#239)
  • add revision property to identity (#235)
  • isEnabled property removed from Identity Public Key (#236)

BREAKING CHANGES

  • Node.JS 10 and lower are not supported
  • data models use Buffers instead of strings for binary fields
  • serialize methods renamed to toBuffer
  • createFromSerialized methods renamed to createFromBuffer
  • StateRepository accept Identifier and Buffer instead of strings
  • identifiers like document, data contract and identity IDs are instances Identifier (compatible with Buffer)
  • contentEncoding keyword isn't supported anymore. Use byteArray: true with type: array to store binary data
  • Data Contract and Document entropy is now a random 32 bytes instead of blockchain address
  • identity and identity create transition can't contain duplicate public keys anymore
  • DocumentFactory#create throws an error if specified data is not valid
  • hash methods respond with Buffer instead of hex encoded string
  • ECDSA Public key (type 0) must be a 33 long byte array.
  • Identity's revision is required
  • Identity Public Key's isEnabled is not accepted
  • Data created or serialized by previous is incompatible