fc2ブログ

複数のサウンドデバイスがあるときの優先順位の変更

*2012年07月15日追記 GNOME3ではもっと楽なやり方があります。こちらへどうぞ

音楽好きなあなたなら、一度はジュークボックスに憧れたでしょう。はじめて行ったビレッジバンガードに置いてあった「手を触れないでください」の貼紙のついた冷蔵庫ほども大きさのあるジュークボックス…ああ何と艶かしいその姿…何と甘美な響き…都会へ出てきてもう何年、ビレッジバンガードなんかもう飽きるほどに足を運びましたが、あの時の感動は今も忘れません。

しかし時は流れ現在、きっと音楽好きはパソコンをジュークボックス代わりにしていますよね。ええ、いい時代になったものです。ただ、パソコンの音は大抵悪いのが現実。アンプ・スピーカーはいいものを繋げば良いとして、問題は音を作り出す部分ですよ。その部分の音が悪ければ、いくらアンプやスピーカーの原音再現度が如何に高かろうと、悪い音やノイズを再現度高く再生してしまうだけなんでね。

で、いいサウンドカードを買ってきて取り付けるわけですよ。ただそのままだと既存のサウンドデバイスと競合するため、新しいサウンドカードだけを有効にして他を無効にする作業が必要になります。

オンボードのサウンドデバイスはBIOSで無効にできますな。今まで使っていたサウンドカードがあればそれを引っこ抜けばいい。Windowsだったらばデバイスドライバ設定画面から無効にすることもできました。…Linuxは、Debianはどうしたら良いんだ?etchまでは

# alsaconf

というコマンドを打つとウィザード的な設定ツールが立ち上がるので、画面の指示に従って有効にしたいサウンドデバイスを選択すればよかったのですが…それがなぜかlennyからできなくなり。まあいい。BIOSでオンボードは殺せるし、後付のサウンドカードは使わないなら引っこ抜けばいい。…と思っていた。



ビデオカードを付け替えたあたりからどうも音が出たり出なかったりするようになったんです。なぜか起動する度に調子が変わるようで、全く調子の良い時もあれば、全く音が出ない時もある、アプリケーションによって出たり出なかったりが違う時もあったり。で、よくよく考えてみたら新しくつけたビデオカードにはHDMI出力端子がついているわけで。HDMI出力には音声も乗せられるわけですから、これが原因か?

しかし、オンボードはBIOSで無効に、USB・PCIは引っこ抜ける…こいつはどうする?引っこ抜こうったって、ビデオ出力は必要だし、HDMIに一本化するか?ウチにはHDMIに対応するアンプはないし、だいたいウチのディスプレイはDVIだ。

んで、色々と検索。すると。 サウンドデバイス関連(Hardy Heron編) この様なページを発見。

オーディオデバイスの認識順序を固定する
Linuxではサウンドカードが複数接続されていると、起動するたびに認識順序がコロコロと変わるようになっている


んー、臭いぞ。きっとこれじゃないか。これはUbuntuの解説ですが、UbuntuとDebianは似たようなディストリビューション、ちょっとやってみましょ。

$ cat /proc/asound/modules
0 snd_hda_intel
1 snd_via82xx
2 snd_ice1724

snd_ice1724ってのが俺の使いたいPCIサウンドカードであるAUDIOTRAK PRODIGY HD2、snd_via82xxってのがオンボードのサウンドデバイスであるはず(BIOSで無効にしたはずだが、なぜOSから見えているのかは不明)。0に来ているやつは全く見慣れないやつだ。サウンドデバイスを三つも繋げた覚えはないし、"hd"とあるところがいかにもHDMIくさい。同じ/proc/asoundディレクトリ内にcardsというファイルがあったのでこれも覗いてみると。

0 [HDMI ]: HDA-Intel - HDA ATI HDMI
HDA ATI HDMI at 0xde800000 irq 17
1 [V8237 ]: VIA8237 - VIA 8237
VIA 8237 with AD1980 at 0xe000, irq 22
2 [ICE1724 ]: ICE1724 - ICEnsemble ICE1724
ICEnsemble ICE1724 at 0xb400, irq 19

はい、こいつがHDMIであることがハッキリいたしました。現状、このHDMIのサウンドが最優先されているということらしいので、最優先をICE1724にして、しかも固定してしまいたい。

先ほどのページによると、/etc/modprobe.d/soundに

options デバイス名 index=認識させたい順番
options デバイス名 index=認識させたい順番

こう書けば良いとのこと。デバイス名は/proc/asound/modulesにあった名前で、優先順位は0、1、、、と書くか、それでうまくいかなければ1、2、、、と書くとのこと。というわけで実践。

