exonum-client-ruby 0.0.2 → 0.0.3

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: d36a7b3d7326dfd340b7fe57359f9a1108085dcfe9ca321b6df76e5fa683e2e7
4
- data.tar.gz: 3f55e725815ef517cf2ded1ed3c8169799f6e129866acf7a310d55bd8d9db08f
3
+ metadata.gz: b5f09148cf3cdd376e17a968013f2c80be217c6a10bfc05d3e63fff08207d4ae
4
+ data.tar.gz: 6beb7ecac0cf1b62ee0878e2bc26cd95b666910c3fae2624140ca323f15f70af
5
5
  SHA512:
6
- metadata.gz: 226eaf5744c50639be204c53865d2ed3b263dc07152af6c909d60c56974fc715706a3c1c38be2e3295df4e628b05029c183f9d04b6d9e8aeca68344bdd90cf73
7
- data.tar.gz: 1e2ba10868bc82cf0dd89e41bd8956ed078e25f979e7e82a88825de3ba376d076df17217d6b6de315dd3a1adf52c4148f1b42b7bd83971cd05d26bdaf3bf641f
6
+ metadata.gz: 41c00f879148471bfd767f476be2c58eeeddd922c6024bef4f1a41941a1607292000ce761afc252ead039abed6a16cf6b89172c9a367e8998f30acb4c9b21fff
7
+ data.tar.gz: 83643a3efd135ac4f46553fdc71333ebf020662b8fa4b33b16ffa8118b8419324ec84ebaf74c144e1d136ddb3cb6837ab83246d2e1fece88a37db916f9751ca0
data/README.md CHANGED
@@ -8,30 +8,37 @@ Pre alpha
8
8
 
9
9
  ## Usage
10
10
 
11
- Signing a message:
12
-
13
- # Ed25519 private key in hex
14
- secret = '867103771411a6d8e14dd2b037bb5b57ab0add4debdc39147f9d2eae342a388d29823166d18e2471a19b16d261fe329f1228048846c1acea2f370e6a89c7a4d9'
15
- # Message params template
16
- fields = [
17
- { name: 'pub_key', type: Exonum::PublicKeyT.new },
18
- { name: 'amount', type: Exonum::UInt64T.new },
19
- { name: 'seed', type: Exonum::UInt64T.new }
20
- ]
21
-
22
- # Message params values
11
+ Posting a transaction:
12
+
13
+ require 'exonum'
14
+ require 'rest_client'
15
+
16
+ keypair = Exonum::Random.generate_keypair
17
+
18
+ message = Exonum::MessageT.new 0, 2, 128, Exonum::StructT.new([
19
+ { name: 'pub_key', type: Exonum::PublicKeyT },
20
+ { name: 'name', type: Exonum::StringT }
21
+ ])
22
+
23
23
  data = {
24
- 'pub_key' => "29823166d18e2471a19b16d261fe329f1228048846c1acea2f370e6a89c7a4d9",
25
- 'amount' => 10,
26
- 'seed' => 4645085842425400387
24
+ pub_key: keypair[:public],
25
+ name: 'John Doe'
27
26
  }
28
27
 
29
- # protocol_version: 0, message_id: 1, service_id: 128
30
- message = Exonum::MessageT.new 0, 1, 128, Exonum::StructT.new(fields)
28
+ signature = message.sign "#{keypair[:private]}#{keypair[:public]}", data
29
+
30
+ JSON.parse RestClient.post(
31
+ 'http://127.0.0.1:8200/api/services/cryptocurrency/v1/wallets/transaction',
32
+ {
33
+ protocol_version: 0,
34
+ message_id: 2,
35
+ service_id: 128,
36
+ signature: signature,
37
+ body: data
38
+ }.to_json,
39
+ {content_type: :json, accept: :json}
40
+ )
31
41
 
32
- # get ed25519 signature in hex
33
- # 46386a5ef9ad0ac5d1e2fe509e3e3bfa27f4f0d376628169df76b5c02f77f8699ed966031a42bbc1a94002c4ec666f4e7d143a481e19eee306a2dfd8280c3d0e
34
- message.sign(secret, data)
35
42
 
36
43
  ## Contributing
37
44
 
@@ -32,7 +32,7 @@ module Exonum
32
32
  localShift = 0
33
33
  fields.each do |field|
34
34
  value = data.with_indifferent_access[field[:name]]
35
- raise "Field #{field[:name]} is not defined" unless value.present?
35
+ raise "Field #{field[:name]} is not defined" if value.nil?
36
36
  localFrom = from + localShift
37
37
  nestedShift = isTransactionBody ? 0 : shift
38
38
  if field[:type].is_a?(StructT)
@@ -1,4 +1,4 @@
1
1
  module Exonum
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
4
4
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: exonum-client-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yuri Gomozov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-06-09 00:00:00.000000000 Z
11
+ date: 2018-07-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ed25519