6/30/2017

iPhoneはTinkeringを殺した

BoingBoingより。こういう見方もあるのか。

iPhoneの10周年を騒ぎ立てるほとんどのテックメディアは平凡で自己満足的だが、The VergeのTom Warrenの記事は好きだ。彼は、Appleのポケット・コンピュータが如何に彼の内面的なオタクさを殺したかを嘆いている。若い時、彼は夏のうだるように暑い時でも、常にコンピュータを解体しては組み立てていた。しかし、今は...

...iPhoneを手に入れた直後、そのいじくり回すこと(tinkering)やハッキングすること全てが終わってしまった...。最近のPC、タブレット、携帯電話を見てみると、それらの単純さに驚いている。全てが完璧というわけではないが、テクノロジーは急速に誰にも利用しやすい裏方に変わりつつあり、設定に時間を必要としない。私はハッキングやいじり回す(tinkering)スリルが恋しいが、夜はAlexaに電気を消せと叫ぶだけ、全てが今や簡単になったことを感謝せざるを得ない。

どちらかといえば、私は反対の体験をしていた。私は何か面白いことをしたいとか、まず最初に何か作業をしなければならないために、テクノロジーをいじくり回すことは嫌いだ。しかし、今やいじくり回す(tinkering)ことは全て創造である。実験、ハッキング、それらすべてが私が持つどんな技術的ニーズからも解放された。

おそらく、人々が恋しく思うのは技術をいじくり回す(tinkering)ことがパフォーマンスの最先端に置かれ、不平等に配分された未来に向かっているという感覚である。しかし、同じことが現在の転換であり、単なる技巧であり、それは彼らが気にすることではない。

しかし、iPhoneがガジェットを退屈にしたのは事実だ。当時そしてその後の数年間にリリースされた製品群を見ると、2007年にどれだけAppleは天文学的にゲームに先んじていたか、それは驚くべきことだ。

Hacker News

6/29/2017

MarsEdit 4 Public Betaがリリース

MarsEdit 4のパブリックベータがリリースされた。

このアップデートは、ユーザが手に入れるのを待ちわびていた多くの新しい機能を含んでいるので、私は皆さんに早く試すことができるオプションを与えたいと思っていました。ベータ・リリースは安定していると思いますが、完成させるまではいくつか荒い部分があることを勘弁してもらう必要があります。試したい方はここをクリックして下さい:

MarsEdit 4パブリック・ベータのダウンロード

ベータ・リリースはMac OS X 10.10以降をサポートしますが、最終的なシステム要件はまだ設定されていません。MarsEdit 3の既存のライセンスを所有しているユーザは、最終バージョンがリリースされるまでMarsEdit 4ベータ版を無料で使うことができます。Red Sweater Storeから新しいMarsEdit 3ライセンスを購入するユーザは、MarsEdit 4への無料アップグレードを受けることができます。残念ながら、Mac App Storeでは無料アップグレードや割引アップグレードはできません。

ベータ版をインストールすることを決めたら、Red Sweater Slackチームに参加して、次回リリースの意見を交わして下さい。いつものように、バグレポートやその他のフィードバックも電子メールで受付けています。

9to5mac

Petyaランサムウェアの流行について

ISC SANS Diaryより。金銭目的では無く、妨害目的は明らかだ。

これは2017-06-27(火曜日)に起こったランサムウェアの流行に関する以前のダイアリのフォローアップである。

はじめに

これまで、いろいろな人が昨日のランサムウェアの流行について何某か書いているようだ。多くの情報を入手できるようになった後に混乱が生じ、初期のレポートが更新された。このダイアリは、これまでにわかっていることのサマリの役目を果たす。

2017 06 27 third ISC diary image 02 1

これまでに分かっていること

このランサムウェアは、Microsoft Windowsを実行しているシステムを対象にしている。初期の報告では、このランサムウェアPetyaあるいはPetyaの亜種(GoldenEye)と呼ばれていたが、カスペルスキの研究者はそれが新しいランサムウェアだと報告した。カスペルスキはマルウェアNotPetyaと呼んでおり、他の名前が広まっている。しかし、多くの人や組織は依然としてランサムウェアPetyaあるいはPetya亜種と呼んでいる。

このランサムウェアは、EternalBlue SMBエクスプロイトの修正バージョンを使用して、WMIコマンド、MimiKatz、PSExecのような他の手法を使って拡散する。EternalBlueの使用は比較的最近で、マルウェアはファイル共有やWMIを長年拡散のために使っているが、これらの古いテクニックは脆弱性を必要としない。

感染プロセス中、このランサムウェアは小さな悪意のあるカーネルを実装するカスタム・ブート・ローダでMBRを上書きする。その小さなカーネルは、マスター・ファイル・テーブル(MFT)を暗号化して、ファイルシステムを読めないようにする。その結果、それを復元するのに、身代金を要求する起動不能なシステムとなる。被害者は、ビットコインで300ドルを1Mz7153HMuxXTuR2R1t78mGSdzaAtNbBWXというビットコイン・ウォレットに送付するよう求められる。

公開されたレポートから、この攻撃はウクライナで発生したようだ。Krebs on Securityによればウクライナのサイバー警察は、この攻撃はウクライナ政府と協力している企業が使用する会計プログラムM.E.Docに組み込まれているソフトウェア更新メカニズムを介して起動する可能性があるとツイートした。ウクライナから、Maerskのようにヨーロッパの主要企業に拡散した

我々は、このランサムウェアに関連するファイルにある情報を見てきたが、実際のランサムウェアのサンプルとして2つのDLLファイルのみ確認できた。SHA256ファイルハッシュは、

この脅威に対して自分自身を守る方法は? 手順は次の通り:

  • 最新のMicrosoftのパッチ、特にMS17-010をデプロイする
  • SMBv1の無効化を考える
  • ローカル管理者のアクセスを持つ人を制限する。ほとんど人は、管理者アカウントの代わりに標準ユーザのアカウントで操作できる
  • 大規模あるいは複雑なインフラを持つ場合、ネットワークを分割する
  • アンチウィルスソフトを最新状態に保つ。ベンダーは常に最新のマルウェアサンプルを対象にするため、定期的に定義を更新する

最も重要なのは、最悪の事態が発生して、感染した場合に備えて、重要なデータを確実にバックアップと復元の手順を実装していおく必要がある。

最後に

このランサムウェア攻撃の翌日、我々は初期の興奮が少し落ち着いた。影響を受けた組織は対応処置を実施しており、他の多くの機関が適切な対策を実施(または確認)しているところだ。

あなたの組織はベスト・セキュリティ・プラクティスに従い、この最新の脅威に対して守られることを願う。


Brad Duncan
brad [at] malware-traffic-analysis.net

Slashdot 12

更新: ウクライナ政府は裏にロシアが絡んでいると言っている(WIRED)。

更新(2017.7.2): WannaCryやNotPetyaの穴を見つけるため、nmapを使おう(SANS Diary)。"nmap -Pn -p445 <ip-netblock>"で検知できる。NSEスクリプトも用意されている。

6/28/2017

クロノス・カルテットのドキュメンタリー製作の支援求む

BoingBoingより

40年以上に渡り、私のお気に入りのアヴァンギャルドなクラシック・グループ、クロノス・カルテットはジャンルや文化を超えて現代音楽の限界を広げてきた。今、映画監督のサム・グリーン氏は、アーティスト自身と協力して、クロノスに関する最初のライブ・ドキュメンタリーを完成させるための資金を集めている。タイトルは「千々に乱れて(A Thousand Thoughts)」である。私はこの驚くべき話を見て、聞いて、待つことができない。Kickstarterのページより:

千々に乱れては、長年のキャリアの中でフィリップ・グラス、ローリー・アンダーソン、テリー・ライリー、スティーブ・ライヒなどのミュージシャンとのコラボレーションの後に、クロノス・カルテットのドキュメンタリー・ポートレイトとなるだろう。しかし、時代遅れの「Behind-the-Music」タイプのドキュメンタリというより、千々に乱れては音楽が我々を動かす不思議な方法、時間の経過、喪失と美、ユートピアについての大きな作品を創作するクロノス・カルテットの物語を生かしている。

私は、今はこれら全てが特に重要だと強く感じている。難しい時代に音楽は特別な役割を果たすことができるし、クロノス・カルテットは多くの人よりも長く世界を変えようと、音楽を使っている。

明日の夜、キャンペーンは終了する: クロノス・カルテットのドキュメンタリー「千々に乱れて」

EUがGoogleに3000億円の制裁金

Slashdotより

自身の検索サービスで競争相手よりも自社のサービスを有利に働かせたとして、ヨーロッパの反トラスト当局が24億ユーロ(27億ドル)の罰金を科し、Googleは火曜日に大きな痛手を受けた。欧州委員会は検索の巨人がオンライン検索の独占権を濫用し、自らのショッピングサービスに"違法な便宜を与えた"と結論づけた。EU競争委員会のMargrethe Vestager氏は、Googleが他者に競争の機会を奪い、消費者に真の選択なしに放置したと述べた。ヨーロッパとGoogleの間の長期に渡るこう着状態の中の最新の出来事は高額な罰金が付き、Android、人気のモバイルソフトウェア、一部の広告製品に関連する地域の競争ルールの下で2つの別々の課徴金にも直面している。レポートより:
火曜日の欧州委員会からの拘束力のある命令によると、Googleは不法行為をやめ、ライバルの価格比較サービスに同等の扱いを与えるのに90日の猶予がある。どのように実施するかはGoogleに任されており、計画から60日以内にEUに伝えなければならない。守らなければ、毎日の収入の最大5パーセントの罰金が科せられる。[...] 「私は委員会がGoogleに対する他の2件の調査を迅速に終了することを期待する。」ドイツの欧州議会の一員Markus Ferber氏は述べた。「残念ながら、Googleのケースは競争問題が最終的に解決されるまで、非常に長い時間が掛かる傾向があることも示されている。急速に変化するデジタル経済ではしばしば、これは市場の不正利用が実際に終わり、悪用者が競争を取り除くのに成功するのに十分であることを意味する。」Googleは2008年以来、独自の比較ショッピングサービスを推進しており、人が商品を探す時に目立つ配置を組織的に提供していると、EUは述べた。競合先の比較サイトは通常、検索結果の4ページ目に見られるが、最初のページが全てのクリックの95パーセントを集めるので、大量のユーザを事実上拒絶している。
ブログの投稿の中で、GoogleはEUがGoogleのサービスが提供している価値を過小評価していると語った。「我々は、欧州委員会のオンラインショッピングの決定が、その類の迅速で簡単なコネクションの価値を過小評価していると考えている。一部の比較ショッピングサイトは当然ながら、Googleにより目立つように表示することを望んでいるが、我々のデータは人々が通常、検索を繰り返す必要のあるウェブサイトではなく、自分が望む製品への直接リンクを望んでいることを示している。今のショッピング結果は有用であり、10年前に示したテキストのみの広告の改良版である。写真、評価、価格を含む広告を表示するため、我々、広告主、そして何よりもユーザに利益がもたらされる。そして、フィードバックが関連性があると我々に伝わる場合のみ、それらを示している。何千ものヨーロッパの小売商が、AmazonやeBayのような大企業と競争するために、これらの広告を使用している。[...] 証拠から、今日発表された結論には謹んで同意できない。我々は欧州員会の決定を詳細に決定し、控訴を検討し、我々の主張し続けることを心待ちにしている。」と、GoogleのSVPでゼネラル・カウンセルのKent Walkerが伝えている。

BoingBoingDarling Fireball

追記: ジョン・グルーバーの見立て: 罰金を払って、今まで通り。

ユーロとドルは概ねバランスを保っている。この額は今日約27億ドルである。私の推測は、Googleはとにかくこれを受け流して、罰金を払い、検索結果に自身のモノを宣伝することにすぐに戻るだろう。(例えば、Yelpのように自身のローカルビジネスリストを有利にする。)

追記: stratechery

6/27/2017

ALMAが捉えたベテルギウス

もうすぐ爆発すると思われるベテルギウスをALMAが撮影した。ESOより

Potw1726a

このオレンジ色の球状の塊は、アタカマ大型ミリ波サブミリ波干渉計(ALMA)によって観測されたすぐ近くの恒星ベテルギウスを示している。ALMAが星の表面を観察したのはこれが初めてであり、この最初の試みでベテルギウスの高解像度画像が得られた。

ベテルギウスは、現在知られている最大の恒星の一つで、ミリメートル連続波で半径は太陽の約1400倍以上ある。オリオン座(狩人)の中で約600光年離れた赤色超巨星は明るく燃え、それゆえ寿命は短くなる。星はちょうど約800万歳だが、すでに超新星になる寸前である。それが起こると、結果として生じる爆発は昼間でも地球から見ることができる。

星は他の多くの波長、特に可視光、赤外線、紫外線で観測されている。ESOの超大型望遠鏡を使って、天文学者は太陽系とほぼ同じ大きさのガス柱を発見した。天文学者は、ベテルギウスの表面上で蒸発する非常に巨大な泡を発見した。これらの特徴は、星がどのように巨大な速度でガスと塵を放出しているかを説明するのに役立つ(eso0927, eso1121)。この写真で、ALMAはサブミリ波でベテルギウスの低い彩層の高温ガスを観測し、局所的に温度が上昇する場所で、なぜ対称的ではないかを説明する。科学的に、ALMAはこれらの熱く燃え上がる星の様子を理解するのに役立つ。

リンク:

Hacker NewsEngadget

6/26/2017

UUIDの歴史

Segmentブログより

今日、我々はユニークなID生成のためのGo言語のライブラリksuidをリリースした。ユビキタスなUUID標準からコアなアイデアを借用し、時間ベースの順序付けとよりフレンドリーな表現形式を追加している。このライブラリを検討する研究を行うにあたり、我々は多くの読者と共有したい人を引き付けるストーリーを見出した。

2台以上のマシンがネットワーク上で情報交換をしてからずっと、一意にモノを識別する方法が必要だった。

我々の現代のアイデアと共通点のある最初のネットワークは1870年代の初の電話交換の構築で始まった。この重要な転換点の前に、電気通信線は完全にポイントツーポイントだった。当時は驚くことだったが、高価で柔軟性や信頼性がなかった。大都市の道路の上をジグザグに銅線がほとんど滑稽な急増をもたらした。

Asset 5vkTaUDD

電信は主に政府や企業の重要な通信に使われていたが、電話機は非常に贅沢だった。電信の速度と比較して、手っ取り早いおしゃべりのために高価な銅線を結ぶことは信じられない迷惑なことだった。大衆に電気通信をもたらした重要な発明は交換機で、交換の創意を可能にし、これらの回線の有用性を大幅に高めた。それはネットワークで最初の一意の識別子をもたらした。それが電話番号である。

ネットワーク化されたコンピュータが登場した数十年後に早送りする。突然、モノの粒度は桁違いに細かくなった。

この転換点まで、電信線を介して送られたデータは短命だった。ネットワークは単なる土管だった。今や、オンデマンドでデータを格納して検索することが日課となり、それから世界を氾濫させるほどのデータの巨大な爆発が起こった。これらの新しい機能が与えられ、ネットワーク上のモノは、物理マシンから論理的なデータの一部にシフトした。

これらのネットワークは、データの一部を一意に扱う方法が必要だった。テレコム時代の中央管理型の古いシステムはスケールしなかった。これはネットワークのストレージ容量や検索数の増加がサイズに比例して増加することで数学的に必然性があった。このスケールは少しカオスをもたらした - 失敗やマシンの短命性がyak shaving問題からルーティンに移行する。データはもはや1か所には存在せず、ネットワーク上を自由に流れる。

コンピューティングのためのネットワーク・イベント

これは1980年代に我々にもたらされた。この時点では、コンピュータを使用してデータを共有することは、実際には物理的コンピュータの共有を意味していた。研究機関は、数百あるいは数千のダム端末を持つミニコンピュータや強力なメインフレームを使って情報を交換していた。

言い換えると、データはコンピュータと一緒に配置された。PCは、コンピューティングに革命をもたらしたが、ネットワーク機能が欠けていたため、非常に豪華な電卓だった。

1980年代に設立されたApolloコンピュータは、初期のワークステーション市場に参入した最初の企業の一つだった。ワークステーションは実際に最初にネットワーク化されたコンピュータだった。この言葉を使用するのは馬鹿げているように聞こえるが、当時はネットワーク技術のほとんどがまだ開花してないことを考えることを述べる価値はある。また、メインフレームの世界とは全く対称的で、データや計算は多くの相互接続されたコンピュータに分散されていた。このため、分散コンピューティングという考え方が主流になった。

Asset A0dS46c0

同時代のSunマイクロシステムズのように、Apolloは本当にフルスタックだった。その時代のハードウェアとソフトウェアは想像するユースケース向けに設計されていなかったため、全てゼロから構築する必要があった。ネットワークの非同期性やこれらのタスクの厳しい機能要求は、非常に能力の高いコンピュータを必要とした。マルチタスク、セキュリティ制御、ネットワーキング、大容量ストレージは全て非常に高価で、その時点のPCを含めるには実用的ではなかった。しかし、ワークステーションのビジョンのテーブルステークスはよく考えられていた。

ワークステーション市場での素晴らしい技術的なブームにも関わらず、これらのベンダー全てが同じ壁にぶつかっていた。ほとんどの開発者はネットワークについて何も知らなかったのだ。高価なワークステーションのためのビジネスケースを作るためにはプログラミング環境が必要だった。開発者は、それぞれの製品のネットワーキング機能をフルに活用できるアプリケーションを簡単に作る方法を必要としていた。

