base58_gmp 0.0.7 → 1.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.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: ad881e2554d4a1b511183a4d9a90581bbe692ee0
4
+ data.tar.gz: 2fe8884cff6b04ea68dfe24c31915d15d11f2234
5
+ SHA512:
6
+ metadata.gz: ede65bd022cc60e16d30f5cf656931a9f09a06f0d7fe3af72c2a0b13179f62628da9f82d694c60f1dd34030f71b9f25dd8dc85efe795de11ed1c60436882265f
7
+ data.tar.gz: b18e889d95ae7c44d31b5efde4c4ac45ffdaf57ab8d70084fd6f93ca4da88ad90cc390f2bde6fa0c781c70eaf180b1ac7e9e7d6e2471397988ead12feb15d2c3
@@ -0,0 +1,29 @@
1
+ CHANGELOG
2
+ ---------
3
+ - **1.0.0** - 2016-09-27**
4
+ - Add `md5_base58` method `pad:` option
5
+ - Add alphabet parameter as symbol support
6
+ - Add Ripple alphabet
7
+ - Add `normalize_alphabet` and `alphabet_digits` methods
8
+ - **0.0.7** - 2011-11-21
9
+ - Add Bitcoin suppport
10
+ - Refactor API
11
+ - **0.0.6** - 2011-11-14
12
+ - Update encode API
13
+ - **0.0.5** - 2011-11-06
14
+ - Add Base58 decoding to `GMP::Z` integer
15
+ - Add Base58 encoding of `GMP::Z` integer
16
+ - Add Base58 encoding of arbitrary base strings
17
+ - Add Base58 encoding using `gmp` alphabet
18
+ - Add MD5 using `gmp` alphabet
19
+ - More tests
20
+ - **0.0.4** - 2011-11-06
21
+ - Add `flickr_to_gmp` transcoding
22
+ - Document Flickr and GMP transcoding
23
+ - **0.0.3** - 2011-11-06
24
+ - Minor fixes.
25
+ - **0.0.2** - 2011-11-06
26
+ - Documentation update.
27
+ - **0.0.1** - 2011-11-06
28
+ - Initial release including encode and md5 capabilities.
29
+ - Does not include decode due to current limitation in GMP binding. For now, the `base58` gem can be used for decoding.
@@ -1,4 +1,6 @@
1
- Copyright (c) 2011 John Wang
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2011-2016 John Wang
2
4
 
3
5
  Permission is hereby granted, free of charge, to any person obtaining
