chainpoint 0.0.4 → 1.0.1

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.
data/docs/Chainpoint.html CHANGED
@@ -4,7 +4,7 @@
4
4
  <meta charset="utf-8">
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
6
  <title>
7
- Class: Chainpoint
7
+ Module: Chainpoint
8
8
 
9
9
  &mdash; Documentation by YARD 0.9.18
10
10
 
@@ -59,29 +59,13 @@
59
59
  <div class="clear"></div>
60
60
  </div>
61
61
 
62
- <div id="content"><h1>Class: Chainpoint
62
+ <div id="content"><h1>Module: Chainpoint
63
63
 
64
64
 
65
65
 
66
66
  </h1>
67
67
  <div class="box_info">
68
68
 
69
- <dl>
70
- <dt>Inherits:</dt>
71
- <dd>
72
- <span class="inheritName">Object</span>
73
-
74
- <ul class="fullTree">
75
- <li>Object</li>
76
-
77
- <li class="next">Chainpoint</li>
78
-
79
- </ul>
80
- <a href="#" class="inheritanceTree">show all</a>
81
-
82
- </dd>
83
- </dl>
84
-
85
69
 
86
70
 
87
71
 
@@ -95,7 +79,7 @@
95
79
  <dl>
96
80
  <dt>Defined in:</dt>
97
81
  <dd>lib/chainpoint/version.rb<span class="defines">,<br />
98
- lib/chainpoint.rb</span>
82
+ lib/chainpoint.rb,<br /> lib/chainpoint/hash.rb,<br /> lib/chainpoint/proof.rb,<br /> lib/chainpoint/proof_handle.rb</span>
99
83
  </dd>
100
84
  </dl>
101
85
 
@@ -104,23 +88,21 @@
104
88
  <h2>Overview</h2><div class="docstring">
105
89
  <div class="discussion">
106
90
 
107
- <p>chainpoint_gem</p>
108
-
109
- <pre class="code ruby"><code class="ruby">Copyright (C) 2019 Kenji Otsuka
91
+ <p>chainpoint_gem Copyright (C) 2019 Kenji Otsuka</p>
110
92
 
111
- This program is free software: you can redistribute it and/or modify
112
- it under the terms of the GNU General Public License as published by
113
- the Free Software Foundation, either version 3 of the License, or
114
- (at your option) any later version.
93
+ <p>This program is free software: you can redistribute it and/or modify it
94
+ under the terms of the GNU General Public License as published by the Free
95
+ Software Foundation, either version 3 of the License, or (at your option)
96
+ any later version.</p>
115
97
 
116
- This program is distributed in the hope that it will be useful,
117
- but WITHOUT ANY WARRANTY; without even the implied warranty of
118
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
119
- GNU General Public License for more details.
98
+ <p>This program is distributed in the hope that it will be useful, but WITHOUT
99
+ ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
100
+ FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
101
+ more details.</p>
120
102
 
121
- You should have received a copy of the GNU General Public License
122
- along with this program. If not, see &lt;http://www.gnu.org/licenses/&gt;.
123
- </code></pre>
103
+ <p>You should have received a copy of the GNU General Public License along
104
+ with this program. If not, see &lt;<a
105
+ href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/&gt;.</p>
124
106
 
125
107
 
126
108
  </div>
@@ -128,7 +110,17 @@ along with this program. If not, see &lt;http://www.gnu.org/licenses/&gt;.
128
110
  <div class="tags">
129
111
 
130
112
 
131
- </div>
113
+ </div><h2>Defined Under Namespace</h2>
114
+ <p class="children">
115
+
116
+
117
+
118
+
119
+ <strong class="classes">Classes:</strong> <span class='object_link'><a href="Chainpoint/Hash.html" title="Chainpoint::Hash (class)">Hash</a></span>, <span class='object_link'><a href="Chainpoint/Proof.html" title="Chainpoint::Proof (class)">Proof</a></span>, <span class='object_link'><a href="Chainpoint/ProofHandle.html" title="Chainpoint::ProofHandle (class)">ProofHandle</a></span>
120
+
121
+
122
+ </p>
123
+
132
124
 
133
125
  <h2>
134
126
  Constant Summary
@@ -137,10 +129,17 @@ along with this program. If not, see &lt;http://www.gnu.org/licenses/&gt;.
137
129
 
138
130
  <dl class="constants">
139
131
 