Apolloの答えはネットワーク・コンピューティング・システム(NCS)だった。NCSはオブジェクト指向プログラミングの考えを借用し、リモート・プロシージャー・コール(RPC)を中心に構築された。今ではほとんど使われなくなったが、このアプローチはApolloが望んでいた最終結果に達した。開発者は関数の呼び出し方法を理解し、オブジェクト指向が今や最も重要なプログラミング・パラダイムとなった。

1989年にRPCに関するNetwork Worldに掲載された記事では、Burlington Coat FactoryのMISディレクターが顕著な見解を述べている:「RPCを使って分散アプリケーションを作る方法を学ぶことは優れたプログラマなら一日あれば良い。」カチャカチャ・チーン。その年、Apolloはヒューレット・パッカードに約4億7600万ドル(インフレ調整でほぼ10億ドル)で売却された。

NCS用語でモノ(オブジェクト、インタフェース、オペレーション手法など)やエンティティは全て、ネットワーク環境で対処するために固有の識別子が必要である。標準的なフォンノイマン。アーキテクチャではこれは自明である: メモリまたは大容量ストレージのアドレスはこの目的に簡単に役に立つ。多くのコンピュータが独立して運用できる分散コンピューティング・モデルでは、これは自明ではなくなる。このユースケースの規模は、ネットワーク全体の調整は提案されていなかったことを意味する。それが遅過ぎて失敗する傾向にあった。

NCSは、UID(Universal Identifier)の概念を導入し、これがエンティティの固有の基本(primary)識別子として機能した。UIDは、全てのワークステーションのハードウェアに永久に埋め込まれた一意のホストIDとモノトニック・クロックを組み合わせた64ビットの数値である。このスキームでは、各ホストは1秒に何千回も識別子を生成することができ、スケーリングにはボトルネックがなく、常に世界で一意の識別子を保持できる。調整の唯一のポイントはApolloの工場だった。マシンはそれぞれの識別子でブランド化されていた。

初のUUID

Apolloがネットワーク・コンピューティング・アーキテクチャ(NCA)として、NCAの原則を標準化するアプローチを始めた時、既存のUIDのデザインが不十分であることが明らかになった。Apolloは全てのワークステーション・ベンダーがNCAで標準化する事を望んでおり、ワークステーションにホストIDを全て埋め込む限り、ビットサイズはベンダ毎に異なってしまう。

Apolloは20ビット使用し、百万大規模では十分だった。今日の規模では使い果たしてしまうが、Apolloは100億ドル以上のハードウェアを販売しなければならず、市場は桁違いに小さかった。

NCAはUIDデザインを元に作られたUUIDを導入したが、128ビットの番号空間に拡張する事で幅広いベンダーに対応した。そうして、UUIDが誕生した。この概念は非常に有用であり、NCAが遠い記憶になり、RPCが流行らなくなった後も、UUIDは依然として残り、最終的にはISOIETFITUによって標準化された。

Asset A4WDXnNV

読者はUUIDに多少精通しているとしても、今日もっとも使われる一般的なUUIDバージョン4とは内容が少し異なると認識するだろう。NCA UUIDには、48ビットのタイムスタンプ、16ビットの予約ビット、8ビットのネットワーク・アドレスファミリーのインジケータ、56ビットのホストIDがあった。現在のIETF標準で定義されているバージョン1のUUIDと概念的には非常に似ている。

この歴史の全ては、実装に関する私の好奇心を呼び起こし、幸いな事にオリジナルのApollo NCSのソースコードの断片をオンラインで掘り起こすことができた。あなたが私みたいな人間なら、何十年も前のソースコードを眺めることは普通に楽しい時間になる。私がこのコードについて最初に気付いた特有の事は、変数と関数名のような識別子にドル記号(\$)が使われている事だった。

