島までは遠い

佐藤正志@サークルアラウンドのことが少しわかる場所。プログラマーを育てるトレーナーとして、現役のソフトウェア技術者として、経営者の端くれとして、想うことをつづる予定。しばらくは工事中。

ITにおける警察と私たちの判断の乖離について

f:id:ms2sato:20190307162305j:plain

はじめに

最近の世間の動きを見ていると、下記のCoinhiveの利用者の逮捕や

tech.nikkeibp.co.jp

nlab.itmedia.co.jp

簡単ないたずらスクリプトのURLを掲示板に貼り付けただけでの補導、家宅捜索などが話題になっています。

japan.zdnet.com

私は法律の専門家では無いですが*1、一ソフトウェア技術者として行き過ぎた判断が行われていないかを危惧しています。

また、この問題を今の私がどのように受け止めて理解しているかを記しておくことは、この先自分自身が振り返った時に大事なポイントになりそうな気もしています。

私の考える3つの課題

A. 被害程度への理解についての課題

これは警察の担当者(令状を出す裁判所も?)が問題の程度を適切に判断していないと推察される為の課題です。

  1. (ブラウザの外で動作する)実行ファイルによるワームで個人情報を抜き出したり、ディスクの内容を破壊したりするような行為
  2. (一定の範囲でユーザーが守られているブラウザ内で動作する)JavaScriptでCPUパワーを利用する行為
  3. (一定の範囲でユーザーが守られているブラウザ内で動作する)JavaScriptで、ポップアップを連続で出す行為

1が最も甚大な被害(破壊行動、個人情報流出を引き起こす犯罪行為)で、3が最も軽微な被害(子供のいたずらレベルと呼んでいい)であると私たちソフトウェア技術者は認識すると思います。どうもこれらの差を適切に認識されていない節があります。1ならまだしも「3で補導される」「3で家宅捜索される」のはどう見ても行き過ぎであると私は考えています。

ここで2に言及しなかったのは次の「犯罪予見性についての課題」に関係するからです。

B. 犯罪予見性についての課題

「過失」という言葉と関係すると思うので、まずそれについて確認させてください。

過失という言葉を噛み砕いて表現すると「違法な結果を予見することができたにもかかわらず、対応を怠った」で良いと思います。

つまり、違法かどうかの判断が行えなければ過失は存在しないはずです。まだ何の判例もない内容について違法性を洞察することが難しいものは無数に存在すると思われます。このような難しいものについて「行為者に犯罪予見性があったに違いない」という判断が行われている節があります。Coinhiveは特にこの傾向が強いのですが、長くなりそうなので付録の方へ譲ります。

程度の差がありますが、以下2点は同じようなことを言っています。ポイントは「犯罪予見性の認識」の有無です。

  • 「一般のソフトウェア技術者でも判断が割れるものについて『犯罪である』との判断が事前に下されており、行為者が認識していた」というような前提で行動していると推察される事
  • 「一般人(ソフトウェア技術者に限らず)が特に犯罪視しないものについて『犯罪である』と行為者が認識していた」との判断が事前に下されている様子に見えること

今回訴訟にまで発展しましたが、有罪の判決が出てはじめて「犯罪である」との正しい認識が発生するはずです。時間軸が噛み合っていない事がわかると思います。

C. 逮捕までのプロセスにおける課題

この課題はこれまでのA、Bどちらかが適切であればおそらく発生しないです。しかしA、Bが適切でない方向へ判断された為「突然の家宅捜索」という形で現れてしまったと考えています。「(よくわからんがこれは重大な)犯罪行為だ!しょっ引け」という事ではないかと推察しています。

このプロセスはあまりに盲目的過ぎると思われます。ソフトウェア技術にある程度詳しい人間であれば、A、Bのような推察は容易にできるはずで「これはまだ強行して進められるレベルのものではない」と発信する事ができたはずです。そういった抑制の仕組みが逮捕までのプロセスに存在しないのは大きな課題だと私は考えています。

