Bitcoin Implementation in Scala
Find a file
nkohen 85dbf2fd80 Added secp256k1_schnorrsig_sign to JNI
Added secp256k1_schnorrsig_verify to the JNI

Added new schnorrSignWithNonce

Fixed schnorr signing and added a test making sure schnorrSign and schnorrSignWithNonce agree

Fixed binding, doesn't work yet

Added tests, they fail

Added BIP 340 test vectors

Implemented sigpoint computation using group operators. I believe the nonce is being incorrectly parsed half the time as it should not be treated as an xonly_pubkey

Added tests

Added Bouncy Castle implementation and further integration

Implemented bouncy castle fallback for all secp schnorr functions

Implemented FieldElement to abstract modular BigInt computations in the Secp256k1 field

Implemented sig in SchnorrDigitalSignature as a FieldElement

Vamped up testing

Added windows binaries

Added osx binaries

added windows binaries

Responded to review

Cleaned up secp commits

Responded to review

Replaced custom modInverse implementation in FieldElement with java.math.BigInteger.modInverse

Cleaned up a couple things for coverage purposes

Set bitcoin-s-schnorr to secp branch
2020-07-29 15:41:32 -05:00
.github/ISSUE_TEMPLATE Update bug report template 2019-06-20 17:26:02 +02:00
app Fix Node Startup Issue (#1683) 2020-07-29 09:37:20 -05:00
app-commons Fixed getblockchaininfo for v19 (#1711) 2020-07-28 15:29:42 -05:00
app-commons-test/src/test/scala/org/bitcoins/commons/dlc Added DLC json data structures (#1575) 2020-06-16 15:21:33 -05:00
bench Update scalafmt-core to 2.6.0 (#1579) 2020-06-19 10:38:12 -05:00
bitcoin-s-docs Add -Xfatal-warnings on Scala 2.13 (#1483) 2020-05-29 06:21:56 -05:00
bitcoind-rpc Fixed getblockchaininfo for v19 (#1711) 2020-07-28 15:29:42 -05:00
bitcoind-rpc-test Fixed getblockchaininfo for v19 (#1711) 2020-07-28 15:29:42 -05:00
chain Fix Node Startup Issue (#1683) 2020-07-29 09:37:20 -05:00
chain-test/src/test Create getBlockchainsBetweenHeights for BlockHeaderDAO (#1703) 2020-07-27 13:14:29 -05:00
core Add low R signing (#1342) 2020-07-29 15:03:18 -05:00
core-test Shuffle Finalizer Tests + bug fix (#1680) 2020-07-23 11:14:53 -05:00
crypto Added secp256k1_schnorrsig_sign to JNI 2020-07-29 15:41:32 -05:00
crypto-test Added secp256k1_schnorrsig_sign to JNI 2020-07-29 15:41:32 -05:00
db-commons Added locks on start calls for loggers (#1713) 2020-07-29 10:12:49 -05:00
db-commons-test/src/test/scala/org/bitcoins/db Enforce unique outpoints for SpendingInfoDb (#1673) 2020-07-15 14:09:44 -05:00
docs Fix nightly build docs section (#1639) 2020-07-08 14:45:42 -05:00
eclair-rpc Eclair RPC 0.4.1 (#1627) 2020-07-07 13:22:44 -07:00
eclair-rpc-test Eclair RPC 0.4.1 (#1627) 2020-07-07 13:22:44 -07:00
fee-provider/src/main/scala/org/bitcoins/feeprovider Implemenet BitGo fee provider (#1662) 2020-07-14 07:18:20 -05:00
fee-provider-test/src/test/scala/org/bitcoins/feeprovider Implemenet BitGo fee provider (#1662) 2020-07-14 07:18:20 -05:00
key-manager Fix All Loggers! (#1695) 2020-07-28 07:13:38 -05:00
key-manager-test/src/test/scala/org/bitcoins/keymanager Update scalafmt-core to 2.6.0 (#1579) 2020-06-19 10:38:12 -05:00
node Fix Node Startup Issue (#1683) 2020-07-29 09:37:20 -05:00
node-test/src/test Move Node type of out Wallet API (#1708) 2020-07-29 05:57:48 -05:00
project Update scodec-bits to 1.1.18 (#1716) 2020-07-29 07:07:18 -05:00
secp256k1@da8fcb8c00 Added secp256k1_schnorrsig_sign to JNI 2020-07-29 15:41:32 -05:00
secp256k1jni Added secp256k1_schnorrsig_sign to JNI 2020-07-29 15:41:32 -05:00
testkit Wallet API remove app config (#1706) 2020-07-28 15:19:10 -05:00
wallet Move Node type of out Wallet API (#1708) 2020-07-29 05:57:48 -05:00
wallet-test/src/test Move Node type of out Wallet API (#1708) 2020-07-29 05:57:48 -05:00
website Bump lodash from 4.17.15 to 4.17.19 in /website (#1681) 2020-07-23 09:10:08 -05:00
zmq Update scalatest to 3.2.0 (#1592) 2020-06-20 08:46:32 -05:00
.dockerignore WIP: Docusaurus website (#465) 2019-05-14 18:05:14 -05:00
.gitignore PostgreSQL support (#1315) 2020-06-02 16:37:48 -05:00
.gitmodules Update Secp256k1 (#1310) 2020-04-14 15:42:58 -05:00
.jvmopts Add hardcoded jvmopts file that starts with a 2g heap (#1436) 2020-05-20 07:31:58 -05:00
.scalafmt.conf Update scalafmt-core to 2.6.0 (#1579) 2020-06-19 10:38:12 -05:00
.travis.yml Added secp256k1_schnorrsig_sign to JNI 2020-07-29 15:41:32 -05:00
build.sbt Lots of misc. improvements from dlc branch (#1583) 2020-06-17 14:34:01 -05:00
CONTRIBUTING.md WIP: Docusaurus website (#465) 2019-05-14 18:05:14 -05:00
docker-compose.yml Docs: removes blog from website 2019-06-11 12:59:58 +02:00
Dockerfile WIP: Docusaurus website (#465) 2019-05-14 18:05:14 -05:00
inThisBuild.sbt Added secp256k1_schnorrsig_sign to JNI 2020-07-29 15:41:32 -05:00
LICENSE updating license 2018-01-17 17:15:18 -06:00
README.md Update stable version in doc.sbt, add getting started link to README.md (#1453) 2020-05-21 06:17:05 -05:00
try-bitcoin-s.sh Update try-bitcoin-s.sh (#1165) 2020-02-26 07:50:17 -06:00

Bitcoin-S logo Build Status Coverage Status Maven Central Gitter chat

Feature rich toolkit for making Bitcoin and Lightning applications on the JVM.

For a complete guide on how to get started with Bitcoin-S, see our website at Bitcoin-S.org

Getting started

https://bitcoin-s.org/docs/getting-setup

Adding bitcoin-s to your library

The latest release of bitcoin-s is v0.3.0, here is how you can use the dependencies in your projects:

libraryDependencies += "org.bitcoin-s" % "bitcoin-s-secp256k1jni" % "0.3.0"

libraryDependencies += "org.bitcoin-s" %% "bitcoin-s-core" % "0.3.0"

libraryDependencies += "org.bitcoin-s" %% "bitcoin-s-chain" % "0.3.0"

libraryDependencies += "org.bitcoin-s" %% "bitcoin-s-bitcoind-rpc" % "0.3.0"

libraryDependencies += "org.bitcoin-s" %% "bitcoin-s-eclair-rpc" % "0.3.0"

libraryDependencies += "org.bitcoin-s" %% "bitcoin-s-key-manager" % "0.3.0"

libraryDependencies += "org.bitcoin-s" %% "bitcoin-s-node" % "0.3.0"

libraryDependencies += "org.bitcoin-s" %% "bitcoin-s-wallet" % "0.3.0"

libraryDependencies += "org.bitcoin-s" %% "bitcoin-s-testkit" % "0.3.0"

libraryDependencies += "org.bitcoin-s" %% "bitcoin-s-zmq" % "0.3.0"