インストールガイド · 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 make

Debianベースのシステム

apt-get install binutils make

Red Hatベースのシステム

dnf install binutils make
yum install binutils make

SUSEベースのシステム

zypper install binutils make

1.3 ソースのダウンロードと抽出

これらのコマンドは、wgettarを使用してncomputers.orgからpandomのソースをダウンロードして抽出します。

wget http://ncomputers.org/pandom.tar.gz  
tar xf pandom.tar.gz  
cd pandom/amd64-linux

1.4 インストール前のテスト(推奨)

この推奨されるテストは約8分かかります。カーネルのサポートをチェックし、checkmeという名前のファイルを生成します(次のセクションで分析します)。

make check

1.5 initシステムの特定

pandomをインストールする前に、システムがどのinitソフトウェアを使用しているかを知る必要があります。次のコマンドがrunningという単語を出力する場合、システムはsystemdを使用しています。それ以外の場合、システムはinit.d実装(例:upstart、sysvinit)を使用している可能性があります。例外があるかもしれません。詳細はこれらのunix.stackexchange.comの回答を参照してください。

systemctl is-system-running
running

1.6 pandomのインストール

Linux実装がどのシステムを使用しているかを知ったら、それに応じてpandomをインストールできます。

init.dベースのinitシステム(例:upstart、sysvinit)

システムがinit.d実装(例:upstart、sysvinit)を使用している場合、このコマンドを実行してpandomをインストールします。

make install-init.d

systemdをinitシステムとして使用

システムがsystemdを使用している場合、このコマンドを実行してpandomをインストールします。

make install-systemd

2 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 make

Debianベースのシステム

apt-get install g++ make

Red Hatベースのシステム

dnf install gcc-c++ make
yum install gcc-c++ make

SUSEベースのシステム

zypper install gcc-c++ make

2.3 ソースのダウンロードと抽出

これらのコマンドは、wgettarを使用して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.gz

2.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 checkme
entropyarray 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:67

2.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.deb

3.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.deb

Jessie

#deb http://ncomputers.org/debian jessie main  
wget http://ncomputers.org/debian/jessie.deb  
dpkg -i jessie.deb  
rm jessie.deb

Stretch

#deb http://ncomputers.org/debian stretch main  
wget http://ncomputers.org/debian/stretch.deb  
dpkg -i stretch.deb  
rm stretch.deb

3.4 ソースリストの更新

キーリングとソースリストがインストールされたら。

apt-get update

3.5 pandomのテスト

テストが完了したら、以下のパッケージを自由にアンインストールできます。

注意:すでにLinux実装でpandomをテストした場合は、このステップをスキップできます。

apt-get install pandom-test  
pandom-test
checkmeファイルを生成中です。約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:57

3.6 pandomのインストール

apt-get install pandom

4 pandomの管理

pandomがインストールされた後、管理したい場合があります。

4.1 パフォーマンステスト

Pandomは約8キロバイト/秒を提供しますが、そのパフォーマンスは環境によって異なる場合があります。

dd if=/dev/random of=/dev/null bs=8 count=512
512+0 records in  
512+0 records out  
4096 bytes (4.1 kB, 4.0 KiB) copied, 0.451253 s, 9.1 kB/s

4.2 エントロピーと系列相関テスト

ncomputers.orgのentropyarrayの他にも、Ilja GerhardtによるNISTテストスイートなど、さらに多くのテストがあります。

entropyarray /dev/random 1M

4.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 restart

systemdをinitシステムとして使用

systemctl status random  
systemctl start random  
systemctl stop random  
systemctl restart random

5 予測不可能性またはパフォーマンスの向上

pandom実装の予測不可能性またはパフォーマンスを向上させたい場合は、CPU時間測定を追加または削除することを試みることができます。

5.1 ソースファイルの編集

ソースファイルtest.stRNG.sに、必要に応じて測定ブロックを追加または削除します。

#測定ブロック  
mov $35,%rax  
syscall  
rdtsc  
[...]  
  
#測定ブロック  
mov $35,%rax  
syscall  
rdtsc  
[...]  

5.2 予測不可能性のテスト

暗号目的で使用する前に、常に個別のpandom実装をテストすることをお勧めします。

make check

5.3 個別のpandomのインストール

結果に満足した場合は、個別のpandom実装をインストールできます。

make install

追加情報と更新: http://ncomputers.org/pandom

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。