Клиентский JavaScript может зашифровать содержимое, используя ключ, известный только клиенту и никогда не отправляемый на сервер, до сохранения.
Однако сервер может в любой момент начать обслуживание вредоносного JSчто бы отправить ключи обратно на сервер.Единственный способ сделать это невозможным - это сделать ваше приложение устанавливаемым клиентским приложением (с помощью расширения или чего-либо еще, но без автоматического обновления).Кроме того, вся эта паранойя бессмысленна, если пользователь не может проверить, что делает приложение, поэтому он должен быть с открытым исходным кодом.
На данный момент вы в основном пишете GnuPG, так что вы могли бы такжепросто используйте это.