12/30/2015

モノのインターネットで独占の動き

ブルース・シュナイアー氏がアトランティックにエッセイを寄稿していた。その超訳。モノのインターネット(IoT)において、企業はDMCAを利用して市場を独占しようとする動きを見せていると指摘。

理論的には、家電製品、家庭用品、衣服でさえ、その中にある小さなコンピュータをネットワーク接続する「モノのインターネット」はあなたの生活をより裕福にし、より効率的にすると断言する。これらのコンピュータはお互いと自宅のインターネットと公共空間とを通信して、環境のデータを収集し、受信した情報をベースに修正する。理論的には、接続されたセンサーはあなたのニーズを予測し、時間・お金・エネルギーを節約するだろう。

これらのコネクテッド・オブジェクトを製造する企業が消費者の興味と矛盾する行動をとった時、例えば、つい最近テクノロジー企業のフィリップスは電球とネット経由で通信できる中央コントローラから成るスマートアンビエント照明システム「Hue」で実際それを行った。12月半ば、以前サポートされていた電球を含む他メーカーの電球と互換性のないシステムにするソフトウェアアップデートを強制したのだ。

すぐにクレームが巻き起こった。Hue(ヒュー)システムはZigBeeと呼ばれる業界標準と互換性を持つことになっていたが、フィリップスが排除した電球はZigBee準拠だったのだ。フィリップスは数日後にこれを撤回し、互換性が回復した

しかし、Hueの大失態の話 - ライバルを締め出すためにコピー防止技術を使った企業の話 - は新しい話ではない。多くの企業は、消費者がその企業の製品以外を確実に使えないようにするためプロプライエタリー標準を提供する。例えば、キューリグはコーヒーの1杯抽出ポッドに規約を加え、それらの規約を持つものだけで働くようコーヒーメーカを設計している。HPはプリンタとインクカートリッジで同じことを行っている。

プロプライエタリー標準をリバースエンジニアリングして互換性のある周辺機器を製造するのをライバルにやめさせるため(例えば、別のコーヒー製造会社は自身のポッドをキューリグの規約に乗せている)、これらの企業はデジタルミレニアム著作権法 (DMCA)と呼ばれる1998年の法律に期待をかけた。そもそもこの法律は音楽や映画の海賊行為を防ぐために通過した。その関連では価値が全くなかったのだが(BitTorrentを使っている人が裏付ける)、セキュリティや互換性の研究で多く使われた。

特に、DMCAは迂回防止対策を含んでおり、著作物へのアクセス制御を行う技術的な保護機能を迂回することを企業に禁じている。それは、フィリップスの許可なしにHue互換の電球を、キューリグの許可なしにKカップ互換のコーヒーポッドを、あるいはHPの許可なしにプリンタ互換のカートリッジを作るのは誰にとっても違法となる。

今まで、コンピュータの世界ではこれはお馴染みのことである。1990年代、Microsoftは「取り込み、拡張し、抹殺する (embrace, extend, extinguish)」と呼ばれる戦略、すでに広く使われている標準を支持しつつ、製品へ徐々にプロプライエタリー互換を加える、を使っていた。最近の例では: アマゾンの電子書籍フォーマットは他の会社のリーダーでは読めないし、AppleのiTunesストアから購入した楽曲は他のミュージックプレーヤーでは聴けないし、ほとんどのゲームコンソールは独自のゲームカートリッジフォーマットを持っている。

このように企業は、大いに暮らしを楽にしてくれるけれども、反競争的行為を強制できるので、モノにリタニは全く存在しない。あなたは内耳インプラント、プログラム可能な温度調整器、コンピュータが入ったバービー人形のためのカスタムソフトウェアを持つことはできない。自動車修理工場は自動車のコンピュータと整合性のあるより素晴らしい診断システムを設計することはできない。そして、ジョン・ディアは全てのトラクターのソフトウェアを所有していると主張している。伝えたいことは、それらを購入した農家が所有物を修復したり修正することが禁止されているということだ。

モノのインターネットが普及するようになると、反競争的な動きと合わせ、手始めにスマートオブジェクトを持つ目的を阻もうとするだろう。我々は製造業者を問わず、中央コントローラと通信する電球を望むだろう。我々は洗濯機と通信する衣服や道路標識と通信する車を望むだろう。

企業は、ブランドの互換性を確保するために競合相手が製品をリバースエンジニアリングするのを妨げるために法律を利用し、互換性のある製品を排除できる。我々はそれでは困る。価値を提供するモノのインターネットに我々が求めるのは、自動車業界のように、幅広い色々な会社で製造された交換部品をお店に行って購入できる世界である。モノのインターネットは、むしろそれどころか標準と競合する争いの場となる方向に向かっていて、企業はお互いを締め出すことによって独占を築こうとしている。

SlashdotHacker News

12/29/2015

自動運転車の問題 (誰がプログラムをコントロールするのか?)

コリイ・ドクトロウ氏がガーディアンで指摘した自動運転車の問題(超訳)。

トロッコ問題は1967年にフィリッパ・フットによって提起されて以来、哲学者を楽しませた倫理学の難問である:

あなたがレバーを引いて側線に切り替えない限り、暴走する電車が線路に括りつけられた5人の子供を轢き殺そうとしているが、無関係の1人の男性が気付かずに側線に立っている。レバーを引けば、5人を救えるが、1人は確実に死ぬ。道徳的な行動指針はどういうものなのか?

その問題は時とともに、5人の子供を轢き殺すか電車を止めるのに太った男性を自ら突き飛ばす(衝突を生き延びられない)かを選択するという問題を含め、多くの派生問題を広げている。そもそも、太った男が線路に子供を括り付けた悪人という派生問題もあり、その他にもある。

自律走行車の議論にも新たなものを発見できる。新しい派生問題はこのようなものだ: あなたの自動運転車は車をかわすとあなたを殺してしまうことに気付いた。あなたを救うには仮にだが子供が乗ったバスに前進すれば助かるが、子供は全員死んでしまう。どうプログラムすべきだろうか?

未来を見据え、顎を撫でるポーズをとらせるこの手の疑問を数え切れないほど聞いてきた。それは、私を激怒させるのは間違いない。この表現(formulation)は深い洞察力があると見せ掛けた浅はかな問題であり、十分にひどい。しかし、より悪いのはまだこの表現が難解さや重要さを隠している点だ。

ここにこの問題に関する違う考え方がある: もし、ある状況下で故意にドライバーを殺害する自動車を設計したいとしても、決して故意に殺害しない特性を保証できるようにするには、どのようにドライバーはそのプログラミングを決して変更されていないと確認するすればいいのだろうか?

iPhoneモデルという当然の答えがある。運輸省(あるいは製造会社)によって署名されたソフトウェアのみ受け付けるよう自動車を設計するのだ。そして、ロックを無効にする方法を人々に教えることを重罪にすべきだ。これはiPhone、ゲームコンソールや多くのデジタルロックを挟み込まれたデバイスの現在の法定展望で、"DRM"という名で知られている。米国のデジタルミレニアム著作権法 (1998)のような法律やEUCD (2001)のような命令は、著作物へのアクセスを制限するデジタルロックを解除するのを禁止している。そして、ロックを削除するのを手助けするデバイスの脆弱性なども含め、情報を暴露する人々を罰することも必要だ。

これには強い反対論がある。自動運転車のプログラミングは高速、道路に存在する動く物体、 脆弱で脆い人間の管理を任されている。あなたの自動車の頭脳を研究しているか? まず未熟な脳の手術をあなた自身で実施してはどうだろうか?

しかし、この露骨な答えは明らかな問題である: それは働かない。すべてのロックされたデバイスは、いい意味、十分理解された理由で簡単にジェイルブレークされる(jailbroken)。デジタルロック規定の主な影響はデバイスを再設定することから人々を守れないことだ。ビジネスあるいは製品の手助けなしにできないことは確かだ。イギリス情報通信庁(Ofcom)が2002年にロックされていない携帯電話の合法制をはっきりさせる前までリコールしていた。携帯電話をアンロックするのは難しくなかった。あなたはそれを実行するためにネットからソフトウェアをダウンロードできた。しかし、今では明確に違法で、携帯電話を販売店あるいは中古販売店でアンロックしてもらう必要がある。

自動運転車は、製造会社の承認無しには誰も再設定ができない確信があるという安全だけであれば、決して安全ではない。

しかし、たとえ我々が自動車の設定をロックできたとしても、すべきではない。デジタルロックはコンピュータプログラマにその所有者さえ入ることができないゾーンを作る。そのためには、ロックの関連ファイルが所有者に目に見えなければならない。ロックのディレクトリ中のファイルリストをオペレーティングシステムに問い合わせたら、ごまかすか除外しなけばならない(そうしないとユーザはそれらを削除したり置き換えたりできるため)。実行中のプログラムをすべてリスト表示することをオペレーティングシステムに問い合わせたら、ロックプログラムは除外すべきである(そうしないと、ユーザが終了することができるため)。

全てのコンピュータには欠陥がある。数年間使われ、そして数千人のプログラマによって開発されてきたようなソフトウェアでさえ、その中にはわずかなバグが潜んでいるだろう。セキュリティはプロセスであって、製品ではない。具体的には、バグを特定するプロセスで、敵にそれらが特定され、不正利用される前に修正することだ。これが起こると確信できるはずはないので、敵があなたの前に脆弱性を見つけ、不正利用した時、システムの外から敵を根絶して、被った被害を修復するのも、発見のプロセスである。

Sony-BMGがCDのリッピングを防止するよう設計されたデジタルロックを密かに何十万台ものコンピュータを感染させた際、アンチウィルスソフトからそのロックを隠す必要があったが、所有者の認識なしにインストールされたプログラムとして正しく認識され、所有者の望みに逆らって実行された。特別な "$sys$."という文字列で始まるファイルを隠す方法で、その被害者のオペレーティングシステムを変更することでこれを実現した。これが発見されるとすぐに他のマルウェア作成者がそれをうまく利用した: 彼らのプログラムはSonyが侵害したコンピュータに入ると、プログラムはソニーのマントの陰に隠れ、アンチウィルスソフトから隠蔽された。

