Class: RubyCoin::Address

Inherits:
Object
  • Object
show all
Includes:
Utilities
Defined in:
lib/ruby_coin/address.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Utilities

#extract_options!

Constructor Details

#initialize(seed, *args) ⇒ Address

Returns a new instance of Address.



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/ruby_coin/address.rb', line 7

def initialize(seed, *args)
  options     = extract_options!(args)

  case options[:format]
  when :uncompressed
    @compressed = false
  else
    @compressed = true
  end

  self.curve  = ::OpenSSL::PKey::EC.new(seed, *args)

  curve.generate_key
  curve.private_key? ? init_private_key : nil_private_key
  curve.public_key?  ? init_public_key  : nil_public_key
end

Instance Attribute Details

#compressedObject

Returns the value of attribute compressed.



5
6
7
# File 'lib/ruby_coin/address.rb', line 5

def compressed
  @compressed
end

#curveObject

Returns the value of attribute curve.



5
6
7
# File 'lib/ruby_coin/address.rb', line 5

def curve
  @curve
end

#private_keyObject Also known as: secret

Returns the value of attribute private_key.



5
6
7
# File 'lib/ruby_coin/address.rb', line 5

def private_key
  @private_key
end

#public_keyObject

Returns the value of attribute public_key.



5
6
7
# File 'lib/ruby_coin/address.rb', line 5

def public_key
  @public_key
end

Instance Method Details

#compressed?Boolean

Returns:

  • (Boolean)


30
31
32
# File 'lib/ruby_coin/address.rb', line 30

def compressed?
  !!@compressed
end

#to_sObject



26
27
28
# File 'lib/ruby_coin/address.rb', line 26

def to_s
  address
end