
Noise-Java は、Noise Protocol のプレーンな Java 実装であり、リファレンス実装として意図されています。このコードは MIT ライセンスの条件に基づいて配布されています。
このライブラリはプレーンな Java で書かれており、暗号プリミティブとインフラストラクチャを提供するために Java Cryptography Extension (JCE) を利用しています。プラットフォームの JDK がプリミティブをサポートしていない場合、Noise-Java はプレーンな Java によるフォールバック実装を提供します。
次のアルゴリズムは標準の JDK で一般的に利用可能であり、Noise-Java は存在する場合にそれらを使用しようとします:
一部の JDK インストールでは、256 ビット AES キーの使用が制限されています。この制限を回避するには、お使いの JDK に「Unlimited Strength Policy Files」をインストールする必要があるかもしれません。あるいは、Noise-Java 内の AESGCM のプレーンな Java フォールバック実装には、そのような制限はありません。
より優れた暗号プリミティブの実装を利用できる場合は、createDH()、createCipher()、および createHash() 関数を "Noise" クラス内で変更して、ご自身のバージョンを統合できます。
パッケージドキュメント には、Noise-Java ライブラリのクラスに関する詳細情報が含まれています。
このライブラリの詳細情報、バグ報告、貢献、または改善提案については、作者の Rhys Weatherley まで メール でご連絡ください。