自動車は高速で、そのユーザや周りにいる人々を殺してしまう力を持つ重い物体である。攻撃者にブレーキ、アクセル、ステアリングを奪われるようなセキュリティ侵害はゾッとするような筋書きである(例えば、昨年夏のクライスラーのジープに対するエクスプロイトで、140万台のリコールがもたらされた)。悪いのは、例えばユーザが無効にできないよう設計された自動車に対するエクスプロイトである。事実、トロッコ問題の冷たい方程式を避けるため、わがままな試みとしてそのプログラムをリダイレクトするために自動車のユーザからのいかなる試みも扱うよう設計された。

我々が自動運転車を所持することに問題があろうと、敵として乗り手を扱うよう設計することでさらに悪化させるだろう。

それはトロッコ問題の仮説に基づく愚かさを超えて、深い含蓄を持つ。ネットワーク化された機器の世界はすでに、それらを監視することを警察に許可する何らかのバックドアを持つことを要求する「合法的傍受 (Lawful Intercept)」規則の寄せ集めによって支配されている。これらはコンピュータセキュリティで重大な問題の発信源になっている。例えば、中国政府による2011年の反体制活動家と疑われるGmailアカウントへの攻撃は、合法的傍受を突くことで実行された。2004年のオリンピック誘致過程で行われたギリシャ政府へのNSAの傍受もそうだった。

これらの問題にもかかわらず、法執行機関はさらにバックドアを望んでいる。テラサ・メイのスヌーパー憲章を通じてイギリスで争われている新しい暗号戦争は、ユーザを監視下に置くことを可能にするため製品のセキュリティを弱めることを企業に強制する。

我々は自動運転車に合法的傍受機能を呼び掛けることになりそうだ: 路肩に置くよう強制するために、警察力であなたの自動車に信号を送る。これはトロッコ問題などのすべての問題を持つだろう: 見方によれば、自動車を運転するための組み込み機能は、その乗客が反対する警察官を真似できる悪党、殺人者、あるいは強姦犯への贈り物である。そして、仮にバッシャール・アル=アサドの秘密警察、あるいはISIS支配下の領域での自称警察官だとしたら、我々が違法としてみなす政府の警察によってそのような設備の利用は言うまでもない。

それは悩ましいトロッコ問題である。そして、厄介となる: 都市計画立案者のための自動運転車の主な売りは、車を個人所有から運転者のいないウーバーのようなものに基準を変更することで、道路上の車の数を減らせる可能性である。ウーバーは、多くの産業プロセスから労働者を抹殺し、巨大なオートメーションをリードする搾取的な海外の労働協定を可能にする競争とグローバリズムと同様に、人間がロボットの代理になるような自律性、エバーサークリング(ever-circling)、2点間の快速自動車の予行演習として見ることさえできる。

もしウーバーが道義的に曖昧な(ambiguous)仕事で、その全従業員を搾取するビジネスであるなら、従業員が続けたとしてもその曖昧さは消えないだろう。あなたが乗る車との関係は(所有はしていない)、さらに困難と言われるあらゆる問題が起きる。あなたはオートノム・ウーバ(Autonom-uber)のソフトウェアを変更する(その上、監視あるいは保障する)権利を持っていない。第三者(全車の所有者)がそれを無効にできるよう設計されるだろう。ユーザが無効化できるものがあるかもしれない(地下鉄車両は緊急ブレーキを乗客が操作できる)、保険業者によって強制される可能性もある。しかし、簡単とは言わないが、あなたはどのして保険業者がそのようなものを完全に禁止するかを容易に理解できると思う。

トロッコを忘れるな: 自動運転車の運命は労働者関係、監視機能、そして富の再分配を刺激するだろう。

SlashdotHacker News

更新 (2016.01.01)

シュナイアー氏がこのエッセイの感想をブログに書いている

コリイ・ドクトロウは、ソフトウェアの完全性とコントロールの問題とモノのインターネットに関する素晴らしいエッセイを書いた。彼は自動運転車について書いているが、問題はもっともっと色々ある。基本的に、我々は所有者が改変するのを防ぐシステムが欲しいのだ。我々はこれを行う方法を既に知っている: デジタル著作権管理だ。このソリューションが働いていないことも知っており、あらゆる種類のセキュリティ脆弱性を取り込もうとしている。我々は問題を抱えている。

これは古い問題だ。(アダム・ショスタックと私は1999年にそれについて論文を書いた、スマートカードについて。) モノのインターネットはさらに悪化する可能性が高くなるだろう。そして、我々がまだ解決のための準備もできているとは言えないことの一つだ。

クリストファー・ノーランの次回作は「ダンケルク」

Slashfilmによれば、クリストファー・ノーランの次回作は第二次大戦のダンケルクの戦いでの連合軍のダイナモ作戦をベースにした映画で、タイトルはそのもの「ダンケルク (Dunkirk)」とのことだ。明らかになった出演者はトム・ハーディ、ケネス・ブラナー、マーク・ライアンスで、主演は新人を起用し、ロンドンでオーディションが行われているらしい。撮影にはIMAX 65mmフィルムが使われる。ダンケルクは2016年5月に撮影開始、2017年7月21日公開予定。

geektyrant

12/27/2015

テクノロジーと法律

テクノロジーと法律の相反する関係を論じたシャナイアー氏のエッセイの超訳。

木曜日、ブラジルの裁判所はテキストメッセージサービスWhatsAppを48時間停止させるよう命令した。それはとんでもない訴訟だった。

WhatsAppはブラジルで最も人気のあるアプリで、約1億人が利用している。ブラジルの通信会社は儲かるテキストメッセージサービスからユーザを奪ってしまったこのサービスを嫌っている。そして、彼らは無秩序かつ違法であると政府を説得するため数ヶ月ロビー活動を行った。裁判所は結局同意した。

ブラジルの事件で、WhatsAppは裁判所命令への申し立てに失敗し、ブロックされた。別の裁判官が12時間後に禁止を無効にしたが、ここには見本となる形がある。エジプトでは、ボーダーフォンがWhatsAppの無料通話の適法性を訴えた。同時にインドの通信会社はWhatsAppやViberのようなメッセージアプリを食い止めるために熱心にロビー活動を行っている。今年はじめ、アラブ首長国連邦はWhatsAppの無料通話機能をブロックした

これすべては従来の企業と新しいインターネット企業との間で目下のところ進行中の大規模な争いの一部で、我々全員が爆発範囲にいるのだ。

少なくとも25年間我々を悩ましているテクノロジー政策問題の一面である。科学技術者と政策立案者はお互いに理解しておらず、彼らはそれが理由で社会に損害を与えている。しかも、今日では一層悪くなっている。技術的進歩のスピードが一層悪化させている。そして、技術のタイプ、特にモバイルデバイスのインターネット、クラウドコンピューティング、常時接続、モノのインターネットは一層悪化している。

インターネットは1990年代中頃に普及してから、長年のビジネスモデルの混乱と破壊を行ってきた。そして伝統的な業界は彼らの活動において、あらゆる手を使って長い間応戦してきた。映画や音楽業界は数十年間、商品の違法コピーを防ごうとコンピュータを骨抜きにする努力をしてきた。出版業界は書籍がオンライン検索のためにインデックス化されるかどうかをGoogleと争ってきた。

最近になって、国内のタクシー会社や巨大なホテルチェーンがウーバーのような相乗り会社やAirbnbのようなシェアハウス会社と争っている。古い企業と新しい新興企業の双方がお互いを打ち負かそうする目的のために法律をねじ曲げようとしている。

時々、これらの企業の行動はシステムやサービスの利用者に損害を与える。そして、その結果は馬鹿げて見える。なぜ、ブラジルの通信会社は大多数の人の怒りを招きたかったのだろうか? 彼らは独占を守ろうとしたのだ。もし、彼らがただWhatsAppを停止させるだけではなく勝利を収めていたら、テレグラムや他のすべてのテキストメッセージサービスを除いて、顧客は選択肢を失う。これは争いができるか一か八かの賭けである。

これは単に業界の中での企業同士の争いではない。どのように技術がビジネスに当てはまるかの競争の展望と、従来のビジネスと破壊的な新しいビジネスとの間の争いである。基本的な問題は技術と法律が対立していることで、過去にうまくいっていたことが今日ではますます悪くなっている。

第一に、テクノロジーと法律のスピードは逆である。伝統的に、新しいテクノロジーは数十年以上ゆっくりと時間を掛けて導入される。それらを理解する人々、社会に浸透するための社会的影響には時間が掛かる。立法機関や裁判所はこれらのテクノロジーのルールや、既存の法制度にどのように組み込むべきかを考えるには時間が必要である。

彼らが必ずしも正しく理解しているとは限らない。米国内の著作権法の悲しい歴史がどのように彼らが何度も間違った判断をしてきたかの例である。しかし、少なくとも彼らはテクノロジーが広く適合する前にチャンスがあった。

もはやそうではないと思う。新しいテクノロジーは1年足らずでゼロから1億人のユーザへと成功できる。それは政治上あるいは法的手続きにとってとにかく速過ぎるのだ。彼らはルールを作ることが求められるまでに、これらのテクノロジーは社会の中で定着している。

第二に、テクノロジーはより複雑化し専門化している。立法府の標準システムは法を通すことだし、それらのルール不足にセカンドチェックを提供する法律と裁判所をベースにしたルールを作る監視官が重要である。これらの人々はテクノロジー、彼らが作ったルールの微妙で潜在的に持つ有害な悪影響はもちろん、を理解するのに助言する専門家がいない。

我々は政府と法執行機関と軍の間で同じことを見ている。米国内では、我々は、容疑者の暗号化されたメールやコンピュータの解読を要求するFBIと、全ての人に不安を与える可能性を主張するセキュリティ研究者との間の議論を理解する国会議員に期待している。問題に精通する助手なしに専用部屋でNSAの活動についての高度な技術文書を読むしかないなら、我々は国会議員にNSAの有意な監視を準備することを期待している。

その結果、我々は例えばブラジルが自身に決定を下した状況となる。WhatsAppは5年でゼロから1億ユーザになった。通信会社はサービスできないようにするため、あらゆる種類の変わった法的主張を提示している。そして、裁判官は作り話と事実を区別するには不十分である。

これは、単にそこから離れるために政府の必要の問題ではない。そして、業界の中で企業に争わさせる。これらの企業は営利目的の団体である。そして、彼らのビジネスモデルは通常はユーザにとって最適な事を実行せずとても複雑である。(例えば、あなたは本当にはFacebookの顧客ではない。あなたは彼らの製品である。)

