2019年はEnarxの年でした

2020年はデモなど色々なプランを考えています!

 

私にとって2019年はEnarxプロジェクトがほとんどでした。

他のしなければいけない業務もあって、例えば顧客会議、IBM(7月に私の勤めるRed Hatを買収してます)の業務、Kubernetesのセキュリティやパートナー企業と協業など重要なことは色々ありました。しかしEnarxが2019年のハイライトです。

 

年始に私たちは実現できることがあると確信し、内部のリーダーシップチームに対して、達成可能であることの証明を課されました。

その課題に対して、私たちはAMDのSEVチップと五月のボストンでのRed Hat Summitでデモを行い、このブログでアナウンスをしました。

IntelのSGXチップセットと10月のリヨンでのOpen Source Summitでフォローアップをしています。2019年のEnarxの開発でとても大切なことだったと考えています。

 

チーム

 

Enarxは私だけのものではもちろん、ありません。Nathaniel McCallumと共にプロジェクトの共同創立者の一人であることは非常に誇りです。ここまで達成できたのは多くのチームメンバーのおかげですし、オープンソースプロジェクトとして貢献し使用している皆様のおかげです。貢献者ページにはたくさんのメンバーの名前がありますが、まだ全員の名前が挙がっているわけではありません。また、Red Hat内外の何人かの方から頂いたプロジェクトに対するアドバイス、サポートとスポンサリングはとても大切なものです。その皆様の名前を言う許可は得ていないので、ここではお話しせず、丁重に扱う事とします。皆様のサポートとそのお時間を頂けたことに非常に感謝しています。

 

ユースケースとパートナー

 

2019年に成し得た重要なことの一つに、皆さんがどのように「野良状態で」Enarxを使いたいのかをまとめたことと、その比較的詳細な分析を行い、書き上げたことです。

その全てが公開されたわけではないですが、(私が任されていることなんですけどもね)これは実際にEnarxを使用したいと考えているパートナーを見つけるのに不可欠です。まだ公表できませんが、皆さんも聞いたことがあるグローバル企業のいくつかから、また将来的に増えるであろうスタートアップ企業からも、とても興味深いユースケースが挙がってきています。このように興味を持っていただくことは、ロジェクトの実用化に不可欠で、Enarxはただエンジニアの情熱から飛び出しただけのプロジェクトではないと言う事なのです。

 

外部を見ると

 

2019年の重大イベントはLinux FoundationのOpen Source SummitでのConfidential Computing Consortiumの発表でした。私たちRed HatではEnarxはこの新しいグループにぴったりだと考えており、10月の正式発足でプレミアメンバーになったことを嬉しく思っています。これを書いている2019年12月31日時点では、会員数は21、このコンソーシアムは幅広い業界で懸念と興味を惹きつけるものだと言うことがはっきりしてきました。Enarxの信念と目的が裏付けされていると言うことです。

 

2019年に成し遂げたのはコンソーシアムへの参加だけではありません。カンファレンスで講演を行い、このブログ上やNext.redhat.comまたOpensource.comで記事を発表、プレスとの会見、ウェブキャストなどです。一番大切なのは六角形のステッカーを作ったことでしょう!(欲しい方がいらっしゃったらご連絡ください)

 

最後に大切なことを一つ。私たちはプロジェクトを公表していきます。内製のプロジェクトからRed Hat外の参加を促進するために活動しています。詳細は12月17日のBlogをご覧ください。

 

アーキテクチャとコード

 

他に何かあるでしょうか。そうだ、コードですね。そしていくつかのコンポーネントの成熟しつつあるアーキテクチャセットです。

私たちは当然これら全てを外部に公表するつもりですが、まだできていない状態です。すべきことが本当にたくさんあるのです。私たちは皆さんが使用できるようにコードを公開することに尽力していて、2020年に向けデモやそれ以外の大きな計画を立てています。

 

最後に

 

他にも大切なことはもちろんあり、私がWileyから出版するトラスト(信頼性)に関連する本を書いていることです。これはEnarxに深く関連するものです。基本的に、技術はとても「クール」なものですが、Enarxプロジェクトは既存の需要に見合うものですから、Nathanielと私はクラウドやIoT、エッジ、その他機密情報とアルゴリズムが実装される全てのワークロードの管理方法を変えていくいい機会だと考えています。

 

このブログはセキュリティに関するものですが、トラスト(信頼性)と言うものはとても重要な部分だと考えています。Enarxはそれにぴったりと合うのです。ですから、これからも信頼性とEnarxに関するポストをしていきます。Enarx.ioの最新情報に注目していてください。

 

元の記事:https://aliceevebob.com/2019/12/31/2019-a-year-of-enarx/

2019年12月31日 Mike Bursell

 

