module PathgraphEncoding
@author Israel Buitron
Constants
- MIN_Q_N
Minimum hypercube degree
- VERSION
Pathgraph encoding library version
Public Class Methods
pack(k, m, set)
click to toggle source
# File lib/pathgraph_encoding.rb, line 7 def self.pack(k, m, set) OpenSSL::ASN1::Sequence.new([ OpenSSL::ASN1::Integer.new(k), OpenSSL::ASN1::Integer.new(m), OpenSSL::ASN1::Sequence.new( set.map { |path| OpenSSL::ASN1::Sequence.new( path.map { |x| OpenSSL::ASN1::Integer.new(x) } ) } ) ]).to_der end
unpack(der)
click to toggle source
# File lib/pathgraph_encoding.rb, line 21 def self.unpack(der) asn1 = OpenSSL::ASN1.decode(der) [ OpenSSL::ASN1.decode(asn1.value[0]).value.to_i, # k OpenSSL::ASN1.decode(asn1.value[1]).value.to_i, # m OpenSSL::ASN1.decode(asn1.value[2]).value.map { |e| e.map { |d| d.value.to_i } } ] end