# vi /etc/modprobe.d/sound
options snd_ice1724 index=0
options snd_via82xx index=1
options snd_hda_intel index=2

うむ、HDMI対応の高品質なオーディオアンプとディスプレイを買うまでHDMI音声出力には眠ってもらう。まあ、その時にはマシンも変わっているとは思うが…さすがにAthlonXPはH264とかを再生するには非力…新しいマシンにはAGPのボードは引き継げないからね。

はい、再起動。…うん、gstreamerも、xineも、Flashも、その他アプリケーションも音が出てくれる。/proc/asound/modulesの順番も指定通り。偶然の可能性もあるので、もう一度再起動。もう一度確認。問題無し…ん?なんかあったぞ。起動時のメッセージを見ていると、

WARNING: All config files need .conf: /etc/modprobe.d/sound, it will be ignored in a future release.

というものを発見!ということは、いずれこれも使えなくなるってことだ。どうしよう…しかし、メッセージの内容は、 All config files need .conf が主たる内容であって、it will be ignored in a future release. は補足であるようにも読めるぞ。つまり、/etc/modprobe.d/sound を /etc/modprobe.d/sound.conf とするべきだということか? /etc/modprobe.d/ を見てみると、他のファイルはすべて.confがついている。やるしかあるまい。これでうまくいかななっても、その be ignored の日は少なくとも今日ではなさそうだ、代わりの方法をまた探せばよい。

# cd /etc/modprobe.d/
# mv sound sound.conf
# shutdown -r now

…画面に目を凝らしたけれど、警告は出なかったような。起動し終わったら、一通り音を出して確認。/proc/asound/modules 及び /proc/asound/cards の内容も確認。起動時のメッセージは /var/log/dmesg に記録されているようなので、それも確認。

# less /var/log/dmesg | grep WARNING

はい、問題なさそうです。よって、/etc/modprobe.d/sound は、最初から /etc/modprobe.d/sound.conf として作った方が良さそうです。

というわけで、とりあえずはalsaconfの代替は /etc/modprobe.d/sound.conf で。

テーマ : Linux
ジャンル : コンピュータ

Chrome OSには多くを期待しない方が良いと思う

一応煽ってしまった身ですから、言い訳をさせて下さい。

たぶん、 Google Chrome OS の見通しは暗いと思うよ。

まだ完成品が出てきたというわけではありませんが、IT系ニュースが伝えるところによると、 Google Chrome OS はどうやら完全にGoogle Chromeを動かすためだけのバックエンドと、シェルとしてのGoogle Chrome、完全にこれだけのOSになるということがほぼはっきりした様子。

「すべてはクラウドの中に」――Google幹部、Windows 7発売日にChrome OSを語る - ITmedia エンタープライズ
Google Chrome OSに欠けているもの (1/2) - ITmedia エンタープライズ
「Google Chrome OS」プロジェクトが公開、製品登場は2010年後半 -INTERNET Watch
戸田覚「Chrome OS」を速攻チェック~デフレに近い恐怖感!?~:戸田覚がChrome OSを速攻チェック!*ログインが必要

要は、アプリケーションはすべてブラウザ上から実行できるものに限られると。ローカルストレージはあるんだかないんだか…。

これからの時代、クラウドがなければ仕事ができないようになるのかもしれませんな。しかし、ローカルアプリケーションなしというのもやはり仕事にならないような気が…「パソコンも ソフトなければ タダの箱」とはかつてよく言ったものですが、これじゃ「GCO ネットなければ タダのゴミ」ですよ。ネットにいつでもどこでも繋げるとは限らないし、繋いだ所でサーバーが落ちていたらどうすんのよ?つい最近もGmailの大規模な障害があったんじゃなかったっけ?

完全にGoogle Chromeを動かすためだけのバックエンドと、シェルとしてのGoogle Chrome、これだけのOS…これを仮想マシン上で動かすならば並の堅固さではないwebブラウザとしていろいろ遊べそうですが、ネットブックに搭載するのはなあ…ある意味最もネットブックらしいネットブックですが、そんな制約いらんという話。まあ、ローカルストレージさえあればブラウザ上で動くプログラムを自分で組んだり、あるいはネットで配布されるそれをローカルに保存してオフラインで使うってのも可能なんでしょうが。



俺はね、Androidをネットブックに載っけることに期待していたんですよ。でも、これで話題の中心はむしろ Google Chrome OS に持っていかれて、Googleはこっちにリソースを割くでしょうし、なんだかなあ…

Chrome OSとAndroid、一本化しなければ共倒れに? - ITmedia エンタープライズ