タグ:セキュリティ、Enarx、オープンソース、クラウド

 

“Unhackability” or just poor journalism?

An over-extended analogy about seat belts and passwords.

I recently saw a tagline for a brief article in a very reputable British newspaper which was “Four easy steps to unhackability”. It did two things to me:

  1. it made me die a little inside;
  2. it made me really quite angry.

The latter could be partly related to the fact that it was a Friday evening and I felt that I deserved a beer, and the former to the amount of time I’d spent during the week mastering our new expenses system, but whatever. The problem is that there is no “unhackable”. Just as there is no “secure”.

This, I suppose, is really what made me die a little inside. If journalists are going to write these sorts of articles, then they should know better. And if they don’t, the editor shouldn’t let them write the article. And if they didn’t write the tagline, then whoever did should be contacted, shouted at, and forced to rewrite it. And provide an apology.  Preferably a public one.

The article was about good password practice, and though short, contained sensible advice. For a more complete (and, dare I say, wittier) guide, see my article The gift that keeps on giving: passwords.  I was happy about the advice, but far, far from happy about the title.  Let’s employ that most dangerous of techniques: an analogy.  If, say, someone wrote an article on motoring about how to use seat belts with the tagline “Four steps to uninjureability”, anyone who knew anything about cars would be up in arms, because it’s clear that seat belts, useful as they are, and injury-reducing as they are, do not protect you from all injury when driving, even if employed perfectly correctly.  This is what made me angry, because the password article seemed to suggest that good passwords would stop you being technologically injured (see: here’s why we don’t let people play with analogies).

Because, although most people might understand about seat belts, fewer people – many fewer people – have a good idea about computer security.  Even the people who do understand lots about computer security aren’t immune from being hacked, however well they pursue good practice (and, to reiterate, the advice in the article was good practice).  It’s the same with motoring – even people who use their seat belts assiduously, and drive within the speed limit, and follow all the rules of the road, aren’t immune from injury.  In fact, no: motoring is better, by at least one measure, which is that (in most cases at least), there aren’t a whole bunch of people whose main aim in life is to injure as many other motorists as they can.  As opposed to the world of technology, where there really is a goodly number of not-so-goodly people out there on the Internet whose main aim in life is to hack[1] other people’s computers and do bad things with their data and resources.

As my friend Cathy said, “it gives people a false sense of security”.

Some actual advice

Computer security is about several things, about which the following come immediately to mind:

  • layers: the more measures or layers of security that you have in place, the better your chances of not being hacked;
  • timeliness: I’m not sure how many times I’ve said this, but you need to keep your systems up-to-date.  This may seem like an unnecessary hassle, but the older your software is, the more likely that there are known vulnerabilities, and the more likely that a hacker will be able to compromise your system;
  • awareness: sometimes we just need to be aware that emails can be malicious, or that that phone-call purporting to be from your Internet Service Provider may in fact be from someone trying to do bad things to your computer[2];
  • reaction: if you realise something’s wrong, don’t keep doing it.  It’s usually best to step away from the keyboard and turn off the machine before more damage is done.

There: a set of pieces of advice, with no ridiculous claims about how well they’ll serve you.  I’ll save that for another, lazier article (or hopefully not).


1 – mean “crack”, but I’ve pretty much given up on trying to enforce this distinction now.  If you’re with me and feel sad about this, nod quietly to yourself and go to enjoy that beer I mentioned at the beginning of the article: you deserve it.

2 – don’t even start me on using random USB drives – I even had an anxiety dream about this last night.

オープンソースと悪人と

この記事は
https://aliceevebob.com/2019/07/30/open-source-and-well-bad-people/
を翻訳したものです。
オープンソースのコードを書いている人にとって、オープンソースソフトというものは誠実なものに見えます。
コードを書いて、皆さんのような善人な方がコードを書き足し、テストをし、文書を作成し、ソフトを使うのです。
オープンソースとは、世界をどんなに良くしてくれていることか!

「悪の帝国と呼ばれる組織や会社」ですら、オープンソースを受け入れ、幸福と愛情あふれる場所になり、コミュニティを支援し、オープンソースは良いものとして採用し布教しているのです。

多くのオープンソースライセンスは、1組織がコードを書き換え、その書き換えたコードをリリースすることなく利益を得ることほぼ不可能なようにできています。
オープンソースの魂はライセンスで、実際に世界を良くしているのです。

この大部分には賛成します。

が、世間で鵜呑みにされたような憶測(それが何であれ)が広まっているのを見ると、不思議に思います。
というのも、オープンソースを使っている全ての人が善人ではないというのは皆さんご存知でしょう。