私が社会へ願う事

  • 国家権力を持っている側に、現在のソフトウェア技術に関して適切に判断できる素地を持っていただきたいです。
  • 逮捕までに「より適切に判断できる専門家の見解を求める段階を設ける」など誤った方向へ進んでしまわない抑制力を持っていただき、無闇に逮捕しないでいただきたいです。
  • 誤認と認められた際に、行為者とされた方が失った名誉や仕事上の不利益を回復する仕組みを作っていただきたいです。

[長い付録] Coinhiveの違法性の難しさ

Coinhiveがマルウェアであるのか?

おそらく以下の記事などが実情を知るのに良さそうなのでリンク入れておきます。

www.itmedia.co.jp

今回の内容が広がった際にIT技術者の中に様々な見解があったという背景を示しています。海外でのアンケートを抜粋します。

上記のスレッドを追うと、とても興味深い発言を追うことができます。ポイントをいくつか拾って要約しました。論点としていくつもの切り口があると理解できると思います。

  • ユーザーの同意の取り方によって違う
  • 広告とどちらにするか選べる方が良い
  • CPUパワーの利用程度によって見解が異なる
  • マルウェアではあるが、好ましい
  • モバイルでないなら許せるが、モバイルでは動かしたくない

マルウェアとの差異

マルウェアとは|マルウェアの脅威とその対策

マルウェアについて改めて調べてみると、Coinhiveはウィルスやワームの一種であると判断された可能性があります。感染もせず、自己拡散もしないけれども(WEBサイトを閲覧中に背後で動き、閉じれば消えて無くなるため、どちらも行えない)、 CPUリソースを借用する という点です。また、他のマルウェアのように情報の盗み出しを行うものではない為です。

「ユーザの意図に反する、有害な作用を及ぼす」とはどういったことなのか

がやはり焦点になるのでしょう。

広告との差異

そもそもの経緯から考えるとCoinhiveは以下のような課題を解消すると目されていました。広告同様に売上を発生させながら、広告に比べてより優れたユーザー体験を提示できる可能性があるのです。

  1. 現在のWEBサイトは多数の広告に支えらえてビジネスが行われている事が多いです。
  2. 1のため、ユーザーに対して以下のような問題が発生しています。
    • 見たくない広告を見せられる心理的負担
    • (見たくない動画などによって)リソースが利用されるという浪費
  3. Coinhiveを理想的に利用する事ができれば、ユーザーから心理的負担を取り除き、以下の1点だけを受容してもらう事でビジネスが行える可能性がありました。
    • リソースが利用されるという浪費

残念ながらCoinhiveはサービスを終了してしまいましたが「今後同様のサービスが出る可能性についてどのように対応すれば良いのか」という岐路に私たちがいるような気がしてなりません。ひいては「私たちの社会がまだ見ぬ新しい技術についてどのように適応していくべきか」という課題も提示していると思います。

私が想像する事

今後も広告の代わりになる何かを発明した際、きっとCPUやメモリなどのリソースを利用して何かをする事が引き換えに必要になると推察されます。その利用程度をガイドラインとして定めるなどすると、世界が平和になる可能性があります。

例えばブラウザが抑止能力を持ち、広告代替に対しては行き過ぎたリソース消費を抑えるような仕組みが検討できると良いのかもしれません。

海外でも話題に

JavaScriptの作者さんにまで現状が届いていて「日本に来て、専門家として話をするかもしれない」とまで言ってくださっています。

www.itmedia.co.jp

おしまいに

「権力を持っている側は、その力が適切に行使されているか自身を監視する能力も持つべきではないか」と強く感じました。私としては今の見解をここに残す事ができて満足しています。少なくとも10年後、20年後社会がどのように変わったのかの差分をこの件との比較で行えると思うのです。

同時に「私にできることは何だろうか」と引き続き考えてみようと思う次第です。

*1:間違ったこと書いてたらそっと教えてください