Class: Ccrypto::CrystalDilithiumConfig

Inherits:
KeypairConfig show all
Defined in:
lib/ccrypto/configs/keypair_config.rb

Overview

PQ Crystal Dlithium

Constant Summary

Constants inherited from KeypairConfig

KeypairConfig::Algo_Active, KeypairConfig::Algo_Broken, KeypairConfig::Algo_NotRecommended, KeypairConfig::Algo_Obsolete

Instance Attribute Summary collapse

Attributes inherited from KeypairConfig

#algo, #algo_status, #default, #keypair, #private_key, #provider_config, #public_key

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from KeypairConfig

#has_keypair?, #has_private_key?, #has_public_key?, #is_default_algo?, keypair_purposes, supported_keypair_config

Methods included from AlgoConfig

include

Constructor Details

#initialize(param, default = false) ⇒ CrystalDilithiumConfig

Returns a new instance of CrystalDilithiumConfig.



199
200
201
202
203
# File 'lib/ccrypto/configs/keypair_config.rb', line 199

def initialize(param, default = false)
  @param = param
  @algo = self.class.algo_key
  super(Algo_Active, default)
end

Instance Attribute Details

#paramObject (readonly)

Returns the value of attribute param.



198
199
200
# File 'lib/ccrypto/configs/keypair_config.rb', line 198

def param
  @param
end

Class Method Details

.algo_keyObject



195
196
197
# File 'lib/ccrypto/configs/keypair_config.rb', line 195

def self.algo_key
  :crystal_dilithium
end

.algo_nameObject

has unintended consequences during YAML dump and load def self.name

"PQ Crystal Dilithium Family (for Signing)"

end



192
193
194
# File 'lib/ccrypto/configs/keypair_config.rb', line 192

def self.algo_name
  "Crystal Dilithium (PQC - Encryption)"
end

Instance Method Details

#to_sObject



205
206
207
# File 'lib/ccrypto/configs/keypair_config.rb', line 205

def to_s
  "PQ Crystal Dilithium #{@param}"
end