132
+ <dt id="NODE_LIST_ENDPOINTS-constant" class="">NODE_LIST_ENDPOINTS =
133
+
134
+ </dt>
135
+ <dd><pre class="code"><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>https://a.chainpoint.org/nodes/random</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
136
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>https://b.chainpoint.org/nodes/random</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
137
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>https://c.chainpoint.org/nodes/random</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span></pre></dd>
138
+
140
139
  <dt id="VERSION-constant" class="">VERSION =
141
140
 
142
141
  </dt>
143
- <dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>0.0.4</span><span class='tstring_end'>&quot;</span></span></pre></dd>
142
+ <dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>1.0.1</span><span class='tstring_end'>&#39;</span></span></pre></dd>
144
143
 
145
144
  </dl>
146
145
 
@@ -162,210 +161,7 @@ along with this program. If not, see &lt;http://www.gnu.org/licenses/&gt;.
162
161
  <li class="public ">
163
162
  <span class="summary_signature">
164
163
 
165
- <a href="#get_proof-class_method" title="get_proof (class method)">.<strong>get_proof</strong>(hash_id_node) &#x21d2; Object </a>
166
-
167
-
168
-
169
- </span>
170
-
171
-
172
-
173
-
174
-
175
-
176
-
177
-
178
-
179
- <span class="summary_desc"><div class='inline'>
180
- <p>Get proof data from the chainpoint server.</p>
181
- </div></span>
182
-
183
- </li>
184
-
185
-
186
- <li class="public ">
187
- <span class="summary_signature">
188
-
189
- <a href="#submit-class_method" title="submit (class method)">.<strong>submit</strong>(hash) &#x21d2; Object </a>
190
-
191
-
192
-
193
- </span>
194
-
195
-
196
-
197
-
198
-
199
-
200
-
201
-
202
-
203
- <span class="summary_desc"><div class='inline'>
204
- <p>Submit hash string into the chainpoint server.</p>
205
- </div></span>
206
-
207
- </li>
208
-
209
-
210
- <li class="public ">
211
- <span class="summary_signature">
212
-
213
- <a href="#submit_data-class_method" title="submit_data (class method)">.<strong>submit_data</strong>(data) &#x21d2; Object </a>
214
-
215
-
216
-
217
- </span>
218
-
219
-
220
-
221
-
222
-
223
-
224
-
225
-
226
-
227
- <span class="summary_desc"><div class='inline'>
228
- <p>Submit data into the chainpoint server.</p>
229
- </div></span>
230
-
231
- </li>
232
-
233
-
234
- <li class="public ">
235
- <span class="summary_signature">
236
-
237
- <a href="#verify-class_method" title="verify (class method)">.<strong>verify</strong>(proof) &#x21d2; Object </a>
238
-
239
-
240
-
241
- </span>
242
-
243
-
244
-
245
-
246
-
247
-
248
-
249
-
250
-
251
- <span class="summary_desc"><div class='inline'>
252
- <p>Verify the proof data.</p>
253
- </div></span>
254
-
255
- </li>
256
-
257
-
258
- </ul>
259
-
260
- <h2>
261
- Instance Method Summary
262
- <small><a href="#" class="summary_toggle">collapse</a></small>
263
- </h2>
264
-
265
- <ul class="summary">
266
-
267
- <li class="public ">
268
- <span class="summary_signature">
269
-
270
- <a href="#get_proof-instance_method" title="#get_proof (instance method)">#<strong>get_proof</strong>(hash_id_node) &#x21d2; JSON </a>
271
-
272
-
273
-
274
- </span>
275
-
276
-
277
-
278
-
279
-
280
-
281
-
282
-
283
-
284
- <span class="summary_desc"><div class='inline'>
285
- <p>Get proof data from the chainpoint server.</p>
286
- </div></span>
287
-
288
- </li>
289
-
290
-
291
- <li class="public ">
292
- <span class="summary_signature">
293
-
294
- <a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(server_url = nil) &#x21d2; Chainpoint </a>
295
-
296
-
297
-
298
- </span>
299
-
300
-
301
- <span class="note title constructor">constructor</span>
302
-
303
-
304
-
305
-
306
-
307
-
308
-
309
-
310
- <span class="summary_desc"><div class='inline'>
311
- <p>A new instance of Chainpoint.</p>
312
- </div></span>
313
-
314
- </li>
315
-
316
-
317
- <li class="public ">
318
- <span class="summary_signature">
319
-
320
- <a href="#submit-instance_method" title="#submit (instance method)">#<strong>submit</strong>(hash) &#x21d2; Array </a>
321
-
322
-
323
-
324
- </span>
325
-
326
-
327
-
328
-
329
-
330
-
331
-
332
-
333
-
334
- <span class="summary_desc"><div class='inline'>
335
- <p>Submit a hash to a chainpoint server.</p>
336
- </div></span>
337
-
338
- </li>
339
-
340
-
341
- <li class="public ">
342
- <span class="summary_signature">
343
-
344
- <a href="#submit_data-instance_method" title="#submit_data (instance method)">#<strong>submit_data</strong>(data) &#x21d2; Object </a>
345
-
346
-
347
-
348
- </span>
349
-
350
-
351
-
352
-
353
-
354
-
355
-
356
-
357
-
358
- <span class="summary_desc"><div class='inline'>
359
- <p>Submit data into the chainpoint server.</p>
360
- </div></span>
361
-
362
- </li>
363
-
364
-
365
- <li class="public ">
366
- <span class="summary_signature">
367
-
368
- <a href="#verify-instance_method" title="#verify (instance method)">#<strong>verify</strong>(proof) &#x21d2; Object </a>
164
+ <a href="#select_nodes-class_method" title="select_nodes (class method)">.<strong>select_nodes</strong>(number) &#x21d2; Object </a>
369
165
 
