HTTPSを使用することが、理にかなっている唯一の答えです。悪意のあるユーザーがスクリプトを挿入してフロントエンドを作成する代わりに、パスワードをプレーンテキストで送信したり、攻撃者が制御するサーバーに送信したりする可能性があるため、Javascript暗号化に依存することは良くありません。
HTTPSとSSL/TLSには問題がありますが、これはWebアプリケーションの通信チャネルを保護するための標準的なメカニズムです。この分野の専門家によって広範囲にレビューされており、さまざまな障害モードや攻撃シナリオから保護されています。
例:コメントでは、暗号化に単一の静的キーを使用するようです。キーをクライアントに送信する必要があるので、これを安全に行うにはどうすればよいですか?ログインページにアクセスし、それを使用して他のユーザーの通信を復号化することにより、ユーザーがキーを合法的に取得できないのはなぜですか?1つのキーで十分なメッセージが送信された場合、新しいキーに移動するためのメカニズムは何ですか?
この種のシナリオはHTTPSでカバーされています。Webアプリで「本物の」何かをしている場合は、証明書に数ドル支払う必要があるかもしれませんが(最近は実際には数ドルです)、それが実際の方法です。