All Projects → keep-network → Tbtc

keep-network / Tbtc

Licence: mit
Trustlessly tokenized Bitcoin on Ethereum ;)

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to Tbtc

Blockchainbooks.github.io
Blockchain Books
Stars: ✭ 139 (-23.63%)
Mutual labels:  ethereum, bitcoin, cryptocurrency
Awesome Decentralized Papers
Influential papers in decentralized systems (cryptocurrencies, contracts, consensus, etc.)
Stars: ✭ 179 (-1.65%)
Mutual labels:  ethereum, bitcoin, cryptocurrency
Peatiocryptoexchange
An open-source Crypto-Currency exchange. Peatio v3.0 Coming Soon !
Stars: ✭ 141 (-22.53%)
Mutual labels:  ethereum, bitcoin, cryptocurrency
Cbpro Trader
Automated cryptocurrency trading on Coinbase Pro (formerly gdax-trader)
Stars: ✭ 171 (-6.04%)
Mutual labels:  ethereum, bitcoin, cryptocurrency
Cryptocurrency Icons
A set of icons for all the main cryptocurrencies and altcoins, in a range of styles and sizes.
Stars: ✭ 2,116 (+1062.64%)
Mutual labels:  ethereum, bitcoin, cryptocurrency
Multicurrencywallet
Bitcoin, Ethereum, ERC20 crypto wallets with Atomic Swap exchange. Release announce: https://twitter.com/SwapOnlineTeam/status/1321844352369500160
Stars: ✭ 136 (-25.27%)
Mutual labels:  ethereum, bitcoin, cryptocurrency
Unstoppable Wallet Android
A secure and decentralized Bitcoin and other cryptocurrency wallet for Android phones. Supports Bitcoin, Ethereum, EOS, Binance Chain, Bitcoin Cash, DASH, ...
Stars: ✭ 165 (-9.34%)
Mutual labels:  ethereum, bitcoin, cryptocurrency
Coinmon
💰 The cryptocurrency price tool on CLI. 🖥
Stars: ✭ 1,581 (+768.68%)
Mutual labels:  ethereum, bitcoin, cryptocurrency
Awesome Token Sale
Curated list of token sale resources / ICO resources
Stars: ✭ 149 (-18.13%)
Mutual labels:  ethereum, bitcoin, cryptocurrency
Ebtc
eBitcoin (eBTC) is an ERC20 token. Its primary utility is to provide an easy & fast payment solution. Its edge over other tokens is that it is capable of sending up to 255 payments in a single transaction.
Stars: ✭ 149 (-18.13%)
Mutual labels:  ethereum, bitcoin, cryptocurrency
Awdy
are we decentralized yet? an analysis of how truly decentralized cryptocurrency networks are
Stars: ✭ 133 (-26.92%)
Mutual labels:  ethereum, bitcoin, cryptocurrency
Cointop
A fast and lightweight interactive terminal based UI application for tracking cryptocurrencies 🚀
Stars: ✭ 2,912 (+1500%)
Mutual labels:  ethereum, bitcoin, cryptocurrency
Gnome Feeder
Profit Trailer Feeder Full Build with Settings
Stars: ✭ 122 (-32.97%)
Mutual labels:  ethereum, bitcoin, cryptocurrency
Unstoppable Wallet Ios
A secure and decentralized Bitcoin and other cryptocurrency wallet for iPhone. Supports Bitcoin, Ethereum, EOS, Binance Chain, Bitcoin Cash, DASH, ...
Stars: ✭ 180 (-1.1%)
Mutual labels:  ethereum, bitcoin, cryptocurrency
Stocklook
crypto currency library for trading & market making bots, account management, and data analysis
Stars: ✭ 119 (-34.62%)
Mutual labels:  ethereum, bitcoin, cryptocurrency
My Token
📈Track token prices of your favorite exchanges in terminal!
Stars: ✭ 141 (-22.53%)
Mutual labels:  ethereum, bitcoin, cryptocurrency
Coinbase Pro Node
Coinbase Pro API written in TypeScript and covered by tests.
Stars: ✭ 116 (-36.26%)
Mutual labels:  ethereum, bitcoin, cryptocurrency
Cryptocurrencyawesome
Cryptocurrency study materials resources
Stars: ✭ 118 (-35.16%)
Mutual labels:  ethereum, bitcoin, cryptocurrency
Coinpusher
📈 real-time cryptocurrency chart prediction based on neuronal-networks
Stars: ✭ 141 (-22.53%)
Mutual labels:  ethereum, bitcoin, cryptocurrency
Telegram Kraken Bot
Python bot to trade on Kraken via Telegram
Stars: ✭ 156 (-14.29%)
Mutual labels:  ethereum, bitcoin, cryptocurrency

:toc: macro

= tBTC

