liboqs
liboqsとは、オープンソースの下で開発されている量子コンピューター耐性のある暗号アルゴリズムを集めたライブラリです。大部分はC言語とアセンブラで書かれています。
従来の暗号アルゴリズムは「コンピューターの進化具合」から「いつごろ突破されそうだ」と予測できました。一方で量子コンピューターが普及すると現在でいうセキュリティホールの発見と同じような「いきなり突破」と「ゼロデイ攻撃」が激増するとされています。
そのため
- 複数の暗号アルゴリズムを用意しておき
- サクッと暗号アルゴリズムを切り替えられる
ことが重要になるとされています。
liboqsは複数のアルゴリズムを集め、かつ抽象的に扱うことができるようになっています。
抽象化されているのである特定のアルゴリズムが万が一突破されても、わりと簡単に別のアルゴリズムに切り替えることができます。
これを「クリプトアジリティ」というらしいです。