void uuid_$gen(uuid)
uuid_$t *uuid;
{
#ifdef apollo

    std_$call void uid_$gen();
    struct uid_t uid;

    uid_$gen(uid);
    uuid_$from_uid((uid_$t *) &uid, uuid);

NCSは"Domain/OS"オペレーティング・システムの一部としてApolloが導入した"Domain C"と呼ばれる言語を使っていることが分かる。Bitsaversのおかげで、私はPDF形式の1988年のリファレンス・マニュアルを見付けることができた。Domain Cは、いくつかの点でANSI Cを拡張している。最も重要な点は、\$が任意の識別子の最初の文字の後に現れることだ。

現時点で、ドル記号はダサいプログラミング言語の変数のシンタックス、通貨、自ら美化する音楽家によって使われている。それらの実際の目的を理解するため、まだ残っているコードとマニュアルを掘り下げてみた。

発見されたものを熟読した後、むしろ拍子抜けの結論に達した。明示的に述べてはいないが、これは単なるコーディング規約であると思われる。たとえ何が_\$の前に来ても特定のモジュールを識別する。_\$tは上記使われるuuid_\$tのようなデフォルトタイプを識別する。また、Apolloのプログラミング・スタイルに従ったライブラリの一部である識別子を簡単に特定する方法としても役立ったようだ。Apolloが特定のコーディング・スタイルに適用するためだけでCを拡張するので少し混乱した。

本題から逸れた。

NCA UUIDは標準化されたバージョン1のUUIDの基礎となった。これまでの繰り返し: 高精度なタイムスタンプとハードウェアベースの一意のホストIDが含まれていた。クロックスキューやタイムスタンプの繰り返しが発生する可能性があるため、システムクロックを使用して一意のシーケンス番号を確実に生成する事はできない。Apolloは、グローバルファイル(文字通り/tmp/last_uuid)を使って、プロセス間を調整する事でこれに対処した。

/*
 * C H E C K _ U U I D
 *
 * システム全体で、渡されたUUIDが前に生成されたUUIDと同じか古いかを確認する。
 * そうであれば、少し新しいものにする事。いずれにしても、UUIDを"最新のUUID"
 * ストレージに描き戻す。ストレージとしてファイルを使用しているシステムの場合、
 * ストレージに安全にアクセスできない場合は"プロセス毎"にチェックする事。
 */

ファイルは、全てのユーザやグローバルに書き込み可能な必要があった。特に安全ではないが、Apolloは幾分信頼できるネットワーク上で使用されるエンドユーザ向けワークステーションを販売していた。そして、少なくともそれは幾分妥当な決定だった。この技術は、IETF仕様のUUIDに引き継がれている。

私が見つける事ができたDCEの実装のためのソースコードは、Appleによって意外にも配布されている。Active DirectoryやWindowsベースのファイルサーバなどMicrosoftシステムとの通信に使用されているようだ。この実装は、Open Software Foundationが著作権を持ち、実際にUUID_NONVOLATILE_CLOCKと呼ばれるプリプロセッサ・フラグの後ろのステーブルストアで働くよう配置している。

#ifdef UUID_NONVOLATILE_CLOCK
    *clkseq = uuid__read_clock();     /* 不揮発性クロックを読む */
    if (*clkseq == 0)                 /* まだinit'dしていない??? */
    {
         *clkseq = true_random();     /* yes, ランダム設定 */
    }
#else
    /*
     * 揮発性クロックで、常に乱数を初期化する
     */
    *clkseq = true_random();
#endif

DCE RPCのUUID生成の不揮発性クロックを実際に実装するコードは、インターネット上には見付からなかった。しかし、ほとんどのLinuxディストリビューションのパッケージ・リポリジトリに含まれるlibuuidには、検証可能な不揮発性のUUIDクロック実装が含まれている。NCSと同じように、モノトニック性のためにファイルを利用するが、より賢明な/var/lib/libuuid/clock.txtに置いている。パーミッションを少しはより良識のある方法で管理しようとしているが、同じセキュリティ上の注意が当てはまる。

NCSとlibuuid両方とも実装は、状態ファイルのロックを取得するためスピンする。これは本当に厄介な問題を提供する。

    while (flock(state_fd, LOCK_EX) < 0) {
        if ((errno == EAGAIN) || (errno == EINTR))
            continue;

libuuidがテーブルにもたらすのは、テーブルに何らかの安全性をもたらそうとするuuiddというやや紛らわしいデーモンである。もし、uuiddがそのルールを守っているなら、強力な保証となる事ができる。イーサネットMACアドレスの想定される一意性と組み合わせる事で、これは任意の分散システムの中でかなり強力な保証を提供する。

しかし、実際にはこれは全て相当に求められる事だ。ファイルベースの同期には、多くの問題ある失敗事例がある。デーモンベースの解決策は優れているが、実際にはそれほど魅力的はない。すぐ使えるよう構成されたシステムが付属している事は非常に稀である。

また、MACアドレスはユーザが変更できるため、実際にはグローバルに一意ではない。UUIDに含める事はプライバシーやセキュリティへの脅威をもたらす。その不透明な性質を考えると、開発者はUUIDにマシンの識別情報が付いている可能性があることに自覚がない傾向にある。90年代後半にWindowsに影響を与えたメリッサ・ウィルスの作成者は、ウィルスのコードで見付かったUUIDのMACアドレスで特定された。信頼できないインターネットが支配的なネットワーキング・プラットフォームとなったため、信頼に依存するUUIDの生成は時代遅れとなった。これらの全ての懸念事項から、UUIDのハードウェア識別子を活用する事を断念している。

/*
 * これはuuid_generate_randomとuuid_generate_timeの一般的なフロント
 * エンドである。/dev/urandomが利用可能な場合にのみ、uuid_generate_random
 * を使用する。そうしないと、高品質なランダム性が得られない。
 */
void uuid_generate(uuid_t out)
{
    if (have_random_source())
        uuid_generate_random(out);
    else
        uuid_generate_time(out);
}

実際、libuuidのデフォルトパスは、1990年代に普及したUnixの亜種上で利用可能な/dev/(u?)randomでブロックデバイスを生成する擬似乱数を提供するシステム上で、時間ベースのUUIDを避けている。これはUUIDバージョン4の登場の要因となっている。これは、ランダムデータ(122ビット)のみを含んでいる。実装の単純さから広くあちこちに行き渡るようになった。

世界が衝突する時

私は最初にこれらのランダムなバージョン4 UUIDに出くわした時、衝突の脅威を心配していた。衝突がセキュリティ上の脅威を引き起こすような方法で使うべきではないが、開発者として私は、自分のシステムがそれらでつまづく事はないという信頼度が欲しい。

衝突への安全性の重要な側面はエントロピーのソース(源)である。信頼できるクラウド・コンピューティング環境に導入された現代のLinuxと、信頼できないモバイルデバイスの2つの一般的なケースを考えてみる。クラウドのLinuxのケースでは、/dev/urandomの形式で暗号的に安全な擬似乱数生成器(PRNG)が提供されている。これは暗号学者が承認し、エントロピーのソースはノンブロッキングである。

しかし、モバイルデバイスではほぼ何でもありの状態である: モバイルデバイスは信頼できない、ほとんどは上記シナリオで利用可能なものと同じくらいいいものはあるが、これらのデバイスのPRNGソースはあまりランダムではない。これらの品質を証明する方法がない事を考えると、モバイルPRNGに賭ける事は大きなギャンプルである。信頼性の低いモバイルデバイス上でのID生成は、興味深く、学術研究[1]の活発な分野である。ハードウェア割り込みによって生成されるノイズや暗号関数でのI/Oアクティビティのメタデータのようないくつかの発生源が混ぜ合わされる。

信頼性の高いRPNGデバイスを持つ環境でも、実装上のバグが衝突を招く可能性がある。ある特定のケースだが、OpenSSLがプロセスフォークをどのように扱うかの曖昧なバグが、純粋なPHP UUIDライブラリの衝突率を高くしている。これは少し大げさに聞こえるかも知れないが、明らかに衝突を作成するバグで、UUID実装でテストする価値がある。あなたが考えるよりも一般的である。システムレベルでは、DieharderはシステムのPRNGの品質を分析するために高く評価されたツールの一つである。

適切な環境が与えられれば、衝突リスクを無視できるほど低く、実行不可能に近い。この一意性に依存できるためには、十分大きなネームスペースを使って、他の非常に珍しいイベントが衝突よりもずっと早く起こるように可能性を大幅に高くする必要がある。

122個のランダムビットで、実行不可能な領域に衝突の可能性を持っていくためには、UUID(246)のペタサイズのパイルが必要である。その確率は約500億分の1である。それを可能にするには、数十億ペタバイトのUUIDが必要である。

実装のバグや設定ミスの脅威は、ランダムな衝突の脅威よりもはるかに重大である。適切に構成されたシステムのUUID衝突に関心のある人たちは、太陽フレア、熱核戦争、宇宙人の侵略のようなはるかの可能性の高い出来事を考えるのに費やす時間をたくさん取るだろう。念のため、システムがプロパティ設定されていることを確認してほしい。

時間は我々の味方である

場合によっては、UUIDバージョン1のタイムスタンプ部分は実際に非常に有益である。私がこれに初めて出くわしたのは、Apache Cassandraで"TimeUUID"と呼ばれるものだった。Cassandraの中で、TimeUUIDはタイムスタンプでソート可能で、大まかに時間順に並べ換える必要がある時に非常に有益だった。実装は、タイムスタンプとホストIDで一部のランダムビットをスワップする。ホストIDは、ノードのIPアドレスから導き出され、Cassandraクラスタ内でユニークな識別子を形成する。

実装はクロックスキュー(CASSANDRA-11991参照)の面で、一意性を侵害しようとすると、弱点に悩まされる。更に重大なのは、ホスト識別子情報がUUIDの中に埋め込まれていることで、我々が過去に何かを学んだのなら、それは素晴らしい考えではない。たとえ、これらのIDがローカル・ネットワーク・アドレスから生成されたとしても、セキュリティのベスト・プラクティスは間接的であっても、外部にこの情報を積極的に公開することを妨げる。

頼りない友人

時間別にIDをソートする能力は、タイムスタンプによるK-orderingの概念を大きく普及させたTwitterのSnowflakeの背後にある動機が大きかった[2]。Twitterはグローバルな調整なしに、作成時間で任意のツイートを並び替える方法が必要だった。IDの中にタイムスタンプを埋め込むことは、追加のタインムスタンプ・フィールドのオーバヘッド無しでこの機能を提供する。

K-orderingは大雑把にソートするよりも正確な方法である。Snowflakeでは、これらのIDを64ビットの数値空間に収める必要性によって、大量の構造が推進された。これはホストIDを割り当てるため、独立した強力な調整メカニズム(ZooKeeper)を使用し、シーケンスのチェックポイントを拡張する専用のID生成システムが必要である。

SnowflakeにインスパイアされたBoundaryのチームは2012年始めにFlakeをリリースした。専用ID生成サーバプロセスは使用するが、強力な調整メカニズムは必要ない。分散環境での重複を防ぐため、ハードウェア・アドレスから導き出された大きな128ビット番号空間と48ビットのホスト識別子を使用するという点で、FlakeはUUIDバージョン1に似ている。

辞書順に整理されているという点で、もともとUUIDバージョン1とは異なる。Flake IDのビットは、ユーザは書き込まれた場所に関係なくタイムスタンプで順序付けされると期待する方法で用意される。対照的に、CassandraはTimeUUIDから同じ動作を得るために、特定の照合ロジックを実装しなければならない。

残念ながら、Flake IDはこの情報が生成されたIDの中に埋め込まれるため、ホスト識別子情報をエンドユーザに後悔する可能性があるらしい。提供された実装は、クロックスキューの状況に対して防御するが、それらの一意性の特性は時計の進み具合に大きく依存する。

Flakeに含まれる特筆すべき機能の一つがBase62エンコードで、UUIDより非常にポータブル(移植が容易)な表現を提供する。UUIDの文字列表現は良いことが特徴の一つである。これは些細なことのように見えるかも知れないが、ダッシュ(-)文字の組み入れは、それらを使いにくくしてしまう。この例は、UUIDが検索エンジンでインデックス化される際、ダッシュがトークンの区切り文字として解釈される可能性が高い。Base62エンコードはこの落とし穴を回避し、バイナリ・エンコーディングの辞書順配列プロパティを保持する。

両方の長所をいかす

セグメントで内部システムを実装する際、チームはユニークな識別子を生成するためにUUIDバージョン4を使用し始めた。シンプルで、追加の依存性は必要なかった。

数週間後、これらの識別子の時間順に並べるという案件が浮上した。この要件は厳密ではなかった。初期の目的は、メッセージ識別子の範囲でキーが設定されているAmazon S3へのログアーカイブを有効にすることだった。既存のUUIDは、自然なグルーピング・プロパティではないメッセージのランダムな分散をもたらした。しかし、時間の矢をうまく利用するなら、S3で自然なグルーピングや実現可能なオブジェクト数という結果になる。

こうして、KSUIDが生まれた。KSUIDは、K-Sortable Unique IDentifierの略である。UUIDバージョン4のシンプルさとセキュリティをFlakeの辞書順列K-orderingプロパティと組み合わせたものである。KSUIDはこれらの目標を達成するためのいくつかの妥協している点があるが、我々のユースケースと他の多くのケースの両方で合理的だと考えている。

Asset XKt0hlkZ

KSUIDはUUIDとFlake IDよりも大きく、160ビット長である。32ビットのタイムスタンプと128ビットのランダムに生成されたペイロードで構成されている。一意性プロパティはホストの識別可能情報や時計に依存しない。その代わり、UUIDバージョン4のように大きな番号スペースでのランダムな衝突の不可能性に依存する。実装の複雑さを軽減するため、UUIDバージョン4の122ビットは128ビットに切り上げられ、追加の32ビット・タイムスタンプが考慮されていなくても、ボーナスとして64倍の衝突耐性を持つ。

タイムスタンプは1秒の解像度を提供し、これは幅広いユースケースで受け入れられていることが分かった。より高い解像度のタイムスタンプが望ましい場合、ペイロード・ビットがタイムスタンプ・ビットに置き換えることができる。高解像度のタイムスタンプのサポートは実装に含まれていないが、下位互換性がある。32ビットのタイムスタンプを使う実装は、より解像度が高いタインムスタンプを利用するKSUIDで安全に動作する。

100年以上の耐用年数を保証するカスタム・エポックが使われている。エポック・オフセット(14e8)こ人の目で素早く思い出し、素早く選び出されるよう簡単に選択できる。

Asset ZMiKWCG5

KSUIDは2つの固定長エンコーディング: 20バイトのバイナリ・エンコーディングと27文字のBase62エンコーディングがある。辞書順列順序付けプロパティはビッグエンディアンのバイトオーダーを使用してタイムスタンプをエンコードすることで提供される。Base62エンコーディングは、ASCII順の観点から辞書順列順序付けにマップするよう調整されている。

固定長エンコーディングは、より簡単でより安全な実装をもたらす。小さなボーナスとして、可変長データ型が追加のストレージ・オーバーヘッドにつながる。SQLデータベースなどでより効率的な場合がある。選択された形式に関わらず、KSUIDは時間で辞書順列順並び替えができる。文字列表現は完全に英数字であるため、UUIDのトークン化されたダッシュ問題を回避できる。

我々の実装

今日、我々はGoで書かれたKSUID実装をオープンソースで公開している。これは一般的な自然なインタフェースで実装されており、既存のコードベースへの統合や他のGoライブラリとの結合を容易にしている。KSUIDの生成と検査のためのコマンドラインツールが付属している。

$ ksuid
0o5Fri5Ia34BTFurJmkOf9T6S1e
$ ksuid 0o5Fs0EELR0fUjHjbCnEtdUwQe3

REPRESENTATION:

  String: 0o5Fs0EELR0fUjHjbCnEtdUwQe3
     Raw: 05A95E21D7B6FE8CD7CFF211704D8E7B9421210B

COMPONENTS:

       Time: 2017-05-16 18:49:21 -0700 PDT
  Timestamp: 94985761
    Payload: D7B6FE8CD7CFF211704D8E7B9421210B

謝辞

この投稿は、Apolloコンピュータに関する資料を集めてアーカイブしたBitsaversの努力なしには可能ではなかった。Albert Strasheim、Calvin French-Owen、Evan Johnson、Peter Reinhardt、Tido Carrieroの洞察に満ちたコメントとフィードバックに感謝する。

参考文献

[1] P. Jesus, C. Baquero, and P. Almeida: ID Generation in Mobile Environments (2006)

[2] T. Altman, Y. Igarashi: Roughly sorting: sequential and parallel approach (1989)

Hacker News

6/25/2017

ニューヨーク・タイムズ、トランプが大統領が言った全ての嘘を掲載

BoingBoingより

トランプ氏は大統領になって最初の40日間、公然と虚偽や嘘をついた。そして、彼はまだ辞めていない。

ドナルド・トランプ氏がアメリカの大統領として言った全ての嘘をカタログ化し、可視化する本日発売のニューヨーク・タイムズの大掛かりな試み。

「多くのアメリカ人がトランプ大統領の嘘に慣れている。」と、David LeonhardtStuart A. Thompsonが伝える。

「しかし、彼らはいつもどおり、国が国民を麻痺させるためにそれ自身を認めるべきではない。だから、我々は就任宣誓から公然と語ったほぼ全ての真っ赤な嘘を並べている。」

トランプ大統領の政治的浮上は(バラク・オバマの出生に関する)嘘の上に建てられた。彼の真実の欠如は、トランプの"単純明白な嘘"に関する誓いを証言するFBIの元長官ジェームズ・コミーとともにロシアの捜査の中心にもなっている。

アメリカ大統領の真実を伝えるために多くの時間を費やすという先例が今まで全くない。全ての大統領は真実を守っているか、時折の大ウソをつくくらいだった。トランプ氏が行なっているような態度はどの大統領は取っていない。彼は現実とは見当違いの雰囲気を作り出そうとしている。

我々は控えめな基準を定め、(彼の渡航禁止令はオバマ政権の政策に似ていると主張するように)多くの疑わしい発言を残した。大統領は文字通りの話をしていないと主張し、一部の人々はまだこの標準に問題をあるかも知れない。しかし、我々は実業家で政治家として、目的を果たすために虚偽を利用するうんざりするほどのパターンから、彼の発言が単に不注意な誤りではないことを意味すると確信している。

我々は意図的に"嘘(lie)"という言葉を使用している。全ての虚偽がトランプ氏の責任で意図的というわけではない。しかし、彼が単に素直に間違いを犯していると想像するのは、単純過ぎるだろう。彼は嘘つきだ。

Nytimes trump lies

Windows 10のソースコードが流出

Slashdotより

The Registerの独占レポートによると、「Microsoftの内部のWindowsオペレーティング・システム・ビルドとそのコア・ソースコードのかなり量がオンライン上に流出している。」レポートより:
データ(約32TBのインストール・イメージと8TBに圧縮されたソフトウェア設計書)がbetaarchive.comにアップロードされ、最新の大量のファイルが今週初めに提供された。このデータは、3月頃からMicrosoftの社内システムからこっそり抜かれたものであると考えられている。流出したコードはMicrosoftのShared Source Kitである: 内容を見た人によると、基本となるWindows 10のハードウェア・ドライバとRedmondのPnPコード、USBとWi-Fiスタック、ストレージ・ドライバ、ARM固有のOneCoreカーネルコードを含んでいる。この情報を持っている人なら誰もが、世界中のWindowsシステムをハッキングするためのセキュリティ上の弱点を突くセキュリティ上の脆弱性を探すことができる。コードは、最も信頼されるレベルのオペレーティング・システムの中心で動いている。これに加えて、公にリリースされていないWindows 10やWindows Server 10の数百の極秘ビルドが、公式リリースのコピーと共に流出している。

Shared Source Kitは、認定された顧客、企業、政府、パートナーがデバッグや参照目的でのみで利用することが許されている。

6/24/2017

なぜ、インターネットはそんなに遅いのか?

RIPE Labsより

Mirjam Kühne

Ilker Nadi Bozkurt氏と彼の同僚は、インターネットは可能なものよりはるかに遅い事を発見した。彼らはこの減速の源がどこか、それについて何ができるか知りたいと考えた。

レイテンシ(遅延)は多くのインターネット・アプリケーションにとって体験の質を決定づける重要な要素である。GoogleとBingは、検索結果を配信する際に、数百ミリ秒の遅延が発生すると、検索量が大幅に減り、収益が大幅に減少すると報告している。オンラインゲームでは、数十ミリ秒で大きな違いが生まれ、ゲーム会社はレイテンシを縮めることに対して、特別なネットワークを構築している。

それにも関わらず、レイテンシを短縮する現在の努力は、真空中の光の速度によって決定づけられる下限にはるかに及ばない[1]。インターネットが光の速度で動作したらどうなるだろうか? 現時点でその目標に向け、技術的課題と設計コストを無視して、その影響(implications)を簡単に考えてみよう。

光速インターネットは、ウェブ閲覧やゲームだけでなく様々な形の"テレイマージョン"も劇的に強化するだけでなく、潜在的に新しいクリエイティブなアプリケーションに道を開く可能性がある。このように、我々は今日観測する典型的なレイテンシと理論的に達成可能なレイテンシの間のギャップを理解し、定量化する事を目指している。

我々の最大の一連の測定は、一般的なウェブサーバとPlanetLabノード間で実行された。これは世界中の一般的にうまく繋がった学術研究機関のマシンである[2]。我々は、測定されたレイテンシをC-レイテンシの加減に対して評価をした。すなわち、2つのエンドポイント間の測定値距離を真空中の光速で横断するために必要な時間である。

我々の測定では、インターネットははるかに遅い事が明らかになった。一般的なウェブサイトのランディングページのHTMLだけを取り出すのは、(中央値で)C-レイテンシよりも37倍悪くなる。ここで留意すべき点は、これは通常数十キロバイトのデータであり、帯域幅の制約はほとんど無関係である。

大きな減速の源はどこか?

下図は、HTTP接続の膨張の内訳を示している。予想通り、ネットワーク・プロトコル・スタック(DNS、TCPハンドシェイク、TCPスロースタート)は、インターネットのレイテンシ膨張の一因になっている。ただし、インフラ自体はそれよりもはるかに遅いことにも注意してほしい: ping時間は3倍以上膨張している[3]。

Ilker slow`

これらの測定値に照らして、ネットワークの研究コミュニティはインターネットの大きなレイテンシ膨張をどのように削減すべきだろうか? プロトコル・スタックの改善は確かに必要で、業界や大学全体で多くの努力によって対処されてきた。しかし、しばしば無視されるのは、インフラの要素である。

もし、インフラの3倍減速が解消されれば、各往復時間は3倍速くなり、上記全てのプロトコルに影響を及ぼし、プロトコルの修正なしにすぐに約37倍から約10倍にレイテンシを削減する事ができる。

さらに、ゲームのようなアプリケーションにとって、インフラの改善が大きなレイテンシへのネットワークの影響を軽減する唯一の方法である。したがって、最下層のレイテンシを減らす事が光速インターネットの目標を目指すには最重要事項であると確信する。

興味ある読者には測定作業と結果の詳細を理解するため我々の論文を読み、光速インターネットを構築するための進行中の作業について学ぶために我々のウェブサイトに訪れてほしい。

この論説はもともとAPNICのブログに掲載されていたものである。

脚注

[1] ベースラインとして光ファイバの中で高速を利用しても同じ事が言える。

[2] 実際のエンドユーザに関する測定について、我々の論文を参照してほしい。一般に、これらのデータセットの結果は、より大きなレイテンシ膨張を示した。

[3] これらの結果は、ジオローケション・エラー、転送サイズ、クライアントとサーバの距離、輻輳など様々な要因に対してロバスト(robust)である。詳細は論文を参照してほしい。

Hacker News

iOSアプリのサイズを減らすこと

Halideのブログより。iOSアプリのサイズを減らすことよりも、プライバシーに配慮した開発が気に入った(アプリの品質を高めるという名の下、プライバシーデータが如何に勝手に送信されていることか)。

人気のソーシャルネットワーク・アプリ(SNSアプリ)は400MBを超えている。毎週リリースされると、1年であなたは20GBのデータをダウンロードする事になるだろう。

Halideをローンチして以来、我々が聞いた最も予期しなかった褒め言葉はサイズに関するものだった。11MBで1年分のデータは、1度のSNSアプリのアップデートよりも少ない。

「あなたはSwiftを使っていないよね」友人に尋ねた。やはり、Swiftは標準ライブラリをアプリの中にバンドルして、そのサイズを膨らませる。しかし、Halideはほとんど全体がSwiftである。

我々はどのようにしているか? 技術的な部分から始めてみよう。このほとんどはQA1795の見直しになるが、重要である。

測定し、推測しない

Xcodeからビルドをエクスポートする。その時、"Save for Ad Hoc deployment"を選択する。アプリがApp Thinnngをサポートする(この時点ですべきである)と仮定すれば、"Export for Specific Devices"を選択する。"Rebuild from bitcode"がチェックされているか確認する。

パッケージサイズの最終表示を得るだけでなく、App Thinningのレポートも取得する。最大の犯人を見付けるためにアプリパッケージを調査する。

アセットカタログの利用

アセットカタログの中のアセットを保管する。アプリをアップロードする時、Appleはデバイス固有のバージョンの中にスライスするので、2倍の画面を持つデバイスは3倍のセットを取得しない。その逆も。

PNGクラッシュを実行

カタログの中にアセットを置く前に、pngcrushを実行する。QA1681によれば、Xcodeは自動的にアセットカタログ外のPNGのアセットを圧縮する。

写真にJPEGを試す

UIアセットや同様の細かな線画をPNGに制限する。これはおそらくアプリのアセットの大部分を占めているが、写真がある場合はJPEGを試みる。少しの圧縮でも効果がある。

難しい話し合いをしている場合ではない

やはり努力を重ねても、数百メガバイトの巨大な巨獣を数メガバイト削るだけだ。私はあなたにこれを伝える方法は分からないが、コードは少なくする必要がある。

正しい戦いを選別する

Halideは約15000行のSwiftで構成される。これにはリアルタイム・ビデオ・プロセッサ、大量のカスタム制御、AVFoundationを制御するプラットフォームを含んでいる。興味深い事に私が書いていないコードである。

私はAuto Layoutを活用する事で何千行もの雛形を削った。多くの開発者は依然として手動レイアウトを強く主張している。彼らはAuto Layoutを理解していないのかも知れない、あるいはAuto Layoutがどんなに襲いかを友人の友人から話を聞いたのかも知れない。(そうではない)

私は社内のレイアウト・エンジンを作る多くの開発者を特に大企業で見てきた。それは単なるナッツだ。AppleがOSに精巧なレイアウト・エンジンをバンドルしているのに、アプリケーションを特注のフレームワークで膨らませる必要はない。

我々はInterface Builderを削除する事で、更に100kを減らすことができた。ユーザマニュアルと設定は、ほぼ完全にIBであり、制約がある。Camera UIのハイレベルな配置は同様に管理される。しかし、生産性は短期的にはサイズに価値があると判断した。

ライブラリ・ブロートを避ける

多くの大規模なアプリケーションのパッケージを調査すると、100kから数メガバイトある数十のサードパーティ製フレームワークをどこかに発見するだろう。

私はサードパーティ製ライブラリは使わない。少し極端だが、我々は少し独特の状況にある。

我々が必要とするサードパーティ製ライブラリが単に無いだけだ。iOSの開発コミュニティには多数のJSONマッパーがあるが、DNGファイルの低レベルの操作は何もできない。

しかし、先ほど触れたビデオ処理はどうだろうか? 私はあなたの叫びが聞こえる。「GPUImageは拡張可能だ! 自分自身でできる事に夢中だ!」

Periscopeのスタックでの私の経験から、GPUImageから社内ソリューションへの移行で大きな進歩が見られた。リアルタイム画像処理が重要でないなら、GPUImageは素晴らしい。しかし、Halideの長期ビジョンとリアルタイムなレンダリングの役割を考えると、このコンポーネントを自身で所有することは重要である。

私はファイルサイズが理由でGPUImageを見送ったわけではない。しかし、自作した結果、アプリに125の使わないフィルタをバンドルするのを回避できた。

PSPDFKitはやり過ぎの大きなフレームワークを置き換えて同じように成功した。

我々はiOS向けのPSPDFKit 6.8では検出、検証、より良いエラー報告に改善するため、デジタル署名の実装のコア部分を書き直したことをあなたに伝えられる事に興奮している。その結果、OpenSSLへの依存度を完全に下げ、プロセスのバイナリサイズを縮小した。

NIH症候群に感染してはいけないが、ライブラリを避けるには正当な理由がある。

分析やA/Bテストのリソースは無駄

サードパーティ製の分析やクラッシュレポートサービスを使っていない。まず第一に、ユーザデータを広告会社に送信するのは心地よく無い。しかし、暫くは理想を脇に置こう。

データは無料では無い。大きなアプリでは、全てのアクションを分析イベントに記録する。大きなアプリには、ユーザを一意に識別する機能、リクエストの重複排除、ログのバッファ、障害時のリトライなどのロギング・インフラが必要である。それで辻褄が合う。

A/Bテストは更に悪化させる。典型的なソーシャルネットワーク・アプリは誰もクリーンアップに戻らないA/Bテストの死骸で一杯である。

我々はコードが肥大化するため、分析やA/Bテストを意図的に避けたわけではない。それは単に製品への我々の哲学である。あまりにも多くのデータを知ることは、顧客の気持ちを歪める。実際に目立った変化をもたらす大きな賭けをするのではなく、極大に向け自身の最適を見付ける事だ。

そのため、我々はAppleの分析機能を使用している。コードを変更せずに動作する。無料で、オプトインを要求し、ユーザのプライバシを尊重する。我々のオプトイン率は32%で、我々のニーズに丁度合っている。

分析には時間と場所が必要である。最適な価格ポイントについて分からないので、試してみるしかない。しかし、我々のビジネス主導の分析と製品開発の間の壁を守っている。

ゴールを調整する必要

我々は二人のチームである。我々は製品を売ることでお金を稼いでいる。我々の成長は完全に有機的である。ユーザが幸せになれば、友人に我々について伝えてくれる。小さなアプリは我々を幸せにし、ユーザを幸せにすると思う。

我々のアドバイスは膨らんだアプリには役立たない。ソーシャルネットワークは広告主から収益を得ており、広告主は広告ターゲティングの詳細な分析を必要としている。

大きなアプリは何百人もの開発者がいて、それぞれが独立した四半期目標を持つ数十のチームを構成している。速く走るほど、目標や昇格は大きくなる。

考えるのも無理はない。「このライブラリで一週間稼げるが、アプリは1メガ増える。既に数百メガバイトなので、やらない理由はあるのか?」

大規模な組織は意図しない結果を伴う中庸なアイデアで一杯である。

エンジニアがハイテクのはしごを昇りたがっているとする。配送機能ではあなたは昇進できない。そこで、新しいレイアウト・エンジンを構築する事にする。会社はエンジニアリング・ブログにリクルート用の餌で更に釣ろうとする。

唯一の解決策は、「我々はアプリのスリム化を進める」と宣言する経験豊富なリーダーシップである。残念な事に、ハイテク業界のCEOは8GBストレージのiPhoneを使用していないし、通信速度が遅い場所に住んでいない。

これは報われない努力ではない。Halideを出荷してから、我々は世界各地の人々から小さく保つ努力に感謝するというたくさんのメッセージを受け取った。

サイズを小さくする素晴らしい技術は本当にある: それは顧客に焦点を当てる事だ。

Darling FireballHacker News

Ciscoが提案するインテントベースのネットワーク

CircleIDより。AIと言わないのは何故だろう。

Ciscoは直感的で状況に合わせて変化するよう設計されたインテントベースのネットワーク・ソリューションを発表した。その新しいアプローチは、エンタープライズ・ネットワークにおける最も重要なブレイクスルーの一つであると主張している。「この新しいネットワークは、今日数百程度のデバイスを管理しているネットワーク・エンジニアは2020年までに100万のデバイスを管理すると予測される時代のネットワークを再発明するために、Ciscoが長年に渡り研究開発してきた成果である。... 今日の企業は、この新しい時代には持ちこたえられない従来のITプロセスを通じてネットワークを管理している。Ciscoのアプローチは、ネットワークの運用と今日の進化する脅威に対する防御を最適化するために、絶えず学習し、適応し、自動化し、保護する直感力のあるシステムを構築する。」

Ciscoは、このアプローチはネットワークの基本的な設計を変えると信じていると言う:「直感的なネットワークは、インテントとコンテキストによる知識獲得で動作するインテリジェントかつ安全性の高いプラットフォームである。」

インテント:「インテントベースのネットワークはITを退屈な従来のプロセスからインテント(意図,目的)の自動化へと移行でき、数分で数百万のデバイスを管理することが可能になる。これは、今日の絶えず拡大しているテクノロジの展望をしっかり進むよう組織を手助けするための重要な開発である。

コンテキスト:「コンテキストでデータを解釈することは、ネットワークが新しい洞察力を提供できるようにすることである。重要なデータだけでなく、それを取り巻くコンテキスト、誰が、何を、いつ、どこで、どのようにかである。直感的なネットワークはこれらを解釈し、より良いセキュリティ、より良いカスタマイズされた知識、より速いオペレーションをもたらす。」

直感力:「新しいネットワークは、規模で機械学習(ML)を提供する。Ciscoは、世界中のネットワークに流れている大量のデータを使って、そのデータを機械学習によって解明し、すぐに利用可能で予測可能な洞察を提供する。」

NetworkWorld

6/23/2017

NISTが提案したRPKI研究の興味深い方針

インターネット・ガバナンス・プロジェクトのブログより。RPKIの普及の障害は、RIR前に取得されたPIアドレスをどうするか。

ドメイン間ルーティング・トラフィック交換のセキュリティを改善する取り組みの一環として、NISTはRPKIと、経路広告が想定される自律システム(AS)からの発信として認証されるプロセス、経路オリジン検証(ROV)をテストするプロジェクトに関するRFC(Request For Comments)を発行した。プロジェクトの結果は、ドメイン間プロトコルとルーティング技術の使用に関するセキュリティ勧告を提供するNIST Special Publication (SP 800-189 - 準備中)の決定に役立つ。

NANOGのメーリングリストにコメントを求めたところ、プロジェクトのマネージャは次のように指摘した:

プロジェクトの目的は、現実的なシナリオでのRPKIとBGPオリジン検証技術の状況を検証・実証し、そのデプロイと使用に関する懸念事項に対処することである(セキュリティ、堅牢性、管理/監視、マルチベンダーの相互運用)。... この要請は、提案されたプロジェクト計画に対する業界の意見用である。具体的には、実際の問題、採用の障壁、これらがどのようにプロジェクトの中で対処するかの提案をネットワーク事業者と企業の双方から我々は意見を求めている。

プロジェクトはROVの2つのシナリオ、"ホスト型RPKI"と"委任型RPKI"を調査研究している。ホスト型RPKIは、まさにアドレス所有者のターンキー・デプロイで、経路オリジン認可(ROA)の作成、例えばASやプレフィックスに結び付けるデジタル署名情報や、ROVで使われている主要材料を生成してホストするのを地域インターネット・レジストリ(RIR)に大きく依存する。委任型RPKIの下では、より運用者コントロールのアプローチで、RIRはASの委任されたRPKI鍵ペアの秘密鍵をホストする必要はない。このシナリオでは、アドレス所有者は、BGPに関与する顧客にRPKIサービスをホストし、委任することができる。相対的な独立にも関わらず、アドレス所有者は委任された取り決めの下でメンテナンスし、プロジェクト説明の草案は一定の要件を決めている(264〜268行)。

参加するには、組織はRIRから取得したIPv4またはIPv6プレフィックスがなければならない。また、認証する必要がある全てのリソース(またはROA)をカバーするためにRegistration Services Agreement (RSA)に署名する必要がある。組織は、認証する予定のリソースを管理するためにRIRにアカウントを持たなければならない。

要件の説明の一つは、RIRがテスト可能なRPKIシステムを運用し、アドレスリソースのレジストリ情報も管理するということだ。しかし、これらの政策ライクな要件は、ARIN地域のアドレス所有者の大部分がプロジェクトに参加するのを妨げるようにも見える。レガシーなアドレス空間を多く所有する人たちは、RIRが存在する前に多くの番号を得ており、RSAに署名していない。国際標準採用のポイントは可能な限り幅広くデプロイすることではないのだろうか?

経験のないレガシー空間は、RIRの創設の前に獲得したIPアドレス空間である。レガシー空間の所有者の見積もりは、北米のアドレス空間の40%近くを占める。彼らは、アドレス空間にRIRと契約する事業者よりも強い財産権を享受しており、このレガシーな所有者は、権利を弱めてしまう可能性があるRIRとの標準的なRSA契約を結ぶことに気が進まない。我々が以前報告したように、RIRの間には重要な方針の違いがある。これらの違いは、ROA作成に影響を与えているように思われる。例えば、RIPE地域は、ネットワーク事業者を含めることでROA作成に最も成功している。これは、プロバイダ非依存とレガシーアドレス空間の所有者のような非RIPE NCCのメンバーがリソース証明を受け取ることができるようにすることを保証する手順が取られたためだと、我々は考えている。また、RIPEは、RIPE NCCと正式な契約を締結したくないレガシーアドレス空間の所有者へのレジストリサービス(リソース証明を含む)の提供を明確にするため、その方法を外したことを、我々は指摘した。同様の方針はARIN地域では追求されておらず、ROA作成ではRIPEに大きく遅れをとっている。

要約すると、RIR間の方針の違いとインターネットセキュリティへの影響は、相変わらずオープンで重要な研究分野である。NISTプロジェクトの結果が地域間のRPKIデプロイの継続中の変化を説明できなくても、驚くことではないだろう。

[更新: ARINによると、ARIN地域のほぼ25,000のIPv4ネット(あるいは50%)がレガシーである。別の関連のある噂では、それらのレガシーネットの50%はARIN Whoisへの有効な窓口を持っていない。レガシー空間の所有者の関与を促すARINの方針のポイントとなるものは、正確なレジストリデータを保証し、より幅広いROVとより良いインターネットセキュリティを順にサポートするのに役立つ可能性がある。]

6/22/2017

D言語がGCCに含まれる

D言語がGCCに含まれる

私はGCC運営委員会がD言語のフロントエンドとランタイムをGCCに含めること、そしてIain Buclawをメンテナーに任命したことを承認したと発表できることを嬉しく思います。

パッチはまだグローバル・レビュアーの承認が必要です。

彼の新しい役割にIanを盛大に迎えましょう。メンテナー・ファイルのリストを更新して下さい。

ハッピー・ハッキング!
David

Hacker News

Windows XPにパッチを当て続けることは間違いか?

シュナイアーのブログより。

先週、Microsoftは正式にサポートしていない16年前のオペレーティング・システムWindows XP向けにセキュリティパッチを公表した。先月、MicrosoftはWannaCryで使用されている脆弱性に対するWindows XPのパッチを公表した

これはいい考えだろうか? この2014年のエッセイはそうではないことを示している:

ゼロデイ欠陥とその悪用は不運なことであり、Microsoftは人々にインターネット・エクスプローラの使用を止めさせる政府の要請に苦しんでいる可能性が高い。同社には3つの対応方法があった。何もしなかった可能性がある -- その大物に執着し、サポートの終了はサポートの終了を意味すると断言し、人々は別のプラットフォームに移るよう働きかけた。また、Windows XPのサポート・ライフ・サイクル全体をさらに数年に渡り拡大して全体的に緩和し、Windows XPのユーザベースを重要ではないレベルまで縮小するのを待っていたのかも知れない。あるいは、Windows XPがサポートされていないと主張しながら、このケースは何らかの形で特別だと主張し、パッチをリリースする可能性がまだある。

これらのオプションはどれも完璧である。EOL(end-of-life)に向けた強硬なアプローチは、Microsoftが支援を拒否することを悪用する人々がいることを意味する。完全な方向転換は、Windows XPを市場から一掃するまでさらに時間が掛かることを意味し、開発者や管理者にとっても頭痛の種になっている。

しかし、Microsoftが取った選択肢は、すべての史上最悪である。古いオペレーティング・システムを捨てるITスタッフの努力を損ない、Windows XPをサポートしないというMicrosoftの主張を台無しにし、Windows XPユーザのセキュリティを改善させることを何もしていない。利点は? せいぜいユーザにセキュリティ改善の追加日数を買わせるくらいだ。それがどのくらい価値があったのかは言うまでもない。

これは困難なトレードオフで、モノのインターネットはさらに悪化するだろう。私からは:
我々のコンピュータや携帯電話のセキュリティは、それらを定期的に置き換えるという事実から来ている。我々は数年おきに新しいノートパソコンを購入する。新しい携帯電話をさらに頻繁に手に入れる。これは組込み型IoTシステムの全てに当てはまるわけではない。それらは何年も、何十年も続く。我々は5年、10年ごとに新しいDVRを購入するかも知れないが。我々は25年ごとに冷蔵庫を置き換える。我々は空調設備をほぼ決して置き換えない。既に銀行業界は、ATMに組み込まれたWindows 95のセキュリティ問題に取り組んでいる。同じ問題は、モノのインターネットでも発生するだろう。
少なくともMicrosoftには、Windows XP用のパッチを作成できるセキュリティ・エンジニアがいる。あなたの16年前の空調設備や冷蔵庫のために、それらがセキュリティ・パッチに対応できると仮定しても、パッチを作ることができる人はいないだろう。

6/21/2017

地球温暖化を信じるな? これを見ろ!

Popular Scienceより

地球の陸地と水面の平均気温は華氏58.69度(摂氏14.83度)と、2016年は人類が記録を取り始めて以来、地球の最も暑い年だった。それは、20世紀の平均よりも1.69(0.94)度暖かい。それは大きいようには聞こえないかも知れないが、氷と木の中に保存されている気候記録によれば、現在の世界平均と古代氷河期(3000フィートの氷河の下にある)の間の差はわずか5度である。

前述の記録は、この規模の変化が単純にほんの一世紀で起こるものではないことを示している。はっきりした特徴は最近の気温の傾向全体にある。1800年台後半に産業が爆発し、新しい汚染物質が大気中に放出された。その結果、地球の大気中に熱を閉じ込める二酸化炭素や他の温室効果ガスが増えた。ある推定では、2011年のCO2排出量は1850年の150倍となっている。

エルニーニョのような自然な変動が一役買っている。しかし、地球温暖化がエスカレータで上がるようなものであれば、これらのサイクルは跳ね上がるか、途中でうずくまる: 気温は上昇または下降する可能性はあるが、全体的な気候変動は押し上げ続けている。

Charted opener ref numbers v2 141k

1. 記録の始まり

イングランドの気象学者は、1695年に天気統計を収集し始めたが、1873年までに後の世界気象機関となる国々が年間データを共有を始めた。従って、公式のグローバルな記録は1880年まで始まっていない。

2. 1940年のスパイク

急成長を遂げている業界や普及している自動車の所有率は、この平均値を上回っている。石炭と石油からのエアロゾル汚染の爆発によって、太陽光を散乱させる雲ができることで実際に惑星を冷やしたために、皮肉にも途中で止まった。しかし、1970年代までに、CO2のような化合物の排出は、汚染物質関連の冷却効果を上回った。

3. 上昇の増大

我々の平均グローバル気温が上がっていることを知るには科学の学位は必要ない。自然気象の変動は、2017年にさらに温暖化記録を破り続けるかも知れないが、最も暑い年がより暑くなるにつれ、新しい基準を更新することを管理できそうにない。

エチオピアのコーヒーが気候変動の最新被害者

Slashdotより

今日刊行されたNature Plantsの研究によると、今世紀末まで気温が上昇すると、エチオピアのコーヒー栽培地域の約半分でコーヒーが栽培できなくなる可能性がある。「これは、エチオピアで栽培されているアラビカ種のコーヒーの木が、摂氏15度から24度の理想的な生存温度を必要とするためだ。気候予測は、エチオピアは一般的に温かく乾燥していく。つまり、コーヒーが現在栽培されている地域の40〜60パーセントが豆を栽培するのに適さなくなると、研究は伝える。」The Vergeがレポートする。
実際、気候変動は既にエチオピアのコーヒー栽培者を苦しめている。日中と夜は既に暖かく、天気は予測不能で極端である。暑い日は暑く、雨の日は雨が多い。それは予測不能な収穫をもたらし、地方経済を痛め付けている。エチオピアはアフリカ最大のコーヒー生産国であり、世界で5番目に大きなコーヒー輸出国である。1500万人のエチオピア人がコーヒー栽培に携わっている。気候変動は、国の将来を破壊させる危険性がある。しかし、エチオピアが起ころうとしている問題に備えさせる方法がある。研究は、気温の上昇が将来的にコーヒーを栽培するのに適した場所を高所で帯状の土地に移っていくことが分かった。実際、農園を高所に移動すれば、コービー栽培は4倍に増加する可能性があると研究は伝える。しかし、それをするには、国が準備をする必要がある。何百万人の農家が作物を持ち、所有していない土地に移動することは簡単にできない。慎重な計画が必要である。

Popsci

6/20/2017

Googleは来年BGPを放棄し、4巨人もそれに続く

Bizetyより。GCPを含めGoogle内部からBGPが消えるということで、他ISPとの接続にeBGPは残ると思われ。

Googleは、ISP、キャリア、CDN、その他が従う一連の同じルールには従わない。来年のそのうち、GoogleはきっぱりとBGPを放棄するだろう。今まで、Googleは全てのインターネット・トラフィックの20-25%を運び、数百カ所のグローバル・キャッシュ、15のデータセンター、90のPoPと、世界で最も巨大なプライベート・ネットワークを持ち、それらはまだ始まったばかりである。彼らの施設は、過去の誰とも異なり、世界中を覆っている。

GoogleのデータセンターはプライベートWANを用いて接続されており、パケットを移動させるのに内製のルーティング・プロトコルを使っている。そして、他の多くの施設もプライベートWANを用いて接続されている可能性がある。つまり、リクエストがGoogleの場所に到着すると、そこからBGPより遥かに優れたプライベート・ネットワークを経由してルーティングされる。これは一夜にして起こったことではない。プロセスは何年も前に開始され、Google Espressoは非BGPの哲学を表している。そこで終わりではなく、Googleが大成功した時、4巨人(AFAM)は後に続くだろう。

それは、Apple、Facebook、Amazon、Microsoftで、我々は2兆8000億ドルの集団、GAFAMと呼んでいる。これは、一つの疑問に繋がる。Googleはプライベート・ネットワーク上で実行されるカスタム・ルーティング・プロトコルを使い、非BGPでインターネット・トラフィックの50%を動かすだろうか?

もしそうなら、非常に高度に最適化されたプライベート・ネットワークへのルーティングは特定の状況下でBGPよりも高速であるため、ISP、キャリア、CDN、競合先に問題を引き起こす可能性がある。BGPは、ネットワーク・スタックの中で最も遅いルーティング・プロトコルであり、ほぼ30年経っている。明らかに、今後そうした場合、Googleは競争優位性を持っている。大部分のグローバル・ネットワーク・プロバイダにとって、地球を覆うプライベートWANを構築することは選択肢にない。

従って、非GAFAM企業は、BGPネットワークと非BGPネットワークを組み合わせるハイブリッド・ネットワークを介してトラフィックをルーティングする革新的な方法を手に入れる必要がある。世界の残りがBGPを動かしているのに、Googleが非BGPでインターネット・トラフィックをルーティングしたいのはなぜだろうか? なぜなら、グローバル・テクノロジー業界全体の基盤となるクラウド・プラットフォームになりたいからだ。それはグローバル税と考えたどうだろう。企業がコンピューティング、ストレージ、配信にGCCを使うたびに、彼らはAWSが数十億ドル稼いでるようにトランザクション毎に収入を得る。

RedditTWiT

Unix系OSに深刻な権限昇格のバグ (Stack Clash)

ars technicaより

Linux、OpenBSD、FreeBSDなどのUnixベースのオペーレティング・システムの多くは、攻撃者が脆弱なコンピュータ上で制限無くrootに昇格させることができる欠陥を含んでいる。セキュリティ専門家は、管理者にパッチをインストールするか、できるだけ速やかに他の保護措置を講じるようアドバイスしている。

Stack Clashと呼ばれる脆弱性は、悪質なコードをより効果的に実行するために他の脆弱性と結び付く可能性が最も高いと、バグを発見したセキュリティ企業Qualysの研究者は月曜日に公開されたブログに書いた。このようなローカル権限昇格の脆弱性は、ある顧客がこの欠陥を悪用して同じサーバ上で実行されている他の顧客のプロセスを制御できるため、サーバホストプロバイダにとって深刻な脅威となる。Qualysは、Stack Clashがリモートから直接コードを実行できるセキュリティバグの可能性もあると述べた。

「これは、何がしかのユーザレベルのアクセスを取得した後に、rootを獲得するための極めて簡単な方法である。」Qualysで製品管理担当ディレクタのジミー・グラハム氏はarsに語った。攻撃は、スタックとして知られるコンピュータメモリのある領域を、無関係なコードやデータを格納する別のメモリ領域に衝突させることで作用する。「コンセプトは新しくないが、この特定のエクスプロイトは間違いなく新しいものだ。」

今、影響受けるOSの開発者はパッチのリリースを進めている。LinuxディストリビュータRed Hatによる月曜日に公表されたアドバイザリは、緩和措置は/proc/meminfoの中の値の重複の形でパフォーマンスの問題を引き起こすかも知れないが、通常のオペレーションには影響しない可能性が高い。開発者は後でこれらの問題の修正をリリースする。Qualysは同社の研究者がFreeBSD、NetBSD、OpenBSD、Solaris、Red Hat、SuSE、Debian、Ubuntuなど主要Linuxディストリビューションの開発者と協力してきたことをarsに伝えた。同社の研究者はMicrosoftやApple製品の調査はしていないが、両社に事前に連絡したと述べた。この脆弱性がGoogleのAndroid OSに及ぼす影響は明確ではない。

OSスタックは、ある瞬間実行されるアプリケーションや関数に応じて大きくなったり縮小するダイナミックなメモリのチャンクである。スタックが広がり過ぎると、攻撃者がスタックを上書きできるほど他のメモリ領域に近づく。攻撃の最初の段階が他のメモリチャンクの中にスタックをぶつけるために、Stack Clashという名前が付いた。

結局、閉じていなかった

Stack Clash脆弱性は、最初は2005年のセキュリティ研究者Gaël Delalleauの発見で、そして5年後に研究者Rafal WojtczukによってLinuxの脆弱性が公表され、徐々に広く認識されてきた。Linuxの開発者は、スタックの衝突を防ぐための保護機能を導入したが、今日の調査では、攻撃者がその対策をバイパスすることが比較的容易であることが実証されている(CVE-2017-1000366)。

Qualysが開発してProof-of-concept攻撃は、CVE-2017-1000364として脆弱性インデックスされた。Qualysの研究者はCVE-2017-1000365CVE-2017-1000367など別の脆弱性を悪用するためにStack Clashを使う攻撃も開発した。例えば、sudoの最近修正された欠陥は、Qualysによって発見されたCVE-2017-1000367と組み合わせると、ローカルユーザはsudoを利用してより広範囲のOSで完全なroot権限を得ることができる。Qualysはこれまでコードをリモートから実行することはできていない。彼らが調査した唯一のリモートアプリケーションはEximメールサーバだったが、これは偶然には影響がないことが判明した。Qualysは、このようなリモートコード実行の可能性が存在する可能性を排除することはできないと述べている。Qualysは、皆が脆弱性に対して保護する時間を確保した時点で、後日proof-of-conceptのエクスプロイトをリリースすると言った。

UnixベースのOSを実行している人は、パッチやセキュリティ・アドバイザリが利用可能かどうかを調査するため、直ちに開発者に確認すべきである。最善の方法は、利用可能なパッチをインストールするか、一時的な回避策としてローカルユーザリモートサービスハードRLIMIT STACKとRLIMIT_ASを低い値に設定することだ。より多くの情報は、Qualysの詳細な技術アドバイザリgrsecurityの技術解析で入手できる。

Hacker News

6/18/2017

Amazonが独占企業になるのはいつか?

The Atlanticより。Amazonはいずれ分割される?

巨大企業ホールフーズの買収は、その会社が大き過ぎるのかどうか疑いに思う。

金曜の朝、Amazonはホールフーズ・マーケットを130億ドル以上で買収した事を発表した。約1時間後、Amazonの株価は約3パーセント上昇し、その価値に140億ドルを追加した。

Amazonは基本的にアメリカで6番目に大きな食料品店を無料で手に入れたのだ。

経済記者のベン・ウォルシュ氏はTwitterで、これは通常起こるはずである事、大型買収後の株価は大体下落する、と反対だと指摘し、投資家はAmazonが進める普通ではない事を信じている事を示唆する。何がありうるだろうか?

率直な見方をすれば、ホールフーズの買収は、Amazonが7千億ドルの食料雑貨店事業に参入する事を意味する。同社の社長兼CEOであるジェフ・ベゾスは食品宅配サービスであるAmazon Freshを立ち上げ、シアトルでいくつかのAmazonブランドの雑貨店を開く事で、この市場に数年前から取り組んで来た。今や彼は業界で最も有名なブランドを手にした。

しかし、Amazonはホールフーズを買収するためにプレミアムを支払ったので、別の業界への新たな参入はその上昇をあまり説明していない。その代わり、株価の上昇は、より不吉な事を示唆している: 今や信じられないほどの経済力がAmazonに集中しており、投資家は小売部門と広大なアメリカ経済の中で競争が激しさを増していると考えている。

Amazonはいつ独占企業になるのか?

アメリカ最大手の掃除用品や家庭用品のオンライン小売業として、Amazonはウォルマート、Target、Bed、Bath&Beyondと競合している。衣類や靴の小売業として、DSW、Foot Locker、Gapと競合している。音楽、本、テレビの販売代理店として、Apple、Netflix、HBOと競合している。過去10年で、Amazonはウェブで最大の独立したオンラインの靴屋最大の独立したオンラインのおむつストア最大の独立したオンラインのコミックストアを買収した。

そして、それらの分野のほとんどすべてで成功している。昨年、Amazonはウォルマート、Target、Best Buy、Nordstrom、Home Depot、Macy's、Kohl's、Costcoの6倍の売り上げを達成した。Amazonはまたオンラインまたオフラインの米国小売売上高全体の30パーセントを生み出した。

しかも、Amazonの支配力は小売業をはるかに超えている。クレジットを貸したり、本を出版したり、衣服をデザインしたり、ハードウェアを製造したりする。3年前、同社は10億ドル規模のe-スポーツの中心的プレーヤであるTwitch.comを買収した。そして、さらにその上、サーバ、帯域幅、コンピューティング・パワーを他社にレンタルする120億ドルのビジネスAmazon Web Services(AWS)を運営している。Slack、Netflix、Dropbox、Tumblr、Pinterest、連邦政府はすべてAWSを使用している。

一言で言えば、何でも屋である: 商品を販売するだけでなく、商品を生産するだけでなく、サーバからメディアを配信するだけでなく、他の人にそれらをレンタルすることもできる。そして、多くの専門家とアナリストは疑問を呈する: Amazonはいつ独占企業になるのか?

「コマースに関しては、Amazonは現在のところアメリカ経済にとってほとんど不可欠なインフラとして機能しているだと私は考える。そして、それがAmazonに多くの力とコントロールを提供する。」中道左派のシンクタンク、New Americaでオープンマーケット・チームの特別研究員リナ・カーン氏は述べる。

1月に、カーン氏はイェール・ロー・ジャーナルの記事でAmazonに反トラスト法の調査を受けるよう求めた。

歴史的に、Amazonの評論家の多くが、中小企業がAmazonのウェブサイトを通じて商品を販売する事を可能にするマーケットプレイス機能に焦点を当てて来た。一部の商店主は、マーケットプレイスを実験室として秘密裏に使っているとAmazonを非難している: 最善の製品がどれかデータを収集した後に、主力サービスを通じて、低価格の競合他社を紹介している。

無党派支持団体Institute for Local Self-Reliance(ILSR)もまた、Amazonに対していわゆる競争を制限する振る舞いについて批判をしている。「この重要なインフラをコントロールする事で、Amazonは他の企業と競争し、同じライバルが市場に参入できる条件を設定している。地元の小売業者と独立の製造業者は最も深刻な中にいる。」と団体の最新のレポートは示している

しかし、Amazonが経済全体で成長するにつれ、関心事はその強さとパワーに関して露骨に大きくなっている。「Amazonは本の中間業者として消費者に自分自身を紹介している。」カーン氏は私に言った。「しかし、それらはあらゆる種類の物の中間業者になった。そして、これまでかなりのい期間、その中間業者の役割をはるかに超えて拡大した。より多くのコンテンツを配信し、より多くの商品を産み出すにつれて、それはますます利害の対立にぶち当たっている。」

要するに、人々は既にAmazonが大き過ぎるのかどうか疑問に思うようになった。つまり、既にオンライン小売業を過度にコントロールしており、サプライチェーンの残りの部分に支配力を発揮し始めている。

Amazonは歴史的に独占禁止法の問題についてコメントしていない。最近、競争法の懸念に関してコンサルタントをするプロのエコノミストを探し始めた。11月以前、市場独占の最大の批評家の一人は、ジェフ・ベゾスが"独占禁止問題"に直面している事を選挙遊説で示唆したのはドナルド・トランプだった。

トランプはまだ連邦取引委員会の議長を任命していない。委員会は、その完了前に買収を審査しなければならない。

アメリカが20世紀初めに企業間の公正な競争を強制し始めた時、それは2種類の独占的な組織に焦点を当てた: 水平独占と垂直独占である。例えば、鉄鋼業では水平独占企業は多くの製鉄所が買収され、他の競争相手を出て行かせてしまった。垂直的な独占企業はサプライチェーンの上下である荷船、電車、炭鉱を買収した。基本的に他の企業との競争を妨げる。

投資家は独占だと分かっている

20世紀の中頃、規制当局は消費者のために価格を引き上げるために市場を支配することができるビジネス協定に焦点を当てた。カルテルやより非公式な価格固定あるいは市場コントロール協定の崩壊させ、業界を独占的に支配する企業合同や企業にも当てはまる。

1970年代後半から、法学者らは独占的行動が消費者に価格を引き上げた場合しか、測ることができないと主張し始めた。規制当局と裁判官は注目し、市場構造全体にあまり気を配らない事を選択した。そして、1980年代初めの企業の乗っ取りや敵対的買収に触発された多くの専門家は、市場の重要さは常にそれ自身を修正すると信じていた。

その合意は過去10年間、部分的にはAmazonのような企業の結果、攻撃を受けて来た。運用開始後10年間で、Amazonはほとんど利益を出さなかったが、投資家はベゾスにインフラと市場シェアへの投資を継続する事を許可した。最終的な結果は、株価で収益の約200倍の価値を持ち、わずかばかりの利益を返す大企業、今のAmazonである。

カーン氏と他の人たちは、Amazonの相場にほとんど焦点を当てず、経済の大半を支配していると主張している。「誰も今日の形のAmazonが消費者にとって素晴らしいとケチをつけていません。問題は、いずれはどのようなモノになるかということではないでしょうか?」彼女は尋ねた。

「アメリカ人は、オープンで競争力がある経済について考えるのが大好きです。」彼女は言った。「しかし、Amazonが経済のシェアを拡大すると、それは集中化の一形態である。あなた自身の事業を所有することは、アメリカ人が資産を作り、世代間で富を渡す手段でした。しかし、Amazonが支配的なプレーヤであるセクターを見れば、あなたはそこに入る事は幾分クレージーだと思うでしょう。」

この効果は大きなスタートアップでも当てはまる。Jet.comは昨年、AmazonのSam's Clubスタイルとしてオープンし、数百万ドルのベンチャー投資と数多くのニュースを集めた。急速に成長したが、それは独立した会社として長くは続かなかった。ウォルマートは昨年8月、Jet.comを30億ドルで買収した

近い将来、ホールフーズの買収がたちどころにAmazonに別のインフラ上の強みを与えると一部のアナリストを心配させている。アメリカで最も裕福な(そしてAmazonを利用する)地域をまたがって広がる400以上の小さな倉庫がある。彼らは、Amazonの物理上の利点、倉庫のネットワーク、配送ルート、北米全域の貨物機が、他の企業に勝る強力な利点を与えている事を心配している。そして、彼らは、技術革新によってではなく、ウォール街の資金の流れが続く事で、その強みが生まれたと主張する。

これらの批評家たちは、Amazonが今やアメリカでは珍しい詳しい調査を受けるよう求めている。まず、証券取引委員会はホールフーズの買収を承認する前に、よく考えなければならない、と彼らは言う。次に、政治家や規制当局はその仕組みをより厳しく見なければならない。彼らは、その統合がコストに見合った価値を持っているかどうかを自問し、その統合を制限するか、根本的にAmazonを分社化するか、さもなくばその合併を規制し中和する必要がある。

私はカーン氏に本当にAmazonを分割しようと考えているかを尋ねた。「人々は臆病で、それは極端な反応だと思います。しかし、Amazonが経済全体で今までに例の無い方法で拡大している事は注目に値すると思います。」と彼女は述べた。

彼女は今朝、株価がスパイクしたことを思い出させた。「投資家は独占企業だと分かっているのです。株価が利益から制限されなかった理由です。市場は、法律では不可能な現実を示す事ができるのです。」彼女は言った。

Hacker NewsWIREDニューズウィーク

6/17/2017

トランプの奇妙のツイート: コミーを解任するよう言った男による調査

BoingBoingより

「私は、FBIの長官を解任するよう私に言った男によって、FBIの長官を解任したことで調査されているのだ!」と主張した。

Trump odd tweet0616

これはいくつかの理由で変なツイートだ。

  1. トランプを調査している男は、ロバート・ミュラー特別検察官だ。彼は政権部外者だし、もちろんトランプにコーミーを解任するよう言っていない
  2. コーミーを解雇するよう彼に言った人物、ジェフ・セッションズ司法長官、ロッド・ローゼンスタイン司法副長官は、個人的に彼を調査していない。実際、セッションズはボスの代わりに上院の聴聞会に協力しなかった
  3. トランプは、FBIがトランプの選挙のロシアとの関係を調査したため、ジム・コーミーFBI長官を解任する計画だったことを全国ネットのテレビで認めた

最も有力な推測は、ローゼンスタインがどういうわけかトランプを怒らせ、新しい詳しい調査でトランプが置かれていることを暴く役割を果たし、即座に公然と裏切るからと思われる。

しかし、もう一つの仮説がある: トランプは常にたわごとを言っている。決して止められない。一時的な不安を和らげ、汚名をそそぐこと以上に何も意味はない。それは病的なまでメンツを保とうとする男のおしゃべりで、彼の現実は絶えず彼自身の一過性の満足感で再構成される。

更新: BoingBoingによると、マイク・ペンス副大統領がこの調査に関連してか、独立した弁護士(Marc Kasowitz)を雇ったとのことだ。

6/16/2017

タブよりスペースを使う開発者の方がお金を稼ぐ

Slashdotより。ええぇ?

匿名の読者が伝える:
あなたはコードのインデントにタブあるいはスペースを使っている? これは、ソフトウェア開発者の間でちょっとした聖戦である。多くの議論と冗談の対象になっている。私はスペースを使用するが、特に重要だとは少しも考えてない。しかし、今日我々はStack Overflow 2017 Developer Surveyの裏で生データが公開している。そして、いくつかの分析がこの選択が予想以上に重要であることを示唆している。28,657人のアンケート回答者が、タブに対するスペースの回答をしており、自分自身をプロフェッショナルな開発者(学生または元プログラマではない)と見ている。このグループの中で、40.7%がタブを使い、41.8%がスペースを使っている(17.5%が両方使っている)。そのうち、12,426人が給料も支給した。データを分析すると、興味深い結論に至る。同じ量の経験だとしても、インデントにスペースを使うコード作成者は、タブを使うプログラマよりも多くお金を稼いでいる。実際、スペースを使う開発者の中央値は、59,140ドル、タブを使う開発者の中央値は43,750ドルだった。

スラド

スコット・フォーストールが来週iPhoneプロジェクトを公に語る

ジョン・グルーバー氏のブログより

マウンテン・ビューのコンピュータ歴史博物館での来週の大型イベント:

iPhoneはどのように登場したのか? 6月20日、元開発チームの4人が、過去10年間でコンピュータ業界を再構築し、ビジネスの概観を変え、世界中の10億人以上が手にするツールとなる秘密のAppleのプロジェクトについて話し合う予定だ。

第1部: オリジナルiPhoneのエンジニアNitin Ganatra、Scott Herz、Hugo Fiennesが、ジョン・マルコフとの対談

第2部: オリジナルiPhoneソフトウェアチームのリーダScott Forstallが、ジョン・マルコフとの対談

私がこれを作れなかったのは辛い。できればビデオがあることを願う。

実はこういうことだ: ForstallはAppleの中で明らかに不和を生じさせた人物だった。彼はスティーブ・ジョブズが死んだ後、自分自身を不可欠な人物だとみていたが、結局そうではなかったことが分かる。

しかし、Forstallがこれまでに行った最も成功したソフトウェア・プロジェクトの一つを率いていたということに異議を唱えることはできない。彼らが不可能なことを達成したと言うのは簡単だが、Forstallのチームが達成したことはチームの多くのメンバーによって検討されたもので、そうでなければ不可能だった。しかし、彼らはそれを行い、その後もiOSをより良くし続けた。2007年6月にオリジナルiPhone OSを何とかリリースしただけではないが、Forstallを会社から追い払った全体の動きは単純に驚くことだった。

会社全体で、Forstallのスタイルは一般的でないことは明らかである。しかし、多くの人がiOSチームで働いており、ほとんどが彼のために働くことが好きだったし、少なくとも彼のために高く評価されていたことを私は知っている。何度も聞いたことは、Forstallは信じられないほど厳しい要求をしていたことだ。彼のチームにいて、いい仕事をしていれば、彼はあなたを守ってくれた。

ForstallはAppleを5年前に退社してから、Appleについてほとんど語らなかった。そのため、彼がマルコフに心を打ち明けるなら、興味をそそられる。オリジナルのiPhoneを実際に実装する彼のチームの話は、ほとんどまだ語られていない

9to5mac

更新(2017.6.22): ここにインタビューの完全なビデオがある。

NSAはWannaCryを北朝鮮に結び付けている(一定の確信がある)

Slashdotより

匿名の読者がワシントン・ポストのレポートを引用する:
米情報当局によると、国家安全保障局(NSA)は先月150カ国で30万人以上が感染したWannaCryコンピュータ・ワームの作成を北朝鮮政府と結び付けている。報告書に詳しい人物によると、先週内部で公表された(公にはされていない)戦略、技術、標的の分析に基づいた評価は、北朝鮮のスパイ機関「朝鮮人民軍総参謀部偵察局(RGB)」を"一定の確信がある(moderate confidence)"と指摘している。この評価はWannaCryの2つのバージョンの背後にRGBの支援を受けていた疑いのある攻撃者がおり、自身をShadow Brokersと呼ぶ匿名グループによって昨年盗まれオンラインに投稿されたNSAのハッキングツールを使って作成された。評価は決定的なものでは無いが、証拠の大部分はピョンヤンに向けられている。これは、歴史的にRGBによって使われている中国のIPアドレスの範囲を含んでおり、評価は最近他の西側スパイ機関によって収集された機密情報と一致している。WannaCryの背後にいるハッカーは、民間部門の研究者が使用する名前「Lazarus Group」とも呼ばれている。

Wired

更新(2017.6.17): シュナイアーによるコメント。

正直、私はどう考えたらいいか分からない。私は懐疑的だが、納得しているつもりだ。(ここにgrugqの投稿あり、それを理解しようとしている) 私が見たいのは、彼らがおそらく簡単に出せるものよりも詳細なNSAの証拠だ。

6/15/2017

Google検索がアメリカは人種差別主義者と利己主義者でいっぱいと示している

Slashdotより

"Everybody Lies"の著者Seth Stephens-Davidowitz氏は、「Googleはデジタル自白剤である。人々は、誰にも話していないこと、家族、友人、匿名の調査、あるいは医者にも伝えないことを、Googleには伝えている」と最近のインタビューで私に語った。Stephens-Davidowitz氏は一定の期間で一定の地域でどのように検索が高い頻度で使われるかを追跡するツールGoogle Trendsに夢中になっていた時に、ハーバード大学で経済学博士号を取得した。我々の国民意識のバロメータとして、Googleは正確で(そして、予言的)ある。共和党の予備選が始まったばかりの2016年、大部分の専門家と世論調査はトランプが勝つとは信じていなかった。何にしろ、彼は退役軍人、女性、マイノリティ、そして無数の他の選挙区を侮辱していたのだ。しかし、Stephens-Davidowitz氏はGoogle検索の中に想定されているより多くの人がトランプにはるかに真剣だったことを示唆する手掛かりを発見した。人種差別主義者の悪口や冗談を含む検索が、南部だけでなく、ニューヨーク州、ペンシルベニア州西部、オハイオ州東部、イリノイ州、ウェストバージニア州、ミシガン州と、トランプの予備選行程の間に全国で急増していた

スラド

6/14/2017

4G VoLTEのセキュリティ上の欠陥

シュナイアーのブログより

Patrick Ventuzelo、Olivier Le Moal、Thomas Coudrayによる研究論文「Subscribers remote geolocation and tracking using 4G VoLTE enabled Android phone (4G VoLTE対応のAndroid携帯を使った加入者の位置情報と追跡について)」
概要: VoLTE(Voice over LTE)は、世界中の多くの事業者によって実装されている技術である。従来の2G/3G技術と異なり、VoLTEは音声通信を処理するためにエンドツーエンドのIPネットワークを使用する可能性を提供する。この技術は、IMS(IPマルチメディア・サブシステム)ネットワーク上でVoIP(Voice over IP)標準を使用する。この論文では、まずVoLTE技術の基礎を紹介する。次に、Android携帯を使ってVoLTEネットワークと通信する方法と、通常のVoLTE通信がどのように見えるかを明示する。最後に、様々な問題と実装の問題について説明する。我々は受動的と能動的両方の脆弱性と、VoLTE Androidスマートフォンを使って加入者とオペレータのインフラを攻撃することができる攻撃を提示する。これらの脆弱性のいくつかは新しく、今まで発表されたことがない: 攻撃者は、位置情報など標的となる加入者に関するプライベートな情報を無許可で取得できる。
ニュース記事。Slashdotスレッド

Slashdotより

匿名の読者が伝える:
「フランスのP1 Security社の研究チームは、現在米国、アジア、ほとんどのヨーロッパ各国で使用され、世界中で普及しているプロトコル4G VoLTEテレフォニーに関する多くの問題を詳述している」とBleeping Computerが報告する。研究者らはVoLTEプロトコル(LTEとVoIPの混合)のいくつかの欠陥を特定し、攻撃者は電話番号を偽装し、新しい身元で電話を掛けられるようでき、プリコールメッセージの交換からIMSIと位置情報データを抽出できる。これらの問題は、一部のVoLTEパケットを変更したり、ターゲットと活発に情報をやり取りしたり(注: DoS?)、またAndroidデバイス上でVoLTEトラフィックをパッシブに聞くなど悪用される可能性がある。これらの欠陥のいくつかは、データ収集操作のために被害者とターゲット間で完全な通話/接続を確立する必要ない。さらに、別の欠陥は、ユーザが課金されずに電話を掛けたり、契約なしにモバイルデータを利用することができる。チームの研究論文「Subscribers remote geolocation and tracking using 4G VoLTE enabled Android phone」は、フランスのレンヌで隔年開催されるセキュリティ会議SSTIC(Symposium sur la Securite des Technologies de l'Information et des Communications)で先週発表された。

6/13/2017

ソーシャルメディアを大統領記録にするCOVFEFE法

Slashdotより。冗談?本気?どっち?

匿名の読者がThe Hillのレポートを引用する:
マイク・クイグリー議員(D-Ill.)は、トランプ大統領の話題のツイートを含む大統領のソーシャルメディアへの投稿を、大統領記録として機密扱いに分類するよう月曜日に法律制定を発表した。「Communications Over Various Feeds Electronically For Engagement (COVFEFE)」法は、先月のトランプがTwitterに恥ずべきタイプミスと同じ頭文字を持ち、ソーシャルメディアを含むよう大統領記録方を修正する。大統領の記録は大統領記録法に従って保存されなければならず、大統領がツイートを削除することは違法の可能性がある。「トランプ大統領は個人的なTwitterアカウントを公式なコミュニケーションの手段として頻繁にフィルタ無しで利用することは、これまでに無いものだ。もしも、大統領が突然公共政策宣言にソーシャルメディアによる手段を取るなら、我々はこれらの声明をドキュメント化し、将来の参照のために保存されるようにしなければならない。ツイートは強力で、大統領は全ての投稿に対して責任を負わなければならない。」クイグリー氏は声明の中で述べた。ショーン・スパイサー報道官はこの言葉が意図的に使われていると言ったが、ほとんどの人がタイプミスした"covfefe"ツイートのことだと受け取った。「大統領と少数の人々は、彼が何の意味かを正確に知っている」と彼は言った。

Hacker Newsスラド

Appleのシリコンと機械学習

ジャン・ルイ・ガゼーのブログより

先週のWWDCで、Appleはいつになく多くのハードウェアとソフトウェアを発表した。今日は、Appleのシリコン設計の強みと現時点で公開された拡張現実(AR)と機械学習(ML)アプリケーション開発ツールとの間の潜在的な繋がりを考察したいと思う。

Appleが2013年9月に64ビットのA7プロセッサを発表した際、彼らは業界を驚かせた。長い伝統を持つSand Hill Roadのベンチャー企業にいる元インテルの紳士によれば、強大なx86メーカの競合分析グループは、Appleが64ビットチップを作っていると考えていなかった。

2013年9月のMonday Noteでは64ビットというタイトルについて取り上げた。どうってことはない。あなたはそれを必要としていない。そして、我々は6ヶ月以内にそれを持ち、強豪他社やインテルのステノグラファーは当初新しいチップを却下した。彼らはショックを受けていた: Appleは強力なモバイルチップのレースの先頭に急ぐばかりでなく、ウォーレン・バフェットが"広い堀(wide moat)"として呼ぶものを構築するためにハードウェアとソフトウェアの連結コントロールを利用した。

"昔は、城はその周りを囲む堀によって保護されていた。広い堀は敵が近づくことを非常に難しくしたため、堀は広いほど城の防御は容易になった。"

業界は、最高のシリコン設計チームではないにしろ、Appleは最高のアイデアを持っているという考えを受け入れるようになった。同社は、Qualcommのコア通信チップ事業のエンジニアリング組織を統括していたEsin Terziogluを雇った。スマートフォンとタブレットはハードウェアとソフトウェアを一緒に64ビットの世界に移行することで、Appleは老朽化したウィンテル支配と同じような難攻不落の、Googleの優れた検索と同じような支配的な堀を建設した。

私は、拡張現実(AR)、マシンビジョン(MV)、そしてより一般的な機械学習(ML)の分野で、今度は別の堀が建設されるのを見るかもしれないと思う。

先週のWWDCで、Appleは開発者がアプリケーションに拡張現実を組み込むためのプログラミング・フレームワークであるARKit(ビデオはこちら)を紹介した。デモ(ビデオに1分ほど)は注目を引いた。子供の寝室が仮想絵本に変わったり、イケアのアプリを使用すると物理的なリビングルームに仮想家具を置くことができる。

多くの観測筋が指摘するように、AppleはAR搭載可能なデバイスで最大のインストールベースを作り上げた。iPhoneやiPadよりも多くのAndroidデバイスが存在するが、Androidソフトウェアはハードウェアに結合していない。大規模なAndroidの城を守っている壁は壊れている。もちろん、Apple最新のOSが動作するAndroidスマートフォンが7%で、iOS 10が動作するiPhoneは86%なのと比較すると、この上なく嬉しい筈だ。

Appleは"学習済みモデル (trained models)"をサードパーティのアプリケーションに結合するアプリケーション・フレームワークであるCoreMLを紹介した。ARKitと違って、CoreMLのデモは楽しいものではなかった。CoreMLの実装は、ARよりも"どこにでも"あり同定できないだろう。アーキテクチャ的には、CoreMLは洗練されたマシンビジョンと自然言語処理アプリの基盤である。

Apple mv npl

敬意: Apple開発者マニュアル

我々が知る限り、これは最近のiPhoneやiPadのAxプロセッサ上で実行される。しかし、最近のブルームバーグの根拠のない噂は興味深い話を喚起する。それは、Appleはデバイス上で動くAI専用チップを開発しているということだ。

メイン・プロセッサの脇で動作し、特定の命令専用の補助チップはほぼ常に存在している。実際はFPU(浮動小数点プロセッサ)で始まった。主な科学技術的な用途のための高精度浮動小数点演算はメインCPUから非常に多く計算パワーを必要とし、全ての動きを鈍くする。このような命令は特別な補助FPUにオフロードされた。

後で、グラフィック処理、シミュレーション、ゲームが求める処理に専念するグラフィック処理ユニットであるGPUが登場した。グラフィックを大量に使用するアプリの普及や、応答への要求、遅れの無い相互作用の必要性から、GPUはPC、タブレット、スマートフォンのどこにでも存在する。Nvidiaなどの企業は、高性能GPUの必要な範囲を広げてその名を広めた。

これらは印象的なマシンである。汎用CPUの複雑な論理演算に必要なロジック(トランジスタ)を除いて、GPUハードウェア資源は可能な限り高速に実行される限られた一連のタスク専用である。心地よさの無いトラックを考えてみると、どんどん速くなっているが、毎日の道や街で使うには適していない。

そのようなGPUのパフォーマンスは、いくつかの金融機関が何百ものGPUを搭載したマシンで複雑な予測モデルをほぼリアルタイムで実行し、想定される商取引の長所を知らせる。

同様の考えは、複雑な畳み込みニューラル・ネットワークや関連するML/AI計算を実行する必要性から生じた。これにより、GoogleはTensorFlowアルゴリズムをうまく実行するためにTPU(Tensor Processing Unit)を設計した。

専用AIチップの話に戻る: それはいくつかのクリックベイトの間違いが混ざった不気味で正確な予測の記録を持つ情報源(ブルームバーグ)から来ている興味をそそる話である。

少し憶測の話にふけよう。

Appleニューラル・エンジン(ANE)と仮称されているこの仮説のチップは、アラン・ケイの勅令によるところの「ソフトウェアについて真剣に考えている人は、自分たちのハードウェアを作るべきだ」というAppleのソフトウェア設計の伝統とよく一致している。

AppleのARとMLの発表と推定されるANEチップと組み合わせ、我々はAppleの文化に非常によく似た統一した全体を持ち、既に目にしているシリコン・マッスルが、その構造的な競争上の優位性、会社の堀をさらに強めるパッケージとなる。

興味をそそる一連の考えではあるが、「もしそうなれば素晴らしいので、それはうまくいく」の筋の中にあり、危険な可能性もある。形だけでも用心すべきか、私はそれはいくつかの形で現実になる可能性は五分五分以上はあると思う。さもなければ、Monday Notesの購読料を返そう。

6/12/2017

Raspberry Piに感染するワーム

BoingBoingより

Linux.MulDrop.14は、デフォルトのrootパスワードを使ってネットワークに接続されたRaspberry Piを探し出すLinuxワームである: 奪取に成功すると、ZMapとsshpassをインストールし(他の感染先を探す)、不特定の暗号通貨をマイニングを始め、マルウェアの作者に富を作り出し、あなたに電気料金を負担させる。

専門家は、Raspberry Piの運用者がデバイスのSSHポートを外部接続向けに開放したままの状態にすると初期感染が起こると言う。

Raspberry Piデバイスが感染すると、マルウェアは"pi"のアカウントのパスワードを次のように変更する:

\$6\$U1Nu9qCp\$FhPuo8s5PsQlH6lwUdTwFcAUPNzmr0pWCdNJj. p6l4Mzi8S867YLmc7BspmEH95POvxPQ3PzP029yT1L3yi6K1

その後、Linux.MulDrop.14はいくつかのプロセスを落とし、ZMapやsshpassなどの操作に必要なライブラリをインストールする。

そして、マルウェアは暗号通貨のマイニングプロセスを開始し、ZMapを使って、SSHポートがオープンになっている他のデバイスを探すためにインターネットをスキャンし続ける。

デバイスが見つかると、マルウェアはsshpassを使って、ユーザ名"pi"とパスワード"raspberry"を使って、ログインしようとする。このユーザ名/パスワードの組み合わせのみが使用される。つまり、マルウェアは、Raspberry Piのシングルボードコンピュータのみを対象としている。

Linux Malware Mines for Cryptocurrency Using Raspberry Pi Devices [Catalin Cimpanu/Bleeping Computer]

Slashdot

6/11/2017

Linux Enhanced BPF (eBPF)トレース・ツール

NetflixのエンジニアBrendan Gregg氏のホームページより

このページでは、Linux 4.xのカーネルに追加されたBPF(Berkeley Packet Filter)の拡張機能を利用して、単なるパケットフィルタをはるかに超えたことをBPFが可能にし、一例としてパフォーマンス分析を示す。これらの拡張機能は、Linux上で動的トレース、静的トレース、イベントのプロファイリングをカスタム解析プログラムを使って実行できる。

Bcc tracing tools

eBPFには、DTraceやSystemTapと同じような生のトレース機能があり、私は既にDTraceToolkit中の多くのツールをeBPFに移植している。次のような疑問に答えることに適している:

  • ext4オペレーションが50ミリ秒より掛かったか?
  • 実行待ち時間をヒストグラムで表すとどうなるか?
  • どのパケットやアプリがTCP再送信に悩んでいるか? (送受信をトレースせずに)効率的にトレースする
  • スレッドがブロック(off-CPU)された時、スタックトレースはどうなるか、そしてどのくらいの時間ブロックされていたか?

eBPFは、セキュリティモジュールやSDN(Software Defined Networking)でも利用できる。私はここではそれらをカバーしていない(まだ、とにかく)。また、eBPFはしばしば単に"BPF"と呼ばれることが特にlkmlではあるので、注意してほしい。

(省略)

4. eBPF

BPFはパケットフィルタを最適化する技術として考案された。tcpdumpを式付き(ホストやポートにマッチする)で実行する場合、カーネル内のサンドボックス化された仮想マシンによって実行される最適なBPFバイトコードにコンパイルされる。拡張BPF(別名eBPF、または単にBPF)は、このBPF仮想マシンが実行できるよう拡張された: パケット以外のイベントやフィタリング以外のアクションを実行できる。

eBPFは、SDN、DDoS軽減(早期パケットドロップ)、ネットワークパフォーマンスの改善(XDP: eXpress Data Path)、侵入受けんちなどに利用できる。このページで、私は以下のワークフローの中で示されるように観測ツール(observability tools)に利用に焦点を当てる:

Linux ebpf internals

我々の観測ツールには、レイテンシー測定、ヒストグラムの要約、スタックトレースの取得など、特定のアクションを実行するためのBPFコードを持っている。そのBPFコードは、BPFバイトコードにコンパイルされ、カーネルに送られる。カーネルに送られると、検証者が安全ではないと見なされれば(許可されないループや分岐命令を含むと)、拒絶される。BPFバイトコードが受け入れられると、別のイベントソースにアタッチすることができる:

  • kprobes: カーネル動的トレース
  • uprobes: ユーザレベルの動的トレース
  • tracepoints: カーネル静的トレース
  • perf_events: タイムサンプリングとPMC

BPFプログラムには、測定されたデータをユーザ空間にもおdす2つの方法がある: イベント毎の詳細かBPFマップ経由で、BPFマップは配列、連想配列、ヒストグラムを実装でき、要約統計量を渡すのに適している。

(省略)

Hacker News

6/10/2017

Keybase入門

Nikhita Raghunathによる。PGPの普及を阻んでいた身元の確立と利用の手軽さを、SNSで解決している。

Keybaseのことを聞いてから、私は参加したいと思っていた。残念ながら、私が最初にそれを手に入れようとした際、サインアップに招待状が必要だった。(これを書いている時点で、ウェブサイトのページは別の方法を書いているが、Keybaseは招待状を必要としない。連絡してほしい!)

Keybaseのコンセプトは一度理解すれば、理解しやすいようだ。私が最初にそれを聞いた時は混乱した。本当に何なのかを理解するのにグーグル検索が必要だった。この記事で、あなたがKeybaseについて持っている不明瞭な考えを明確にしたいと考えている。

Keybaseとは何か

Keybaseは公開鍵の信頼できる保管庫である。もし、私があなたに暗号メッセージを送りたい場合、公開鍵を簡単に見つけることができる。また一方、私がメセージを送りたい相手があなたであると確かめたいと思っている。これが信頼係数が入り込む場所である。

Keybaseは、あなたのソーシャルアカウントに結び付けることで信頼を確立する。それぞれのアカウントに投稿するよう要求する - それらを求め、Keybaseのアカウントにリンクする。そうして、私はあなたの身元を確認し、Twitter上で(githubなどで)実際にあなたであると主張している人があなたであることを知る。これはあなたの公開鍵への私の確信を強化し、あなたにメッセージを送るのに安心させる。

Keybaseは4つの主な機能がある:

  • 身元の確立: Keybaseは、twitter、githubなどのあなたのオンラインの身元を証明する(注)ことで、偽アカウントの問題を解決する。基本的に、あなたは自分のアカウントと身元は同一だと主張しているのだ。一度これを行えば、皆は現実世界であなたに会っていなくてもあなたにメッセージを送るのに安心することができる。これが「信頼の輪 (Web of Trust)」と知られている。あなたがこれらのアカウントをコントロールしていることを誰にも伝えるために、twitter、github gistsなどに何かを投稿する必要がある。

    (注): twiter、github、reddit、facebook、hackernews、webサイト、dnsで証明する

  • 公開鍵の保管庫: Keybaseは簡単に検索できる公開鍵の保管庫と見做すことができる。これは暗号メッセージを送信/受信したい場合に便利である。鍵を個人と別々に共有する必要がなくなる。

  • ハッキングに対する防御: Keybaseはあなたが所有する暗号鍵を各デバイスに関連づける。あなたのデバイスの一つがハッキングされても、そのデバイスをKeybaseのIDから削除できる。従って、皆はあなたのデバイスの一つがハッキングされたことを知っているため、もはやそのデバイスへのメッセージを送信しなくなる。

  • 素晴らしいファイルシステム: KeybaseはKBFSと呼ばれるファイルシステムもある。簡単に言うと、ファイル共有をするための安全な方法である。パブリックとプライベートの2種類のフォルダがある。パブリックフォルダ内にある全てがあなたによって署名され、プライベートフォルドはエンドツーエンドで暗号化され、Keybaseでもそれらを見ることができない。

アカウントを設定する

注意: 以下は主にLinux向けのものである。

ウェブサイトに行って、参加する。参加後、デスクトップ用のKeybaseアプリをインストールする。そして、Keybaseを開始する:

$ run_keybase

これは、ログインするためのGUIを開く。CLIを使いたい場合は次のようにする:

$ keybase login
$ keybase pgp select         # if you already have keys

秘密鍵をKeybaseサーバに追加することは十分に気を付けてほしい。安全かも知れないが、秘密鍵はあなたの目だけを頼りにしている。その方がキープするためには良い。

Keybaseアカウントにデバイスを追加できる。各デバイスには暗号鍵が付属する。いずれかのデバイスがセキュリティ侵害を受けた場合、アカウントから削除してほしい。Keybaseはあなたが従うユーザを追跡する。従って、ユーザがデバイスをセキュリティ侵害した場合、あなたに通知される。

モバイルアプリはまだ開発中である(注: iOSAndroid向けにベータ版がリリースされている)。それまでは、ペーパーキーと呼ばれるものを使うことができる。これは新しいコンピュータを用意するのに利用できるNaCL鍵(ソルト)である。最初の2つの単語がパブリックラベルで、残りが秘密鍵をエンコードする一連の単語である。

$ keybase device add
$ keybase paperkey

あなたの身元を確立する

ツイートやgistsを投稿するか、皆に何を伝えるべきかを促すプロンプトが出る:「これらのアカウントを所有するの人物は同じ、私!、私!、私!」(明らかにそのままではない)

$ keybase prove twitter
$ keybase prove github

Keybaseはどのようにアカウントとデバイスを接続されているかを示す優れたハッシュ木を作成する。ペーパーキーを使って、ペーパーキー自体に由来する矢印として表示される第2のコンピュータを準備することができることに注意してほしい。

暗号化メッセージの送信

サーバ上に秘密鍵を追加した場合、メッセージの暗号と復号にウェブサイトを使うことができる。あなたがそうすると決めた場合、ブラウザのJSで暗号化/復号化が行われることを覚えて置いてほしい。よく考えること!

秘密鍵を追加していない場合、CLIを使用してメッセージを暗号化または復号化する必要がある。

$ keybase pgp encrypt nikhita -m "This is a test message!"
-----BEGIN PGP MESSAGE-----
Comment: https://keybase.io/download
Version: Keybase Go 1.0.18 (linux)
...
-----END PGP MESSAGE-----

それでおしまい! Keybaseは自動的に私の公開鍵を検索し、それを使ってメッセージを暗号化する。今、あなたは暗号化されたこのテキストの暗号化ブロックをメール、Twitter、IMなどどんなものでも、私に送ることができる! :)

私は公開鍵を求めて尋ね回る必要はないので、これは特に便利である。実際、私はKeybaseのユーザ名を知る必要はない。私は、Twitterアカウントを使ってメッセージを送ることもできる。

$ keybase pgp encrypt TheNikhita@twitter -m "Hi again!"

復号するには:

$ keybase pgp decrypt -m "encrypted-message-here"

より詳細なコマンドがマニュアルにある。

ファイルシステムを使う

Keybaseは安全な分散ファイル・ストレージ・システム(Dropboxのようなもの)を提供する。Dropboxと異なり、ここには同期モデルはない。ファイルはオンデマンドで利用できる。つまり、システム上のメモリを占有しない。また、アルファ・プロダクトの各ユーザには10GBのスペースが提供される。

  • /keybase/public/<username>/keybase/private/<username>にマウントされたファイルシステムを探すことができる。私のkeybaseユーザ名を使う代わりに、twitterの(あるいは別の)ユーザ名を使うこともできる。/keybase/public/TheNikhita@twitterでも動作する。

  • パブリックフォルダに格納されているもの全てがあなたによって署名され、プライベートフォルダに格納されているものは全てエンドツーエンドで暗号化される。

  • パブリックフォルダに格納されるものは、https://keybase.pub/で見ることができることに注意する。特定のユーザファイルを表示するには、https://keybase.pub/<username>にアクセスする。

  • プライベートフォルダは/keybase/public/nikhita,chrisあるいは/keybase/public/TheNikhita@twitter,chrisと名前が付けられている。これは、暗号化されたエンドツーエンドのフォルダで、クリスと安全にファイルを共有できる。このようなフォルダを作成する必要ない。暗黙のうちに存在する。
# to access public folders
cd /keybase/public/nikhita
cd /keybase/public/TheNikhita@twitter
cd /keybase/public/nikhita@github

# to access private folders between you and me
cd /keybase/private/nikhita,
cd /keybase/private/TheNikhita@twitter,

この中で一番素晴らしい点は? 私がTwitterで誰かと会話している場合、公開鍵を尋ねる煩わしさを省くだけでなく、「そのファイルはKeybaseのプライベートフォルダにあるよ」とシンプルに言うことができる!

結論

私はKeybaseの目標とデザインが好きだ。またオープンソースで、快適だ! アカウントやデバイスがセキュリティ侵害された場合、セキュリティ上の懸念があるかも知れないが、それらを無効にすることで軽減できる。

全体として、私はそれが好きで、将来どのようなアルファプロダクトから製品に移行するかを見るのが楽しみである。

Wow!シグナルが解決された

Futurismより。宇宙人じゃありませんでした。

1977年、地球外生命の音が初めて人間の耳に聞こえた、あるいは人々はその時そう考えた。Wow!シグナルは、オハイオ州立大学のビッグイヤー電波望遠鏡を使って、天文学者ジェリー・エーマンによって検出された。当時、電波信号検出器は、射手座のChi Sagittariiと呼ばれる星団を指していた。

星の周囲の空をスキャンすると、エーマンは72秒間電波のバーストを捕らえた: 彼は該当部分を丸で囲んでWow!と書き足し、そのような訳で信号名となった。この40年間、我々は銀河系内でひとりぼっちでは無い証拠としてこの信号が引用されている。専門家や一般の人々は最終的に、我々は地球外生命の証拠だと同様に信じてきた。

Wow signal

しかし、サンクトペテルブルク大学のアントニオ・パリ教授は、その解釈を発見した: 一対の彗星だ。この研究はジャーナル・オブ・ワシントン・アカデミー・オブ・サイエンスに掲載された。

2つの彗星は266P/Christensenと335P/Gibbsとして知られ、直径が数百キロメートルもの水素ガスの雲に囲まれている。Wow!信号は1420MHzで検出され、水素が自然に放射する無線周波数である。特に、チームはその彗星が当時近くにあったことを確認しており、266P/Christensenの電波信号がWow!信号と一致したことを報告している。

その他の地球外通信

この発見は世界中の地球外生命愛好家には失望だが、Wow!信号は宇宙から今まで受信したことが無い最も強い信号であり、宇宙からの信号と音を正確に解釈する能力を持つ証拠である。最近観測された他の星から来た何百もの奇妙な信号を解読しようとする我々の希望に応える。

我々は宇宙検波最終兵器にいくつかの武器を持っており、その大部分が地球外知的生命体探査(SETI)で使われている。それらの主な検出手段は電波望遠鏡の利用であり、これまでに最も野心的なプロジェクトは「プロジェクト・フェニックス」だった。そして、世界で最も精度が高く包括的に地球外知的生命を探している。

このプロジェクトでは、世界最大の電波望遠鏡を3つ使用した: オーストラリアのパークス電波望遠鏡(直径210フィート)、ウェスト・バージニア国立電波天文台(直径140フィート)、プエルトリコのアレシボ天文台(直径1000フィートで世界最大)。彼らはポール・アレンの財政支援を得て、アレン・テレスコープ・アレイを建設した。

地球外生命のメッセージを検出する技術は比較的停滞したままで、我々自身の衛星と良好に通信するアイデアはレーザービームによる通信や宇宙衛星ネットワークの確立など実現性は急速に進歩している。

Hacker NewsSlashdot

6/09/2017

安全性とセキュリティが一体になる時

ケンブリッジ大学のセキュリティ研究のブログLight Blue Touchpaperより

自動車が携帯電話やノートPCのように毎月アップグレードし始めた何が起こるだろうか? それは起き始めており、その変化は深刻になるだろう。我々は事故から学びながら、車の安全性を改善することができ、欠陥を修正することはリコールに何十億も費やすことを意味するわけではない。しかし、2020年のランドローバーに入るナビゲーションコードを書いているなら、2030年には安全性とセキュリティパッチをどのように出荷できるだろうか? 2040年には? 2050年には? 現時点では、ソフトウェアのパッチを3年間キープするのにも苦労している。我々はそれを30年間行う方法が全く分からない。

我々の最新の論文は、Éireann LeverettとRichard Claytonと私が欧州委員会に向け、この大胆な新しい世界で安全性に何が起こるかを調査を始めたプロジェクトを報告する。ヨーロッパは十数の業界セクターに関して世界の安全規制をリードしている。その中で我々は、道路輸送、医療機器、電力業界の3つを研究した。

今までは、極めて安全なシステムを作る2種類の方法を知っていた。複雑なオンライン攻撃にさらされている携帯電話やノートPCの中にはソフトウェアがあるため、脆弱性が発見されると定期的にパッチを当てる必要がある。ソフトウェアにパッチを当てるコストは非常に高いため、一般的に数年後には放棄される。もう一つは、安全性が高く、シンプルで徹底的にテストされ、大きな悪いインターネットにさらされない安全性が重要な機械のソフトウェアである。これらの2つの世界がぶつかると、予想以上の大きな波が起こるだろう。

安全性の観点からしか考えない規制当局もセキュリティを考え始める必要性があるだろう。安全性エンジニアは、敵対的思考を学ばなければならない。セキュリティエンジニアは、使いやすい安全使用についてもっと多くのことを考える必要があるだろう。教師は、これらの科目を一緒に教え始める必要があるだろう。(私は、ソフトウェア・エンジニアリングの入門コースをソフトウェアとセキュリティ・エンジニアリング・コースに拡張した) そして、政策の議論も変わるだろう。人々はiPhoneのロックを解除してプライベートなメッセージを読むための貴重なマスターキーをFBIが持つことを賛成するかも知れないが、あなたの車やペースメーカを乗っ取るマスターキーに対しては賛成する可能性は低いだろう。

研究者やソフトウェア開発者、30年あるいは40年間、自動車のような耐久性のある製品のソフトウェアにパッチを当て続ける方法について真剣に考えなければならないだろう。欲深い自動車メーカーが望むように7年後に車をリサイクルすることは容認できない。車に埋め込まれた炭素コストはその生存期間での燃料燃焼とほぼ同じであり、平均燃費を20万から70万に削減しても、自動産業のCO2排出は高まる。そのため、ソフトウェアを持続可能にする方法を学ばなければならないだろう。どうすればいいのか?

我々の論文はここにある。短い動画はここに、長い動画はここにある。

Schneier on Security

6/08/2017

Appleの対インターネット広告戦略 (WWDC 2017)

FastCompanyより。そこがAppleの強みである。

インターネット広告、あなたに警告する。

今年のAppleのWWDC基調講演の鋭いメッセージの一つだった。同社は新しいHomePodスピーカスペースグレイのiMac Proのような目を引く発表がたくさんあったが、来たるiOS 11とmacOS High Sierraのアップデートの無数の機能に隠されたものは、煩わしいターゲット広告からユーザのプライバシーを守ることを目的とした機能群である。

AppleのSafariがビデオの自動再生をブロックするという発表は、プレゼン中に大きな喝采を浴びたが、iOSとmacOSのブラウザの中に組み込まれた少なくとも2つの重要な機能であり、ウェブベースの広告のやり方に大きな影響を与える可能性がある。

1つ目は、2010年にデビューしたSafariのリーダーモードのいくつかの調整である。この簡略化されたビューの背後にあるアイデアは、読みやすい形式でメインコンテンツだけをユーザに配信すことに集中し、ページの余分な要素を取り除くことにある。しかし、その合理化されたモードは広告も取り除き、コンテンツプロバイダはAppleがサイトの生計手段を狙っていると批判を引き起こしている。

リーダーはここ数年ほとんど放置されていたが、iOS 11とmac OS High Sierraでは注目を復活させており、幅広くアップグレードをしている。"それをサポートする全てのウェブ記事"のデフォルトモードとしてリーダーを設定できるようになり、多くの記事がグラッフィックを多用した複雑なウェブページよりもPDFのようなものに変える可能性がある。(以前は、まずサイトを読み込んで、リーダーに切り替える必要があった。少なくとも、あなたがサイトを離れる前に広告をはっきり見せる機会が与えられていた。)

この新機能には、より細かなオプションもあり、特定のサイトだけをリーダーモードでデフォルトによってロードするよう選択できる。そのため、あなたが特定のサイトの動作に不愉快に思えば、あなたの目に不愉快な広告を再び表示しないように指示できる。Appleの新しい自動再生ブロッッ機能はサイト毎に同様のオプションがある。

同社は、あなたを付け回すウェブ(あなたが靴を購入したとすると、その後半ダースのサイトで靴のポップアップ広告を見るようになる厄介な現象)からその広告をブロックするために最近注目を集める機械学習技術を使用するSafariの機能も発表した。その機能は、広告会社がこれらの反復広告を配信するために使用するクロスサイト・トラッキングツールをブロックし、オンラインショッピングの際にプライバシーを保護することを約束する。

失うものは何もない

これは決して驚くべきことではない。ここ数年、プライバシーがAppleのコアメッセージの一つになっており、特にGoogleやAmazonなどの主要なライバルとは全く対照的な位置に自分自身を置いている。新しいアンチトラッキング機能は、会社の収益に直接的な影響を与えないかも知れないが、Appleは慎重に戦略を描いているようだ。例えば、Appleのプライバシー保護機能の詳細については、あなたが訪問したファーストパーティ・サイトとネットワーク追跡するサードパーティとを区別しているようだ。

Google、Amazon、Facebookのような企業は、あなたのことを全て知りたいし、その情報を使って、あなたが購入したいと思う製品の広告をあなたに提示したいと考えている。良くも悪くも、それが彼らのビジネスモデルである。一方、Appleは消費者にハードウェアを販売することに重点を置いており、あなたがどこに行くか、後で何をするかについてはあまり関心がない。

あなたはGoogleやAmazonに対してこれらの新技術によって厄介払いする必要はない。(Facebookはメジャーな広告プレーヤでもあるが、Appleとの直接的な競合はそれほど高くない) これらの企業は、プライバシーや広告と自身の複雑な関係を持っており、時には奇妙で明らかに利己的な発表に繋がることもある。たとえば、先月のI/Oカンファレンスで、GoogleはChromeの時期バージョンに広告ブロッカーを、具体的には"迷惑で押し付けがましい広告"をターゲットに、組み込むと発表した。当然ながら、多くの人がすぐに指摘していたように、おそらくGoogle自身の広告は含まれていないだろう。

その点、Appleは広告レースの馬を持っていない。広告の唯一の試みであるiAdは決してうまくいっておらず、ウェブアプリではなくモバイルアプリとの関わりである。そのため、同社は自身のビジネスモデルを脅かすことがなく、インターネット広告を狙い撃ちしても差し支えない。

実際に、これらの新機能は、プライバシーとセキュリティの要塞として重視することで、Appleのイメージに有利に働いている。Appleは強力な暗号化を強く主張しているのと同じように、個人情報をデバイス上で処理を行い、差分プライバシー(Differential Privacy)のような高度な匿名化技術を奨励しており、侵略的広告の敵として位置付けは会社にはほとんど不都合な点はない。更に重要なことは、それは間違いなく顧客のために多くのメリットがあることだ。

Hacker News

6/07/2017

IPv6の5年間: 次の5年はどうなる?

APNICのブログより

マーケットスクエアを進んでいくと、多くの母親たちが溜息をついていた
ちょうどニュースが届いたところで、ぼくらに残されたのは5年間、泣くしかない
- 5年間、デビッド・ボウイ

デビッド・ボウイの曲「5年間(Five Years)」(ジギー・スターダストの最初の曲)を、IPv6が乗ったまさにジェット・コースターに当てはめてみることができる。この時点に到達するのに時間がかかかりそんなに単純では無かった。

その答えは、もちろん、合理的な予想に対する人間のつむじ曲がりである。IPv4がそのような成功をし、そしてIPv6への移行コストと結末が不確実だったため、IPv6はまさに長らく待たれていた。

しかし、運命と闇の中に飲み込まれないようにしよう。過去5年間はどのようになって、これからどこに向かおうとしていたか? その答えは、過去5年間にわたる世界的なデプロイが色々な意味で著しく一貫性のある流れ(ありがたいことに右に上昇する)を示している。

このデプロイの本質はロジスティック供給曲線に最もよく一致するように見える。なぜか? 合理的応用はしばしばイノベーションの取り込み率をモデル化することがあり、我々は低い場所(またはゼロ)で始まり、100%になることを期待するが、永遠に続けることはできない。接近できなくなる予測可能なエンドポイントがある。初期は進みが遅く、事態はは臨界質量に達し、急速に発展し、市場が飽和するにつれ再び成長が弱まる。

我々は、世界中のテクノロジーの歴史でこの曲線を見てきた。馬を置き換える車の採用率。ラジオ。電話。洗濯機と電子レンジ。興味深いことに、曲線の勾配は時間の経過とともに短くなるように見える: まるで、新しいテクノロジーをより速く、速く板を積み重ねる利点を学習しているようだ。

Screen Shot 2017 06 05 at 9 55 58 am 1024x539

私はこのモデルと見なし、Python3のカーブ・フィッティング・ライブラリをシグモイド関数(ロジスティック曲線はシグモイドのサブセットである)を適用し、この適合を思い付いた。私は、5年間の時間帯と次の5年間をプロット上に載せた。

It 1024x576

このグラフで最初に気付いたことは、非常に推測的であることだ。これはロジスティック機能に適した曲線であり、最近のIPv6の将来性の高いばらつきが世界中を象徴し、その実際の軌道は遥かに急か平坦である。時間が経つにつれ、この曲線適合はより疑わしくなる。しかし、それは大丈夫。突き出るのは楽しいことで、我々はこの予測に対してどのようになるかを、今後の5年間で見ていきたい。今後5年間でIPv6の普及が続くとしたら、世界中で約80%がIPv6対応が可能になるだろう。

2番目に気付いたことは、IPv6の普及率が高い経済圏の中を見ると、少なくとも2つの状況のうち1つが見られるということだ: 発展しうる(新興の)競争市場が存在するか、IPv6に移行したシングルプレーヤが存在する。前者の例が米国経済で、少なくとも5つの上位ISPがIPv6で競合している。

US IPv6 1024x538

それぞれのケースで、デプロイの速度とピークがどのように異なっているかにも注目してほしい。一方、これらのプロバイダのIPv6は、競争力のあるプレゼンスが持続しているように見える。

ここで、イギリスを見てみよう:

(省略)

日本を見てみよう:

JP IPv6 1024x546

日本のIPv6のデプロイの歴史は早期に始まったけれども良好である。重要なアーリーアダプタであったKDDIの2011年に持ち上げた強いしるしがあった。しかし、市場の大部分にデプロイする能力の制約事項がそれらの範囲を制限した。爆発的な成長ではなく、長く、遅く、着実に増加している。

これは最近まで、ISPの中で一つの目立つ存在の不在が原因である。それはNTTである。アーキテクチャ上の選択のため、NTTは国内での光回線マーケットでトリプルプレイ・サービスを提供するためにIPv6を使用する大規模な内部ネットワークを持っていたが、IPv6ではグローバルには外部から見えなかった。そのアーキテクチャと、他のISP(KDDIのような)にインフラを提供するというNTTの役割のため、これらのISPの範囲は厳しく制限されていた。

この図に欠けているのは、NTTがこのセグメントの主要なマーケットプレーヤであることだ。しかし、あなたが見ることができるものは、過去2ヶ月間で急激な(急速な)グローバルなIPv6機能の取り込みが始まったことで、明らかにいくつかの変化を目にすることができる。(IIJによる明らかなIPv6の減少はおそらく一時的なもの、あるいは測定効果である)

(省略)

Hacker News

GnuPGをサポートするための寄付 (GnuPG Fundraising Rally)

BoingBoingより

ネットが集まって、ヴェルナー・コッホをサポートするための基金集めをしてから2年が経った。ヴェルナー・コッホは電子メールのプライバシーと完全性を守るために何百万人もの人が毎日使っている絶対的に不可欠なGnuPGメール暗号システムをメインテナンスしている。

今、コッホとGnuPG財団はこのインターネットのインフラに必須な一つに取り組む3人のフルタイム開発者に資金を提供するため、少なくとも毎月15,000ユーロを集めようとしている。彼らは、プロジェクトがGPGToolsのようなGnuPGエコシステムの付随ツールをサポートするには月3万ドルに達することを望んでいる。

私(コリイ・ドクトロウ)は100ドル支払った。

GnuPG Fundraising Rally [Gnupg]

6/06/2017

IPv6の課題 (RIPE 74)

ブタペストで開催されたRIPE 74についてジェフ・ヒューストンが興味深い印象を書いてくれている。特に、IPv6のところが興味深い。

IPv6

RIPE会議では常に数多くの興味深いIPv6のプレゼンがあり、この会議も例外ではなかった。

IPv6デプロイ・ストーリー

(省略)

IPv6セキュリティの課題

これらの会議で多くのプレゼンは、共通の価値観を繰り返す傾向にある。しかし、時々いくつかのプレゼンはそれらの価値に意図的に異議を申し立て、よくある偏見に直面する。IPv6セキュリティのエノ・レイのプレゼンがそうだ。彼が議論するテーマの多くのは、IETFでの議論に戻る事、あるいは関連するIPv6 WGの有無を注意する事で始まる。我々は気味の悪い自己利益、政治などを、ボランティア組織の中で聞いてきたし、本来の目的を事実上弱体化させてきた。このポイントが6manという特定のIETFグループにおいて、長い間に及んできた事だと思う。強固なスタッフだ!

彼は不明確なSLAACとDHCPv6の間の関係、ND(neighbor discovery)とMLD(Multicast listner discovery)、RAのフラグ間の相互作用、ルーティングテーブル、アドレス選択メカニズム、MTU問題を批判している。

振り返ってみると、ARPからマルチキャストベースの近隣探索への移行を正当化することは難しい課題だ。もし、RFCの数とサイズを記述され、続いて技術を明確にしようとするなら、そのようなメトリックARPは、RFC4861の94ページとそれに続く6つの明確なRFCを比較するのがとても有効である。

複数のIPアドレスやアドレススコープ(リンクローカルを考えて欲しい)のコンセプトは、かなりの混乱と曖昧さの原因となっており、これと言って有益な機能を果たしていないように思える。ローカルホストの意思決定構造が大きくなり、コードを間違える可能性が高くなる。更にもう一度、いくつかのRFCがIPv6アドレススコープやアドレス選択を明確にしようとしている。

拡張ヘッダの利用も同様に批判されている。拡張可能なプロトコルというコンセプトは、プロトコルが将来の進化に適用できる試みとして、魅力的に思えるが、かなりのコストが掛かる。複雑さが増し、コード判定を増やし、おそらく可変性も増加する。IPv6データグラムの拡張ヘッダには可変タイプ、様々なサイズ、可変順序、各タイプの発生数が可変で、様々なフィールドが付いてくる。プロトコルの実装はこのレベルのばらつきにどのように対処するつもりだろうか? ジョン・ポスタルがRFC761から、堅牢の原則「自分がすることには保守的であれ、他人から受け取るものには寛容であれ」が引用される。エリック・オールマンは2011年にこの原則の再考を公表した。彼は、「おそらく、あなたが作り出しもののの控えめに、あなたが受け入れたものを更に慎重にする方が長い目で見ると一層強固かもしれない。」と主張する。そして、「他の全てと同じように、堅牢性の原則は節度を持って適用されなければならない。」と結んでいる。拡張ヘッダはこの問題の中心である。IPv6の実装は、不明な拡張ヘッダを持つパケットを通過させるべきだろうか? あるいは、ヘッダ全体がコードによって明確に理解されないパケットを通過させない方がいいという原則に基づき落とすべきだろうか? 拡張ヘッダを持つIPv6パケットの野心的な取り組みは、IPv6パケットからパケットのフラグメント制御を取り除き、拡張ヘッダの中に入れた決定がなければ、複雑な問題ではなかっただろう!

IPv6は、ルータの役割も変えている。リモートネットワークへのゲートウェイというだけでなく、ネットワーク・プロビジョニング・アーキテクチャの本質的な部分になっている。最近は、色々な種類のローカルネットワークがあり、パブリックシステム上でローカルルータになることを意図したデバイスを単純に信用すべきではない。もちろん、これは賢明ではなく、ネットワークの中の不正な要素を特定し、我々を守るためにRA GUARDがある。しかし、RFC6890で指摘されているように、パケットの断片化とRAパケットの間の相互作用が、この領域を脆弱にし続けている。

エノが述べたより一般的な見解は、進化し続けるプロトコルはより古いプロトコルを実装するデプロイされたシステムの痕跡を残すということだ。IPv6ホストでローカルインタフェース識別子を生成する方法、近隣探索、外向きパケットのアドレス選択であろうとなかろうと、IPv6はその発展経路に沿って、異なる時点で異なる動きを指定している。その結果は、IPv6はIPv4よりもとても複雑で、この複雑さはプロトコルを実装するコードとIPv6をサポートする堅牢な商用ネットワークを運用するために必要なエネルギー量の双方に示されている。

IPv6アドレス指定

いくつかの点で、"過大な(too much)"は"不十分(not enough)"と同じように大きな課題に見える。プレフィックス長は議論が続いているように見え、IPv6プレフィックス割り当ての運用方法に関する作業についてのプレゼンでは、決してIPv6アドレス計画のベストプラクティスについて合意していないことが示されている。例えば、IETFは何年か前に、公衆インターネット以外で使用するローカルアドレス・プレフィックスのある種の形態が望ましいと判断し、ULAまたは固有ローカルアドレス・プレフィックスのコンセプトが設定された。これは、IPv4のプライベートアドレス空間に類似した方法で動作する自己割り当て可能なIPv6アドレス・プレフィックスのプールである。最近、この作業によると、このようなULAの使用は"強く推奨されていない"。ポイントツーポイントリンクはどうだろうか? IPv4では/30を使用して各エンドがアドレス指定ができる。そして、サブリンク・ブロードキャスト・アドレスの両端のアドレス指定を一度に行う。よくIPv6はブロードキャストアドレスが無いため、なぜそのようなリンクに/127を使わないのだろうか? 最近再び、そのようなリンクに/64の使用を推奨するよう変更されている。そして、消費予測に関する折々かなりの議論があるにも関わらず、現在の勧告は誰にでも/48を割り当てることになっている。それは私の携帯電話も含んでいると思う!

私はこれがIPv6の進化的性質のもう一つの姿だと思う。ここでは、時間の経過と共に、プロトコルの姿を変え続けている。ここで問題となるのは、以前の決定全ての蓄積された遺産を引きずっているということで、、そのようなルールを最初から課さなかったとしても、状況はもっと混乱していた可能性はある! IPv6ソフトウェアとハードウェアの実装者に提供できる最善のアドバイスは、プレフィックサイズについては絶対に何も仮定しないことだ。

64NATあるいは464XLAT?

IPv6移行環境で選択肢を提供したことは多分残念なことである。選択肢を提供した結果、必ずいくつかのデプロイが選択肢を作って、他の選択肢は異なる選択肢を作るのだ! IPv6のデプロイにモバイル分野進出した。多くの大規模ネットワーク・プロバイダは、IPv4アドレスが不足しているため、全てのモバイルサービス・プラットフォームでユニバーサルなデュアルスタック・サービスを提供できなくなってしまった。疑う余地のない答えは、ネットワークをIPv6ネットワークとして運用する必要があったが、接続されたデバイスにIPv4サービスを提供し続けることが課題だった。

一つのモデルは事実上トンネルされたNATであり、デバイスはローカルにアドレス指定されたIPv4環境を有するが、デバイスはIPv6にカプセル化してパケットをモバイル通信ネットワークに渡す仮想IPv4インタフェースを提供する。モバイルオペレータはこれらのパケットをデカプセル化CGNに渡し、ネイティブIPv4パケットはインターネットに渡される。デバイスは、従来のデュアルスタックホストであり、アプリケーションに変更を加える必要ないと考えている。Androidは464XLATをサポートする。

AppleのiOSはそうではない。DNS64を使用する。ここでは、デバイスはIPv6のみのサービスに接続されるためIPv6専用デバイスと考えられる。インターネットはIPv6だけをサポートしている将来の世界では素晴らしいだろうが、今はそうではない多くのサービスとユーザがいる。そのため、それをごまかす方法として、DNSを呼び出している。デバイスがIPv6アドレスを持たないサービス名を照会すると、アドレスにエンコードされたIPv4アドレスを持つオペレータの6to4プロトコル・トランスレーたを指すIPv6アドレスを生成する。デバイスがIPv6パケットをこのプロトコル・トランスレーたに送信する時、デバイスは本質的にIPv4へのヘッダ変換を実行し、NATスタイルの動作を使用して、グローバルIPv4アドレスを生成する。これは、net64checkのプレゼンが示すとおり、464XLATほど単純ではない。問題の大部分は、DNSに関する混在メッセージを送信していることだ。一方では、DNSはセキュリティとプライバシを必要としているというメッセージを送り出しており、これに対処するツールとソリューションを提供している。一方では、DNS64はDNSを信頼し、全てのクライアントのDNSクエリをオペレータのDNSリゾルバに渡すことに依存しており、プライバシに大きな影響を与える可能性がある。時には選択が最善の結果ではない。

6/05/2017

メイ首相、テロリストとの戦いのためインターネットの規制を求める

Slashdotより

CNNは「首都の中心に土曜の夜に展開された短くとも暴力的な攻撃で少なくとも7人が亡くなった。今年3度目のイギリスを襲った。」と報じた。匿名の読者が補足レポートを引用する:
テリーザ・メイ首相は、ロンドンでの破壊的なテロ攻撃の後、インターネットのより厳しい規制を求めた...。メイは、テロリストや過激主義者の支持者が攻撃のやり取りや計画に使われるデジタルツールを自由にさせない変更を含む過激主義者への対処のための新たなアプローチが必要だと語った。「我々はこのイデオロギーが安全な場所にこれ以上増殖することを許すことはできない。」メイは言った。「しかし、それはまさにインターネットや大企業がインターネット・ベースのサービス・プロバイダを提供しているものだ。我々は過激主義やテロ計画の広がりを防ぐためにサイバー空間を規制する国際協定に努力するため、同盟している民主主義の政府と協力する必要がある。」

Hacker NewsIndependentThe Verge

更新: BoingBoing「テリーザ・メイは暗号を禁止したいのだ: コストは掛かる上、それがどのみちうまくいかない理由はこうだ」、Slashdot