名前のGoogle検索で人々の履歴が効率的に最初の10ヒットがで得られるという事実は問題である。ヨーロッパの"忘れられる権利"は取り組みを不器用に試みたものだ。サービスを規則通りに利用する人々にとってますます酷くなる伝統的なタクシーのウーバーの破壊を伝える鋭い記事が多くある。そして、多くの人々はアマゾンの出版業界への増大する支配について心配している。

我々は新しいテクノロジーを規制するよりよい方法が必要である。

それは科学技術者と政策立案者との間のギャップを橋渡しすることを必要とするだろう。お互いは一方を理解する必要がある。お互いのフィールドで専門家になるには十分ではないが、有意義な会話や議論を参加するには十分である。それは機敏で可能な限り技術的に一定に書かれた法律も必要とするだろう。

それは無理難題なのは私にはわかる。そして、数十年全ての技術政策立案者の願い事リストにあるものだ。しかし今日、利害関係はより高まっており、問題はより速くなっている。何もしないことが我々全員にとってますます有害となるだろう。

このエッセイはCNN.comへ最初に載せた

12/26/2015

Perl 6.0がリリース

クリスマスに、Perl 6.0 (Rakudo Perl 6)がリリースされた。Tar形式かrakudobrew経由でダウンロードできる。rakudobrewなら次の方法でソースコードの入手からビルドまで可能(Linux/Mac)。

% git clone https://github.com/tadzik/rakudobrew ~/.rakudobrew 
% export PATH=~/.rakudobrew/bin:$PATH 
% rakudobrew build moar 2015.12 
% rakudobrew build-panda 

Slashdot、Hacker News 12スラド

Juniperのバックドア (マシュー・グリーン氏による)

Juniperのバックドア事件について、シュナイアー氏がブログで良いポストと書いていたマシュー・グリーン氏のブログの超訳(前半は既知なので省略した)。

Dual EC DRBG

ほとんど全ての暗号化システムは安全な乱数生成器(RNG)に依存している。これらのアルゴリズムは暗号化プロトコルによって使われる予測不能な乱数を生成する。この説明のキーワードは予測不能である。もし、攻撃者があなたのRNGの出力を予測できたら、事実上あなたが立脚するすべてが結局は破られたことになる

この事実は攻撃者に通じないことはない! 意図的な乱数生成器でもっとも有名な(そう思われている)例は、2007年にMicrosoftのダン・シュモウとニールス・ファーガソンによって発見された行為だ。彼らは、Dual_EC_DRBGと呼ばれるNIST標準の中にバックドアの可能性があることを公表した

私は、Dual_EC生成器の設計その標準化につながるプロセスについて幅広く書いてきた。数式を用いず簡単に説明すると、Dual ECはQと呼ばれる特別な32ビット定数を信頼している。そして、もし悪意のある攻撃によって生成されたら、あなたの生成器から生の出力のほんの30バイトを見ただけで、前述の攻撃者はRNGの未来の出力を予測することができる。

Dual_ECのNIST仕様はNSAによって生成されたQのデフォルト値を備えている。どのようにNSAがこの値を生成したかを判断することができた人はいないが、2013年のエドワード・スノーデンによる暴露がNSAが故意に(悪意を持って)生成したかもという強い証拠を提供している。それは確実に何かが臭う。

しかし、周知の事実はやめておく。ここではJuniperについて話そう。

Juniper ScreenOS -- 不正コードの前に

今週はじめは公表されなかったけれど、JuniperのScreenOSデバイスはしばらくの間、おそらくJuniperがNetScreen Technologiesを買収する以前からずっとDual ECを使っていた。今週より前に、あなたがこのことについて知る唯一の場所は、スノーデン事件の後にJuniper社によって投稿されたこの小さなページだった。

Whacko

Dual ECを使う決定はそれだけで不可思議である。しかも、奇妙なのだ。

まず、ScreenOSはNSAのデフォルトQ を使っていない。代わりに、Juniper、NetScreenの両方またはいずれか一方が生成した別のQ 値を使っている。もし、Juniperが本当に監視の可能性を排除したかったのなら、そう実行するのにいい機会だったはずだ。彼らは(実証可能な方法で)安全な方法で、例えば英語の文字列をハッシュするような方法で、新しい定数を生成できた。我々は彼らがそうしたという証拠を持っていないので、保守的な見立ては Juniper/NetScreenの定数も盗聴に利用するために故意に(悪意を持って)生成されたと考える。

次に、ScreenOSは奇妙にも標準ではない方法でDual ECを使っている。Dual EC(処理が遅い)で全ての乱数を生成するのではなく、彼らはANSI X9.17と呼ばれる3DESベースの高速な生成器でシードを生成するためにDual ECを使っているだけである。その生成器は実際にFIPS-140承認済みで、一般にその目的には十分であると考えられている。そもそもDual EC値が本当にシステムに追加されたのは何のためかは明確ではない。もちろん、将来バックドアとして役に立つことを除いてだが。

ここでの良い知らせはANSI X9.17の後処理はDual ECのバックドアを排除しているということで、攻撃はDual ECから生の出力を攻撃者が見ることに依存している。ANSI生成器はこの出力を完全に隠すように思われる。従って、安全なDual ECを提供している。これは本当にJuniperがScreenOSにDual ECコードを残しておくことに決めたのは2013年だったという論拠になる。

この論拠が持つ問題は、他のコードがうっかりでも生Dual ECの出力を数バイトも漏らさないということを決めてかかっていることだ。これはまさに故意のバックドア化されたシステムに不安を持つ脅威の類である。脅威はもしかしたら開発者があなたの仲間ではないのかもしれない。従って、Dual ECはコードの中にうっかり生のDual EC出力の30バイトが外部にリークするような小さなバグがないと推測する場合に限り安全である。もし、バグがあるなら、シードの後に続く全てのデータが予測可能で、システムが生成する全ての数字は予測可能となる。一般に、これはVPN接続の機密性にとって死を意味する。

そして、信じられないほど、そして驚くほど、そのようなバグがJuniperによって書かれた不正コードが発覚する前後まで、ScreenOSの多くのバージョンに存在するように思われるのだ。この問題はウィレム・ピンカースによって発見され、スティーブ・チェッコウェイが逆コンパイルした次のコードスニペットによって説明されている(全てのコードはここを参照)。