https://circleci.com/gh/keep-network/tbtc[image:https://circleci.com/gh/keep-network/tbtc.svg?style=svg&circle-token=ec728f5ca814b6cb2db5ffeb7258151b752a207e[CircleCI Build Status]] http://docs.keep.network/tbtc/solidity/[image:https://img.shields.io/badge/docs-website-green.svg[Docs]] https://discord.gg/4R6RGFf[image:https://img.shields.io/badge/chat-Discord-blueViolet.svg[Chat with us on Discord]]

tBTC is a trustlessly Bitcoin-backed ERC-20 token.

The goal of the project is to provide a stronger 2-way peg than federated sidechains like https://blockstream.com/liquid/[Liquid], expanding use cases possible via today's Bitcoin network, while bringing superior money to other chains.

This repo contains the Solidity link:solidity/[smart contracts] and link:docs/[specification].

toc::[]

== Getting started

== Installation

tBTC contracts are currently published in the NPM Registry as the package https://www.npmjs.com/package/@keep-network/tbtc[`@keep-network/tbtc`]. Packages have versions corresponding to their network:

  • -pre packages contain prerelease packages for the internal Keep testnet.
  • -rc packages contain prerelease packages for the Ropsten Ethereum testnet.

Note that only the latest package in a series is expected to reference contracts that have a backing set of signers.

To install the package:

$ npm install @keep-network/tbtc

== Usage

NOTE: tBTC contracts require solc v0.5.17 or higher. You may have to https://www.trufflesuite.com/docs/truffle/reference/configuration#compiler-configuration[configure solc in your truffle-config.js].

Once installed, you can use the contracts in the library by importing them:

[source,sol]

pragma solidity ^0.5.17;

import "@keep-network/tbtc/contracts/deposit/Deposit.sol";

contract MySystem { function checkTerm(address _depositAddress) external { uint256 remainingTerm = Deposit(_depositAddress).remainingTerm(); } }

== Security

tBTC's first 6-week audit was completed by ConsenSys Diligence on March 27, 2020, against https://github.com/keep-network/tbtc/commit/fbb2018c41456d19ec20eb28a17070ee2b10eb5d[fbb2018c41]. They've published a detailed https://diligence.consensys.net/audits/2020/02/thesis-tbtc-and-keep/[audit report] and https://diligence.consensys.net/audits/2020/03/thesis-cryptographic-review/[cryptographic review].

A Bitcoin-focused audit was conducted by security researcher https://twitter.com/sr_gi[Sergi Delgado] from May 25 to May 31, 2020. You can https://srgi.me/resources/reports/tbtc_audit.pdf[review Sergi's results on his site].

https://www.trailofbits.com/[Trail of Bits] conducted an audit of tBTC in June, 2020, and published a https://github.com/trailofbits/publications/blob/db9414def9f575465a47fef5489eb54d9c543eb5/reviews/thesis-summary.pdf[a summary of their results]. https://github.com/samczsun[`@samczsun`] opened issues he discovered https://github.com/keep-network/tbtc/issues?q=is%3Aissue+author%3Asamczsun[on the repo], all of which have been addressed.

A focused treatment of tBTC's security model can be https://tbtc.network/developers/tbtc-security-model/[found here].

Please dislose any security issues you find or suspect to mailto:[email protected][[email protected]], or to https://keybase.io/shadowfiend[`@shadowfiend`], https://keybase.io/frdwrd[`@frdwrd`], or https://keybase.io/mhluongo[`@mhluongo`] via Keybase.

== Contributing

All contributions are welcome. To report bugs, please create an issue on this repository. To start a discussion, prefer https://discord.gg/4R6RGFf[Discord] over GitHub issues.

Read the https://github.com/keep-network/tbtc/blob/master/CONTRIBUTING.md[Contributing guidelines].

=== Setup environment

You should have installed:

=== Build

Clone and install dependencies:

[source,sh]

git clone https://github.com/keep-network/tbtc cd tbtc/solidity npm install

Deploy contracts:

[source,sh]

truffle migrate --reset

=== Test

Tests are written in JS using Mocha.

To run the test suite, execute truffle test.

To run specific tests, add https://jaketrent.com/post/run-single-mocha-test/[`.only`] to the contract block:

[source,js]

contract.only('TBTCToken', function(accounts) {

=== Lint

We use https://eslint.org/[ESLint] and https://github.com/duaraghav8/Ethlint[Ethlint] for linting code. To run:

[source,sh]

npm run sol:lint:fix npm run js:lint:fix

== Documentation

The documentation includes a project overview and rationale, as well as the on-chain specification. Docs should always be updated before or in tandem with code.

=== Prerequisites

Docs are written in http://asciidoctor.org/[AsciiDoctor], with diagrams in https://asciidoctor.org/docs/asciidoctor-diagram/#mermaid[Mermaid].

==== macOS

Install the dependencies via CLI: + [source,sh]

gem install asciidoctor-pdf --pre brew install poppler

=== Build

[source,sh]

cd docs

Generate index.pdf

asciidoctor-pdf index.adoc

== License

tBTC is released under the link:LICENSE[MIT License].

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].