インストールガイド · 2 min read · Nov 24, 2025
pandomのインストール方法: Linux用の真の乱数生成器
このチュートリアルは、amd64 / x86_64 Linuxカーネルバージョン2.6.9以上のものを対象としています。ncomputers.orgによって管理されているタイミングジッター真の乱数生成器pandomのインストール方法を説明します。
はじめに
組み込みのLinuxカーネル真の乱数生成器は、現代の状況下では低スループットを提供します。たとえば、ソリッドステートドライブ(SSD)を搭載したパーソナルコンピュータや仮想プライベートサーバー(VPS)などです。
この問題は、主に多様な暗号目的による真の乱数の需要が継続的に増加しているため、Linux実装で人気が高まっています。
Pandomは、64 ubits / 64 bitsのエントロピーを約8 KiB/s出力し、物理および仮想環境と互換性があり、他のプロセスがrootユーザーとして/dev/randomに書き込まないことを前提としています。
1 pandomのインストール
1.1 rootアクセスを取得
Pandomはrootとしてインストールする必要があります。必要に応じてこのコマンドを実行してください。
su -1.2 ビルド依存関係のインストール
pandomをダウンロードしてインストールするには、GNU as アセンブラ、GNU make、GNU tar、およびGNU wget(最後の2つは通常すでにインストールされています)が必要です。後で自由にアンインストールできます。
Archベースのシステム
pacman -S binutils makeDebianベースのシステム
apt-get install binutils makeRed Hatベースのシステム
dnf install binutils makeyum install binutils makeSUSEベースのシステム
zypper install binutils make1.3 ソースのダウンロードと抽出
これらのコマンドは、wgetとtarを使用してncomputers.orgからpandomのソースをダウンロードして抽出します。
wget http://ncomputers.org/pandom.tar.gz
tar xf pandom.tar.gz
cd pandom/amd64-linux1.4 インストール前のテスト(推奨)
この推奨されるテストは約8分かかります。カーネルのサポートをチェックし、checkmeという名前のファイルを生成します(次のセクションで分析します)。
make check1.5 initシステムの特定
pandomをインストールする前に、システムがどのinitソフトウェアを使用しているかを知る必要があります。次のコマンドがrunningという単語を出力する場合、システムはsystemdを使用しています。それ以外の場合、システムはinit.d実装(例:upstart、sysvinit)を使用している可能性があります。例外があるかもしれません。詳細はこれらのunix.stackexchange.comの回答を参照してください。
systemctl is-system-runningrunning1.6 pandomのインストール
Linux実装がどのシステムを使用しているかを知ったら、それに応じてpandomをインストールできます。
init.dベースのinitシステム(例:upstart、sysvinit)
システムがinit.d実装(例:upstart、sysvinit)を使用している場合、このコマンドを実行してpandomをインストールします。
make install-init.dsystemdをinitシステムとして使用
システムがsystemdを使用している場合、このコマンドを実行してpandomをインストールします。
make install-systemd2 checkmeファイルの分析
pandomを暗号目的で使用する前に、前のセクションで生成されたcheckmeファイルを分析することを強くお勧めします。この作業は、数値が真にランダムであるかどうかを知るのに役立ちます。このセクションでは、ncomputers.orgのentropyarrayを使用してcheckmeファイルを分析する方法を説明します。これは、入力のエントロピーと系列相関をテストするシェルスクリプトです。
注意:この分析は、ラップトップやデスクトップコンピュータなど、別のコンピュータで実行することもできます。たとえば、制約のあるリソースの仮想プライベートサーバー(VPS)にpandomをインストールしている場合、checkmeファイルを個人用コンピュータにコピーして、そこで分析することを選択できます。
Entropy Online Testerも使用できます。
2.1 rootアクセスを取得
Entropyarrayはrootとしてインストールする必要があります。必要に応じてこのコマンドを実行してください。
su -2.2 ビルド依存関係のインストール
entropyarrayをダウンロードしてインストールするには、GNU g++コンパイラ、GNU make、GNU tar、およびGNU wget(最後の2つは通常すでにインストールされています)が必要です。後で自由にアンインストールできます。
Archベースのシステム
pacman -S gcc makeDebianベースのシステム
apt-get install g++ makeRed Hatベースのシステム
dnf install gcc-c++ makeyum install gcc-c++ makeSUSEベースのシステム
zypper install gcc-c++ make2.3 ソースのダウンロードと抽出
これらのコマンドは、wgetとtarを使用してncomputers.orgからentropyarrayのソースをダウンロードして抽出します。
wget http://ncomputers.org/rearray.tar.gz
wget http://ncomputers.org/entropy.tar.gz
wget http://ncomputers.org/entropyarray.tar.gz
tar xf entropy.tar.gz
tar xf rearray.tar.gz
tar xf entropyarray.tar.gz2.4 entropyarrayのインストール
注意:-std=c++11に関するエラーは、GNU g++コンパイラのバージョンがISO C++ 2011標準をサポートしていないことを意味します。サポートされている別のシステム(例:お気に入りのLinuxディストリビューションの新しいバージョンのGNU g++)でncomputers.orgのentropyとncomputers.orgのrearrayをコンパイルし、その後、make installを使用してentropyarrayを実行したいシステムにコンパイルされたバイナリをインストールすることを試みるか、このステップをスキップできます。ただし、pandomを暗号目的で使用する前にcheckmeファイルを分析することを強くお勧めします。
cd rearray; make install; cd ..
cd entropy; make install; cd ..
cd entropyarray; make install; cd ..2.5 checkmeファイルの分析
注意:64 ubits / 64 bitsのpandom実装は、このテストでエントロピーが15.977以上、max周波数が70未満になるはずです。結果が大きく異なる場合は、このチュートリアルの第5セクションで説明されているように、pandom実装の予測不可能性を高めることを試みることができます。前のステップをスキップした場合は、擬似乱数列テストなどの他のツールを使用できます。
entropyarray checkmeentropyarray in /tmp/tmp.mbCopmzqsg
15.977339
min:12
med:32
max:56
15.977368
min:11
med:32
max:58
15.977489
min:11
med:32
max:59
15.977077
min:12
med:32
max:60
15.977439
min:8
med:32
max:59
15.977374
min:13
med:32
max:60
15.977312
min:12
med:32
max:672.6 entropyarrayのアンインストール(オプション)
entropyarrayを今後使用しない予定の場合は、自由にアンインストールすることをお勧めします。
cd entropyarray; make uninstall; cd ..
cd entropy; make uninstall; cd ..
cd rearray; make uninstall; cd ..3 Debianリポジトリを使用したインストール
Debianベースのシステムでpandomを最新の状態に保ちたい場合は、ncomputers.orgのDebianリポジトリを使用してインストールまたは再インストールすることを選択できます。
3.1 rootアクセスを取得
以下のDebianパッケージはrootとしてインストールする必要があります。必要に応じてこのコマンドを実行してください。
su -3.2 キーリングのインストール
このDebianパッケージには、ncomputers.orgのDebianリポジトリの公開鍵が含まれています。
wget http://ncomputers.org/debian/keyring.deb
dpkg -i keyring.deb
rm keyring.deb3.3 ソースリストのインストール
これらのDebianパッケージには、最新のDebianディストリビューション(2017年)に従ったncomputers.orgのDebianリポジトリのソースリストが含まれています。
注意:以下のコメント行を/etc/apt/sources.listに書き込むことも可能ですが、将来的にこれらのソースが変更された場合は、手動で更新する必要があります。
Wheezy
#deb http://ncomputers.org/debian wheezy main
wget http://ncomputers.org/debian/wheezy.deb
dpkg -i wheezy.deb
rm wheezy.debJessie
#deb http://ncomputers.org/debian jessie main
wget http://ncomputers.org/debian/jessie.deb
dpkg -i jessie.deb
rm jessie.debStretch
#deb http://ncomputers.org/debian stretch main
wget http://ncomputers.org/debian/stretch.deb
dpkg -i stretch.deb
rm stretch.deb3.4 ソースリストの更新
キーリングとソースリストがインストールされたら。
apt-get update3.5 pandomのテスト
テストが完了したら、以下のパッケージを自由にアンインストールできます。
注意:すでにLinux実装でpandomをテストした場合は、このステップをスキップできます。
apt-get install pandom-test
pandom-testcheckmeファイルを生成中です。約8分お待ちください...
entropyarray in /tmp/tmp.5SkiYsYG3h
15.977366
min:12
med:32
max:57
15.977367
min:13
med:32
max:57
15.977328
min:12
med:32
max:61
15.977431
min:12
med:32
max:59
15.977437
min:11
med:32
max:57
15.977298
min:11
med:32
max:59
15.977196
min:10
med:32
max:573.6 pandomのインストール
apt-get install pandom4 pandomの管理
pandomがインストールされた後、管理したい場合があります。
4.1 パフォーマンステスト
Pandomは約8キロバイト/秒を提供しますが、そのパフォーマンスは環境によって異なる場合があります。
dd if=/dev/random of=/dev/null bs=8 count=512512+0 records in
512+0 records out
4096 bytes (4.1 kB, 4.0 KiB) copied, 0.451253 s, 9.1 kB/s4.2 エントロピーと系列相関テスト
ncomputers.orgのentropyarrayの他にも、Ilja GerhardtによるNISTテストスイートなど、さらに多くのテストがあります。
entropyarray /dev/random 1M4.3 システムサービス
Pandomはシステムサービスとして実行されます。
init.dベースのinitシステム(例:upstart、sysvinit)
/etc/init.d/random status
/etc/init.d/random start
/etc/init.d/random stop
/etc/init.d/random restartsystemdをinitシステムとして使用
systemctl status random
systemctl start random
systemctl stop random
systemctl restart random5 予測不可能性またはパフォーマンスの向上
pandom実装の予測不可能性またはパフォーマンスを向上させたい場合は、CPU時間測定を追加または削除することを試みることができます。
5.1 ソースファイルの編集
ソースファイルtest.sとtRNG.sに、必要に応じて測定ブロックを追加または削除します。
#測定ブロック
mov $35,%rax
syscall
rdtsc
[...]
#測定ブロック
mov $35,%rax
syscall
rdtsc
[...] 5.2 予測不可能性のテスト
暗号目的で使用する前に、常に個別のpandom実装をテストすることをお勧めします。
make check5.3 個別のpandomのインストール
結果に満足した場合は、個別のpandom実装をインストールできます。
make install追加情報と更新: http://ncomputers.org/pandom
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。