クラッカー(悪事を行うハッカー)はオープンソースを使います。
薬物の販売人もオープンソースを使っています。
人身売買者もオープンソースを使います。
テロリストだって使っているでしょう。
彼らももしかしたらパッチやテスト、文書作成に貢献しているかもしれません。実際はほとんどないと思いますが。でも一般的に彼らは善人ではないのです。

中には「まあ、中には少しはそういう人もいるかもしれないけど、耐えられる範囲だろう」と肩をすくめてしまうような人もいるでしょう。オープンソースで悪事を働く人に比べたらもっと多くの人がオープンソースによって助かっているでしょうから、引き続き喜んで貢献するでしょうね。
あるいは、オープンソースに貢献するのではなく、どうせ人のためにならないのだから、悪人度合いが低い方を受け入れてしまう、というところでしょうか。

これは実際に有効なことで、 ジョン・スチュアート・ミルの言う功利主義として知られています。(私は哲学者ではないので、非常にざっくりと話していることを了承ください)これはこう説明されることもあります。

「行動は、人類の幸福全体を促進するのにちょうど良く釣り合う」

私もオープンソースが「人類の幸福全体を促進」すればいいと願っています。問題は犯罪者だけが皆さんのオープンソースコードを使うわけではないことです。

実際に「日陰なコト」を行うビジネスもありますし、政府が批判する人間を抑圧することも、警察が市民を監視することもあるでしょう。
これも皆さんコードなのであり、悪事にも使われるのです。

悪事とはなんでしょう。
これは功利主義の哲学に対する反論でよく出ますね。何が良いことで何が悪いことなのかと定義するのは難しいのです。
法を遵守している我々一般の人は、人身売買をするのは悪いことだ、と思います。しかし、中にはグレーゾーンなものもあるのです。

例えばタバコ製造、石油化学の会社、プラスチックの製造業、LGBTQ+の人々を支持しない組織、銃の製造業などです。
意図的に範囲を大きくしています。また、最後の例はあえて選んでいます。

オープンソースの活動を初期に行なっていたのはESRで知られるエリック・レイモンドです。彼は銃を持つ権利をずっと支持しています。彼は公にされている批判をハッカーコミュニティに取り入れ、小銃保持の権利を声に出して支持しています。ESRにとってはこれが「自由」なのです。

彼を批判するつもりはないですが、これは賛成できません。
ただこれで彼が良いと考えているものは私が考えているものと違うことは明確でしょう。
LGBTQ+に関してはとてもリベラルに受け入れていますが、オープンソースのコミュニティにいる人がみんな同じ考えを持っているわけではないでしょう。
オープンソースコミュニティをリベラルだと述べていますが一般論として受け入れられていません。

ハッカーのための辞書として公表されているのですが、平均的なハッカーとは

ふんわりと穏健リベラル。従来の右派左派の政治全体を拒絶するリベラリストの代表を除く。
保守的に一般化して言うとハッカーはどちらかと言うと反独裁主義者。
つまり従来の保守主義と「極」左派は非常に珍しい。ハッカーは非ハッカーよりも大体
a)攻撃的な非政治主義で
b)特異的もしくは特異な政治アイデアを抱き実際日々そう生きようとしている

ジャーゴン・ファイル
少し古いかもしれませんが、この説明は多くのオープンソースコミュニティ内で、コミュニティの一部として意識している人たちが共感するものです。

ただオープンソースのコードの「良い使い方」は「良い組織」が決める、と言うのは、コミュニティとして明らかに賛成できかねます。
もしできたとしても、悪人とされる人々を止められるようなライセンスを作るのは非常に可能性が低いでしょう。
元の記事:
https://aliceevebob.com/2019/07/30/open-source-and-well-bad-people/
2019年7月30日 Mike Bursell

信頼と、オープンソースを選ぶということ

この記事は
https://aliceevebob.com/2019/06/18/trust-choosing-open-source/
を翻訳したものです。
ずっと昔、遠い遠いところで(よくある表現でしょ)、私はトラストとセキュリティという標準化文書の下書きに関わっていました。(標準化に関わっていたことがなければ恐怖に感じるでしょうけれど、関わったことがあれば普通のことですよ)
この文書は ETSI GS NFV-SEC 003: Network Functions Virtualisation (NFV);NFV Security; Security and Trust Guidanceと呼ばれ、セクション5.1.6.3は「推移的トラスト」についてでした。
複雑で長い文書で、とても自信を持ってできた仕事です。
(私は調査員の一人で、また文書のほとんど特にトラストのセクションを記述しました。)この文書は題名からもわかる通りトラスト周りの重要な問題に対応しているものです。

この中でこう定義されています。

「推移的トラストは、CがBを信用しているので、AはBというものを信頼する」