4
6
  a copy of this software and associated documentation files (the
@@ -0,0 +1,164 @@
1
+
2
+ Base58 GMP Ruby
3
+ ===============
4
+
5
+ [![Gem Version][gem-version-svg]][gem-version-link]
6
+ [![Build Status][build-status-svg]][build-status-link]
7
+ [![Coverage Status][coverage-status-svg]][coverage-status-link]
8
+ [![Dependency Status][dependency-status-svg]][dependency-status-link]
9
+ [![Code Climate][codeclimate-status-svg]][codeclimate-status-link]
10
+ [![Scrutinizer Code Quality][scrutinizer-status-svg]][scrutinizer-status-link]
11
+ [![Downloads][downloads-svg]][downloads-link]
12
+ [![Docs][docs-rubydoc-svg]][docs-rubydoc-link]
13
+ [![License][license-svg]][license-link]
14
+
15
+ [![Stories in Ready][story-status-svg]][story-status-link]
16
+
17
+ High speed Base58 encoding using [GMP](https://gmplib.org/) with MD5 support and transcoding between Flickr, Bitcoin, Ripple and GMP alphabets.
18
+
19
+ ## Installation
20
+
21
+ ### Via Bundler
22
+
23
+ Add `base58_gmp` to `Gemfile` and then run `bundle`:
24
+
25
+ ```sh
26
+ $ echo "gem 'base58_gmp'" >> Gemfile
27
+ $ bundle
28
+ ```
29
+
30
+ ### Via RubyGems
31
+
32
+ ```sh
33
+ $ gem install base58_gmp
34
+ ```
35
+
36
+ ## Usage
37
+
38
+ Alphabet can be specified using symbol or string.
39
+
40
+ ```ruby
41
+ require 'base58_gmp'
42
+
43
+ # Encode Int as Base58
44
+ Base58GMP.encode 12345 # => 4ER
45
+
46
+ # Encode GMP::Z Int as Base58
47
+ Base58GMP.encode GMP::Z(12345) # => 4ER
48
+
49
+ # Encode as Base58 using alternate alphabets
50
+ Base58GMP.encode 12345, :bitcoin # => 4fr
51
+ Base58GMP.encode 12345, :gmp # => 3cn
52
+
53
+ # Encode as Base58 using alternate alphabets using string
54
+ Base58GMP.encode 12345, 'bitcoin' # => 4fr
55
+ Base58GMP.encode 12345, 'gmp' # => 3cn
56
+
57
+ # Decode Base58 as GMP::Z Integer
58
+ Base58GMP.decode '4ER' # => 12345
59
+
60
+ # Decode Base58 as GMP::Z Integer using alternate alphabets
61
+ Base58GMP.decode '4fr', :bitcoin # => 12345
62
+ Base58GMP.decode '3cn', :gmp # => 12345
63
+
64
+ # MD5 Base58 Digest
65
+ Base58GMP.md5 'foo@bar.com' # => w6fdCRXnUXyz7EtDn5TgN9
66
+
67
+ # MD5 Base58 Digest with left padding for consistent length
68
+ Base58GMP.md5 'foo@bar.com', :flickr, pad: true # => w6fdCRXnUXyz7EtDn5TgN9
69
+
70
+ # Convert between alphabets
71
+ Base58GMP.from_to '123456789abcdefghijk', :flickr, :gmp # => 0123456789ABCDEFGHIJ
72
+ Base58GMP.from_to '0123456789ABCDEFGHIJ', :gmp, :flickr # => 123456789abcdefghijk
73
+ ```
74
+
75
+ ## Notes
76
+
77
+ ### Base58 Implementations - Flickr, Bitcoin and GMP
78
+
79
+ This class supports the Base58 alphabets used by Flickr, Bitcoin and GMP. The Flickr alphabet is the default and used when no alphabet is provided.
80
+
81
+ | Alphabet | Character Set |
82
+ |----------|---------------|
83
+ | Flickr | `[0-9a-zA-Z]` excluding `[0OIl]` |
84
+ | Bitcoin | `[0-9A-Za-z]` excluding `[0OIl]` |
85
+ | Ripple | `rpshnaf39wBUDNEGHJKLM4PQRST7VWXYZ2bcdeCg65jkm8oFqi1tuvAxyz` |
86
+ | GMP | `[0-9A-Za-v]` |
87
+
88
+ The encode, decode and md5 methods support an alphabet parameter which can be set to the supported alphabets `['bitcoin', 'flickr', 'gmp']` to indicate the value to be encoded or decoded.
89
+
90
+ ### GMP
91
+
92
+ This class requires GMP 4.2.0 or above. Prior versions are limited to Base36.
93
+
94
+ ## Supported Ruby Versions
95
+
96
+ This library supports and is [tested against](https://travis-ci.org/grokify/ringcentral-sdk-ruby) the following Ruby implementations:
97
+
98
+ 1. Ruby 2.3.0
99
+ 2. Ruby 2.2.0
100
+ 3. Ruby 2.1.0
101
+ 4. Ruby 2.0.0
102
+
103
+ ### Change Log
104
+
105
+ See [CHANGELOG.md](CHANGELOG.md)
106
+
107
+ ## Links
108
+
109
+ Project Repo
110
+
111
+ * https://github.com/grokify/base58-gmp-ruby
112
+
113
+ Flickr post introducing Base58:
114
+
115
+ * http://www.flickr.com/groups/api/discuss/72157616713786392/
116
+
117
+ Bitcoin wiki Base58 article:
118
+
119
+ * https://en.bitcoin.it/wiki/Base58Check_encoding
120
+
121
+ GMP:
122
+
123
+ * https://gmplib.org/
124
+
125
+ ## Credits
126
+
127
+ John Wang - http://johnwang.com
128
+
129
+ Some test examples courtesy Fraser Speirs' Base58Encoder Objective-C class, http://gist.github.com/101674.
130
+
131
+ ## Contributing
132
+
133
+ 1. Fork it (http://github.com/grokify/base58-gmp-ruby/fork)
134
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
135
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
136
+ 4. Push to the branch (`git push origin my-new-feature`)
137
+ 5. Create new Pull Request
138
+
139
+ ## License
140
+
141
+ Base58 GMP Ruby is available under an MIT-style license. See [LICENSE.txt](LICENSE.txt) for details.
142
+
143
+ Base58 GMP Ruby © 2011-2016 by John Wang
144
+
145
+ [gem-version-svg]: https://badge.fury.io/rb/base58_gmp.svg
146
+ [gem-version-link]: http://badge.fury.io/rb/base58_gmp
147
+ [downloads-svg]: http://ruby-gem-downloads-badge.herokuapp.com/base58_gmp
148
+ [downloads-link]: https://rubygems.org/gems/base58_gmp
149
+ [build-status-svg]: https://api.travis-ci.org/grokify/base58-gmp-ruby.svg?branch=master
150
+ [build-status-link]: https://travis-ci.org/grokify/base58-gmp-ruby
151
+ [coverage-status-svg]: https://coveralls.io/repos/grokify/base58-gmp-ruby/badge.svg?branch=master
152
+ [coverage-status-link]: https://coveralls.io/r/grokify/base58-gmp-ruby?branch=master
153
+ [dependency-status-svg]: https://gemnasium.com/grokify/base58-gmp-ruby.svg
154
+ [dependency-status-link]: https://gemnasium.com/grokify/base58-gmp-ruby
155
+ [codeclimate-status-svg]: https://codeclimate.com/github/grokify/base58-gmp-ruby/badges/gpa.svg
156
+ [codeclimate-status-link]: https://codeclimate.com/github/grokify/base58-gmp-ruby
157
+ [scrutinizer-status-svg]: https://scrutinizer-ci.com/g/grokify/base58-gmp-ruby/badges/quality-score.png?b=master
158
+ [scrutinizer-status-link]: https://scrutinizer-ci.com/g/grokify/base58-gmp-ruby/?branch=master
159
+ [story-status-svg]: https://badge.waffle.io/grokify/base58-gmp-ruby.svg?label=ready&title=Ready
160
+ [story-status-link]: https://waffle.io/grokify/base58-gmp-ruby
161
+ [docs-rubydoc-svg]: https://img.shields.io/badge/docs-rubydoc-blue.svg
162
+ [docs-rubydoc-link]: http://www.rubydoc.info/gems/base58_gmp/
163
+ [license-svg]: https://img.shields.io/badge/license-MIT-blue.svg
164
+ [license-link]: https://github.com/grokify/base58-gmp-ruby/blob/master/LICENSE.txt
@@ -1,27 +1,24 @@
1
+ lib = 'base58_gmp'
2
+ lib_file = File.expand_path("../lib/#{lib}.rb", __FILE__)
3
+ File.read(lib_file) =~ /\bVERSION\s*=\s*["'](.+?)["']/
4
+ version = $1
5
+
1
6
  Gem::Specification.new do |s|
2
7
  s.name = 'base58_gmp'
3
- s.version = '0.0.7'
4
- s.date = '2011-11-21'
8
+ s.version = version
9
+ s.date = '2016-09-27'
5
10
  s.summary = 'High speed Base58 encoding using GMP with MD5 support'
6
11
  s.description = 'High speed Base58 encoding using GMP with MD5 support and transcoding between Flickr, Bitcoin and GMP alphabets.'
7
12
  s.authors = ['John Wang']
8
13
  s.email = 'johncwang@gmail.com'
9
- s.homepage =
10
- 'http://rubygems.org/gems/base58_gmp'
11
- s.extra_rdoc_files = [
12
- 'README.rdoc'
13
- ]
14
- s.files = [
15
- 'CHANGELOG',
16
- 'MIT-LICENSE',
17
- 'README.rdoc',
18
- 'Rakefile',
19
- 'VERSION',
20
- 'base58_gmp.gemspec',
21
- 'lib/base58_gmp.rb',
22
- 'test/test_base58_gmp.rb',
23
- 'test/test_encode-decode-multi.rb',
24
- 'test/test_alphabets.rb'
25
- ]
26
-
14
+ s.homepage = 'https://github.com/grokify/'
15
+ s.licenses = ['MIT']
16
+ s.files = %w(CHANGELOG.md LICENSE.txt README.md base58_gmp.gemspec) + Dir['lib/**/*.rb']
17
+ s.required_ruby_version = '>= 2.0.0'
18
+ s.add_dependency 'gmp', '~> 0', '>= 0'
19
+ s.add_development_dependency 'bundler', '~> 1.0'
20
+ s.add_development_dependency 'coveralls', '~> 0'
21
+ s.add_development_dependency 'rake', '~> 11'
22
+ s.add_development_dependency 'simplecov', '~> 0'
23
+ s.add_development_dependency 'test-unit', '~> 3'
27
24
  end
@@ -1,39 +1,41 @@
1
1
  # Base58GMP
2
- # Copyright (c) 2011 John Wang
2
+ # Copyright (c) 2011-2016 John Wang
3
3
  # http://johnwang.com
4
- # Distributed under the MIT license as included with this plugin.
4
+ # Distributed under the MIT license as included with this gem.
5
5
 
6
- require 'rubygems'
7
6
  require 'digest/md5'
8
7
  require 'gmp'
9
8
 
10
9
  class Base58GMP
10
+ VERSION = '1.0.0'
11
11
 
12
- ALPHABETS = {
13
- 'bitcoin' => '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz',
14
- 'flickr' => '123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ',
15
- 'gmp' => '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuv'
12
+ ALPHABETS = {
13
+ bitcoin: '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz',
14
+ flickr: '123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ',
15
+ ripple: 'rpshnaf39wBUDNEGHJKLM4PQRST7VWXYZ2bcdeCg65jkm8oFqi1tuvAxyz',
16
+ gmp: '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuv'
16
17
  }
17
-
18
- DEFAULT_ALPHABET = 'flickr'
19
- GMP_ALPHABET = 'gmp'
20
-
21
- def self.integer_to_base58(integer, alphabet=DEFAULT_ALPHABET)
22
- base58 = integer.is_a?(GMP::Z) ?
23
- integer.to_s(base = 58) :
24
- GMP::Z(integer).to_s(base = 58)
25
-
26
- alphabet.is_a?(String) && alphabet.downcase == GMP_ALPHABET ?
27
- base58 :
28
- from_to(base58, GMP_ALPHABET, alphabet)
18
+
19
+ DEFAULT_ALPHABET = :flickr
20
+ GMP_ALPHABET = :gmp
21
+ BASE58_LENGTH_MD5 = 22
22
+
23
+ def self.integer_to_base58(integer, alphabet = DEFAULT_ALPHABET)
24
+ base58 = integer.is_a?(GMP::Z) \
25
+ ? integer.to_s(58) \
26
+ : GMP::Z(integer).to_s(58)
27
+
28
+ normalize_alphabet(alphabet) == GMP_ALPHABET \
29
+ ? base58 \
30
+ : from_to(base58, GMP_ALPHABET, alphabet)
29
31
  end
30
32
 
31
- def self.base58_to_integer(base58, alphabet=DEFAULT_ALPHABET)
32
- unless base58.is_a?(String)
33
- raise ArgumentError, 'Base58 argument is not a string.'
33
+ def self.base58_to_integer(base58, alphabet = DEFAULT_ALPHABET)
34
+ unless base58.is_a? String
35
+ fail ArgumentError, 'Base58 argument is not a string.'
34
36
  end
35
37
 
36
- unless alphabet.is_a?(String) && alphabet.downcase == GMP_ALPHABET
38
+ unless normalize_alphabet(alphabet) == GMP_ALPHABET
37
39
  base58 = from_to(base58, alphabet, GMP_ALPHABET)
38
40
  end
39
41
 
@@ -41,31 +43,38 @@ class Base58GMP
41
43
  end
42
44
 
43
45
  def self.from_to(base58, from_alphabet, to_alphabet)
44
- unless base58.is_a?(String)
45
- raise ArgumentError, 'Base58 argument is not a string.'
46
+ unless base58.is_a? String
47
+ fail ArgumentError, 'Base58 argument is not a string.'
46
48
  end
47
49
 
48
- unless (
49
- from_alphabet.is_a?(String) &&
50
- from_digits = ALPHABETS[from_alphabet.downcase]
51
- )
52
- raise ArgumentError, 'From encoding is not valid.'
53
- end
50
+ from_digits = alphabet_digits from_alphabet
51
+ to_digits = alphabet_digits to_alphabet
52
+
53
+ from_digits != to_digits \
54
+ ? base58.tr(from_digits, to_digits) \
55
+ : base58
56
+ end
54
57
 
55
- unless (
56
- to_alphabet.is_a?(String) &&
57
- to_digits = ALPHABETS[to_alphabet.downcase]
58
- )
59
- raise ArgumentError, 'To encoding is not valid.'
58
+ def self.normalize_alphabet(alphabet)
59
+ alphabet.to_sym.downcase
60
+ end
61
+
62
+ def self.alphabet_digits(alphabet)
63
+ alphabet = normalize_alphabet alphabet
64
+
65
+ unless ALPHABETS.key? alphabet
66
+ fail ArgumentError, "Alphabet is invalid: #{alphabet}"
60
67
  end
61
68
 
62
- from_digits != to_digits ?
63
- base58.tr(from_digits, to_digits) :
64
- base58
69
+ return ALPHABETS[alphabet]
65
70
  end
66
71
 
67
- def self.md5_base58(data, alphabet=DEFAULT_ALPHABET)
68
- integer_to_base58(Digest::MD5.hexdigest(data).hex, alphabet)
72
+ def self.md5_base58(data, alphabet = DEFAULT_ALPHABET, opts = {})
73
+ base58 = integer_to_base58(Digest::MD5.hexdigest(data).hex, alphabet)
74
+
75
+ opts.key?(:pad) && opts[:pad] \
76
+ ? base58.rjust(BASE58_LENGTH_MD5, alphabet_digits(alphabet)[0]) \
77
+ : base58
69
78
  end
70
79
 
71
80
  class << self
@@ -73,5 +82,4 @@ class Base58GMP
73
82
  alias_method :decode, :base58_to_integer
74
83
  alias_method :md5, :md5_base58
75
84
  end
76
-
77
85
  end
metadata CHANGED
@@ -1,76 +1,139 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: base58_gmp
3
- version: !ruby/object:Gem::Version
4
- hash: 17
5
- prerelease: false
6
- segments:
7
- - 0
8
- - 0
9
- - 7
10
- version: 0.0.7
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
11
5
  platform: ruby
12
- authors:
6
+ authors:
13
7
  - John Wang
14
8
  autorequire:
15
9
  bindir: bin
16
10
  cert_chain: []
17
-
18
- date: 2011-11-21 00:00:00 -08:00
19
- default_executable:
20
- dependencies: []
21
-
22
- description: High speed Base58 encoding using GMP with MD5 support and transcoding between Flickr, Bitcoin and GMP alphabets.
11
+ date: 2016-09-27 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: gmp
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ - - ">="
21
+ - !ruby/object:Gem::Version
22
+ version: '0'
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - "~>"
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ - !ruby/object:Gem::Dependency
34
+ name: bundler
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - "~>"
38
+ - !ruby/object:Gem::Version
39
+ version: '1.0'
40
+ type: :development
41
+ prerelease: false
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '1.0'
47
+ - !ruby/object:Gem::Dependency
48
+ name: coveralls
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ type: :development
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: '0'
61
+ - !ruby/object:Gem::Dependency
62
+ name: rake
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '11'
68
+ type: :development
69
+ prerelease: false
70
+ version_requirements: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - "~>"
73
+ - !ruby/object:Gem::Version
74
+ version: '11'
75
+ - !ruby/object:Gem::Dependency
76
+ name: simplecov
77
+ requirement: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - "~>"
80
+ - !ruby/object:Gem::Version
81
+ version: '0'
82
+ type: :development
83
+ prerelease: false
84
+ version_requirements: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - "~>"
87
+ - !ruby/object:Gem::Version
88
+ version: '0'
89
+ - !ruby/object:Gem::Dependency
90
+ name: test-unit
91
+ requirement: !ruby/object:Gem::Requirement
92
+ requirements:
93
+ - - "~>"
94
+ - !ruby/object:Gem::Version
95
+ version: '3'
96
+ type: :development
97
+ prerelease: false
98
+ version_requirements: !ruby/object:Gem::Requirement
99
+ requirements:
100
+ - - "~>"
101
+ - !ruby/object:Gem::Version
102
+ version: '3'
103
+ description: High speed Base58 encoding using GMP with MD5 support and transcoding
104
+ between Flickr, Bitcoin and GMP alphabets.
23
105
  email: johncwang@gmail.com
24
106
  executables: []
25
-
26
107
  extensions: []
27
-
28
- extra_rdoc_files:
29
- - README.rdoc
30
- files:
31
- - CHANGELOG
32
- - MIT-LICENSE
33
- - README.rdoc
34
- - Rakefile
35
- - VERSION
108
+ extra_rdoc_files: []
109
+ files:
110
+ - CHANGELOG.md
111
+ - LICENSE.txt
112
+ - README.md
36
113
  - base58_gmp.gemspec
37
114
  - lib/base58_gmp.rb
38
- - test/test_base58_gmp.rb
39
- - test/test_encode-decode-multi.rb
40
- - test/test_alphabets.rb
41
- has_rdoc: true
42
- homepage: http://rubygems.org/gems/base58_gmp
43
- licenses: []
44
-
115
+ homepage: https://github.com/grokify/
116
+ licenses:
117
+ - MIT
118
+ metadata: {}
45
119
  post_install_message:
46
120
  rdoc_options: []
47
-
48
- require_paths:
121
+ require_paths:
49
122
  - lib
50
- required_ruby_version: !ruby/object:Gem::Requirement
51
- none: false
52
- requirements:
123
+ required_ruby_version: !ruby/object:Gem::Requirement
124
+ requirements:
53
125
  - - ">="
54
- - !ruby/object:Gem::Version
55
- hash: 3
56
- segments:
57
- - 0
58
- version: "0"
59
- required_rubygems_version: !ruby/object:Gem::Requirement
60
- none: false
61
- requirements:
126
+ - !ruby/object:Gem::Version
127
+ version: 2.0.0
128
+ required_rubygems_version: !ruby/object:Gem::Requirement
129
+ requirements:
62
130
  - - ">="
63
- - !ruby/object:Gem::Version
64
- hash: 3
65
- segments:
66
- - 0
67
- version: "0"
131
+ - !ruby/object:Gem::Version
132
+ version: '0'
68
133
  requirements: []
69
-
70
134
  rubyforge_project:
71
- rubygems_version: 1.3.7
135
+ rubygems_version: 2.5.1
72
136
  signing_key:
73
- specification_version: 3
137
+ specification_version: 4
74
138
  summary: High speed Base58 encoding using GMP with MD5 support
75
139
  test_files: []
76
-