Executando verificação de segurança...
3

Será que o uso de chaves privada/pública não seria uma forma de manter o conteúdo apenas acessível para o detentor da chave privada? Utilizamos este sistema para encriptar emails e seus anexos (Thunderbird, por exemplo) e somente o destinatário terá como abrir o pacote.

Como seu público é bastante restrito, pode ser mais fácil ensiná-los a criar o pacote encriptado caso não consiga desenvolver uma aplicação Javascript/WASM que faça todo trabalho no lado do cliente. Sei que é possível off-browser e algumas ideias ainda exploram a potencialidade de computação do lado do cliente no próprio browser (0bin, privateBin etc.) para encriptar conteúdo antes de enviar para o servidor.

Só não achei (ainda) uma aplicação Javascript/WASM que leia uma chave pública e encripta o conteúdo. Posteriormente, envia para o servidor via POST ou WSS. Suspeito que esta biblioteca pode ser útil, só não a testei. É um projeto mantido pela Proton Mail.

Este projeto tem como objetivo fornecer uma biblioteca OpenPGP de código aberto em JavaScript para que possa ser usada em praticamente todos os dispositivos. Em vez de outras implementações que visam usar código nativo, o OpenPGP.js pretende contornar esse requisito (ou seja, as pessoas não precisarão instalar o gpg em suas máquinas para usar a biblioteca). A ideia é implementar todas as funcionalidades necessárias do OpenPGP em uma biblioteca JavaScript que possa ser reutilizada em outros projetos que forneçam extensões de navegador ou aplicativos de servidor. Deve permitir que você assine, criptografe, descriptografe e verifique qualquer tipo de texto - em particular e-mails - bem como gerencie chaves. (Tradução do conteúdo openpgpjs.org por Google Translate)

pgpjs
Fonte da imagem: https://openpgpjs.org/images/overview.png

Na tradução traz a seguinte sentença "qualquer tipo de texto". Se a aplicação não conseguir lidar com arquivos binários, é possível transformar as imagens em base64 antes de encriptá-las. Como escrevi, ainda não testei esta biblioteca.

Carregando publicação patrocinada...