Skip to content

Releases: vulpemventures/go-elements

Issuance: asset and token amount in satoshis

29 Sep 16:32
71dd075

Choose a tag to compare

Issuance: remove multiplication of amount/token with precision (#176)

* added factory method FromPublicKeys for creating multiscript payment

* remove multiplication of issuance amount/token with precision

Issuance Transaction Hash

16 Jun 15:13
521a5fc

Choose a tag to compare

Issuance hash bug 170 (#171)

* added factory method FromPublicKeys for creating multiscript payment

* issuance hash bug

* refactor after review

PeginWitness check

09 Jun 13:46
e804765

Choose a tag to compare

Fix PeginWitness serialization (#168)

* go mod tidy

* add test for toHex serialization with peginWitness

* add check for peginWitness in anyWitnessInput

Pegin address and Claim

31 May 06:25
69bc2b8

Choose a tag to compare

Claim pegin (#165)

* added factory method FromPublicKeys for creating multiscript payment

* merkle tree v1-unstable

* invalid peg-in tx, wip

* refactor after review

* first working claim-pegin version

* skipping test since it requires nigiri

* comments, test fix

* removing todos

Asset and Amount Blinders

20 Mar 23:41
35015e9

Choose a tag to compare

Blind outputs with blinders (#152)

* export Blinder

* Blind with blinders

* MakeFile

* blindreissuance test does not pass

* WIP - blind outputs

* disable caching in make test

* random generator inside outputs loop

* use BlindingData struct instead of pointers

* log

* add ci.yml

* name in blinder.go

* does not crawl all outputs when set the commitments/nonce

* use make test in travis.yml

* Sort ouput indexes before blinding

* blinder factory using outputs to pub key map

* add test case 1 conf output + 1 unconf output

* export Blinder struct

* drop NewBlinderByIndex

* NewBlinderByIndex = NewBlinder

Co-authored-by: altafan <[email protected]>

Move to go-secp256k1-zkp v1.1.0

24 Nov 18:28
79d835d

Choose a tag to compare

This contains changes to use the latest version of go-secp256k1-zkp (v1.1.0 - 0d0930e1) that fixes the bug that was affecting the surjection proof's verification.

USAGE

$ go get github.com/vulpemventures/go-elements@latest

Support for reissuance transactions & Improvements

20 Nov 13:45
158cf9c

Choose a tag to compare

This release adds support for crafting transactions containing re-issuances of already minted assets to the pset package.
It also makes the elementsutil package importable into other projects by moving it outside the internal directory and contains minor improvements for other packages.

USAGE

$ go get github.com/vulpemventures/go-elements@latest

CHANGELOG

  • Pset/Transaction: support for re-issuance transactions.
  • Elementsutil: move the package outside of the internal directory.
  • Tests: add missing test for pset's AddIssuace, add tests for AddReissuance and refactor of integration tests to increase readability.
  • Address: add IsConfidential method and remove network from args of functions DecodeType and ToOutputScript.

Blinding verification & Improvements

17 Nov 16:53
c9c23e4

Choose a tag to compare

This release adds useful methods for the user to verify a confidential transaction, and also to fix the blinder itself by verifying the proofs generated during the process of blinding.
Some handy method have been added to the address package.
The confidential package has been refactored, so it contains breaking changes (!!). The same applies for the pset package.
Contains also several fixes to minor bugs, along with documentation and test improvements.

USAGE

$ go get github.com/vulpemventures/go-elements@latest

CHANGELOG:

  • Amounts are always expressed as uint64 e477e50
  • Add validation of signatures 7152cdf
  • Add more transaction tests c1f750d
  • Add new methods to address pkg f8c2715
  • Methods for verifying a confidential transaction 31092ee, c9c23e4
  • Refactor of confidential pkg c9c23e4
  • Bug fixing and improvements

🔐 SLIP77 and Improvements

03 Jul 20:36

Choose a tag to compare

This release introduces a slip77 package derivation scheme for blinding keys and fix and adds many improvements to blinding, pset, and some methods (not made for public usage) for issuance transactions.

USAGE

$ go get github.com/vulpemventures/go-elements@latest

CHANGELOG

  • SLIP77 package
  • Issuance: generation of entropy, asset hash and reissuance token hash
  • Change RangeProof to expect a nonce instead of creating it
  • Pset: Add AddInput and AddOutput methods
  • Pset: method for adding a non-confidential issuance to a transaction
  • Pset: support for also blinding transaction issuance inputs
  • Add WitnessScript field in Payment and fix HashForSignature
  • Minor fixes to confidential, internal and pset packages

🕵🏻‍♂️ Confidential all the things

09 Jun 16:07
b849d7f

Choose a tag to compare

This is the first release ready for production usage, now a user could make confidential transactions.

The library is to be considered alpha software, it could be buggish. Use at your own risks and not in production yet.

USAGE

$ go get github.com/vulpemventures/go-elements@latest

CHANGELOG

  • Add native go support for blech32 encoding
  • Add support for confidential legacy and segwit addresses
  • Add confidential package for useful methods for blinding
  • Add Blinding role to pset package