Solución de cifrado con capacidad de búsqueda

programación


A modo de contexto, estamos trabajando en un producto SaaS para que los clientes (incluso de diferentes empresas en el futuro) lo utilicen como una herramienta para integrar diferentes servicios de IA (personalizados y propietarios) de forma segura y controlada.
Entre muchos más, tenemos este caso de uso específico, en el que un trabajador del conocimiento aprovecharía las capacidades de un modelo de IA determinado para obtener un resultado optimizado en función de algunas interacciones que este usuario ha tenido con el modelo. Este resultado podría luego guardarse para compartirse o reutilizarse en el futuro.
Respecto a la arquitectura general de nuestro producto, contamos con un cliente frontend React, un gateway para la API, un conjunto de Lambdas asociadas a diferentes endpoints y un grupo de tablas de DynamoDB para diferentes entidades que tenemos actualmente.
Al final, queremos que parte de la información que maneja el usuario, por ejemplo el contenido de la salida del modelo de IA, y alguna otra información confidencial esté cifrada y solo el destinatario previsto la lea, gestione o transforme.
Como advertencia importante y factor decisivo, tenemos una función de búsqueda en la aplicación cuya lógica de negocios interactúa con las bases de datos para recuperar los resultados que previamente persistieron según coincidencias específicas (palabras clave).
Digamos que queremos que algunas propiedades confidenciales, en una de nuestras estructuras de datos, estén cifradas, pero al mismo tiempo es clave que el destinatario correcto aún pueda buscar la información y aquí radica el origen de nuestra investigación.
Hemos estado profundizando en la documentación del SDK de cifrado de AWS que supongo, corríjanme si me equivoco, es una solución de cifrado de propósito general pero, por otro lado, me he encontrado con esta característica (cifrado con capacidad de búsqueda) en la base de datos de AWS. El SDK de cifrado, que es una biblioteca completamente diferente y ambos SDK no pueden interoperar entre sí debido a diferentes resultados de cifrado, ¿verdad?
Lo sentimos si todavía no está lo suficientemente claro pero según lo anterior y su experiencia, ¿qué solución cree que debería ser más adecuada para nosotros? o en general, ¿dónde debería seguir profundizando más para evitar en lo posible ir y venir entre diferentes soluciones, documentación, etc?

Lo que he probado:

A partir de ahora, simplemente estamos investigando la mejor solución para nosotros.

コメント

タイトルとURLをコピーしました