Skip to content
Extraits de code Groupes Projets
Valider ebe14b5a rédigé par Raphael's avatar Raphael
Parcourir les fichiers

RS, IZ; Not using person in friend request verification

parent 15f1527a
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -41,11 +41,16 @@ class Request
#ENCRYPTION
before_validation :sign_if_mine
validates_true_for :creator_signature, :logic => lambda {self.verify_creator_signature}
validates_true_for :creator_signature, :logic => lambda {verify_exported_signature}
xml_accessor :creator_signature
key :creator_signature, String
def verify_exported_signature
self.verify_signature_from_key(creator_signature,
OpenSSL::PKey::RSA.new(exported_key))
end
def signable_accessors
accessors = self.class.roxml_attrs.collect{|definition|
definition.accessor}
......
......@@ -18,11 +18,15 @@
return false
end
Rails.logger.info("Verifying sig on #{signable_string} from person #{person.real_name}")
validity = person.key.verify "SHA", Base64.decode64(signature), signable_string
verify_signature_from_key(signature, person.key)
end
def verify_signature_from_key signature, key
validity = key.verify "SHA", Base64.decode64(signature), signable_string
Rails.logger.info("Validity: #{validity}")
validity
end
protected
def sign_if_mine
if self.person == User.owner
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter