rbsecp256k1 5.1.1 → 6.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +6 -34
- data/documentation/context.md +21 -4
- data/documentation/index.md +63 -4
- data/documentation/key_pair.md +4 -7
- data/documentation/public_key.md +4 -0
- data/documentation/schnorr_signature.md +30 -0
- data/documentation/secp256k1.md +5 -0
- data/documentation/shared_secret.md +0 -2
- data/documentation/xonly_public_key.md +29 -0
- data/ext/rbsecp256k1/extconf.rb +19 -14
- data/ext/rbsecp256k1/rbsecp256k1.c +626 -117
- data/lib/rbsecp256k1/context.rb +7 -0
- data/lib/rbsecp256k1/version.rb +1 -1
- metadata +20 -4
data/lib/rbsecp256k1/context.rb
CHANGED
@@ -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
|
data/lib/rbsecp256k1/version.rb
CHANGED
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:
|
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:
|
11
|
+
date: 2023-01-31 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: mini_portile2
|
@@ -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
|
@@ -151,10 +165,12 @@ files:
|
|
151
165
|
- documentation/private_key.md
|
152
166
|
- documentation/public_key.md
|
153
167
|
- documentation/recoverable_signature.md
|
168
|
+
- documentation/schnorr_signature.md
|
154
169
|
- documentation/secp256k1.md
|
155
170
|
- documentation/shared_secret.md
|
156
171
|
- documentation/signature.md
|
157
172
|
- documentation/util.md
|
173
|
+
- documentation/xonly_public_key.md
|
158
174
|
- ext/rbsecp256k1/extconf.rb
|
159
175
|
- ext/rbsecp256k1/rbsecp256k1.c
|
160
176
|
- lib/rbsecp256k1.rb
|
@@ -184,6 +200,6 @@ requirements: []
|
|
184
200
|
rubygems_version: 3.4.1
|
185
201
|
signing_key:
|
186
202
|
specification_version: 4
|
187
|
-
summary: Native extension gem for secp256k1 ECDSA. Wraps libsecp256k1
|
188
|
-
|
203
|
+
summary: Native extension gem for secp256k1 ECDSA and Schnorr signatures. Wraps libsecp256k1
|
204
|
+
natively without any need for FFI.
|
189
205
|
test_files: []
|