Im Prinzip könnten Sie schon prüfen, ob die Referenz ein bestimmtes Format hat und dann z.B. einen md5-Hash daraus berechnen, und die ursprüngliche Referenz damit überschreiben - put()
sollte das können.
Allerdings ist das nicht wirklich sicher. Wenn jemand wissen will, zu welcher Institution ein Fall gehört, müsste diese Person lediglich für alle möglichen Referenzen den Hash berechnen und dann nachsehen, welcher herauskommt.
SoSci Survey hat eine Funktion, die sehr stark in die beschriebene Richtung geht: Die "Team"- Funktion in der Adressliste. Wenn man beim Adressimport eine "TEAM"-Spalte vorgibt, und diese auch als Team-Code auswählt, dann bekommen alle Adressen eine längere SERIAL (Personenkennung) und bei allen zusammengehörigen Adressen beginnt die SERIAL mit denselben 2 Buchstaben. Damit Sie das verwenden können, müssten Sie allerdings die individuellen E-Mail-Adressen der Leute kennen.
Oder Sie verwenden Teilnehme-URLs - und stellen bei diesen ein, dass man mehrfach teilnehmen darf. Dann bekommen Sie URLs so ähnlich wie mit der Referenz, nur dass der Code aus dem Link nirgends im Datensatz erscheint, sondern lediglich eine SERIAL, die als Peudonym für den Link dient.