370
166
 
371
167
 
@@ -379,9 +175,7 @@ along with this program. If not, see &lt;http://www.gnu.org/licenses/&gt;.
379
175
 
380
176
 
381
177
 
382
- <span class="summary_desc"><div class='inline'>
383
- <p>Verify the proof data.</p>
384
- </div></span>
178
+ <span class="summary_desc"><div class='inline'></div></span>
385
179
 
386
180
  </li>
387
181
 
@@ -389,59 +183,6 @@ along with this program. If not, see &lt;http://www.gnu.org/licenses/&gt;.
389
183
  </ul>
390
184
 
391
185
 
392
- <div id="constructor_details" class="method_details_list">
393
- <h2>Constructor Details</h2>
394
-
395
- <div class="method_details first">
396
- <h3 class="signature first" id="initialize-instance_method">
397
-
398
- #<strong>initialize</strong>(server_url = nil) &#x21d2; <tt><span class='object_link'><a href="" title="Chainpoint (class)">Chainpoint</a></span></tt>
399
-
400
-
401
-
402
-
403
-
404
- </h3><div class="docstring">
405
- <div class="discussion">
406
-
407
- <p>Returns a new instance of Chainpoint</p>
408
-
409
-
410
- </div>
411
- </div>
412
- <div class="tags">
413
-
414
-
415
- </div><table class="source_code">
416
- <tr>
417
- <td>
418
- <pre class="lines">
419
-
420
-
421
- 25
422
- 26
423
- 27
424
- 28
425
- 29
426
- 30
427
- 31</pre>
428
- </td>
429
- <td>
430
- <pre class="code"><span class="info file"># File 'lib/chainpoint.rb', line 25</span>
431
-
432
- <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_server_url'>server_url</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
433
- <span class='kw'>if</span> <span class='id identifier rubyid_server_url'>server_url</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
434
- <span class='ivar'>@server_url</span> <span class='op'>=</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_pickup_server'>pickup_server</span>
435
- <span class='kw'>return</span>
436
- <span class='kw'>end</span>
437
- <span class='ivar'>@server_url</span> <span class='op'>=</span> <span class='id identifier rubyid_server_url'>server_url</span>
438
- <span class='kw'>end</span></pre>
439
- </td>
440
- </tr>
441
- </table>
442
- </div>
443
-
444
- </div>
445
186
 
446
187
 
447
188
  <div id="class_method_details" class="method_details_list">
@@ -449,562 +190,33 @@ along with this program. If not, see &lt;http://www.gnu.org/licenses/&gt;.
449
190
 
450
191
 
451
192
  <div class="method_details first">
452
- <h3 class="signature first" id="get_proof-class_method">
453
-
454
- .<strong>get_proof</strong>(hash_id_node) &#x21d2; <tt>Object</tt>
455
-
456
-
457
-
458
-
193
+ <h3 class="signature first" id="select_nodes-class_method">
459
194
 
