# frozen_string_literal: true class Reading < ApplicationRecord belongs_to :raspberry has_many :sensors # @param :public_key [SSHData::PublicKey] def verify(public_key) public_key == ssh_signature.public_key && ssh_signature.verify(raw_transaction) rescue SSHData::Error false end private def ssh_signature @ssh_signature ||= SSHData::Signature.parse_pem <<~PEM -----BEGIN SSH SIGNATURE----- #{signature} -----END SSH SIGNATURE----- PEM end end