安全な暗号化を提供するJavaScriptライブラリを探しています。クライアントはキーを生成する必要があり、サーバーにアップロードされたすべてのデータは暗号化され、ダウンロードされたすべてのデータは復号化されます。認証された暗号化スキームが必要です。CTRまたはCBCだけでは不十分です。
sjclについて聞いたのですが、sjclはデータ全体を一度にしか暗号化できないようです。データをブロック単位で暗号化する方法が見つかりませんでした。アップロードされたファイルは非常に大きくなる可能性があるため、このアプローチは実行可能ではありません。update()とfinal()の2つのメソッドを持つJava暗号インターフェースのようなものが必要です。
必要なことを実行しているように見えるnodeJS暗号化ライブラリを見つけましたが、ブラウザ側での使用方法がわかりません。
google crypto-jsを見つけましたが、このライブラリは認証された暗号化を提供していないようですが、標準モードのみを提供しています。
sjclを使用してデータをブロック単位で暗号化する方法はありますか?ブラウザ側でnodeJS暗号ライブラリを使用するには?crypto-jsで認証付き暗号化を使用するには?または、必要なものを提供する別の安全なjavascriptライブラリはありますか?