Ninguna que yo sepa. Y creo que esto se debe a que ... no creo que la solución (implícita en la pregunta) sea una buena solución / propuesta.
No solo porque la función de hashing puede tener colisiones (incluso si tiene una probabilidad muy baja, el impacto sería mayor, ¿por qué deberíamos agregar ese riesgo?), sino también porque tiene otro problema antes de hashing: a menos que resuelva algo que aún no se haya resuelto por completo (es decir, interoperabilidad semántica ), en un perfil médico, por ejemplo, puede encontrar / formular el mismo concepto médico de varias maneras diferentes (es decir, diferentes secuencias de texto pueden significa lo mismo / concepto médico) por lo que en esos casos obtendría diferentes hashes que se refieren al mismo concepto (!). ¿Cómo manejarías eso? ¿Podrá asignar todos esos hashes diferentes al mismo concepto médico? (tipo de alergia o lo que sea). ¿Cómo dirías que dos hashes realmente significan dos cosas diferentes ... y qué cosas deberían ser? Creo que no podrá predecir todas las formas diferentes posibles en nuestro idioma, podríamos expresar el mismo concepto y los valores de hashing resultantes serán muy fluidos en términos semánticos.
Incluso si elige utilizar las mejores terminologías y los vocabularios controlados o la información codificada que se usará en el perfil med, seguirán necesitando un mantenimiento y una revisión continuos a lo largo del tiempo (debido a las versiones, etc., por ejemplo, alias, nuevos conceptos, obsoletos conceptos, etc.) todas las cosas que impactarán severamente en la efectividad y confiabilidad de su "sistema de apoyo a la decisión" basado en conceptos ocultos por valores de hashes. Por lo tanto, no creo que sea una buena idea ocultar un concepto médico detrás de los hashes y tomar decisiones basadas únicamente en los valores de los hashes.
Además, si autorizo a mi médico para que acceda a mi registro médico, quiero que vea muy claramente cuál es mi alergia en términos que pueda entender. ¿Se imagina a su médico observando los valores de hash que deben ser asignados en comparación con alguna información médica codificada que no tiene forma de verificar realmente el concepto real que puede haber detrás? No es Buena idea. ¿Quieres compresión? Utilizar algoritmos de compresión. Quieres seguridad Cifrado de usuario con funciones de dos formas e infraestructura de autenticación, etc. (tenga en cuenta que el hash es una función de "un solo sentido"). Simplemente siga usando el hash para aquellas cosas que usamos hoy (para indexar, recuperar elementos de manera más eficiente, para firmas digitales, etc.) NO para ocultar / almacenar conceptos médicos. Yo no innovaría de esta manera. Pero puede ser que estoy equivocado. ¿Hay una mejor respuesta a esto?