substrate_common.rb 0.1.5 → 0.1.10

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 227fc5f59d0619c28cd6b00ca7d8d110ada166c153b3c4361df9cf17cea8b513
4
- data.tar.gz: 609e958257fcf763604642e4f4724ff98952ae7d02eafdd0457f96822e7b3711
3
+ metadata.gz: 4036fec5896da8d53b26ed726dda5645fa88c92686cd21e2a84f2c2e2cd98140
4
+ data.tar.gz: 942e387004a8b92571ba38afa21e6df57ca5d318f9eff41f09d365b794183f36
5
5
  SHA512:
6
- metadata.gz: b851b2868a4c911618cd6f2e9ef951e0a1156ff09182e0081240ba82416bb471dacca6f630ab576f92161c4ff7ef48c77c9f233df095f8d98265c5e966a271e6
7
- data.tar.gz: 22db7541c17911b9a82d5822e4e5c5999f8e29270ddda56007908cb06be86c058e15b5c5c1e75dcdf62bfb38148a351e497df61fe88561aaa3708469c0a51f1f
6
+ metadata.gz: 8a6e3c38241995e3bcb4fab389dd7455ace07e7b6ef9ba1d6e8ec08664c0724f528a0c7d5c45e1b48c03b39990346184a23580368b05cfb88f0f0678b6c85a5d
7
+ data.tar.gz: dedc192cfe135a5dea63230da06704b63e3051902d2328b9cebac2e1834197103a0aff4401cee57ed72092f7c4b409fa06760a8b8cfbe51a1166ce2bd3d034be
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- substrate_common.rb (0.1.5)
4
+ substrate_common.rb (0.1.10)
5
5
  base58
6
6
  blake2b
7
7
  xxhash
@@ -45,16 +45,41 @@ class String
45
45
  end
46
46
 
47
47
  module Crypto
48
- def xxhash_128(data)
48
+ def self.identity(bytes)
49
+ bytes.bytes_to_hex[2..]
50
+ end
51
+
52
+ def self.twox64(data)
53
+ result = XXhash.xxh64 data, 0
54
+ bytes = result.to_s(16).rjust(16, '0').hex_to_bytes.reverse
55
+ bytes.bytes_to_hex[2..]
56
+ end
57
+
58
+ def self.twox128(data)
49
59
  bytes = []
50
60
  2.times do |i|
51
61
  result = XXhash.xxh64 data, i
52
62
  bytes = bytes + result.to_s(16).rjust(16, '0').hex_to_bytes.reverse
53
63
  end
54
- bytes.bytes_to_hex
64
+ bytes.bytes_to_hex[2..]
65
+ end
66
+
67
+ def self.twox64_concat(bytes)
68
+ data = bytes.bytes_to_utf8
69
+ twox64(data) + bytes.bytes_to_hex[2..]
70
+ end
71
+
72
+ def self.blake2_128(bytes)
73
+ data = bytes.bytes_to_utf8
74
+ Blake2b.hex data, Blake2b::Key.none, 16
55
75
  end
56
76
 
57
- def black2_256(data)
77
+ def self.blake2_256(bytes)
78
+ data = bytes.bytes_to_utf8
58
79
  Blake2b.hex data, Blake2b::Key.none, 32
59
80
  end
81
+
82
+ def self.blake2_128_concat(bytes)
83
+ blake2_128(bytes) + bytes.bytes_to_hex[2..]
84
+ end
60
85
  end
@@ -1,3 +1,3 @@
1
1
  module SubstrateCommon
2
- VERSION = "0.1.5"
2
+ VERSION = "0.1.10"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: substrate_common.rb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.5
4
+ version: 0.1.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Wu Minzhe
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-03-17 00:00:00.000000000 Z
11
+ date: 2020-12-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: blake2b