この記事にほぼ同意。このふたつのOSは守備範囲が違うから一本化というのもおかしな話ですけれど。ぶっちゃけChrome OSいらないんじゃないかってことね。その分Androidに回すべき。

テーマ : コンピュータ関連ニュース
ジャンル : コンピュータ

スマッシング・パンプキンズ マシーナIIとニューアルバム

前回もちょっと触れましたが、クリエイターの創作活動を良きパートナーとなるはずの配給会社や権利管理団体などが、ある種の中間搾取者になっているという批判はいろいろな所で目にしますね。

アメリカにもその状況に腹を立てているミュージシャンがいるようで…Smashing Pumpkinsが一例。オルタナティブロックの代表的なバンドですね。「サイアミーズ・ドリーム」「メロンコリーそして終わりのない悲しみ」といったロック史に名を残す傑作を生み出し2000年に解散します。

ファンとして恥ずかしいことに最近知ったのですが、解散直後にEP三枚LP一枚に相当するアルバムをインターネットで無料配信していたんだそうで。何でも、Wikipediaによると

解散後の同年に、世界で25組のみプレスされファンサイト等に無償配布された『マシーナⅡ -フレンズ&エネミーズ・オブ・モダン・ミュージック』が発表された。ビリーは「レコード会社に金儲けさせるくらいなら、ファンに無償提供していろんな人に広めてくれたほうがいい」と語っており、MP3ファイルにてゆかりのあるライブハウスのホームページ上でダウンロードすることができた。

だそうで。スマッシング・パンプキンズ - Wikipedia で、今現在そのダウンロードがどこでできるのか探しましたが…見つけました。

Billy-Corgan.com

こちらでMP3をzip圧縮したものがダウンロードできます。うれしいことにDRMもついておらず、通常のMP3再生環境があればLinux上でも再生できます。…ただ、このサイトは誰が運営しているのかは分からないので、一応俺はここで何があっても責任は負いません、ウイルスチェック等は各自してくださいね。



なお、このSmashing Pumpkinsというバンド、オリジナルメンバーはビリー・コーガンだけになっていますが再び活動しています。現在新しいアルバムのレコーディングを行っているようで、どうやらこの新しいアルバムがマシーナIIと同じようなリリース形態を取るかもしれないと思わせる発表が。

Smashing Pumpkins dot com | announcement from billy corgan about new smashing pumpkins album

ざっと読んだ所無料配信が具体的にどのようになるのかは読み取れませんでしたが、「There will be no strings attached. Free will mean free, which means you won't have to sign up for anything, give an email address, or jump through a hoop.」ということは、きっとDRMはつかないということでしょう。

俺は何でもかんでも無料にしろなんて言う「モンスター何とか」の類じゃありません。ただ、特定環境、特に世界で広く普及しているマイクロソフト製品に依存するDRMは、我々をマイクロソフトの奴隷にすることを肯定することになるから止めてほしいと言っているんです。マイクロソフトは公益企業じゃなければ公共団体でもありません。普通の私企業です。普通の一私企業の製品に依存しなければ勉強できない、仕事できない、遊びもできない、日常生活が送れない。おかしいでしょそんな世の中。だからDRMなしのメディア配信を支持します。

ただ、ビリーをはじめバンドの面々の生活は大丈夫なのか?とりあえず、来日してくれたらライブには必ず行きます。

テーマ : 洋楽ロック
ジャンル : 音楽

著作権の死後保護期間を延長する必要ってあるの?

asahi.com(朝日新聞社):文科相、著作権保護期間70年への延長に意欲 - 政治
「著作権保護期間70年への延長実現に最大限努力」鳩山首相が明言 -INTERNET Watch

著作権法は専門ではないから変なことを言うかもしれないけれども。

そもそも、著作権が死後五十年も存続する必要って何よ?ましてや七十年って。

MIAUが著作権保護期間延長に反対、鳩山首相の発言受けて -INTERNET Watch

ここでMIAUの意見として載せられている「メリットは無いのに、デメリットは確実にある」俺もそう思うんだけれども。だって、著作者は既に死んでいるわけで。権利というのはそれをどう扱うかは本人が決めるものだから、基本的に生きている人のものです。



メリット…子息の収入?天才は長生きしないなどと言われます。実際に、若くして亡くなった作家は少なくありませんね。中にはまだ小さなお子さんがいたという方もいらっしゃるでしょう。

しかし、いくら何でも死後七十年は長いですよ。例え生まれたばかりの子が遺されたとしても、その子の一生涯まるまるカバーですよ。一般的な人生観で言ったら…そうだな、うちの爺さんが作家だった場合、俺が八十五歳になるまではその印税が受け取れると。いい加減子息も働けって話になりますよ。その方が世のためでもある。そういう意味では現行の五十年だって長い。