その文書のどこにもオープンソースソフトのことは書いてありません。
公平を期すために、どのソフトやベンダーにも偏らないように記述してあります。標準化に関わる多くの企業はベンダー仕様のソフトに注目しがちです。さらにいうと私は当時Red Hatに勤めていませんでした。

Red Hatに転職し、基本的に標準化の世界から遠ざかることになるのですが、オープンソースについては考えるようになりました。
また、トラストに関してももっと深く考えるようになりました。ビジネス、組織や企業でオープンソースをどうやって使うようになるのか、と。

オープンソースが「それ自体は」他のベンダーソフトと比べて特に安全ではないにしても、どうしてオープンソースがさらに安全性を高めることができるだろうか、と別の記事にも書いています。

どうしてこのことが信頼、特に推移的トラストに関わるのでしょう。
オープンソースとトラストがどうリンクするかについて私はずっと考えていました。大部分が拡散したトラストについてです。
拡散したトラストとブロックチェーンは同じように扱われることが多いです。喜ばしいことです。信頼とはブロックチェーンに確実に関係しているという事実を無視しがちな罠に陥いることが多いからです。暗に言われているだけでちゃんと定義していないからです。

ただし、ここで私が興味を持っているのは、オープンソースソフトを使用するかどうかを選択する方法としての分散した推移的な信頼(トラスト)です。
これは、オープンソースのセキュリティなどの非機能的な詳細についてだけに言えることではなく、ソフト自体の場合についてもです。

「オープンソースソフトを信頼しています」とは、どういうことでしょう?
それは、コードを書きテストをした十分な数の人間が私と同じような要件を提示している。ソフトを使用することのリスクを受け入れることができるだけ十分な経験がその人間にはある。そう私たちが決断しているということと同じなのです。

以下にさらに興味深いことを挙げます。

・ユースケースと要件に合ったデザインがされていると、アーキテクトと設計者を信頼している、ということ
・その設計に合ったようにコードが書かれていると開発者を信頼している、ということ
・お互いのコードのレビューがされていると開発者を信頼している、ということ
・ソフトが正しく文書化されていると、文書化チームを信頼している、ということ
・ユースケースに合ったテストが書かれ、行われ、チェックがされているとテスターを信頼している、ということ
・ユースケースに合った方法でデプロイしているとコードをデプロイした人を信頼している、ということ
・バグレポートをしているとコードをデプロイした人を信頼している、ということ
・バグレーポートを受け取った人がちゃんと修正していると信頼している、ということ

もちろんもっと色々なケースはあるでしょうが、話を進めるには十分でしょう。
ベンダー仕様のソフトを選択すれば信頼関係はもっと明確で絆が強いものでしょう。もし期待した品質のものでなければ別のベンダーに移行するか期待した仕様になるよう元のベンダーに作業するよう言うからです。

オープンソースソフトの場合はもっと漠然としています。
デザイナーやソフトウェアエンジニア、テスターなどの関与した人を見つけることは少なくともできるでしょう。でもその人たちに与える影響力はずっと小さいでしょうね。
おかしなパラドクスがあるのですが、ベンダーソフトには主張できてソフトウェアの方向性に対する影響力は比較的大きいです。(お金がかかってくるので)
ところが、オープンソフトに比べると欲しいものを得る事ができると確信したり、実際何が開発で起こっているかはっきりと見えません。

これはオープンソースだと、「私自身」が上にあげたどの項目にも参加する事ができるからです。
私、もしくは私の所属する組織は、アーキテクトにも設計者にも、文書作成やテスター、もちろんデプロイしたりバグ報告したり、どの役割にもなれるからです。
もしオープンソースへの影響は他の人と同等であれば、分散された信頼は推移する事が少なくなります。

作成、メンテナンス、要件やソフトウェア品質に対してみんな平等で、分散された信頼関係ネットワークの一部になります。
ベンダー仕様のソフトを買った場合に経験するような排除感は減るのです。

では、何故ベンダーからオープンソースソフトウェアを買ったりライセンスを得たりするのでしょう。
それは、そうすることで、上記に挙げた分散された信頼のネットワークの利点を得つつ、サポート、パッチ、トレーニングなど他のリスクを訴えることができるからです。

ソースから直接コードを得ることもできるでしょう。しかしこれはソフトを使用する人たちがそのリスクを選んだということではありません。またこれはオープンソースコミュニティに参加している人たちも例外ではありません。

信頼とは、とても複雑なものです。そして他のものや人を信頼するのも複雑です。別のブログでも少し書きましたが。
ただ私は決定したことに関して、どうして決定したのかと考え理解することは非常に大切なことだと思います。それはリスク周りの情報に基づいた選択をするのに必要だからです。
元の記事 https://aliceevebob.com/2019/06/18/trust-choosing-open-source/
2019年6月18日 Mike Bursell