From 719081473eb1655141302c8636333ebb743deac1 Mon Sep 17 00:00:00 2001 From: Raphael Date: Thu, 16 Dec 2010 15:22:26 -0800 Subject: [PATCH] Fix log statements in Encryptable --- lib/encryptable.rb | 64 ++++++++++++++++++++++++---------------------- 1 file changed, 33 insertions(+), 31 deletions(-) diff --git a/lib/encryptable.rb b/lib/encryptable.rb index 8af06f565..f2ba9129e 100644 --- a/lib/encryptable.rb +++ b/lib/encryptable.rb @@ -2,36 +2,38 @@ # licensed under the Affero General Public License version 3 or later. See # the COPYRIGHT file. - module Encryptable - def signable_string - raise NotImplementedException("Override this in your encryptable class") - end - - def signature_valid? - verify_signature(creator_signature, person) - end - - def verify_signature(signature, person) - if person.nil? - Rails.logger.info("Verifying sig on #{signable_string} but no person is here") - return false - elsif person.public_key.nil? - Rails.logger.info("Verifying sig on #{signable_string} but #{person.name} has no key") - return false - elsif signature.nil? - Rails.logger.info("Verifying sig on #{signable_string} but #{person.name} did not sign") - return false - end - Rails.logger.debug("Verifying sig on #{signable_string} from person #{person.name}") - validity = person.public_key.verify "SHA", Base64.decode64(signature), signable_string - Rails.logger.debug("Validity: #{validity}") - validity - end - - def sign_with_key(key) - Rails.logger.debug("Signing #{signable_string}") - Base64.encode64(key.sign "SHA", signable_string) - end - +module Encryptable + def signable_string + raise NotImplementedException("Override this in your encryptable class") end + def signature_valid? + verify_signature(creator_signature, person) + end + + def verify_signature(signature, person) + if person.nil? + Rails.logger.info("event=verify_signature status=abort reason=no_person model_id=#{id}") + return false + elsif person.public_key.nil? + Rails.logger.info("event=verify_signature status=abort reason=no_key model_id=#{id}") + return false + elsif signature.nil? + Rails.logger.info("event=verify_signature status=abort reason=no_signature model_id=#{id}") + return false + end + log_string = "event=verify_signature status=complete model_id=#{id}" + validity = person.public_key.verify "SHA", Base64.decode64(signature), signable_string + log_string += " validity=#{validity}" + Rails.logger.info(log_string) + validity + end + + def sign_with_key(key) + sig = Base64.encode64(key.sign "SHA", signable_string) + Rails.logger.info("event=sign_with_key status=complete model_id=#{id}") + sig + end + +end +