だいたい、このモデルである欧米では「成人したら親と子は法律的には基本他人」という風に考えるのが一般的だと聞きましたけれど?これは他人になる事を強制されるというということではなくて、権利義務を強制される事がないという話ね。



故人の尊厳・名誉?それは大事ですね。しかし、それがどう死後の著作権保護期間二十年延長と結びつくの?…答え:たぶん、それは著作者人格権の話でしょう。ここでの著作権とは財産権としての話であるはずです。

ちなみに日本の現行の著作権法では、著作者が死んだ後も、生きているとすれば著作者人格権を侵害することになる行為をしてはならないとあります(60条)。また、著作者の配偶者・子・父母・孫・祖父母・兄弟姉妹の誰かが生きている間は、彼らがその「著作者が生きているとすれば著作者人格権を侵害することになる行為」の差し止め請求をすることができるそうです(116条)。つまり、保護期間とは別の話。



結局、これで一番得をするのは製作者ではなくそれを管理する大きな権限を持つ一部の業者だけなのでは?例えば大手映画配給会社とか、みんな大好きJASRACとか。クリエイターには当の本人が死んでますから何の利益もありません。むしろ、現に生きているクリエイターの、過去の作品にインスパイアを受けて、といった創作には妨げにすらなります、これはデメリット。そんなのは正しい創作じゃないって?じゃあ今度芥川龍之介氏のお墓の前でそう言ってやってくれ。黒澤明氏も忘れるなよ。

…だいたい、何でもかんでも欧米に合わせるのが正義かね?だったら死刑は?クジラは?共謀罪は?平和憲法は?尤も、俺は死刑の存置を支持しませんが。

以下、リンク
著作権保護期間の延長問題を考えるフォーラム - thinkcopyright.org
MIAU : 鳩山内閣閣僚による、最近の著作権保護期間延長に関する発言について
青空文庫 Aozora Bunko


追記
ちょっと詳しく書き直しました。それと、デメリットで見落としていたものがありました!それは新しい記事に書いたので、こちらへどうぞ

テーマ : 著作権関連ニュース
ジャンル : ニュース

Linux版のFirefoxウィンドウ上の中クリックでお悩みの方へ

普通、Windows上のクリックできる所以外でマウスの中クリック(ミドルクリック、ホイールクリック)をするとオートスクロールが起動します。対して、LinuxのX(GUI画面)上では中クリックをしてもオートスクロールは起動しません。いや、そういうアプリケーションもあるのかも知れませんが、あまり一般的ではないかと…俺が知らないだけか?

そして、Linux版のFirefoxのウィンドウ上、クリックのできる所以外で中クリックすると何か変なことになります。突然www.hoge.comというページを読み込もうとします。hogeの部分はいろいろですが、実際に存在するページだったり、存在しないページだったり、売り出し中のドメインだったり…

