No description
Find a file
Andrew Poelstra 84b3f7b004
Merge ElementsProject/elements#1019: Update spec for tapscript opcodes
31c232a39b clarify that secp scalars are unsigned big endian (sanket1729)
f11fe0ad9c Update spec for rolling sha256 opcodes (sanket1729)
3055e85042 Rename taptweak (sanket1729)
a651f7ed4b More updates to spec (sanket1729)
147b9b7f6a Remove binary operations for 64 bits (sanket1729)
95f82f5080 Update spec for inputoutpoint (sanket1729)
6c4971dfbd Confirm overflow behaviour of scalars (sanket1729)
1d778dd632 Remove shifts, update output spk introspection (sanket1729)
49978abf5a Renumber opcodes; minor fixups (sanket1729)
3be79d1257 Update LE32 to read only unsigned (sanket1729)
d3cff9eea4 Update overflow behavior (sanket1729)
50733b8826 Flatten out introspection opcodes (sanket1729)
4bce8af953 Remove MULTISCALAREXPVERIFY. Sigops budget calculation is mentioned in respective opcode sections (sanket1729)
5ae2945da7 [WIP] updated spec for tapscript opcodes (sanket1729)

Pull request description:

  This is an updating document for the latest specification of tapscript opcodes. This will be updated in parallel while the implementation is in progress

ACKs for top commit:
  apoelstra:
    ACK 31c232a39b

Tree-SHA512: 6862c9c09e340674d30d53cddc9a6adbcb67edcc00871c934a2b775f64537382ae4679a03b9a71e2a63aba0f66f181d1355051f452f7ef1a9017601fa9190127
2021-08-30 18:06:10 +00:00
.github doc: Remove label from good first issue template 2020-08-24 09:31:24 +02:00
.tx tx: Update transifex slug for 0.21 2020-10-01 22:19:11 +02:00
build-aux/m4 Squashed 'src/secp256k1/' changes from 0129b77767e..90580edcc98 2021-07-28 22:05:08 +00:00
build_msvc Merge #19953: Implement BIP 340-342 validation (Schnorr/taproot/tapscript) 2020-10-15 10:22:35 +02:00
ci ci: backport bitcoin #20413 changes to nowallet bionic test 2021-07-30 16:58:43 +00:00
contrib Squashed 'src/secp256k1/' changes from 0129b77767e..90580edcc98 2021-07-28 22:05:08 +00:00
depends build: set minimum supported macOS to 10.14 2021-07-11 18:43:54 +00:00
doc clarify that secp scalars are unsigned big endian 2021-08-24 10:46:33 -07:00
share build: set minimum supported macOS to 10.14 2021-07-11 18:43:54 +00:00
src fuzz: add fuzz test for segwitv0 and tapscript script interpreters 2021-08-27 19:31:34 +00:00
test Update tapscript leaf version 2021-08-27 19:24:07 +00:00
.appveyor.yml ci: Use the previous build worker image in AppVeyor 2020-11-15 09:12:06 +02:00
.cirrus.yml Squashed 'src/secp256k1/' changes from 0129b77767e..90580edcc98 2021-07-28 22:05:08 +00:00
.fuzzbuzz.yml ci: Add fuzzbuzz integration 2020-04-14 16:38:26 +00:00
.gitattributes Separate protocol versioning from clientversion 2014-10-29 00:24:40 -04:00
.gitignore Squashed 'src/secp256k1/' changes from 0129b77767e..90580edcc98 2021-07-28 22:05:08 +00:00
.python-version .python-version: Specify full version 3.5.6 2019-03-02 12:06:26 -05:00
.style.yapf test: .style.yapf: Set column_limit=160 2019-03-04 18:28:13 -05:00
.travis.yml Squashed 'src/secp256k1/' changes from 0129b77767e..90580edcc98 2021-07-28 22:05:08 +00:00
autogen.sh scripted-diff: Bump copyright of files changed in 2019 2019-12-30 10:42:20 +13:00
CODEOWNERS doc: Add comments and additional reviewers to CODEOWNERS file 2020-09-01 11:23:58 -04:00
configure.ac Squashed 'src/secp256k1/' changes from 0129b77767e..90580edcc98 2021-07-28 22:05:08 +00:00
CONTRIBUTING.md Merge 6ea7348122 into merged_master (Bitcoin PR #19638) 2020-11-27 03:15:08 +00:00
COPYING doc: Update license year range to 2020 2019-12-26 23:11:21 +01:00
INSTALL.md Update INSTALL landing redirection notice for build instructions. 2016-10-06 12:27:23 +13:00
libbitcoinconsensus.pc.in build: remove libcrypto as internal dependency in libbitcoinconsensus.pc 2019-11-19 15:03:44 +01:00
Makefile.am Squashed 'src/secp256k1/' changes from 0129b77767e..90580edcc98 2021-07-28 22:05:08 +00:00
README.md Squashed 'src/secp256k1/' changes from 0129b77767e..90580edcc98 2021-07-28 22:05:08 +00:00
SECURITY.md Merge 53e1771cd8 into merged_master (Elements PR #807) 2020-11-14 16:52:10 +00:00

Elements Project blockchain platform

Build Status

https://elementsproject.org

This is the integration and staging tree for the Elements blockchain platform, a collection of feature experiments and extensions to the Bitcoin protocol. This platform enables anyone to build their own businesses or networks pegged to Bitcoin as a sidechain or run as a standalone blockchain with arbitrary asset tokens.

Modes

Elements supports a few different pre-set chains for syncing. Note though some are intended for QA and debugging only:

  • Liquid mode: elementsd -chain=liquidv1 (syncs with Liquid network)
  • Bitcoin mainnet mode: elementsd -chain=main (not intended to be run for commerce)
  • Bitcoin testnet mode: elementsd -chain=testnet3
  • Bitcoin regtest mode: elementsd -chain=regtest
  • Elements custom chains: Any other -chain= argument. It has regtest-like default parameters that can be over-ridden by the user by a rich set of start-up options.

Confidential Assets

The latest feature in the Elements blockchain platform is Confidential Assets, the ability to issue multiple assets on a blockchain where asset identifiers and amounts are blinded yet auditable through the use of applied cryptography.

Features of the Elements blockchain platform

Compared to Bitcoin itself, it adds the following features:

Previous elements that have been integrated into Bitcoin:

  • Segregated Witness
  • Relative Lock Time

Elements deferred for additional research and standardization:

Additional RPC commands and parameters:

License

Elements is released under the terms of the MIT license. See COPYING for more information or see http://opensource.org/licenses/MIT.

What is the Elements Project?

Elements is an open source, sidechain-capable blockchain platform. It also allows experiments to more rapidly bring technical innovation to the Bitcoin ecosystem.

Learn more on the Elements Project website

https://github.com/ElementsProject/elementsproject.github.io

Secure Reporting

See our vulnerability reporting guide