class Acme::Client::CertificateRequest

def initialize(common_name: nil, names: [], private_key: generate_private_key, subject: {}, digest: DEFAULT_DIGEST.new)

def initialize(common_name: nil, names: [], private_key: generate_private_key, subject: {}, digest: DEFAULT_DIGEST.new)
  @digest = digest
  @private_key = private_key
  @subject = normalize_subject(subject)
  @common_name = common_name || @subject[SUBJECT_KEYS[:common_name]] || @subject[:common_name]
  @names = names.to_a.dup
  normalize_names
  @subject[SUBJECT_KEYS[:common_name]] ||= @common_name
  validate_subject
end