これはどうやらXの仕様を利用した、もしくは似せた動作のようです。大抵のGUI機構にはクリップボードという機能があります。多くのLinuxディストリビューションにGUIをもたらしているXウィンドウシステムにもそれはあります。ところが、Xにはこのクリップボードの他にも、これに似て非なるPRIMARYという機能があるそうで…これは、マウスでテキストをドラッグして選択したとき、すぐさまPRIMARY領域にコピーされ、マウスの中クリックで貼り付けをする、といったもののようです。(参考:クリップボード#X_Window_System - Wikipedia

で、どうやらLinux版Firefoxのウィンドウ上で中クリックをすると起こる奇妙な動作は、PRIMARY領域に存在するテキストをURLとして読み込もうとし、それがURLとして成立し得ないとなると頭にwww.お尻に.comをつけて無理やりにでも読み込もうとする、そういった話であるみたいです。実際に適当にテキストを選択して画面上クリックできる所以外で中クリックしてみるとそのことが分かります。



でも、はっきり言ってこの機能は邪魔ですよね。使わないし、使った所で便利であるとも思えないし、何よりリンクを新しいタブで開こうとしたがマウスがずれてしまったときに非常にうざったいことになります。無効にしたいんですけれど、この機能。

Tub Mix Plusというアドオンを導入するとこれを無効化する設定項目が現れるんですが、私の環境だとなぜかこのアドオンを導入すると重くなったり不安定になったりすることが多いので、できれば使いたくないんですよ。

ので、about:configのメニューから設定できないかと探したのですが…about:configってのはロケーションバーにabout:configと入力すると出てくる設定メニューのことですよ。見つけました。

middlemouse.contentLoadURL

です。これをfalseに切り替えておけばURLとしての強制読み込みを止めることができます!PRIMARYを使ったテキストのコピーアンドペーストは使いたいんだけれどもなあ…という方、ご安心ください。これはURLとしての読み込みを止めるだけです。middlemouse.pasteが有効になっていればその使い方には影響がありません。

テーマ : Linux
ジャンル : コンピュータ

GnuPGのWindows版との相互運用

ええと、同じことを書いても仕方がないんでね。簡単に済ませます。

GnuPGで暗号化したもののWindowsとのやりとりですが、 Download - GnuPG.org こちらのページからダウンロードした GnuPG 1.4.10b compiled for Microsoft Windows と、Debian版のGnuPGとは、相互に使えるようです。少なくともうちの環境では。うちの環境?Windows XP SP3 ホームエディションです。Debian側で作った公開鍵を使ってWindows側で暗号化したファイルは、Debian上で復号できましたし、逆もできました。

使い方も全く一緒でした、コマンドラインから操作する分には。強いてあげるとすれば、コマンドラインシェルの使い方の違いに気をつけろって所でしょうか。これはGnuPGのせいではないですね。コマンドラインシェルとOSによるプログラム・ファイル管理の問題です。

あ、それと、そもそも元のファイルの扱いがWindowsとGNU/Linuxで違うという問題もあります。同じテキストファイルでも例えばエンコードや、改行を示すコードが違ったりするので、復号してもうまい具合に開けないこともあり得ます。これもGnuPGのせいではありません。生のファイルをやりとりしても起こることなので。

本当にそれだけです。あまりに当たり前のようにできてくれたので、体験談形式で話を進めるうちのブログでは書くことがなくてなくて…

そうそう、公開鍵を書き出したときに、バージョンを示す行が、Linux版では

Version: GnuPG v1.4.10 (GNU/Linux)

となるのに対し、今回使ったWindows版では

Version: GnuPG v1.4.10 (MingW32)

となります。参考までに。当然、バージョンの数字はバージョンが変われば変わるでしょう。

GnuPGのLinux上での使い方はこちらから

テーマ : セキュリティ
ジャンル : コンピュータ

GnuPGによる暗号化と復号

前回、暗号化をしようとして署名というものに躓きましたが、それも片付いたみたいなので、いよいよ暗号化を。 (この記事ではメールアドレスが出てきますが、こちらへの特定電子メール、いわゆる迷惑メールの送信はお断りします)

もし検索とかでこの記事に直接飛んできた方がいらっしゃいましたら、連続でやっているんでこちらから読んでもらえるとわかりやすいと思います。鍵ペア作ったり署名したりと前段階でするべきことがあるんで。

$ gpg -e -a -r [email protected] test.txt
gpg: 信用データベースの検査
gpg: 最小の「ある程度の信用」3、最小の「全面的信用」1、PGP信用モデル
gpg: 深さ: 0 有効性: 1 署名: 1 信用: 0-, 0q, 0n, 0m, 0f, 1u
gpg: 深さ: 1 有効性: 1 署名: 0 信用: 1-, 0q, 0n, 0m, 0f, 0u

というメッセージを残して終了。できたのか?lsコマンドでDesktopディレクトリの中身を見ると…

test.txt test.txt.asc

見覚えのないファイル、test.txt.ascなるものが生まれている。これか?

$ less test.txt.asc
-----BEGIN PGP MESSAGE-----
Version: GnuPG v1.4.10 (GNU/Linux)

hQEMA7wXIbq0PEjiAQgApq7S9bca1wJYUhoV1dwKHbOtrR9otfN1lRIMRL...........
............................................中略.....................
EF44GHhbRUwYlF5O+09rGooGibJ2KVmS
=zSmM
-----END PGP MESSAGE-----

どうやらこれが暗号化されたテキストのようだ。Wikipediaの解説にもそのように書いてある。これをメールに添付して、もしくはメール本文にして送り、メールを受け取った人は-----BEGIN PGP MESSAGE-----から-----END PGP MESSAGE-----を抜き出して保存して復号すればいいってことか。署名だ何だと色々と面倒なこともあったけれども、暗号化はあっさりとできた。

おっと、復号のことを忘れていた。これをメールに…の話は良いか。プレーンテキストのメールを送るだけだから、誰にでもできること。省略。ユーザーを秘密鍵を発行した側に戻して、test.txt.ascファイルをこのユーザーが自由に使えるディレクトリにコピー。んで、

$ gpg -d -o test.txt test.txt.asc

次のユーザーの秘密鍵のロックを解除するには
パスフレーズがいります:“Zapper (test) <[email protected]>”
2048ビットRSA鍵, ID B43C48E2作成日付は2009-10-29 (主鍵ID FB556DC8)

パスフレーズを入力:

秘密鍵のパスフレーズを入力すると、この暗号の詳細がもう一度流れて終了。では、今できたtest.txtを覗いてみましょう。

$ less test.txt
では、待ちに待った暗号化に挑みましょうか。いやー、ちっちゃい頃から暗号に憧れていましてね。スパイものの創作で暗号ってテーマになりますし。ねえ。007の「ロシアより愛を込めて」なんかでも暗号解読機を巡って物語が繰り広げられるわけで…(以下省略)

できた!問題なく復元されている。つまり、先ほどのわけの分からない英数字の羅列から、元のテキストがちゃんと取り出せたということだ。

気をよくして、以上のことをバイナリファイルでもやってみる。暗号化してみると、-----BEGIN PGP MESSAGE-----からはじまって-----END PGP MESSAGE-----で締められるテキストになるが、復号すると元のファイルに戻った。つまり、パソコンで処理できるファイルならば何でもできるってことだ。

署名とか良く分からない概念があったが、とりあえず一通りのやり方は覚えた。後は、Windowsとのやりとりができるか、だね…。たぶんできるんだろうけれど。gnupgのWindows向けのビルドも存在するようだし。

続く

テーマ : セキュリティ
ジャンル : コンピュータ

GnuPGの鍵に署名

この鍵が本当に本人のものか分かりません、か…。しかし、どうしたらいいの?

Wikipediaのページを見ていたら、下の方にGnu Privacy Guard (GnuPG) Mini Howto 日本語訳なるものを発見。とりあえずこれを最初から読んでみる。

すると、何となく答えっぽいのが見つかる。Gnu Privacy Guard (GnuPG) Mini Howto 日本語訳 - 概念 - 1.3 信用の輪

---引用ここから---

公開鍵暗号の一つの弱点は、如何に公開鍵を配布することである。あるユーザは流通されている一つの偽造された公開鍵を入手し、この公開鍵でメッセージを暗号化するとして、この偽公開鍵の秘密鍵を持つクラッカーは、暗号文を復号化し、内容を盗むことができてしまう。さらにこのクラッカーは本当の公開鍵でメッセージを暗号化した上で転送すれば、気付かれずに済むのだ。

この問題を解決するために、PGP(同時にGnuPGも)は公開鍵に対して署名を行うことにした。


---引用ここまで---

ここまでの過程で、署名というものはなかった。鍵を作成する時に署名をしていると言えばしているが、それではここで指摘されている問題の解決には全くなっていない。作った本人でない人が署名する必要があるのだろう。それは、誰だろう…公的機関とかか?しかし、

---引用ここから---

貴方は安全且つ確実な通路を通じて、署名の「指紋」を確認しなければならない

---引用ここまで---

ともあるから、どうやらその公開鍵を使う人が署名者となってもいいみたいだ。一安心。というわけで、新しいアカウント上で署名の操作をしたいのだが、その前に指紋の確認なるものをしておく。いや、自分で発行したのは確かなんだから間違いはないはずなんだけれども、今後暗号を運用するに於いて必要な作業であると思うので。



普段使用しているユーザーアカウントに戻って、

$ gpg --fingerprint [email protected]

「指紋」なるものを確認。コマンドは Gnu Privacy Guard (GnuPG) Mini Howto 日本語訳 - 鍵の使用 このページから。

$ su hoge
$ gpg --fingerprint [email protected]

こちらの指紋も確認。当然一致。では署名に移る。

$ gpg --edit-key [email protected]

すると、鍵の状態のような表示が流れた後、

コマンド>

とかいうプロンプトのようなものが出て止まる。あー、ここでsignと入力すればいいのかな。

コマンド> sign
gpg: no default secret key: 秘密鍵が得られません

コマンド>

あ、まあそうか。署名っつうんだからそれなりのものである必要はあるんでしょうね。こっちはこっちで署名用の秘密鍵が必要だと。ええと、ここから脱するにはどうしたら良いんだ?とりあえずqを押してエンターすると…プログラムが終了してくれた。

ではこのアカウントで秘密鍵を作らないと。

$ gpg --gen-key

ここではRSA署名のみっていう選択でいいんだろうか?1のRSA and RSAという選択肢は、暗号化と署名用にRSAを使うって意味だったんだろう。今回は署名だけが目的の鍵を作るからとりあえず4を選択。後は前回と同じような設定をし、二つ用意したもう一つのアドレスや適当な名前を書いて終了。

$ gpg --edit-key [email protected]
コマンド> sign

問題の公開鍵の指紋に関する情報が表示された後、

本当にこの鍵にあなたの鍵 "******************" で署名してよろしいですか

本当に署名しますか? (y/N)

となる。y。

次のユーザーの秘密鍵のロックを解除するには
パスフレーズがいります "******************"

パスフレーズを入力:

ん?どっちのパスフレーズだ?秘密鍵のロックを解除っつってんだから今作った署名用の鍵か?「次のユーザーの秘密鍵」と言って表示されているものも今作った署名用の鍵を示しているように思える。今作ったパスフレーズを入力。

コマンド>

あれ?成功したとか失敗したとか、そういうメッセージは一切ないの?まあいい。成功したと考えて、qを入力してプログラムを終了する。変更を保存するか訊かれるのでもちろんy。

コンソールに戻った。ではこんどこそメッセージの暗号化を。

続く

テーマ : セキュリティ
ジャンル : コンピュータ

GnuPGによるテキストの暗号化に挑戦

鍵ペアを作成したという話の続き。

とはいっても、この鍵はユーザーごとに管理されているっぽいので自分のところで暗号化して復号してもおもしろくない。俺のユーザーアカウントとは関係ない所に公開鍵を送って、そこで暗号化して、出てきた暗号をこちらに送って、こちらの秘密鍵で復号するってのをやりたいんだけれど…うちにはパソコンが二台ない。ここでいきなりWindows立ち上げるか…

…あ、ユーザーアカウントをもう一つ作ればいいんだ。ユーザーアカウントの追加はコンソールからよりも「gnomeメニュー→システム→システム管理→ユーザーとグループ」からやった方が簡単そうなので、こっちで。KDEは…ごめん、知らない。4.5.1くらいになったらもう一度考えてみますよ。

では、公開鍵のエクスポート。Wikipediaの解説の通りに。

$ gpg -a -o ~/Desktop/test.asc --export [email protected]

コンソールには何の出力もないので、テキストエディタで中身を確認。すると、

-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.10 (GNU/Linux)

ではじまり、英数字の何行にも渡る羅列があった後、

-----END PGP PUBLIC KEY BLOCK-----

で終わるテキストファイルであることが確認できた。きっと問題ないでしょう。

$ su 今作ったユーザー名

さっき作ったユーザーアカウントにコンソール上からログイン。

$ cp /home/鍵を作成したユーザー名/Desktop/test.asc ~/Desktop

新しいユーザーのデスクトップに先ほどエクスポートした公開鍵をコピー。

$ gpg --import ~/Desktop/test.asc

読み込んだというメッセージが返ってくる。

では、待ちに待った暗号化に挑みましょうか。いやー、ちっちゃい頃から暗号に憧れていましてね。スパイものの創作で暗号ってテーマになりますし。ねえ。007の「ロシアより愛を込めて」なんかでも暗号解読機を巡って物語が繰り広げられるわけで…まあもっとも、暗号解読機がどういうものでそれで暗号がどうなるのか全く物語には描かれませんでしたが…あれは兵器の設計図とか、要所の地図とか、作戦指令書、あるいは映画ミッション・インポッシブルのようにスパイ名簿に置き換えられても全く話に影響はありませんでしたね。

そういった、物語の動機・要素であるが作品の構造から見れば他のものに置き換え可能なものをマクガフィンというんだそうで…「ヒッチコックにとって重要なのは、ウラニウムという原子爆弾の材料ではなくてそれをきっかけにして展開されるサスペンスだったのである」(上記ページより抜粋)

…よくよく考えてみたら暗号解読自体がテーマになった冒険活劇なんてほとんどないよね。やったところで地味過ぎるからだろうけれど、それなら俺は何から暗号に憧れを?…はい、どうでもいいですね、すみません。

適当に文書を用意して~/Desktop/text.txtに保存。Wikipediaの記事の通りに暗号化のコマンド。

$ gpg -e -a -r [email protected] test.txt

この鍵が本当に本人のものである、という兆候が、ありません

この鍵は、このユーザーIDをなのる本人のものかどうか確信でき
ません。今から行うことを*本当に*理解していない場合には、
次の質問にはnoと答えてください。

それでもこの鍵を使いますか? (y/N)

ええ?理解しているか、いないかって言われれば、そりゃいないの方です。

クリフハンガー状態で続く

テーマ : セキュリティ
ジャンル : コンピュータ

GnuPGの鍵ペア作成

はい、GnuPGを使おうという話の続き。

GnuPGの使い方の解説を求めてネット上をさまよっていると…ほとんどの情報はコマンドラインでの操作方法を解説しているもののようで。前にも書きましたが、コマンドラインというのは初心者がとっつきにくいのと直感的な操作が利かないというだけで、使い方をネット上で解説するにはこれほど便利なものはありません。教わる側も画像や音声や動画や、はたまた身近の詳しい人のつきっきりの指導なしに非常に再現性の高い結果を得ることができるので、ここでもコマンドラインでやります。あしからず。

GUIフロントエンドとなるアプリケーションもあるみたいなんですが、ネットで手に入る解説が少ないのと、これの使い方をマスターしたらWindowsとのやりとりもやってみたいと考えているので、使い方がいちいち変わると困るんですよ。コマンドラインだったら多分WindowsでもDOS窓からほとんど同じように使えるでしょう?

というわけで、はじめましょう。とりあえず、いつもお世話になっているWikipediaにアクセスしてみる。ほんと、いつか俺はちゃんと稼げるようになったらWikimedia財団に寄付でもした方がいいんじゃないかと思うんだ。

GNU Privacy Guard - Wikipedia

なんと、ここにはもう既に基本的なコマンドラインについて解説があるじゃないか!ありがたい。メールアカウントは後でいくらでも作れるので、まずは鍵の作成だ。

$ gpg --gen-key

すると。

gpg (GnuPG) 1.4.10; Copyright (C) 2008 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

ご希望の鍵の種類を選択してください:
(1) RSA and RSA (default)
(2) DSA and Elgamal
(3) DSA (署名のみ)
(4) RSA (署名のみ)
選択は?

との表示。んー?どれがいいのかなー?多分これは暗号化の方法の選択だろう。また、署名のみというのも意味が良く分からない。俺がしたいのは暗号化。とりあえずはデフォルトの1を選択。

選択は? 1
RSA keys may be between 1024 and 4096 bits long.
What keysize do you want? (2048)

鍵の長さが1024から4096ビットまで選べる?何か問題があると最近IT系のニュースで聞いたような…検索してみたら暗号の2010年問題というキーワードを発見。何でも、コンピュータ関連の様々なものが日進月歩の昨今、暗号の強度というものも日に日に揺らいでいくものだそうで、より堅固なものに移行する目安として2010年があげられているんだそうな。で、その2010年以降置き換えられるべきものの中に「鍵長 1024 bit の RSA」がある!後二ヶ月じゃん!どうすんの?…更に読んだら移行例として2048ビットのRSAがあげられていた。良く見たらこのコンソールの表示でも2048ビットが推奨になってますね。

What keysize do you want? (2048) 2048
要求された鍵長は2048ビット
鍵の有効期限を指定してください。
0 = 鍵は無期限
= 鍵は n 日間で満了
w = 鍵は n 週間で満了
m = 鍵は n か月間で満了
y = 鍵は n 年間で満了
鍵の有効期間は? (0) 0
Key does not expire at all
これで正しいですか? (y/N) y

はい、0がデフォルトになっているんで0を選択。現実には色々とやるのかもしれないけれど、今回はテストするだけなんで。

あなたの鍵を同定するためにユーザーIDが必要です。
このソフトは本名、コメント、電子メール・アドレスから
次の書式でユーザーIDを構成します:
"Heinrich Heine (Der Dichter) "

本名: Zapper
電子メール・アドレス: [email protected]
コメント: test
次のユーザーIDを選択しました:
“Zapper (test) <[email protected]>”

名前(N)、コメント(C)、電子メール(E)の変更、またはOK(O)か終了(Q)? O

特段どこかの公的な電子署名とかに使うわけではないんで、名前はここで使っているハンドルネームを入力。メールアドレスもここで公開しているアドレスを使用。コメントはもうその通り入力。んでOKの意思表示のOを入力してエンター。

秘密鍵を保護するためにパスフレーズがいります。

パスフレーズを入力:

パスフレーズ?パスワードとは違うの?検索してみると…
パスフレーズとは 【passphrase】 - 意味/解説/説明/定義 : IT用語辞典
パスフレーズとは、パスワードの文字数が長くなったもの。
あっそう。適当に入力。次いで同じものを再入力。すると、乱数を生成するから、より乱数が作りやすいように色々と何かしてくれとメッセージが出た後、鍵ペアの作成に成功したことと鍵の情報を出力してプログラムが終了。

ああ、なんとまあ、Windowsでいうところのウィザードみたいなもんでしょうか、画面の指示に従っていたらあっという間に鍵ペアが生成できちゃったようで。後は公開鍵をエクスポートして、それで暗号化して、出てきた暗号を復号すればいい。か?

続く

テーマ : セキュリティ
ジャンル : コンピュータ

プロフィール

ざっぱー

Author:ざっぱー
(この画像について)

当ブログについて
メール
(このメールアドレスへの特定電子メール (迷惑メール) の送信はお断りします)

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
検索フォーム
RSSリンクの表示
リンク