secp256k1

Pure Haskell Schnorr, ECDSA on the elliptic curve secp256k1 (docs.ppad.tech/secp256k1).
git clone git://git.ppad.tech/secp256k1.git
Log | Files | Refs | README | LICENSE

ppad-secp256k1.cabal (2040B)


      1 cabal-version:      3.0
      2 name:               ppad-secp256k1
      3 version:            0.2.0
      4 synopsis:           Schnorr signatures & ECDSA on the elliptic curve secp256k1
      5 license:            MIT
      6 license-file:       LICENSE
      7 author:             Jared Tobin
      8 maintainer:         jared@ppad.tech
      9 category:           Cryptography
     10 build-type:         Simple
     11 tested-with:        GHC == { 9.8.1, 9.6.4 }
     12 extra-doc-files:    CHANGELOG
     13 description:
     14   Pure BIP0340-style Schnorr signatures and deterministic RFC6979 ECDSA on
     15   the elliptic curve secp256k1.
     16 
     17 source-repository head
     18   type:     git
     19   location: git.ppad.tech/secp256k1.git
     20 
     21 library
     22   default-language: Haskell2010
     23   hs-source-dirs:   lib
     24   ghc-options:
     25       -Wall
     26   exposed-modules:
     27       Crypto.Curve.Secp256k1
     28   build-depends:
     29       base >= 4.9 && < 5
     30     , bytestring >= 0.9 && < 0.13
     31     , ppad-hmac-drbg >= 0.1 && < 0.2
     32     , ppad-sha256 >= 0.2 && < 0.3
     33     , primitive >= 0.8 && < 0.10
     34 
     35 test-suite secp256k1-tests
     36   type:                exitcode-stdio-1.0
     37   default-language:    Haskell2010
     38   hs-source-dirs:      test
     39   main-is:             Main.hs
     40   other-modules:
     41       BIP340
     42     , Noble
     43     , Wycheproof
     44 
     45   ghc-options:
     46     -rtsopts -Wall
     47 
     48   build-depends:
     49       aeson
     50     , attoparsec
     51     , base
     52     , base16-bytestring
     53     , bytestring
     54     , ppad-secp256k1
     55     , tasty
     56     , tasty-hunit
     57     , text
     58 
     59 benchmark secp256k1-bench
     60   type:                exitcode-stdio-1.0
     61   default-language:    Haskell2010
     62   hs-source-dirs:      bench
     63   main-is:             Main.hs
     64 
     65   ghc-options:
     66     -rtsopts -O2 -Wall -fno-warn-orphans
     67 
     68   build-depends:
     69       base
     70     , base16-bytestring
     71     , bytestring
     72     , criterion
     73     , deepseq
     74     , ppad-secp256k1
     75 
     76 benchmark secp256k1-weigh
     77   type:                exitcode-stdio-1.0
     78   default-language:    Haskell2010
     79   hs-source-dirs:      bench
     80   main-is:             Weight.hs
     81 
     82   ghc-options:
     83     -rtsopts -O2 -Wall -fno-warn-orphans
     84 
     85   build-depends:
     86       base
     87     , base16-bytestring
     88     , bytestring
     89     , deepseq
     90     , ppad-secp256k1
     91     , weigh
     92