2020年03月13日

JavaScriptの情報共有

アルゴリズムwith JavaScript_5

皆さんこんにちは
今回はアルゴリズムとJavaScriptとの関係について最後に述べたいと思います。
今回にお知らせする内容は暗号に関するアルゴリズムについて説明しようと思います。

暗号化とは?
通信が盗聴されたりファイルを盗まれたりしても、第三者は内容が分からないようにデータを変換する処理のことをいいます。

暗号化アルゴリズムには基本的に
置換式暗号と転置式暗号に分類されます。

置換式暗号
文字を別の文字に変えて秘密にするアルゴリズム

転置式暗号
文字の順番を切り替える方

暗号化には基本となるキーワードがあります。

平文 : 暗号化する前のデータ
暗号文 : 平文を変換して秘密にしたデータ
暗号化 : 平文を暗号文に変換する処理
復号化 : 暗号文を平文に復元する処理
: 暗号化アルゴリズムで使用するデータ

暗号化アルゴリズム
暗号化アルゴリズム方式は大きく共通鍵暗号公開鍵暗号に分類されます

共通鍵暗号
暗号化と復号に同じ鍵を使用します。
ここで使用する鍵は共通鍵と呼びます。
この方式はCPUの主特技であるビット演算や論理演算で暗号化するため、非常に速いという長所があります。
またサイズの大きいデータも暗号化できます。 しかし、暗号化復号に同じ鍵を使用するため、鍵管理に注意する必要があります。

公開鍵暗号
この暗号は、暗号化と復号にそれぞれ異なる鍵を使用します。
暗号化に使用する鍵は公開鍵、復号に使用する鍵は秘密鍵と呼びます。
この方式は公開鍵を自由に配布できる点が長所です。
でも、復号には数百倍から数千倍の時間がかかるという欠点があります。

ここまでアルゴリズムについて見てきました。
足りない情報ですが皆さんに共有したいと思って作成しました。
長文を読んでくれてありがとうございます。