Sha256: 2a940ffc36d7dc8eda45386589e641acb0ffb7ace5dbbd7758279b222747a2df

Contents?: true

Size: 1001 Bytes

Versions: 4

Compression:

Stored size: 1001 Bytes

Contents

module Sidetree
  module Model
    class Suffix
      attr_reader :delta_hash, :recovery_commitment

      # @param [String] delta_hash Base64 encoded delta hash.
      # @param [String] recovery_commitment Base64 encoded recovery commitment.
      def initialize(delta_hash, recovery_commitment)
        @delta_hash = delta_hash
        @recovery_commitment = recovery_commitment
      end

      # Create Suffix object from hash object.
      # @return [Sidetree::Model::Suffix]
      # @raise [Sidetree::Error]
      def self.from_object(object)
        Sidetree::Validator.validate_suffix_data!(object)
        Suffix.new(object[:deltaHash], object[:recoveryCommitment])
      end

      # Convert data to Hash object.
      # @return [Hash]
      def to_h
        { deltaHash: delta_hash, recoveryCommitment: recovery_commitment }
      end

      # Calculate unique suffix
      # @return [String] unique suffix
      def unique_suffix
        Sidetree.to_hash(to_h)
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
sidetree-0.1.5 lib/sidetree/model/suffix.rb
sidetree-0.1.4 lib/sidetree/model/suffix.rb
sidetree-0.1.3 lib/sidetree/model/suffix.rb
sidetree-0.1.2 lib/sidetree/model/suffix.rb