[解決済み] JSEncryptの理解
質問事項
RSA暗号化・復号化のためのJavaScriptライブラリをいろいろと調べていて、JSEncryptというライブラリに出会いました。 https://cdnjs.cloudflare.com/ajax/libs/jsencrypt/2.3.1/jsencrypt.min.js .
しかし、このライブラリがRSA暗号化・復号化に用いているロジックや演算を理解しようとすると、大変な苦労があります。主に
- 暗号化アルゴリズムで使用されているアルゴリズムは何ですか?
- どのようなパディングスキームが使われていますか?
- ソルトはありますか?ある場合、ソルトはどのように生成されますか?
- その他、特記すべき事項があれば教えてください。
このライブラリのまともなドキュメントを見つけることができず、ソースコードも少しも理解することができませんでした。どんな助けでも大いに結構です。
どのように解決するのですか?
minifiedされたコードを読もうとするのではなく、以下を参照してください。 npmからリンクされているホームページ (そして、私の google のトップヒットの一つにもなっています) これらは両方とも githubのコード のようにきれいにフォーマットされ、コメントされています。現在のコードは暗号化だけでなく、RSA署名、鍵の生成、OpenSSL互換のPEMファイルの読み書きをサポートしています。のRSAコアは https://github.com/travist/jsencrypt/blob/master/lib/jsbn/rsa.ts これらは PKCS1 v1.5 のスキームで、現在は RSASSA-PKCS1-v1_5 (RSASSA = RSA Signature Scheme with Appendix) と RSAES-PKCS1-v1_5 (RSAES = RSA Encryption Scheme) と改名されています。 PKCS1 v2 . 旧PKCS1のタイプ1は決定論的であり、タイプ2は以下を使用してランダム化されます。 https://github.com/travist/jsencrypt/blob/master/lib/jsbn/rng.ts というように、自分で判断することができます。
関連
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン