rbsecp256k1 5.1.0 → 6.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -25,5 +25,12 @@ module Secp256k1
25
25
  def generate_key_pair
26
26
  key_pair_from_private_key(SecureRandom.random_bytes(32))
27
27
  end
28
+
29
+ # Create Schnorr signature generating auxrand.
30
+ #
31
+ # @return [Secp256k1::SchnorrSignature] schnorr signature
32
+ def sign_schnorr(keypair, message)
33
+ sign_schnorr_custom(keypair, message, SecureRandom.random_bytes(32))
34
+ end
28
35
  end
29
36
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Secp256k1
4
- VERSION = '5.1.0'
4
+ VERSION = '6.0.0'
5
5
  end
data/lib/rbsecp256k1.rb CHANGED
@@ -7,4 +7,8 @@ end
7
7
  require 'rbsecp256k1/context'
8
8
  require 'rbsecp256k1/util'
9
9
  require 'rbsecp256k1/version'
10
+
11
+ # The ext directory is where the compiled shared object files go for native
12
+ # extension gems. Rubygems adds this to the LOAD_PATH so we should just need to
13
+ # explicitly require the shared object
10
14
  require 'rbsecp256k1/rbsecp256k1'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rbsecp256k1
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.1.0
4
+ version: 6.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eric Scrivner
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-12-01 00:00:00.000000000 Z
11
+ date: 2023-01-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mini_portile2
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '2.7'
19
+ version: '2.8'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '2.7'
26
+ version: '2.8'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: pkg-config
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '1.4'
33
+ version: '1.5'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '1.4'
40
+ version: '1.5'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rubyzip
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -52,6 +52,20 @@ dependencies:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '2.3'
55
+ - !ruby/object:Gem::Dependency
56
+ name: keccak
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '1.3'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '1.3'
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: rake
57
71
  requirement: !ruby/object:Gem::Requirement
@@ -72,14 +86,14 @@ dependencies:
72
86
  requirements:
73
87
  - - "~>"
74
88
  - !ruby/object:Gem::Version
75
- version: '1.1'
89
+ version: '1.2'
76
90
  type: :development
77
91
  prerelease: false
78
92
  version_requirements: !ruby/object:Gem::Requirement
79
93
  requirements:
80
94
  - - "~>"
81
95
  - !ruby/object:Gem::Version
82
- version: '1.1'
96
+ version: '1.2'
83
97
  - !ruby/object:Gem::Dependency
84
98
  name: rspec
85
99
  requirement: !ruby/object:Gem::Requirement
@@ -108,6 +122,20 @@ dependencies:
108
122
  - - '='
109
123
  - !ruby/object:Gem::Version
110
124
  version: '0.78'
125
+ - !ruby/object:Gem::Dependency
126
+ name: ruby_memcheck
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: '1.2'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: '1.2'
111
139
  - !ruby/object:Gem::Dependency
112
140
  name: yard
113
141
  requirement: !ruby/object:Gem::Requirement
@@ -137,10 +165,12 @@ files:
137
165
  - documentation/private_key.md
138
166
  - documentation/public_key.md
139
167
  - documentation/recoverable_signature.md
168
+ - documentation/schnorr_signature.md
140
169
  - documentation/secp256k1.md
141
170
  - documentation/shared_secret.md
142
171
  - documentation/signature.md
143
172
  - documentation/util.md
173
+ - documentation/xonly_public_key.md
144
174
  - ext/rbsecp256k1/extconf.rb
145
175
  - ext/rbsecp256k1/rbsecp256k1.c
146
176
  - lib/rbsecp256k1.rb
@@ -167,9 +197,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
167
197
  - !ruby/object:Gem::Version
168
198
  version: '0'
169
199
  requirements: []
170
- rubygems_version: 3.0.1
200
+ rubygems_version: 3.4.1
171
201
  signing_key:
172
202
  specification_version: 4
173
- summary: Native extension gem for secp256k1 ECDSA. Wraps libsecp256k1. In rbsecp256k1
174
- 3.0.0 and later libsecp256k1 is bundled with the gem.
203
+ summary: Native extension gem for secp256k1 ECDSA and Schnorr signatures. Wraps libsecp256k1
204
+ natively without any need for FFI.
175
205
  test_files: []