lib/base58.rb in base58-0.0.4 vs lib/base58.rb in base58-0.1.0
- old
+ new
@@ -10,11 +10,12 @@
# Converts a base58 string to a base10 integer.
def self.base58_to_int(base58_val)
int_val = 0
base58_val.reverse.split(//).each_with_index do |char,index|
- int_val += (ALPHABET.index(char))*(BASE**(index))
+ raise ArgumentError, 'Value passed not a valid Base58 String.' if (char_index = ALPHABET.index(char)).nil?
+ int_val += (char_index)*(BASE**(index))
end
int_val
end
# Converts a base10 integer to a base58 string.
@@ -25,8 +26,13 @@
mod = int_val % BASE
base58_val = ALPHABET[mod,1] + base58_val
int_val = (int_val - mod)/BASE
end
ALPHABET[int_val,1] + base58_val
+ end
+
+ class << self
+ alias_method :encode, :int_to_base58
+ alias_method :decode, :base58_to_int
end
end