void prng_generate()
{
  int index; // eax@4
  unsigned int bytes_generated; // ebx@4
  int v2; // eax@9
  int v3; // eax@12
  char v4; // ST04_1@12
  int time[2]; // [sp+10h] [bp-10h]@1

  time[0] = 0;
  time[1] = get_cycles();
  prng_output_index = 0; // これはグローバル
  ++blocks_generated_since_reseed;
  if ( !do_not_need_to_reseed() )
    // 下記ルーチンは生のDual EC出力でバッファを埋めている
    prng_reseed(); // 内部でprng_output_indexが32にセット
  for ( ; (unsigned int)prng_output_index <= 0x1F; prng_output_index += 8 )
  {
    // このループはANSI (3DES)生成器を通じて同じバッファを処理することに
    // なっている。しかし、prng_output_indexの値は上で32にセットされて
    // いるので、決して実行しない
    memcpy(prev_prng_seed, prng_seed, 8);
    memcpy(prev_prng_block, prng_block, 8);
    ANSI_X9_31_generate_block(time, prng_seed, prng_key, prng_block);
    ...

この関数から出てくるものは生のDual EC出力の32バイトで、内部のDual EC生成器の状態を正常に戻す必要がある。

これが正規コードなら、一体何が不正コードなのか?

CVE-2015-7756についてゾッとするようなことは、不正コードのように見えないことである。確かに、修正版の変更点は単純にQ 点の値である、ラルフによると、この点は2012年に変更され、おそらくはハッカーが自身で生成した値への変更であった。これは、個々でScreenOSのVPNセッションをパッシブに復号化することができるだろう。

脆弱性を修正したもっとも新しいJuniperのパッチでは、Q が単純に最初のJuniper/NetScreen値に戻っている。

攻撃者もまたテストベクタを取り替えた。しかも、それであるように見える。

要約すれば、ハッカー、あるいはハッカーグループはJuniperソフトウェアの中にある既存のバックドア に気付いた、それが故意によるあるいは故意ではないにしろ、あなたの判断に任せる! 彼らは、難しい仕事は全てすでに終わっていたため、彼ら自身のバックドアを作るためにそれに乗っかり、彼らは実行することができた。結局は誰か、外国政府かも、が米国と周辺国のJuniperトラフィックを復号化できた期間があった。

Juniperがすでに修正したと言ってもだ(paved the road: 道路を舗装した)。

そして、なぜこれが起こったのか?

この数ヶ月間、私は破局が起きるということを重要人物を説得するためにできることすべてを行うため、技術者仲間と共に走り回っていた。むしろ、彼らが今ワシントンの周りを飛び回っている最悪の恐ろしい考えを実行するなら、破局が起きるだろう(the sky will fall)。すなわち、暗号化システムは我々の通信へのアクセスを法執行機関やNSAに許可を与える目的で、バックドアを標準装備しなければならなくなる。

我々はこうしたミーティングの間に持ち上がったもっとも深刻な懸念の一つは、暗号化バックドアが覆してしまう可能性があるということだ。とりわけ、法執行機関向けのバックドアは、とにかく我々のメッセージを読むことに疑いを持つ人々に向けたバックドアになり得る。普段、我々がこのことについての話すとき、エスクロウキー(預託鍵)のようなもののストレージの障害を心配する。このJuniperの脆弱性が説明していることは、危険がとても広範囲かつ、それよりもとても深刻なこと示している。

暗号化バックドアが持つ問題は、それらは攻撃者が我々の暗号化システムに侵入できる唯一の方法というわけではないということだ。最適な方法の一つに過ぎない。彼らは(盗聴のため)骨の折れる仕事、配管、配線工事を引き受け、攻撃者はたやすく中に入り、カーテンを変えることができるのだ。

この投稿は、ラルフ・フィリップ・ワインマン、H. D. ムーア、スティーブ・チェッコウェイ、ウィレム・ピンカース、ナディア・ヘニンガー、シャーナン・コイニー、そして文字Qによって可能となった。

12/24/2015

EFFの2015クリスマスの願い事

電子フロンティア財団(EFF)がブログで2016年に起きて欲しい願い事を公表していた。


更新 (2016.1.14)

TechCrunch: 上院議員がGoogleによる児童生徒のデータの収集で質問状をGoogle CEOに送付

12/22/2015

Juniperのセキュリティ侵害、シュナイアー氏の見解

期待通り、シュナイアー氏がブログに取り上げてくれた。

Juniperはファイアウォールの中に自動的にVPNトラフィックを復号する悪意のあるバックドアがあることを警告をした。それは数年間そこにあった。

うまくいけば、詳細は入手できるが、Hacker Newsの人々はJuniperのDUAL_EC_DBRG乱数生成器の利用に関するこのページ指摘している。すぐには名前に見覚えのないの人のために、それはNSAによるバックドアがあった擬似乱数生成器(PRNG)である。基本的に、PRNGはパブリックパラメータを作るために2つの秘密のパラメータを利用し、それらの秘密のパラメータを知っている人は誰でも出力を予測できる。標準の中で、NSAはそれらのパラメータを選択している。Juniperはそれらの汚染されたパラメータを使っていない。代わりに、

ScreenOSはDual_EC_DRBG標準の利用するが、メインの乱数生成器としてDual_EC_DRBGを使わないよう設計されている。ScreenOSはある意味それを使っているが、明らかにされた事態は脆弱性とは言えない。NISTが推奨している曲線ポイントを使う代わりに、自己生成ベースポイントを使っており、ScreenOSの暗号運用で使われている乱数生成器であるFIPS/ANSI X.9.31 PRNGを入力として出力を得ている。

これは、ファイアウォールをハックして自己生成ベースポイントをコピーあるいは変更することで、誰でもPRNGを破ることできることを意味する。

ここに我々が知っている素晴らしい要約がある。結論は、

再び、この仮説が正しいと推測すると、これを実行したのはNSAでないなら、我々は米政府のバックドアの取り組み(Daul-EC)を、他の誰かが米国を攻撃する土台作りに取り組んだという論拠を持つ。確かに、この攻撃はバックドアに適したRNGがすでに存在しているためとても簡単だ。そして、私はSSHバックドアを議論さえしなかった。WIREDの指摘はもっぱら異なるグループの犯行とみている。そのバックドアは確かにNOBUSではない − Fox-ITが6時間でバックドアパスワードを発見したと主張する。

いずれ詳細が分かる、きっと。

追記編集(12/21): sshバックドアの技術的概要

なぜ広告が問題なのか

サイトもアプリもノイズだらけになってきていて、ますますサイト運営者はパフォーマンスやアクセスのしやすさを考えなくなっているように思う。なぜ広告が問題なのか?

多くのサイトが収入源として広告を使っている。しかし、広告にはユーザ、サイト運営者(Publishers)、広告主にとって多くの問題が存在している。

ユーザ

ユーザは主にはコンテンツ目的でサイトに訪れ、稀にしか他に関心(attention)を払わない。彼らの関心をつかみ取るため、サイト運営者は広告でウェブページを埋めるが、それは鬱陶しく、時にはページのほとんどの場所を占有する。広告はユーザにとって多くの理由で問題である。

  1. 広告はとても鬱陶しく、ユーザの関心を下げてしまう
  2. 広告はオンラインのユーザの活動を追跡し、結果としてプライバシー違反が生じる
  3. 広告の中には詐欺がある
  4. 関心を集めるため、広告はアニメーションやFlash動画を利用し、エネルギー浪費をもたらす。研究から、1年でドイツの人口に広告を表示するのに消費されるエネルギーは、オランダの2000世帯近くの1年分の電力消費量に相当する
  5. 広告の表示は異常バッテリー消費(バッテリードレイン)を生じさせ、大抵はモバイルデバイスで問題となる
  6. 広告はダウンロードに帯域幅を求め、サイトを遅くしてしまう
  7. 広告はブラウザの処理を重くし、メモリの利用を増大する。モバイルデバイスでは、利用可能なメモリが少なくなり、ユーザが一度に多くのサイトに訪れると、タブを切り替えた際にブラウザがページを再度読み込まなければならない(無駄なCPUや帯域の消費が生じする)
  8. 広告主が広告を出すのにお金を払わなければならず、これは製品やサービスの価格を間接的に高くしてしまう
  9. 多くのインターネットプランは帯域幅によって請求される。そして、(多くの場合)ユーザは双方の帯域幅、エネルギー、さらに高くなった製品の価格を間接的に支払う

サイト運営者 (Publishers)

私はサイトを作ることが好きだが、例えばホスティング、ドメイン名、サイトがユーザにとって実用的で便利かどうかを確認するのに費やす時間など多くのコストを伴う。サイトから収入を得るにはいいだろうが、私がサイトに小さなコードを置くだけでも、広告でユーザをイライラさせ、ユーザが追跡されることを知っているので心苦しい。

寄付

ユーザはエネルギー、帯域幅や高い製品価格を払っている。ユーザはこれらのお金を直接ウェブ管理者に寄付した方が有意義ではないだろうか?

今から寄付を始めてみよう! ここにマイクロ寄付サービスを掲載する

注: Googleにも「Contributor」というウェブサイトに寄付する代わりに広告を非表示にするサービスがある。「Contributor」に参加しているのは、Urban Dictionary、The Onion、ScienceDaily、wikiHow、Mashable、imgurなど。

広告のブロック

広告、追跡やマルウェアサイトをブロックする簡単な方法は、someonewhocares.orgから/etc/hostsリストを利用することだ。

Hacker News

12/21/2015

Juniperのセキュリティ侵害: ツイッターでの記録

Juniperのセキュリティ侵害について、GoogleのセキュリティエンジニアであるAdam Langley氏がツイッターで語られた会話の分析をブログに掲載している。参考になりそうだったので超訳した。

木曜日、Juniperは、いくつかの製品がScreenOSの不正コードによって影響を受けると発表した。それは、精通した攻撃者がNetScreenデバイスへの管理者権限のアクセスを得ることと、VPN接続の復号化が可能になる。攻撃者がJuniperのソースコードリポジトリに侵入し、バックドアを混入させたように思える。もちろん、我々はこれらの攻撃を垣間見ることに魅力を感じる。

Juniperは2つのバックドアがあったことを注意喚起する少し詳細な投稿で述べた。一つはSSHでのアクセス、一つは知識のある攻撃者がトラフィックを復号化してVPNトラフィックをモニターできる可能性があるというものだ。どちらも国家攻撃者にとって興味深いが、後者のVPN接続のパッシブな復号化は周辺諸国にとって興味深いものだ。

そしてもちろん、私よりも賢い人々は素早く修正されたファームウェアとの違いを分析し、ツイッターに取り上げた。ツイッターの会話は事件後にこき下ろされてひどい状態になったので、私はここに要点を書き留めている。しかし、私はこの事件のまさに書記であって、他の人々が書いたものだ。

人々が集中して最初に手掛けたものの一つが二つのファームウェアのstringsの単純な差分を取ることで明らかになった16進数の違いだった。なぜなら、その違いは興味深いだけでなく、大きく、バイナリの中に不可解な16進文字列であった。特にそれらは、

  • FFFFFFFF00000001000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFF: これは楕円暗号の標準P-256の基本フィールドの素数位数である
  • FFFFFFFF00000001000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFC: P-256は通常短ヴァイエルシュトラス方程式 y2=x3+ax+b で書かれている。これは今はP-256のa 値である
  • 5AC635D8AA3A93E7B3EBBD55769886BC651D06B0CC53B0F63BCE3C3E27D2604B: これはP-256式のb 値である
  • 6B17D1F2E12C4247F8BCE6E563A440F277037D812DEB33A0F4A13945D898C296: これはP-256の標準生成のx 座標、曲線の演算の始点である
  • FFFFFFFF00000000FFFFFFFFFFFFFFFFBCE6FAADA7179E84F3B9CAC2FC632551: これはP-256の点の数である

そう、変更される直前は全てのが値がP-256の定数である。変更された値は暗号の解読法でもあることを意味する。明らかに欠けている値は標準生成のy 座標である。一つの可能性は攻撃者が間違ったy 値を中に入れたということだ。これは、間違った曲線のジェネレータを置くことだ。b が異なる値を持つP-256とほとんど同じパラメータ共有する弱い曲線と言える。しかし、作られた曲線は弱いのだが、リアルタイムパッシブの復号ができるほど弱くない。修正バージョンの中の置き換えられた値は標準y 値ではなかった。

Ralf-Philipp Weinmannは、コード自身を検討して発見したのは、

Adam Langley
もし、それがジェネレータのyでも、まだP-256ではなく、要するにより弱い曲線を作るための変更だ!
Ralf (RPW)
OK、変更された定数をBNに変換するためにEC_POINT_set_compressed_coordinates_GFp() x argを呼んでいる

変更された値がx 座標であり、コードは曲線方程式を与えられてy 値が計算されたということを意味する。従って、x 値だけが必要で、重要な点はいつも正しい曲線だということだ。そして、おそらくそれは何かの公開鍵である。

Samuel Neves
ジェネレータではないのかも。むしろハードコードの公開鍵?
Matthew Green
同感。署名の公開鍵あるいはテスト鍵

公開鍵の変更は容易に大きなバックドアとなる。しかし、結果ここではどういうわけかVPNトラフィックのパッシブな復号で呼び出されている。どのように公開鍵の変更がパッシブな復号化の結果となるかは明確ではない。

Ralf (RPW)
キーボードに戻って、どれもこれも筋は通っている。これは調査が必要であろう。しかし、ここにヒントがある: "EC PRNG KAT failure"

説明すると、"EC PRNG"は、その値が楕円曲線をベースとした擬似乱数生成器にある定数かも知れないことを示唆している。それは、Dual-ECのメモリを持ち出すため、どのようにVPNのパッシブ復号化が可能かを確かに説明できる。Dual-ECというのは、NSAがバックドアを持つ擬似乱数生成器(PRNG)を導入しようと努力していたものだ。秘密鍵の情報を与え、RNGからの出力を監視することを攻撃者に許し、その上、今後の出力を予測できる。攻撃者がPRNGの出力を予想できたら、VPN接続の片方あるいは両方が選択そして復号する鍵を知ることができる。(さらに詳細は、研究論文を参照してほしい)

実際には、すぐにそれが明らかになった。Juniperはウェブページでそれらが 問題になっているVPNデバイスであることをここで言っている "Dual_EC_DRBGを利用している。しかし、NISTによって挙げられた定義済ポイントを使っていない"。要するに、それらはバックドアを持ったRNGを使っていたが、ロックは変更されていた。そして、この攻撃は誰かが割り込んで、再びロックを変更したということを説明しているのかも知れない。

我々は実際に何が起きたのか確信はないが、現段階ではそれは合理的な仮説のように見える。それが正しいなら、これは相当に頭がおかしい。Dual-ECは妥当なRNGではない。非常に大きいし、遅いし、標準的なRNGと比較してとても複雑だ。さらに出力は全く均一ではない。巨大なセキュリティ侵害は第一の目的を満足するためにその設計が作られた。それはパッシブなバックドア、NOBUSとなるべきものだった。("NOBUS"は諜報機関の間で使われる用語で、"nobody but us (我々だけ)" の略語である。例えば、他の関係者がバックドアを使ったりはできない。) なぜ、そもそもScreenOSが使われたのだろうか?

matt blaze
少なくとも、Juniperはバックドアが存在したということに包み隠さなかった点に信用に値する。そして単にパッチを公開するだけではなかった。

再び、この仮説が正しいと推測すると、これを実行したのはNSAでないなら、我々は米政府のバックドアの取り組み(Daul-EC)を、他の誰かが米国を攻撃する土台作りに取り組んだという論拠を持つ。確かに、この攻撃はバックドアに適したRNGがすでに存在しているためとても簡単だ。そして、私はSSHバックドアを議論さえしなかった。WIREDの指摘はもっぱら異なるグループの犯行とみている。そのバックドアは確かにNOBUSではない − Fox-ITが6時間でバックドアパスワードを発見したと主張する。

Hacker News

更新 (2015.12.21)

暗号の視点で技術的に詳しく解説しているブログで、ISCハンドラーのRick Wanner氏が推奨している。

12/19/2015

ミンスキー博士のエモーション・ユニバース

マーヴィン・ミンスキー博士の「エモーション・ユニバース」の超訳。いずれは「エモーション・マシン」(ミンスキー博士の脳の探検 ―常識・感情・自己とは―) [amz]を読んでみたい。

私は宇宙に関するとあるグループトークを聞いていて、人々がそれを議論しないのはとても単純で、一つの可能性があるからだと私には思われる。確かに、「誰がなぜ宇宙を作り、それは何のためか?」という疑問は全てが宗教の中にある。しかし、彼らはつじつまが合わない余計な仮説を立てるため、そのような疑問はどこかがおかしくなってしまう。Xが存在すると言っているのに、Xは宇宙の中にいると言っている。要するに、「このコップ一杯の水が存在する」は「このコップは宇宙の中に存在する」と同じことである。しかし、宇宙が存在すると言うことは馬鹿げている。なぜなら、宇宙は宇宙の中でただ一つだからである。そのため、「何のために宇宙は存在するのか?」のような疑問はどこかおかしなところがある。

この意味を理解するのに、私が理解出来る唯一の方法は、多くの「可能宇宙」が存在するという有名な「多世界理論」を受け入れることだ。それが我々がいる一つの宇宙を区別されるあるいは唯一であるなんてことはない - 我々がいる宇宙であることを除いては。別の言い方をすると、我々の世界が存在すると考える必要はない。その代わり、コンピュータゲームのようにそれを考えてみると、次のような一連の理論を考える:

(1) ある世界をシミュレーションしているコンピュータがどこかにあって、シミュレートされた人々が進化していると想像してほしい。最終的に、賢くなり、それらの人々の一人が他の人に「何のためにこの特別な世界が存在し、我々がそこにいるのはなぜか?」と尋ねる。もちろん、シミュレーションだけなので、世界は本当には存在しない。

(2) そして、それらの人々の一人がおそらく我々はシミュレーションの一部ではないかと、ふと気付くかもしれない。そして、その人は「誰が我々をシミュレートしたプログラムを書いたのか、誰がそのプログラムを実行できるコンピュータを作ったのだろうか?」と問い続ける。

(3) しかし、他の誰かが主張する「おそらくコンピュータなんてものはない。プログラムが存在する必要があるだけだ。なぜならプログラムが書かれたら、シミュレーションの中で起こる全てを決定するからだ。結局、コンピュータやプログラムが描写する時(一連の初期条件の下で)、これはその住人全てやそれらに起こる全てを含む世界全体を描写するだろう。そして、本当の疑問はそのプログラムは何で、誰がそれを書いたのか、そしてなぜと言うことだ。

(4) 最終的に、それらの人々の別の人は「結局、誰もそれを書く必要はない! 可能な全てのコンピュータによる処理なだけだ!」と気付く。誰も記録する必要もない。誰もそれについて考える必要もない。それが原則として可能である限り、宇宙の人々はそれらが存在することを考え信ずるだろう。

そのため、我々はなぜこの世界が存在するのかについての尋ねることに意味をなさないという結論を出すべきだ。しかし、どのようにこの特別な宇宙が働いているのかと言う別の疑問がまだ残る。例えば、我々は我々自身についてたくさんのことを理解している。具体的には、我々がどのように進化してきたか、我々は、存在するためには我々を生み出したプログラムがある種の特性(プロパティ)を持たなければならないということを理解できる。例えば、自身で突然変異したコピーを作ることができる構造が無ければ、進化(ダーウィン進化)するシステムが作られない。これは持続的な特性を持つためには十分安定していなければならないことを意味している。十分に長持ちする分子のようなもの等だ。

これにより、同様に物理に関する重要なものを我々に告げている。我々のような生き物がいる宇宙は普遍的な法則に従わなければならない。そうでなければ、進化のプロセスをサポートするくらい十分に長くは続かないだろう。我々は宇宙の中に存在できず、とても高い頻度で消滅、爆発を繰り返し、とても多くの場所で生み出されることだろう。言い換えれば、我々は不適当な法則を持つ宇宙で存在できないのだ。(確かに、これは結局法則がない世界についての気掛かりな問題を残す。これは時に人間原理と呼ばれるものと関連している。それは物理学者がそのような物理学者たちをサポートできる世界を作ったことについて尋ねることができるのは唯一の世界だという考え方である。)

確定性原理 (The Certainty Principle)

昔は、物理学者が量子理論を説明しようとした時、いわゆる不確定性原理で、世界はニュートンが説明した方法ではないと語ってきた。彼らは全てが確率的で予測できないと、不確定性を強調した。しかし、彼らはそれが実際のところは正反対であるという事実をめったに言及しなかった。それは我々がどんなものでも依存できるという量子化故こそである! 古典的なニュートン物理学の例では、複雑なシステムは長い間安定できない。ジェリー・サスマンとジョン・ウィズダムは、太陽系システムをシミュレーションし、大きな外惑星が10億年間安定させることを示した。しかし、それらは内惑星をシミュレーションしなかったので、惑星が安定するかの保証はない。地球を宇宙の外に投げ出すために大型惑星が移動されるほどの十分なエネルギーがあるかもしれない。(彼らは冥王星の軌道がカオス的であることを示した)

そう、量子理論は物が不確実であることを示している。もし、DNA分子を持っているなら、突然その炭素原子の一つがトンネル効果で、アルクトゥルスに現れる可能性はある。しかし、室温ではDNA分子は10億年の間その場所にとどまるほどほとんど確実に存在する。量子力学が理由で、そしてそれが進化は可能だという理由の一つである! 量子力学は、ほとんどが通常は飛び回っていない理由である! それで、これが人間原理を真剣に受け止めるべきだということを意味している。「どの可能宇宙が進化のようななものをサポートするのに十分安定するものだろうか?」どうやら、最初の細胞は地球が十分に冷えた後に急速に現れるようになったのだ。私はこれは少なくとも1億年は掛かったと見積もっている。しかしその一方で、細胞の類が動物と植物に進化するまで更に30億年掛かった。これは、安定性をサポートする法則を持つ可能世界でのみ起こった。それはニュートン宇宙では起こるわけがない。そして、これが所定の位置に物事を保つために、我々は量子力学のような何かが必要だという理由である。(私は、「ファインマン計算機科学」という本の私が執筆した章で、この「確定性原則」で論じた。)

知性 (Intelligence)

なぜ、何が我々の精神で、それがどのように働くのかについてのしっかりした理論がまだないのだろうか? 私の見立てでは、これは我々は必要とする概念を今はじめて持ち始めたばかりだからだろう。脳はとても複雑なマシンで、今日のコンピュータをはるかに超えて高度である。まだ1950年代まではなかったが、(例えば)メモリについてのシンプルなアイデア、データ構造の概念、キャッシュ・メモリ、優先割り込みシステム、そして、セマンティックネットワークのような知識の表現を獲得し始めた。今、コンピュータサイエンスは1960年代前には簡単には手に入らなかった数百のそのような概念を持っている。

心理学自身は20世紀前には大して開発されなかった。アリストテレスのような数人の思想家は心理学についての素晴らしいアイデアがあった。しかし、進展はその後ゆっくりだった。アリストテレスの弁論術はおおよそ1870年までの他の思想家たちと同じくらい素晴らしいと思える。そして、ゴルトン、ヴント、ウィリアム・ジェームズ、フロイトの時代が来ると、我々はどのように精神が働くかについてのアイデアへの最初の一歩に見えた。それにしても、私の見立てでは、40年代のサイバネティックまでさほど進展はなかった、50年代や60年代には人工知能、70年代や80年代には認知心理学が成長し始めた。

なぜ、これまでのところ心理学は多くの他の科学の後方に停滞したのだろうか? 1930年台後半、スイスのジャン・ピアジェという名前の植物学者は彼の子供たちの行動を観察し始めた。子供たちの成長を観察した10年間、彼は子供たちの脳に起こったプロセスについての何百もの小さな理論を書き留め、約20冊の本を書いた。3人の子供を注意深く観察したことが全て基になっている。一部の研究者はまだ彼の結論について粗探しをしているが、全体構造は棚上げ状態になっているように見え、彼が説明した進展の多くは観察された全ての文化の中で同じレート、同じ年齢で起こったように見える。「ピアジェは正しいのか間違いなのか」は疑問ではない。しかし、「なぜ2000年前にピアジェのような人がいなかったのか?」。誰も子供を観察することについて考え、どのように彼らが動いたのか解明しようとはしなかった全て以前の文化についてとは何だったのか? もちろん技術不足からではない。ピアジェはサイクロトロンを必要としなかった。ただコップの水やキャンディ片を必要としただけだった。

おそらく、心理学は成功した科学の真似をしようとしたため、後れを取ってきたのだ。例えば、20世紀はじめ、心理的主題についての数学的理論を作ろうという試み(ノータブル学習やパターン認識)が多数あった。しかし、数学を加えることに問題があった。物理学には良かったが、私が思うに基礎物理学はとても少ない法則で良かったが、コンピュータ以前に開発された数学の類は、ごくわずか、4、5あるいは6の法則を基にしたシステムを記述するのが上手かった。しかし、十数の法則を基にしたシステムでは上手く動かない。ニュートンやマクスウェルのような物理学者は、3あるいは4の法則を基にした巨大な現象から成る方法を発見した。しかし、20の仮定では、数学的推論は非現実になる。

群論と呼ばれる美しいテーマは5つの仮定だけで始まる。これは人々がそれらの上で一生を過ごす複雑さがあるようなシステムにつながる。同様に、誰も完全に理解できなくても、数行のコードだけでコンピュータプログラムを書くことができる。少なくとも、十分理解し、良い理論を作るため、どのようにそれが振舞うかを理解するためにコンピュータを実行することができる。

しかしながら、それよりもコンピュータサイエンス以上の内容がある。多くの人々はコンピュータがどう動くかの科学としてコンピュータサイエンスを考えるが、私は全く異なる考えを持っている。コンピュータサイエンスは、複雑なシステムについて説明し、考えるための新しい方法の集合である。それはどのように心の機能が働いているかについての有益な概念、新しい巨大なライブラリを搭載している。例えば、記憶の古典的な理論のほとんどは箱の中で事実のような知識を想定していた。最新の理論は短期と長期記憶についてのアイデアに気付き始め、技能(スキル)は別の方法で保持されると推測される。

一方では、コンピュータサイエンスは情報を蓄えるのに妥当な方法が数多く提案されている。データベースの項目、あるいは"if-then"応答規則の組、セマンティックネットワークの形態の中(情報の小さい断片はそれら自身が持つ属性のリンクに接続される)、プログラムのような手続き型言語、ニューラル・ネットワークなど。あなたはニューラル・ネットワークと呼ばれるものにものを保存することができる。そして、あるものを学習することは素晴らしいが、高次の処理はニューラル・ネットワークの中に何が入っているかを振り返ることができるため、知識以外の類にはほとんど役立たない。これは、脳の残りはそれが学習したことついて考え、推論することができないという意味である。すなわち、何が特別な方法に精通していたのかということだ。人工知能では、我々はより速くプログラムを作るため、多くの技を学習させる。しかし、ニューラル・ネットワーク型の学習結果は理解するためには、他のプログラムは不透明過ぎるため、長い目で見れば制限につながる。

それでも今なお、ほとんどの脳科学者は例えばキャッシュメモリについて、理解しているようには見えない。あなたがコンピュータを購入するなら、遅いハードディスク上に大きなメモリを持つことを希望するだろう。しかし、キャッシュと呼ばれるもっと高速なメモリも持ち、それらが再び必要になることを備えて最新の作業を記憶している。そのため、他に見に行く必要はなくなる。そして、現代のコンピュータはそれぞれいくつかのそのようなシステムを利用する。しかし、そのように海馬について誰かが話すことを聞いた事は無い。こうしたことが脳科学者はとても保守的であるということを暗示している。したがって、ほとんどの実験は誤った選択肢を区別しようとしている。

強化学習(Reinforcement) vs. 評価割り付け(Credit assignment)

自身で学習して成長する一種の「ベビーマシン」を作ることを目指すいくつかのプロジェクトがある。ゆくゆくは知能を持つようになる。しかし、そのようなプロジェクト全てが今の所、いくつかの点で前進しているのみで、その上、もろかったり、さらに劣化した。一つの問題はそれらが獲得した知識を表現するための適切な方法を見つけることだ。もう一つの問題は、我々が時々評価割り付け(credit assignment)と呼ぶものへの良いスキームがないことだ。それは、どのように関係のあるものを学習するのか、偶然というよりも必須事項である。例えば、ネジが一列に残って、抜けないようにネジ回しを使う新しい方法を見つけたとする。あなたが学習したのものはなんだろう? それは単に正確に一連の動作を学習するだけでは十分ではない(なぜなら、この次に空間的関係は異なる)。従って、あなたは表現の高いレベルで学習する必要がある。どのように正しい抽象化を作るのだろうか? また、いくつかの実験で、あなたが成功に向かって、そのパスの中で異なる10の物事を行い、それらのうちあなたが思い出すのは、そしてどのようにそれらを表現するのだろうか? 古い心理学理論はごく最近まで行ってきた強化学習(reinforcing)の単純なアイデアを使った。しかし、それが目の前の問題がより複雑になるばかりでうまく働くようには見えない。明らかに、行動ではなく、計画を補強する必要がある。そして、良い評価割り付け(Credit-Assignment)はあなたが行う物事についての思考を伴うべきだと意味している。それにしても、誰もそのような物事をする良いアーキテクチャーを設計してデバッグしない。

我々は優れたプログラミング言語やアーキテクチャーを必要だ

私は、問題解決プログラムのデザイン、あるいはそれらを説明するプログラミング言語、あるいはそれらのデザインを実装するためのマシンで見られる奇妙な伸び悩みに気づいた。最初は、コンピュータがまだ一般の人々に利用可能になる直前の1950年代始めに始まった人間の問題解決をシミュレーションするためのプログラムを得るための実験でのことだった。例えば、ジョン・フォン・ノイマンのグループによって設計された初期のマシンを使ったニューウェル、サイモンやショーの研究だった。これを実施するために、彼らはリスト処理プログラム言語IPLを開発した。1960年には、ジョン・マッカーシーがより高水準言語LISPを開発し、そのような物事を行うのがより簡単になった。そして、リアルタイムに自身を修正できるプログラム書くことができた。残念ながら、後のプログラミングコミュニティはこの重要性を評価しなかった。そのため、世界はいまだに自身を変更できないプログラムのFotran、C、それらの後継のような使いにくい言語が優位に立っている。その競合相手は誰も理解できず変更もできない内容で一杯になっているため、現代のオペレーティングシステムは同じ運命に苦しんでいて、業界は古代の過去から持ってきた化石のUnixと呼ばれる35年前のシステムをチューニングするのが見られる。そして今、我々は再出発しているところだが同じ誤りをする可能性が高い。コンピュータコミュニティのどこが悪いのだろうか?

専門知識 vs. 常識

人工知能の初期、我々はとても高度なことを行うためにプログラムを書いていた。最初のそのようなプログラムの一つは、ユークリッド幾何の定理を証明できた。幾何学がいくつかの仮定にのみ依存するので、これは簡単だった。2つ点が与えられたら直線が決まる。2つの直線があって、どちらか一方が並列あるいは1点で交わる。あるいは、2つの三角形は2辺とそれらの間の角が等しければ、同じである。仮定がとても単純な世界で、小さな数字だけがあり、とても明確な論理を使うため、これは最高のテーマである。美しい場所であり、あなたはそこで素晴らしいものを発見できる。

しかし、振り返ってみると、私はとても高度な課題に取り組み大きな貢献をすることは間違っていたかも知れないと考えている。その結果は今日まで誰も子供が解くことができる問題のようなものに注目していなかった。幾何学問題は優れた高校生が行うのとおおよそ同じようなものだった。我々の大学院生の一人は、微積分の象徴的な問題を解決するプログラムを書いた。ジム・スレイグルのプログラムはMITの1年目の微積分学のコースのAグレードを得るのに十分なものだった。(しかし、象徴的な問題を解くことができるだけで、言い方を表現する性質はない。結局は、そのプログラムの後継は一般の人よりも素晴らしいものに進化し、MACSYMAやMathematicaと呼ばれる数式処理システムにつながった。胸躍る話ではあるが、それらのプログラムはまだ「文書問題」を解決できていない。しかし、1960年代中頃、大学院生のダニエル・ボブロウが「ビルの父の叔父は父の2倍の年齢である。ビルの父は今から2年後、ビルの3倍の年齢になる。全員の年齢の合計は92歳だ。ビルの年齢を探り出せ」のような問題を解くことができるプログラムを書いた。ほとんどの高校生はそれにかなり手こずる。ボブロウのプログラムは一次方程式の中にそれらの英文を変換できる上、それらの方程式を解決できる。しかし、他の意味を持つ文に何もできなかった。我々は、プログラムを少し改良を試みたが、良くはならなかった。なぜなら、それらのプログラムはどのくらい人々が常識的な言語を使うかを十分に理解できなかったためだ。

1980年までに我々は1000のプログラムを書いた。それぞれがいくつかの専門分野に特化した問題を解決するのが得意である。しかし、それらのプログラムは典型的な5歳児ができるようなことはできなかった。もし、あなたが全く間違っていて、子供が全く正しければ、5歳児は議論であなたを打ち負かすことができるだろう。早い話が、我々は微積分、幾何学、高校レベルの代数などから後退した。今や、ほんの過去数年、AIの少数の研究者は、全ての普通の子供が解決できる常識問題の類に取り組み始めた。しかし、熟練特化したプログラムを書く人が10万人いても、私は、日常の類に取り組むプログラムを作るための方法を見つけることを意図する人は、世界の中で1ダース程度しか見つからない。ほとんどの子供はそのような常識的な仕事ができるのにだ。

12/18/2015

Juniper/ScreenOSに不正コードが見付かる

Juniperが、ScreenOSの内部コードレビューを行ったところ、2つの不正コードが見付かったと発表した (JSA10713)。一つは、SSHやTelnetでデバイスに管理権限でログインできるバックドア(CVE-2015-7755)、もう一つの不正コードは攻撃者がVPNトラフィックを復号化してモニターできる可能性がある(CVE-2015-7756)。影響は、ScreenOS 6.2.0r15から6.2.0r18、及び6.3.0r12から6.3.0r20。既に修正版がリリースされており、次善策は存在しない。

なお、Juniperはどのような経緯でバックドアが混入したのかを明らかにしていないが、少なくとも2012年、可能性としてそれ以前に混入したとみている。以前、Ciscoにも似たような話があり、スノーデン氏が指摘していたという話もあることから、NSAが怪しい??(NSA ANTカタログにあるFEEDTROUGH)

Hacker News 12SANS DiarySlashdotWIRED


更新1 (2015.12.19)

CNNによると、FBIが調査しているらしい。

Engadget

更新2 (2015.12.21)

Rapid7のH. D. ムーア氏が、リモートアクセスのバックドアの不正コードを調査し、そこで使われるマスターパスワードを特定したそうだ。そのパスワードは「<<< %s(un='%s') = %u」で、デバッグ形式の文字列を誤って選ばれたのではないかとのこと。有効なユーザ名が分かれば、このパスワードでtelnet/ssh経由でログインできるとのこと。NetScreenでSSHがオープンなデバイスをShodan検索にかけると、26000あるとのことだ。そして、最初に解読したFox-ITはSnort向けの検知ルールを公開している。

Hacker NewsboingboingSlashdot

更新3 (2015.12.22)

  • Fox-ITはユーザ名は何でもいいことを確認した
  • Juniperはリモートアクセスのバックドアの影響があるバージョンは、6.3.0r17, 6.3.0r18, 6.3.0r19, 6.3.0r20であることを確認した

ISC Diaryによれば、ハニーポットにこのバックドアを突く攻撃が発見されたとのこと。また、ロイターによると、影響はCiscoにも及び、顧客からの問い合わせが多いため、コードレビューを開始したそうだ。

Slashdot

更新4 (2015.12.26)

ScreenOSのバージョンと脆弱性の対応表

ScreenOS
Version
Released CVE-2015-7755
(telnet/ssh)
CVE-2015-7756
(VPN)
6.2.0r15 Sep 2012 not vulnerable vulnerable
6.2.0r16 March 2013 not vulnerable vulnerable
6.2.0r17 May 2013 not vulnerable vulnerable
6.2.0r18 Oct 2013 not vulnerable vulnerable
6.3.0r12 Aug 2012 not vulnerable vulnerable
6.3.0r13 Dec 2012 not vulnerable vulnerable
6.3.0r14 Apr 2013 not vulnerable vulnerable
6.3.0r15 Sep 2013 not vulnerable vulnerable
6.3.0r16 Dec 2013 not vulnerable vulnerable
6.3.0r17 Apr 2014 vulnerable vulnerable
6.3.0r18 Dec 2014 vulnerable vulnerable
6.3.0r19 May 2015 vulnerable vulnerable
6.3.0r20 Nov 2015 vulnerable vulnerable
6.3.0r21 Dec 2015 not vulnerable not vulnerable

12/14/2015

GoogleがCDNサービスを開始

Googleが「Google Cloud CDN」というCDNサービスを開始した。プロバイダに配置しているGoogle Global Cache (GGC)をベースに、競合先であるアカマイ、CloudFlareやLevel 3などともパートナー関係を結んでいるようだ。

12/13/2015

COP21でパリ協定を採択

COP21でパリ協定を採択。Slashdotに次のXKCDが引用されていた。

4 5 degrees blog
良いニュースは最新のIPCC報告書によれば、今、積極的な排出制限を成立させれば、気温上昇を2度に維持できます。それは1氷河期ユニットのたったの半分で、おそらく大したことはありません。

とはいえ、この程度の気温差で大きな違いを生んでいるので、+0.5 IAUの維持達成が危ぶまれることを考えると、+1 IAUになった時の状況が分からない不安は残るが...。

更新 (2015.12.15)

Slashdotに次のようなエピソードが紹介されていた。

日曜日、世界の指導者たちが気候変動に取り組むために意欲的な国際合意を完了した。しかし、当局者らは最終ドラフトと想定されていた最初のコピーを受け取った際、一語の誤植が今までの進展を頓挫させる恐れがあった。より維持できるシステムへの転換を助けるために、裕福な国が貧しい国へ財政援助の提供を働きかけるという言い回しに関連した合意の一部だった。しかし、ドラフトには法的拘束力がある"shall"が使われた。米のジョン・ケリー国務長官は以前の文書では"should"が使われていたことに気付き、その変更に反対した。当局者らは取り替えが故意に行われたかどうかを早急に原因を解明しようとした。最終的に、誤植だと判断され、急遽正しい文書が用意され、無事に採択された。

VIRLアップデート情報 (VIRL 1.0.11 December'15)

VIRLのアップデート(VIRL 1.0.11 December'15)があった。

  • VIRL-CORE: 0.10.21.9
  • IOSv: 15.6.1.T
  • CSR1000v: 3.17

更新 (2015.12.26)

12/23から10日間限定で、ノード数のリミットが10増える。ノード数が20から30に増量されている。年末年始は30ノードで試験ができる。

2015 virl christmas gift

12/11/2015

Simple BGP

Qratorチームが「Simple BGP」というBIRDをフォークしたBGPツールを開発している。その中で、設定の誤りで経路のリークが起きないよう、次の仕組みを実装しているという。

  1. BGP Openを修正し、Openメッセージに"Role" (ケーパビリティコード38)を追加する。Roleオプションは、customer、provider、peer、internalの4つの値を取る。そして、(Provider, Customer)、(Customer, Provider)、(Peer, Peer)、(Internal, Internal)の組み合わせの時にネイバーを確立する
  2. BGP Updateを修正し、providerあるいはpeerから学習した経路には "Local Announce" (非通過属性、BGPパス属性コード19)を加える
  3. Strict_modeオプションが設定されると、ネイバーにRoleが設定されて、それが一致した時のみ確立する

Hacker News

今後10年間でプログラミングはどう変わりますか?

Go言語のコミッターであるプログラマーDave Cheney氏のブログより。

今後10年間でコンピュータのプログラミングの展望はどうなるでしょうか?

一言で言えば、分岐です(bifurcated)。

個人的には、様々なバッテリーで動作するデバイス(時計、携帯電話、着脱可能なキーボード付きのタブレット)とそれ以外に分かれます。デバイスは数え切れないほどで、価格に幅があり、個人専用です。言うなれば、パーソナルコンピュータです。

もちろん、これらのデバイスは常にネットワークやクラウドに接続されます。それがパズルの残り半分です。もし、あなたが10年間地下に行ってコンピュータやソフトウェアを動かそうと考えるなら、突然の衝撃に見舞われるでしょう。

内部で何が起こっているのか?

スティーブ・ジョブズはデスクトップ市場は破壊しました。それは、PCの出荷見通しからも明らかです。

しかし、しかし、あなたが言いたいことは分かります。あなたはラップトップやスマートフォンよりもむしろ、ゲームでデスクトップコンピュータを使い、ワークステーションでソフトウェア開発をしているかも知れません。

いいですよ。あなたが間違っているとは誰も言いませんでした。しかし、ますます少数派になりますし、規模の経済があなたの選択では働きません。

我々開発者はどうですか?

そう、我々はハードウェアが消えていくことを知っています。しかも、a16z (マーク・アンドリーセン)はソフトウェアが世界を飲み込んでいると言っています。このソフトウェア全てを書いたのは誰でしょう? そして、デスクトップコンピュータがあるとしたら、どのようにしていますか?

もしかすると、Nitrous.ioKodingのような会社が正しくて、私たち皆がオンラインツールを使うことになるのでしょう。一日中バッテリー寿命やWiFiが持つタブレットの場合、好都合です。そして、マーケットは必ずそれに賭けます。

しかし、私はお金が用意できないのに常時オン状態という考え方にはシリアスで永続的な問題があると考えます。

ブロードバンドセルラーあるいはWiFiデータは上限があります。より高速なシングルTCPフローでチャンネルをスタック出来ますが、誰もが高速なフローや十分なアップロード帯域を欲しがっている時に、1千万人を持つ都市でスケールするでしょうか? メガロポリスに住みたくない人にとってスケールするでしょうか?

おそらくそれはないでしょう。

他の結末としては開発用PCが存在し続け、ますます高度で(そして高価な)ワークステーションの形となり、サーバのチップセットを動作する規模の経済に移っていきます。

これは今日ではビデオ編集に見られ、PCと分かれ、カスタムパッケージ化された一つのソリューションです。これがソフトウェアを生産するために要求されることであれば、どうなるか想像できますか?

今後10年間でプログラミングはどう変わりますか?

LISP専用マシン(Symbolics)の写真

Hacker News

12/10/2015

ビットコインの考案者サトシ・ナカモトの身元が判明?

ビットコインの考案者サトシ・ナカモトがオーストラリア在住のクレイグ・スティーブ・ライト氏で、その証拠も掴んだと、WIREDGizmodoが報じた。ライト氏がナカモトである証拠は、仮想通貨に関するライト氏のメール、ブログなど。

そして、昨日の水曜日午後、オーストラリア連邦警察(AFP)がクレイグ・ライト氏宅を家宅捜索したという。捜索はビットコインとは無関係で、税務署の調査に関連しているとのこと(ガーディアン)。もしも、ライト氏がナカモトだとすると、彼は110万ビットコインを所有しており、これは日本円で550億円に相当する価値だ。

Hacker News 1, 2Slashdot

更新1

サラ・ジェオン氏がナカモトという証拠の一つ、PGP鍵を取り上げ、日付がごまかされたもので虚偽だと指摘している。

更新2

サトシ・ナカモトのメールアドレスから否定のメールがbitcoin-devに投稿された。

I am not Craig Wright. We are all Satoshi. (僕はクレイグ・ライトではない。僕らはみんなサトシだ。)

Hacker News

12/09/2015

世界で、IPv6が利用可能なサイトは10パーセント近くある

IPv6 Preparedによれば、世界のトップ1万のウェブサイトをスキャンした結果、8.3パーセントがDNSのAAAAレコードを持ち、7.6パーセントが実際にIPv6でアクセスできることが分かったそうだ。

更新 (2015.12.15)

Googleへのアクセスの10パーセント(9.9%)近くがIPv6とのことだ。

Google ipv6 2015 12 15

Hacker News12

更新 (2016.1.4)

Googleへのアクセスは12月31日時点で、10パーセントに初めて達したとの事。

トランプ氏、テロとの戦いでインターネットの閉鎖を主張

共和党の大統領指名候補のトップを走るドナルド・トランプ氏、イスラム教徒のアメリカ入国を禁止すべきと主張して物議を醸しているが、その数時間後また爆弾発言をしていた。サイバー空間でのISテロリストと戦うため「何らかの方法でインターネットを閉鎖する」ことを考えるべきだと語った。

Slashdot

12/08/2015

ビル・ゲイツ氏の2015年推薦本

ビル・ゲイツ氏が2015年に読んだ本の中でお薦め本「Best Books of 2015」を紹介している。

  • The Road to Character, デイヴィッド・ブルックス
  • Thing Explainer: Complicated Stuff in Simple Words, ランドール・マンロー
  • Being Nixon: A Man Divided, エバン・トーマス
  • Sustainable Materials With Both Eyes Open (Without the Hot Air), Julian M. Allwood and Jonathan M. Cullen
  • Eradication: Ridding the World of Diseases Forever?, Nancy Leys Stepan
  • 「やればできる!」の研究 ― 能力を開花させるマインドセットの力, キャロル・ドウェック
  • 選外(佳作): The Vital Question: Why is Life the Way it is?, ニック・レーン

Hacker News

12/06/2015

偶然にもブラックホールを作ってしまったら

CERNのLHCで偶然ブラックホールができてしまったら、どんなひどい事が起きるのか? という質問に対する回答の超訳。このサイト、面白いなぁ。

物理学者: そんなに悪くない! 人類がそもそも作れるブラックホールは人を飲み込んでしまうような危害を与えるようなものはない。

ブラックホールには潜在的に危険なことが二つある: 飲み込み、爆発する。我々が作るブラックホールは地球上では両方とも問題である。

ブラックホールの作り方はまさに簡単である。それは「膨大な材料を使って、どこかへ置く」である。実際には、少なくとも太陽の3.8倍の材料が必要で、直径数十キロメートルより小さい場所に縮めるのだ。最後が重要で、ブラックホールをよく表している特徴は質量ではなく、その密度である。

もし、物質の塊からある程度の距離が離れていれば、生じる問題に大きな違いはない。例えば、太陽がブラックホールに崩壊したとして(実際はそんなことは起きないが)、全ての惑星は正確に同じ方法でその周りを周回し続けるだろう(ただ冷たくなるだけ)。引力はかつての太陽の表面の距離になるまでは「ブラックホールの性質」を持ち始めない。逆に言えば、太陽が膨張して巨大になると(おそらくそうなる)、全ての惑星は正確に同じ方法でその周りを周回し続けるだろう(ただ熱くなるだけ)。

地球上で新しいブラックホールを作成するには、粒子をぶつけるために粒子加速器を用いるだろう。そして、中の物質を十分過ぎるほどに極度に小さな領域に圧し潰して、(指を交差)エネルギー密度を得る。これは極めて理屈には合わない。しかし、どうにしかしてそれをやり遂げたとしても、結果としてブラックホールは元の物質やエネルギー以上にすぐには物を引き寄せない。

ちなみに、あなたがエベレストをブラックホールに潰したとすると、それはわずか数個の原子の直径となる。重力は地球の表面約10メートル以内の重力と同じくらいの強さを持つ。戸惑われるだろうが、もしもすぐ隣に立ったとしても、十分離れた距離を与えられるならば、あなたは落ちることはないだろう。登山家がエベレストの質量を気にする必要がない理由である。たとえ、本当にそこに立ったとして、その質量の大部分の数キロ以内に近づくことはできない(基本的に、エベレストは大きく、広がっていて、山のような材料でできている)。

しかし、粒子加速器で使われる物質量(あるいは物質がある研究所)はエベレストの質量よりも大幅に少ない。それらは結局のところ「粒子加速器」であって、「本当のビッグ・パイル・オブ・スタッフ・アクセラレータ」ではない。LHCでの陽子ビームは約0.5ナノグラムの質量を持ち、光速に近い移動で約4マイクログラムの相対論的質量を持つ(質量の7500倍の運動エネルギーで運ばれるため)。4マイクログラムでは恐ろしいほどの重力を持たない。ブラックホールになるには、まだ少ないのだ。小さなブラックホールでもおそらく個別の原子をのみ込むことさえできない。「おそらく」というのは、仮に小さくとも私たちはまだ一度もブラックホールを見たことがないためである。

ブラックホールで起こるもう一つのことは「破裂(pop)」である。ブラックホールはホーキング輻射を出す。我々は直接それを観測していないが、それは意味があることだと考える素晴らしい理論的な理由がある。逆説的ではあるが、より小さいブラックホールはより多くの輻射を出す。宇宙にある(恒星と同じくらい大きい)「自然な」ブラックホールは、それらが全く検出できないほど少ない輻射を出す(よってブラックホールの名がある)。我々が作成するようなとても小さなブラックホールは、非常に高速に輻射し、爆発が起こる(爆発 = エネルギーの急速な解放)。CERNでの最悪のシナリオはダイナマイトの数百個分のエネルギーを持つ「破裂」である(最大でも2808のグループでどれも1150億プロトンが光速で動き、同じようなとても小さなブラックホールが全て発生するとして)。

それはかなり大きな爆発だが、世界の終末ではない。さらに重要なことは、これが 最初の段階でビームの中に置かれるエネルギー量と正確に同じであることだ。この爆発はブラックホールにとっての最悪のシナリオではない。LHCに取っての最悪のシナリオである(トンネルの崩落、気味の悪いホラーにもかかわらずだ)。それはとても小さいブラックホール災害を起こす「爆発」である。どのように準備されたかにかかわらず、数マイクログラムの物質の引力は決して危険ではない。もし、あなたがそれを飲み込んだとしても、裏返しにひっくり返るようなことはない。しかし、あなたがその機会を得ず、我々が合理的に作成したブラックホールであれば、すぐに中規模の爆発が起こる。

数百万トンの質量を持つブラックホールはホーキング輻射でとても明るくきらめき、あなたは地面上あるいは低い起動上でもそれを望まないだろう。単に爆発して消失するだけという意味で安定している。これはSF作家が驚くべき架空の科学デバイスへの動力源に使う一つの手法である。

我々が思い描くブラックホールは、冷たく(少なくとも太陽より冷たい)、安定していて、ほどよく物質を吸収し、大陸に相当する質量を持つ。その場合にも、たかだか直径2ミリメートルだ。これらは爆発しないし、ホーキング輻射で物は燃えない。しかし、このサイズのブラックホールの本当の危険性はブラックホール自身ではない。それらを作成するプロセスである(聞いてほしい。私はブラックホールを作っている。それには、すぐに特異点の中へオーストラリア全体を押しつぶす必要がある)。

我々は、まだ理論だけで山の物質をウィルスのサイズの容量に押しつぶすような方法を持っていない。自然はその上に星を置くことで物質をブラックホールに圧縮する。それは、はるかに最適な選択肢であるように見える。そして、もし我々がブラックホールを作成したいなら、容易な方法は星を集めて、それらを衝突させることだ。しかし、星を捕まえる努力をするよりも、宇宙の中に漂うブラックホールを見つけ、それを捕獲する方が良いだろう。

12/02/2015

ミレニアル世代がケチな理由

Boing boingにドクトロウの「ミレニアル世代がケチな本当の理由」という投稿。理由は、彼らはお金が無いから。

ミレニアル世代が車や自宅を購入する気がないことや年金のために貯蓄するのは物質的文化についての意識変化を反映しているが、それは若者はお金がないという紛れもない事実のせいでもある。

デレク・トンプソンはアトランティック誌で1年前にそれを指摘した。経済危機が極端な不均衡を生み、その後の「経済回復」で利益はそのほとんどがお金持ちに、そしてトリクルダウンは年長のミドルクラス労働者に向かった。18〜24歳の労働者の賃金は実質ベースで着実に減少している。

若者が車や自宅や年金に使うお金がないという事実は、アメリカンドリームの必需品で、それらの関係を考え直さないという意味ではないが、なぜ再考が起こっているのかを説明している。

第一に、なぜ実質賃金が若い労働者にとって多くの分野で下がっているのか? 大不況(Great Recession)が、ホテル、アミューズメントパーク、多くのレストランの需要に打撃を与え、それらの業界で支払いが落ち込んだことを明らかにしている。若い失業者予備軍やミレニアル世代の潜在失業者が増えており、企業は初任給を上げずに応募者を呼び込めることを分かっている。

しかも、より深い何かも感じる。グローバリゼーションやテクノロジー(特にIT)のおなじみのバッシュブラザーズは、海外移転、オートメーションやソフトウェアで置き換えることで、中流階級の仕事を骨抜きにする結果となった。デビッド・アウター、デビッド・ドーン、ゴードン・ハンソンによる2013年の研究で、いくつかの仕事のコンピュータ化では雇用を減少しなかったが、高賃金の仕事やありふれた肉体労働の数は減少した。低賃金の仕事はそれらを置き換えられ、総合収支は下落した。

11/30、DNSルートサーバへの攻撃か?

Hacker Newsで、一昨日(11/30)の15:50〜18:20(UTCで11/30 6:50〜9:20)にDNSルートサーバへの大規模な攻撃があったことが、RIPE AtlasのDNSMONから分かると投稿されている。B、C、E、F、G、H、I、J、Kの応答が悪くなっていたようだ。

Ripeatlas dnsmon 11 30

更新1 (2015.12.9)

ルートサーバオペレータから報告書が出ている。

Hacker News

更新2 (2015.12.15)

シュナイアー氏もブログで取り上げている。

誰か、2週間前のDNSルートサーバ攻撃フォローしていますか? 詳細

私はなぜかははっきりと説明できませんが、誰かが攻撃能力をテストしているように感じます。

防御の関して: DNSシステムに送信元アドレス検証を実装する時代はとうに終わっています*

* ルートサーバオペレータの報告書を受けてのコメント。

12/01/2015

HTTP/2接続の秘密のメッセージ

Hacker News面白いブログ記事を知った。HTTP/2の接続を解析してみると、接続開始時のHTTPリクエストで"PRI * HTTP/2.0\r\n\r\nSM\r\n\r\n"を送っているというのだ。分かり易く書くと、次のようになる。

PRI * HTTP/2.0

SM

HTTP動詞(メソッド)がPRIで、本文はSMだけを含んでいる。まとめると、「PRISM」になる。これは、接続開始の時に、サーバが本当にHTTP/2.0をサポートしているかを確認するために存在するそうだ。詳細は、RFC74503.5節にある。

Slashdotでも取り上げられている。