460
- </h3><div class="docstring">
461
- <div class="discussion">
462
-
463
- <p>Get proof data from the chainpoint server.</p>
464
-
465
-
466
- </div>
467
- </div>
468
- <div class="tags">
469
- <p class="tag_title">Parameters:</p>
470
- <ul class="param">
471
-
472
- <li>
473
-
474
- <span class='name'>hash_id_node</span>
475
-
476
-
477
- <span class='type'>(<tt>String</tt>)</span>
478
-
479
-
480
-
481
- &mdash;
482
- <div class='inline'>
483
- <p>hash id node of the proof</p>
484
- </div>
485
-
486
- </li>
195
+ .<strong>select_nodes</strong>(number) &#x21d2; <tt>Object</tt>
487
196
 
488
- </ul>
489
197
 
490
-
491
- </div><table class="source_code">
492
- <tr>
493
- <td>
494
- <pre class="lines">
495
-
496
-
497
- 74
498
- 75
499
- 76</pre>
500
- </td>
501
- <td>
502
- <pre class="code"><span class="info file"># File 'lib/chainpoint.rb', line 74</span>
503
-
504
- <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_get_proof'>get_proof</span><span class='lparen'>(</span><span class='id identifier rubyid_hash_id_node'>hash_id_node</span><span class='rparen'>)</span>
505
- <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_get_proof'>get_proof</span><span class='lparen'>(</span><span class='id identifier rubyid_hash_id_node'>hash_id_node</span><span class='rparen'>)</span>
506
- <span class='kw'>end</span></pre>
507
- </td>
508
- </tr>
509
- </table>
510
- </div>
511
-
512
- <div class="method_details ">
513
- <h3 class="signature " id="submit-class_method">
514
-
515
- .<strong>submit</strong>(hash) &#x21d2; <tt>Object</tt>
516
198
 
517
199
 
518
200
 
