class Resolvers::Utils::SshHelper

Constants

SSH_FINGERPRINT
SSH_NAME

Public Class Methods

create_ssh(key_type, key) click to toggle source
# File lib/facter/resolvers/utils/ssh_helper.rb, line 13
def create_ssh(key_type, key)
  key_name = SSH_NAME[key_type]
  decoded_key = Base64.decode64(key)
  ssh_fp = SSH_FINGERPRINT[key_name]
  sha1 = "SSHFP #{ssh_fp} 1 #{Digest::SHA1.new.update(decoded_key)}"
  sha256 = "SSHFP #{ssh_fp} 2 #{Digest::SHA2.new.update(decoded_key)}"

  fingerprint = Facter::FingerPrint.new(sha1, sha256)
  Facter::Ssh.new(fingerprint, key_type, key, key_name)
end