diff --git a/app/controllers/people_controller.rb b/app/controllers/people_controller.rb
index 6277e1adfb3d4f48e7bd57c893cbc9af09ec17a7..9d52705731e64303709ea36a2663d067def9580d 100644
--- a/app/controllers/people_controller.rb
+++ b/app/controllers/people_controller.rb
@@ -185,7 +185,7 @@ class PeopleController < ApplicationController
   end
 
   def diaspora_id?(query)
-    !query.try(:match, /^(\w)*@([a-zA-Z0-9]|[-]|[.]|[:])*$/).nil?
+    !(query.nil? || query.lstrip.empty?) && Validation::Rule::DiasporaId.new.valid_value?(query)
   end
 
   # view this profile on the home pod, if you don't want to sign in...