sr25519 0.7.0 → 0.8.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/Gemfile.lock +1 -1
- data/lib/ed25519_lib.rb +17 -8
- data/lib/sr25519/version.rb +1 -1
- data/lib/sr25519_lib.rb +28 -17
- data/sr25519.gemspec +3 -0
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f850eb36c7764e13d17631a64774c526e4358d6943d22148e8fe73ef3dc4fba1
|
4
|
+
data.tar.gz: 23599472953b497a43cd86b4f3352315bb5b5fca9b8ee26fead4c8f3ee50a672
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 868da7d03a1d747a65d093704c160f37e61714aa273f186da73ed38587ccd08bbfbc20df40e2d6344ee2d305a2f83f7d6e1876fe4ed5433dd60faf8ec53a5962
|
7
|
+
data.tar.gz: 97679a83b7680568aaf8a709ce165fd24af6e048e114b4a43b75c06971abf5eedbfb2ac0aa717e3ac50f4df9c3cdc8440149ac08b75f9f7f835eaed6262ca4bd
|
data/Gemfile.lock
CHANGED
data/lib/ed25519_lib.rb
CHANGED
@@ -1,9 +1,11 @@
|
|
1
1
|
require "ed25519"
|
2
2
|
class ED25519
|
3
3
|
|
4
|
-
|
5
|
-
#
|
6
|
-
#
|
4
|
+
# Sign the given message
|
5
|
+
# @param message [String] the message
|
6
|
+
# @param key_pair [Class] ED25519 keypair
|
7
|
+
# @return [String] sign result as a hex string
|
8
|
+
# @example
|
7
9
|
# message = "Hello world"
|
8
10
|
# seed = "0xfac7959dbfe72f052e5a0c3c8d6530f202b02fd8f9f5ca3580ec8deb7797479e"
|
9
11
|
# keypair = ED25519.keypair_from_seed(seed)
|
@@ -14,8 +16,11 @@ class ED25519
|
|
14
16
|
end
|
15
17
|
|
16
18
|
##
|
17
|
-
# Verify the sign result
|
18
|
-
#
|
19
|
+
# Verify the sign result
|
20
|
+
# @param message [String] the message
|
21
|
+
# @param key_pair [Class] ED25519 keypair
|
22
|
+
# @return [String] sign result as a hex string
|
23
|
+
# @example
|
19
24
|
# message = "Hello world"
|
20
25
|
# seed = "0xfac7959dbfe72f052e5a0c3c8d6530f202b02fd8f9f5ca3580ec8deb7797479e"
|
21
26
|
# public_key = ED25519.get_public_key_from_seed(seed)
|
@@ -41,7 +46,9 @@ class ED25519
|
|
41
46
|
|
42
47
|
##
|
43
48
|
# Generate ED25519 keypair
|
44
|
-
#
|
49
|
+
# @param seed [String] private key
|
50
|
+
# @return [Class] ED25519 keypair
|
51
|
+
# @example
|
45
52
|
# seed = "0xfac7959dbfe72f052e5a0c3c8d6530f202b02fd8f9f5ca3580ec8deb7797479e"
|
46
53
|
# keypair = ED25519.keypair_from_seed(seed)
|
47
54
|
|
@@ -55,8 +62,10 @@ class ED25519
|
|
55
62
|
end
|
56
63
|
|
57
64
|
##
|
58
|
-
# Get ED25519 public key
|
59
|
-
#
|
65
|
+
# Get ED25519 public key
|
66
|
+
# @param seed [String] private key
|
67
|
+
# @return [String] public key
|
68
|
+
# @example
|
60
69
|
# seed = "0xfac7959dbfe72f052e5a0c3c8d6530f202b02fd8f9f5ca3580ec8deb7797479e"
|
61
70
|
# public_key = ED25519.get_public_key_from_seed(seed)
|
62
71
|
|
data/lib/sr25519/version.rb
CHANGED
data/lib/sr25519_lib.rb
CHANGED
@@ -65,9 +65,11 @@ end
|
|
65
65
|
|
66
66
|
class SR25519
|
67
67
|
|
68
|
-
|
69
|
-
#
|
70
|
-
#
|
68
|
+
# Sign message result
|
69
|
+
# @param message [String] message
|
70
|
+
# @param private_key [String] private_key
|
71
|
+
# @return [String] sign result
|
72
|
+
# @example
|
71
73
|
# message = "Hello World"
|
72
74
|
# private_key = "0xfac7959dbfe72f052e5a0c3c8d6530f202b02fd8f9f5ca3580ec8deb7797479e"
|
73
75
|
# signature_result = SR25519.sr25519_sign(message, private_key)
|
@@ -80,9 +82,11 @@ class SR25519
|
|
80
82
|
sig.to_s
|
81
83
|
end
|
82
84
|
|
83
|
-
|
84
|
-
#
|
85
|
-
#
|
85
|
+
# Sign message result
|
86
|
+
# @param message [String] message
|
87
|
+
# @param key_pair [KeyPair] Sr25519 keypair
|
88
|
+
# @return [String] sign result
|
89
|
+
# @example
|
86
90
|
# message = "Hello World"
|
87
91
|
# seed = "0xfac7959dbfe72f052e5a0c3c8d6530f202b02fd8f9f5ca3580ec8deb7797479e"
|
88
92
|
# keypair = SR25519.keypair_from_seed(seed)
|
@@ -95,9 +99,12 @@ class SR25519
|
|
95
99
|
sig.to_s
|
96
100
|
end
|
97
101
|
|
98
|
-
|
99
|
-
#
|
100
|
-
#
|
102
|
+
# Verify the sign result
|
103
|
+
# @param address [String] account address
|
104
|
+
# @param message [String] message
|
105
|
+
# @param signature_result [String] Sr25519 sign result
|
106
|
+
# @return [boolean] sign result
|
107
|
+
# @example
|
101
108
|
# message = "Hello World"
|
102
109
|
# seed = "0xfac7959dbfe72f052e5a0c3c8d6530f202b02fd8f9f5ca3580ec8deb7797479e"
|
103
110
|
# keypair = SR25519.keypair_from_seed(seed)
|
@@ -121,9 +128,10 @@ class SR25519
|
|
121
128
|
verify = SR25519Lib.sr25519_verify(sig, msg, message.size, pk)
|
122
129
|
end
|
123
130
|
|
124
|
-
##
|
125
131
|
# Generate SR25519 keypair
|
126
|
-
#
|
132
|
+
# @param seed [String] private key
|
133
|
+
# @return [KeyPair] SR25519 keypair
|
134
|
+
# @example
|
127
135
|
# seed = "0xfac7959dbfe72f052e5a0c3c8d6530f202b02fd8f9f5ca3580ec8deb7797479e"
|
128
136
|
# keypair = SR25519.keypair_from_seed(seed)
|
129
137
|
def self.keypair_from_seed(seed)
|
@@ -138,9 +146,10 @@ class SR25519
|
|
138
146
|
return key_pair
|
139
147
|
end
|
140
148
|
|
141
|
-
|
142
|
-
#
|
143
|
-
#
|
149
|
+
# Get SR25519 public key
|
150
|
+
# @param seed [String] private key
|
151
|
+
# @return [String] public key
|
152
|
+
# @example
|
144
153
|
# seed = "0xfac7959dbfe72f052e5a0c3c8d6530f202b02fd8f9f5ca3580ec8deb7797479e"
|
145
154
|
# public_key = SR25519.get_public_key_from_seed(seed)
|
146
155
|
def self.get_public_key_from_seed(seed)
|
@@ -148,9 +157,11 @@ class SR25519
|
|
148
157
|
key_pair.public_key
|
149
158
|
end
|
150
159
|
|
151
|
-
|
152
|
-
#
|
153
|
-
#
|
160
|
+
# Get SR25519 public key
|
161
|
+
# @param address [String] account address
|
162
|
+
# @param addr_type [Interger] address type
|
163
|
+
# @return [String] public key
|
164
|
+
# @example
|
154
165
|
# seed = "0xfac7959dbfe72f052e5a0c3c8d6530f202b02fd8f9f5ca3580ec8deb7797479e"
|
155
166
|
# public_key = SR25519.get_public_key_from_seed(seed)
|
156
167
|
# address = Address.encode(public_key.to_s)
|
data/sr25519.gemspec
CHANGED
@@ -28,6 +28,9 @@ Gem::Specification.new do |spec|
|
|
28
28
|
spec.bindir = "exe"
|
29
29
|
spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
|
30
30
|
spec.require_paths = ["lib"]
|
31
|
+
spec.extra_rdoc_files = [
|
32
|
+
"README.md"
|
33
|
+
]
|
31
34
|
|
32
35
|
spec.add_development_dependency "rake", "~> 13.0"
|
33
36
|
spec.add_development_dependency "rspec", "~> 3.2"
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sr25519
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.8.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- xuxh
|
@@ -105,7 +105,8 @@ email:
|
|
105
105
|
- xxh2611@gmail.com
|
106
106
|
executables: []
|
107
107
|
extensions: []
|
108
|
-
extra_rdoc_files:
|
108
|
+
extra_rdoc_files:
|
109
|
+
- README.md
|
109
110
|
files:
|
110
111
|
- ".github/workflows/ruby.yml"
|
111
112
|
- ".gitignore"
|