519
-
520
-
521
- </h3><div class="docstring">
522
- <div class="discussion">
523
-
524
- <p>Submit hash string into the chainpoint server.</p>
525
-
526
-
527
- </div>
528
- </div>
529
- <div class="tags">
530
- <p class="tag_title">Parameters:</p>
531
- <ul class="param">
532
-
533
- <li>
534
-
535
- <span class='name'>data</span>
536
-
537
-
538
- <span class='type'>(<tt>String</tt>)</span>
539
-
540
-
541
-
542
- &mdash;
543
- <div class='inline'>
544
- <p>hash String which you want to submit into the chainpoint server.</p>
545
- </div>
546
-
547
- </li>
548
-
549
- </ul>
550
-
551
-
552
- </div><table class="source_code">
553
- <tr>
554
- <td>
555
- <pre class="lines">
556
-
557
-
558
- 51
559
- 52
560
- 53</pre>
561
- </td>
562
- <td>
563
- <pre class="code"><span class="info file"># File 'lib/chainpoint.rb', line 51</span>
564
-
565
- <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_submit'>submit</span><span class='lparen'>(</span><span class='id identifier rubyid_hash'>hash</span><span class='rparen'>)</span>
566
- <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_submit'>submit</span><span class='lparen'>(</span><span class='id identifier rubyid_hash'>hash</span><span class='rparen'>)</span>
567
- <span class='kw'>end</span></pre>
568
- </td>
569
- </tr>
570
- </table>
571
- </div>
572
-
573
- <div class="method_details ">
574
- <h3 class="signature " id="submit_data-class_method">
575
-
576
- .<strong>submit_data</strong>(data) &#x21d2; <tt>Object</tt>
577
-
578
-
579
-
580
-
581
-
582
- </h3><div class="docstring">
583
- <div class="discussion">
584
-
585
- <p>Submit data into the chainpoint server.</p>
586
-
587
-
588
- </div>
589
- </div>
590
- <div class="tags">
591
- <p class="tag_title">Parameters:</p>
592
- <ul class="param">
593
-
594
- <li>
595
-
596
- <span class='name'>data</span>
597
-
598
-
599
- <span class='type'>(<tt>Object</tt>)</span>
600
-
601
-
602
-
603
- &mdash;
604
- <div class='inline'>
605
- <p>data which you want to submit into the chainpoint server.</p>
606
- </div>
607
-
608
- </li>
609
-
610
- </ul>
611
-
612
-
613
- </div><table class="source_code">
614
- <tr>
615
- <td>
616
- <pre class="lines">
617
-
618
-
619
- 36
620
- 37
621
- 38</pre>
622
- </td>
623
- <td>
624
- <pre class="code"><span class="info file"># File 'lib/chainpoint.rb', line 36</span>
625
-
626
- <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_submit_data'>submit_data</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span>
627
- <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_submit_data'>submit_data</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span>
628
- <span class='kw'>end</span></pre>
629
- </td>
630
- </tr>
631
- </table>
632
- </div>
633
-
634
- <div class="method_details ">
635
- <h3 class="signature " id="verify-class_method">
636
-
637
- .<strong>verify</strong>(proof) &#x21d2; <tt>Object</tt>
638
-
639
-
640
-
641
-
642
-
643
- </h3><div class="docstring">
644
- <div class="discussion">
645
-
646
- <p>Verify the proof data.</p>
647
-
648
-
649
- </div>
650
- </div>
651
- <div class="tags">
652
- <p class="tag_title">Parameters:</p>
653
- <ul class="param">
654
-
655
- <li>
656
-
657
- <span class='name'>proof</span>
658
-
659
-
660
- <span class='type'>(<tt>String</tt>)</span>
661
-
662
-
663
-
664
- &mdash;
665
- <div class='inline'>
666
- <p>proof string</p>
667
- </div>
668
-
669
- </li>
670
-
671
- </ul>
672
-
673
-
674
- </div><table class="source_code">
675
- <tr>
676
- <td>
677
- <pre class="lines">
678
-
679
-
680
- 91
681
- 92
682
- 93</pre>
683
- </td>
684
- <td>
685
- <pre class="code"><span class="info file"># File 'lib/chainpoint.rb', line 91</span>
686
-
687
- <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_verify'>verify</span><span class='lparen'>(</span><span class='id identifier rubyid_proof'>proof</span><span class='rparen'>)</span>
688
- <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_verify'>verify</span><span class='lparen'>(</span><span class='id identifier rubyid_proof'>proof</span><span class='rparen'>)</span>
689
- <span class='kw'>end</span></pre>
690
- </td>
691
- </tr>
692
- </table>
693
- </div>
694
-
695
- </div>
696
-
697
- <div id="instance_method_details" class="method_details_list">
698
- <h2>Instance Method Details</h2>
699
-
700
-
701
- <div class="method_details first">
702
- <h3 class="signature first" id="get_proof-instance_method">
703
-
704
- #<strong>get_proof</strong>(hash_id_node) &#x21d2; <tt>JSON</tt>
705
-
706
-
707
-
708
-
709
-
710
- </h3><div class="docstring">
711
- <div class="discussion">
712
-
713
- <p>Get proof data from the chainpoint server.</p>
714
-
715
-
716
- </div>
717
- </div>
718
- <div class="tags">
719
- <p class="tag_title">Parameters:</p>
720
- <ul class="param">
721
-
722
- <li>
723
-
724
- <span class='name'>hash_id_node</span>
725
-
726
-
727
- <span class='type'>(<tt>String</tt>)</span>
728
-
729
-
730
-
731
- &mdash;
732
- <div class='inline'>
733
- <p>hash id node of the proof</p>
734
- </div>
735
-
736
- </li>
737
-
738
- </ul>
739
-
740
- <p class="tag_title">Returns:</p>
741
- <ul class="return">
742
-
743
- <li>
744
-
745
-
746
- <span class='type'>(<tt>JSON</tt>)</span>
747
-
748
-
749
-
750
- </li>
751
-
752
- </ul>
753
-
754
- </div><table class="source_code">
755
- <tr>
756
- <td>
757
- <pre class="lines">
758
-
759
-
760
- 82
761
- 83
762
- 84
763
- 85
764
- 86</pre>
765
- </td>
766
- <td>
767
- <pre class="code"><span class="info file"># File 'lib/chainpoint.rb', line 82</span>
768
-
769
- <span class='kw'>def</span> <span class='id identifier rubyid_get_proof'>get_proof</span><span class='lparen'>(</span><span class='id identifier rubyid_hash_id_node'>hash_id_node</span><span class='rparen'>)</span>
770
- <span class='id identifier rubyid_uri'>uri</span> <span class='op'>=</span> <span class='const'>URI</span><span class='lparen'>(</span><span class='ivar'>@server_url</span> <span class='op'>+</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>/proofs/</span><span class='tstring_end'>&#39;</span></span> <span class='op'>+</span> <span class='id identifier rubyid_hash_id_node'>hash_id_node</span><span class='rparen'>)</span>
771
- <span class='id identifier rubyid_r'>r</span> <span class='op'>=</span> <span class='const'>Net</span><span class='op'>::</span><span class='const'>HTTP</span><span class='period'>.</span><span class='id identifier rubyid_get'>get</span><span class='lparen'>(</span><span class='id identifier rubyid_uri'>uri</span><span class='rparen'>)</span>
772
- <span class='kw'>return</span> <span class='const'>JSON</span><span class='period'>.</span><span class='id identifier rubyid_parse'>parse</span><span class='lparen'>(</span><span class='id identifier rubyid_r'>r</span><span class='rparen'>)</span>
773
- <span class='kw'>end</span></pre>
774
- </td>
775
- </tr>
776
- </table>
777
- </div>
778
-
779
- <div class="method_details ">
780
- <h3 class="signature " id="submit-instance_method">
781
-
782
- #<strong>submit</strong>(hash) &#x21d2; <tt>Array</tt>
783
-
784
-
785
-
786
-
787
-
788
- </h3><div class="docstring">
789
- <div class="discussion">
790
-
791
- <p>Submit a hash to a chainpoint server</p>
792
-
793
-
794
- </div>
795
- </div>
796
- <div class="tags">
797
- <p class="tag_title">Parameters:</p>
798
- <ul class="param">
799
-
800
- <li>
801
-
802
- <span class='name'>data</span>
803
-
804
-
805
- <span class='type'>(<tt>String</tt>)</span>
806
-
807
-
808
-
809
- &mdash;
810
- <div class='inline'>
811
- <p>hash String which you want to submit into the chainpoint server.</p>
812
- </div>
813
-
814
- </li>
815
-
816
- </ul>
817
-
818
- <p class="tag_title">Returns:</p>
819
- <ul class="return">
820
-
821
- <li>
822
-
823
-
824
- <span class='type'>(<tt>Array</tt>)</span>
825
-
826
-
827
-
828
- &mdash;
829
- <div class='inline'>
830
- <p>An array of hashes containing the keys `hash`, `hash_id_node` and `uri`</p>
831
- </div>
832
-
833
- </li>
834
-
835
- </ul>
836
-
837
- </div><table class="source_code">
838
- <tr>
839
- <td>
840
- <pre class="lines">
841
-
842
-
843
- 59
844
- 60
845
- 61
846
- 62
847
- 63
848
- 64
849
- 65
850
- 66
851
- 67
852
- 68
853
- 69</pre>
854
- </td>
855
- <td>
856
- <pre class="code"><span class="info file"># File 'lib/chainpoint.rb', line 59</span>
857
-
858
- <span class='kw'>def</span> <span class='id identifier rubyid_submit'>submit</span><span class='lparen'>(</span><span class='id identifier rubyid_hash'>hash</span><span class='rparen'>)</span>
859
- <span class='id identifier rubyid_uri'>uri</span> <span class='op'>=</span> <span class='const'>URI</span><span class='lparen'>(</span><span class='ivar'>@server_url</span> <span class='op'>+</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>/hashes</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
860
- <span class='id identifier rubyid_request'>request</span> <span class='op'>=</span> <span class='const'>Net</span><span class='op'>::</span><span class='const'>HTTP</span><span class='op'>::</span><span class='const'>Post</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_uri'>uri</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Content-Type</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>application/json</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
861
- <span class='id identifier rubyid_request'>request</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span> <span class='op'>=</span> <span class='lbrace'>{</span> <span class='label'>hashes:</span> <span class='lbracket'>[</span><span class='id identifier rubyid_hash'>hash</span><span class='rbracket'>]</span> <span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_to_json'>to_json</span>
862
- <span class='id identifier rubyid_response'>response</span> <span class='op'>=</span> <span class='const'>Net</span><span class='op'>::</span><span class='const'>HTTP</span><span class='period'>.</span><span class='id identifier rubyid_start'>start</span><span class='lparen'>(</span><span class='id identifier rubyid_uri'>uri</span><span class='period'>.</span><span class='id identifier rubyid_hostname'>hostname</span><span class='comma'>,</span> <span class='id identifier rubyid_uri'>uri</span><span class='period'>.</span><span class='id identifier rubyid_port'>port</span><span class='comma'>,</span> <span class='label'>use_ssl:</span> <span class='id identifier rubyid_uri'>uri</span><span class='period'>.</span><span class='id identifier rubyid_scheme'>scheme</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>https</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_http'>http</span><span class='op'>|</span>
863
- <span class='id identifier rubyid_http'>http</span><span class='period'>.</span><span class='id identifier rubyid_request'>request</span><span class='lparen'>(</span><span class='id identifier rubyid_request'>request</span><span class='rparen'>)</span>
864
- <span class='kw'>end</span>
865
-
866
- <span class='id identifier rubyid_hashes'>hashes</span> <span class='op'>=</span> <span class='const'>JSON</span><span class='period'>.</span><span class='id identifier rubyid_parse'>parse</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span><span class='rparen'>)</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>hashes</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span>
867
- <span class='id identifier rubyid_hashes'>hashes</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_hash'>hash</span><span class='op'>|</span> <span class='id identifier rubyid_hash'>hash</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>uri</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='ivar'>@server_url</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
868
- <span class='kw'>end</span></pre>
869
- </td>
870
- </tr>
871
- </table>
872
- </div>
873
-
874
- <div class="method_details ">
875
- <h3 class="signature " id="submit_data-instance_method">
876
-
877
- #<strong>submit_data</strong>(data) &#x21d2; <tt>Object</tt>
878
-
879
-
880
-
881
-
882
-
883
- </h3><div class="docstring">
884
- <div class="discussion">
885
-
886
- <p>Submit data into the chainpoint server.</p>
887
-
888
-
889
- </div>
890
- </div>
891
- <div class="tags">
892
- <p class="tag_title">Parameters:</p>
893
- <ul class="param">
894
-
895
- <li>
896
-
897
- <span class='name'>data</span>
898
-
899
-
900
- <span class='type'>(<tt>Object</tt>)</span>
901
-
902
-
903
-
904
- &mdash;
905
- <div class='inline'>
906
- <p>data which you want to submit into the chainpoint server.</p>
907
- </div>
908
-
909
- </li>
910
-
911
- </ul>
912
-
913
-
914
- </div><table class="source_code">
915
- <tr>
916
- <td>
917
- <pre class="lines">
918
-
919
-
920
- 43
921
- 44
922
- 45
923
- 46</pre>
924
- </td>
925
- <td>
926
- <pre class="code"><span class="info file"># File 'lib/chainpoint.rb', line 43</span>
927
-
928
- <span class='kw'>def</span> <span class='id identifier rubyid_submit_data'>submit_data</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span>
929
- <span class='id identifier rubyid_hash'>hash</span> <span class='op'>=</span> <span class='const'>Digest</span><span class='op'>::</span><span class='const'>SHA256</span><span class='period'>.</span><span class='id identifier rubyid_digest'>digest</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_unpack'>unpack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>H*</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span>
930
- <span class='kw'>return</span> <span class='id identifier rubyid_submit'>submit</span><span class='lparen'>(</span><span class='id identifier rubyid_hash'>hash</span><span class='rparen'>)</span>
931
- <span class='kw'>end</span></pre>
932
- </td>
933
- </tr>
934
- </table>
935
- </div>
936
-
937
- <div class="method_details ">
938
- <h3 class="signature " id="verify-instance_method">
939
-
940
- #<strong>verify</strong>(proof) &#x21d2; <tt>Object</tt>
941
-
942
-
943
-
944
-
945
-
946
- </h3><div class="docstring">
947
- <div class="discussion">
948
-
949
- <p>Verify the proof data.</p>
950
-
951
-
952
- </div>
953
- </div>
954
- <div class="tags">
955
- <p class="tag_title">Parameters:</p>
956
- <ul class="param">
957
-
958
- <li>
959
-
960
- <span class='name'>proof</span>
961
-
962
-
963
- <span class='type'>(<tt>String</tt>)</span>
964
-
965
-
966
-
967
- &mdash;
968
- <div class='inline'>
969
- <p>proof string</p>
970
- </div>
971
-
972
- </li>
973
-
974
- </ul>
975
-
976
-
977
- </div><table class="source_code">
201
+ </h3><table class="source_code">
978
202
  <tr>
979
203
  <td>
980
204
  <pre class="lines">
981
205
 
982
206
 
983
- 98
984
- 99
985
- 100
986
- 101
987
- 102
988
- 103
989
- 104
990
- 105
991
- 106
992
- 107
993
- 108</pre>
207
+ 32
208
+ 33
209
+ 34
210
+ 35
211
+ 36</pre>
994
212
  </td>
995
213
  <td>
996
- <pre class="code"><span class="info file"># File 'lib/chainpoint.rb', line 98</span>
214
+ <pre class="code"><span class="info file"># File 'lib/chainpoint.rb', line 32</span>
997
215
 
998
- <span class='kw'>def</span> <span class='id identifier rubyid_verify'>verify</span><span class='lparen'>(</span><span class='id identifier rubyid_proof'>proof</span><span class='rparen'>)</span>
999
- <span class='id identifier rubyid_uri'>uri</span> <span class='op'>=</span> <span class='const'>URI</span><span class='lparen'>(</span><span class='ivar'>@server_url</span> <span class='op'>+</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>/verify</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
1000
- <span class='id identifier rubyid_req'>req</span> <span class='op'>=</span> <span class='const'>Net</span><span class='op'>::</span><span class='const'>HTTP</span><span class='op'>::</span><span class='const'>Post</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_uri'>uri</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Content-Type</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>application/json</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
1001
- <span class='id identifier rubyid_req'>req</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='label'>proofs:</span> <span class='lbracket'>[</span><span class='id identifier rubyid_proof'>proof</span><span class='rbracket'>]</span><span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_to_json'>to_json</span>
1002
- <span class='id identifier rubyid_res'>res</span> <span class='op'>=</span> <span class='const'>Net</span><span class='op'>::</span><span class='const'>HTTP</span><span class='period'>.</span><span class='id identifier rubyid_start'>start</span><span class='lparen'>(</span>
1003
- <span class='id identifier rubyid_uri'>uri</span><span class='period'>.</span><span class='id identifier rubyid_hostname'>hostname</span><span class='comma'>,</span> <span class='id identifier rubyid_uri'>uri</span><span class='period'>.</span><span class='id identifier rubyid_port'>port</span><span class='comma'>,</span> <span class='label'>use_ssl:</span> <span class='id identifier rubyid_uri'>uri</span><span class='period'>.</span><span class='id identifier rubyid_scheme'>scheme</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>https</span><span class='tstring_end'>&quot;</span></span>
1004
- <span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_http'>http</span><span class='op'>|</span>
1005
- <span class='id identifier rubyid_http'>http</span><span class='period'>.</span><span class='id identifier rubyid_request'>request</span><span class='lparen'>(</span><span class='id identifier rubyid_req'>req</span><span class='rparen'>)</span>
1006
- <span class='kw'>end</span>
1007
- <span class='kw'>return</span> <span class='const'>JSON</span><span class='period'>.</span><span class='id identifier rubyid_parse'>parse</span><span class='lparen'>(</span><span class='id identifier rubyid_res'>res</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span><span class='rparen'>)</span>
216
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_select_nodes'>select_nodes</span><span class='lparen'>(</span><span class='id identifier rubyid_number'>number</span><span class='rparen'>)</span>
217
+ <span class='id identifier rubyid_node_list_uri'>node_list_uri</span> <span class='op'>=</span> <span class='const'>URI</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="#NODE_LIST_ENDPOINTS-constant" title="Chainpoint::NODE_LIST_ENDPOINTS (constant)">NODE_LIST_ENDPOINTS</a></span></span><span class='period'>.</span><span class='id identifier rubyid_sample'>sample</span><span class='rparen'>)</span>
218
+ <span class='id identifier rubyid_servers'>servers</span> <span class='op'>=</span> <span class='const'>JSON</span><span class='period'>.</span><span class='id identifier rubyid_parse'>parse</span><span class='lparen'>(</span><span class='const'>Net</span><span class='op'>::</span><span class='const'>HTTP</span><span class='period'>.</span><span class='id identifier rubyid_get'>get</span><span class='lparen'>(</span><span class='id identifier rubyid_node_list_uri'>node_list_uri</span><span class='rparen'>)</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_sample'>sample</span><span class='lparen'>(</span><span class='id identifier rubyid_number'>number</span><span class='rparen'>)</span>
219
+ <span class='id identifier rubyid_servers'>servers</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_server'>server</span><span class='op'>|</span> <span class='id identifier rubyid_server'>server</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>public_uri</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='rbrace'>}</span>
1008
220
  <span class='kw'>end</span></pre>
1009
221
  </td>
1010
222
  </tr>
@@ -1016,7 +228,7 @@ along with this program. If not, see &lt;http://www.gnu.org/licenses/&gt;.
1016
228
  </div>
1017
229
 
1018
230
  <div id="footer">
1019
- Generated on Thu Mar 28 19:30:06 2019 by
231
+ Generated on Sun Mar 31 14:30:37 2019 by
1020
232
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
1021
233
  0.9.18 (ruby-2.5.1).
1022
234
  </div>