めろたんのアレ

色々書いてくやつ

Coinhiveのアレについて思うこと

注意

このブログをご覧になると、閲覧者様の端末のCPUやメモリ等のリソースを使います。
高負荷がかかる可能性は基本的には無いかと思いますが、ご利用なさっている端末のスペックによっては、一時的に端末が重くなったりする可能性があります。
また閲覧者様によっては意図していない挙動をする可能性があります。
ご了承頂ますようよろしくおねがいします。


うぇい

皆さんにリソースを使うことを明記したので、この記事が原因で検挙されることは無いでしょう!

先日例のCoinhiveの事件で思うところが多々あったので、仕事終わってから爆睡してて起きてから眠気眼で point-hive っていうのを作ったものです。

反響がすごくてビビったりしてましたが、PRとかISSUEとか来て面白かったです。

github.com

さて、そもそもこれを作ろうと思った理由なんですが、高木浩光氏のブログに思考実験について書かれていたので、まぁそんなむずくもなければ考えるところもなにもないのでやっとくか。と思ったところからでした。

高木浩光@自宅の日記 - 懸念されていた濫用がついに始まった刑法19章の2「不正指令電磁的記録に関する罪」

「自分のパソコンのCPUを勝手に使われる」ことと「マイニングさせられる」こととが連なって初めて不正なものとなるのであろうか。それぞれ単独では不正でないのに? ここで考えてみたいのは、以下のツイートをする人がいたように、マイニングせず、ただ空転するだけの無限ループを設置したWebサイトの公開は犯罪なのかという思考実験である。

無限ループで無用にCPU負荷を食ってしまうWebサイトは、バグとして従前からあり得たであろう。それを放置していたからといって犯罪になるとは、これまでのインターネット史の中で誰も言っていなかった。仮に今から故意にそのようなサイトを作って公開したら、警察は摘発するつもりなのだろうか。さすがにどんな田舎警察でもそんなことはしないだろう。

これですね。

これにそそのかされて作った!僕に責任は無い!!!って言いたいわけじゃないのであしからず。

で、公開したら前述したとおり意外と反響がすごく、記事でとりあげられていたりしてびっくりしました。

gigazine.net

internet.watch.impress.co.jp

とまぁいろいろ取り上げられていたので、思っていることをガーッと書こうかなーと思い書いています。

Coinhiveの何が"ダメ"なのか?

今回問題になっているCoinhiveですが、なぜ"ダメ"なのでしょうか。

警察庁Twitterで投稿していたのでそれを見てみてみます。

*1

詳細な情報をみるためリンクへ行く

仮想通貨を採掘するツール(マイニングツール)に関する注意喚起

マイニングツールは、パソコンの処理能力を活用し、仮想通貨を得るためのツールです。同ツールが設置されたウェブサイトにアクセスした場合、ウェブサイト運営者が仮想通貨を得るために閲覧者のパソコンの処理能力が利用されることがあります。

そうですね。

マイニングツールを設置することを検討しているウェブサイトの運営者 自身が運営するウェブサイトに設置する場合であっても、マイニングツールを設置していることを閲覧者に対して明示せずにマイニングツールを設置した場合、犯罪になる可能性があります。

なぜ?何罪?どういう罪なんでしょうか?

インターネット利用者 マイニングツールが設置されたウェブサイトにアクセスすることで、パソコンの処理能力が意図せずに使用され、パソコンの動作が遅くなるなどの事象が発生する可能性があります。意図しない状況で急激にCPUの利用率が高くなるなどの事象が発生した場合には、ブラウザを閉じることで事象が収まるときがあります。

意図とはなにか。誰の意図なのか主語がわからない。主語が『利用者』であれば、メインコンテンツ以外に処理能力が使われるのは意図していないのでは?*2
大半のWebサイトはもちろんのこと、この世のアプリケーションの大半は意図していない処理が発生することになるのではないだろうか?
広告はもちろんのこと、例えばPCの起動時に「ようこそ!」とか表示するのなんてなにに処理能力使ってんだよ!起動に全力を尽くせバカ!となるのでは?

とまあ結局なぜ"ダメ"なのかよくわからない。

ここから読み取れるのは「利用者の意図していないところでPC・スマホ等の処理能力を使うと犯罪になる可能性がある。」ということかなと僕はそう読み取った。

いや無理でしょwww

利用者がどういう意図でWebサイトにアクセスしてくるかなんてわかるわけ無いやんw

利用者「そんなアニメーションいらないし、勝手に処理能力つかわれた。警察〜〜〜。検挙してくれ〜〜〜〜⤴」
ってきたら対応すんの?しないよね?

とまあよくわからんのですわ。でもあのページを見るにそういうことしか読み取れないし、それでも結局罪名とかはわからないし…。

ということで例の神奈川県警に問い合わせたのだが、今の段階(2018年06月16日19時)ではまだ返事が来ていない。多分色んな所から問い合わせがきて大変なんだろう。

結果何がダメかわからん。

つまり僕は何もできないのでは?

警察庁に書いてあるものをそのまま受け取ると、「マイニングツール等処理能力を使用することを明示しなければダメ」という感じっぽい。

で、Webサイトはアクセスしたときから処理能力などなどを使うわけです。明示もクソもないし、同意の余地もクソもないんですよ。

クッションページ(処理能力を使うと明示、同意をさせるだけのページ)とかを用意しても、そのクッションページは意図していないので意図していないところで処理能力を使われたとなれば終わりなわけですね。
つまりWeb全般は犯罪の可能性があるということになるわけですねぇ。*3

とまあ僕のようなWeb系のエンジニアはなにも開発できない国*4になってきたなぁという感じがして正直めっちゃ困惑している。

反対というか声をあげている人たちも同じようなことを考えているのだろうと勝手におもっている。

同意云々が問題なのか?

先のpoint-hiveを取り上げてくれた記事のブコメとかに、「同意が無いことが問題なんですよ〜」と書いている人がいたが、本当にそうなのだろうか?

その記事を読むために裏で動いている各処理について同意はしたのか?
何をクリックしたかとか、どれだけそのページに滞在しているのか等をプログラムで収集していることだって全然珍しくない。それについて同意はしたのか?
広告を表示することにも同意したか??その広告を表示するのにも処理能力をつかうぞ??
そもそもその記事を読みたいだけであって他のメニューバーとか、意味のないそれっぽいフリー画像とか、その他諸々を表示・ダウンロードすることにも処理能力を使っているが全部同意してるか????

現状同意もなにもしていないはずなのに、問題視されていない「処理能力の使用」と今回の問題視された「処理能力の使用」にはなんの違いもないはず。*5

なぜCoinhiveだけ問題になる?

まとめ

Coinhiveを擁護したいわけではなく、何が違法なのかをちゃんと明示してほしいだけなのだ。

でないと僕が今後開発するものは逐一同意を取るためのプログラムを書き続けなければいけなくなる。*6

それどころか、一番最初にも書いたが、ブログですら表示するのに処理能力を使うのでそれも書かないといけないし、ツイートだってそうだし、RTやLikeしたときですら相手の端末に通知を行うことで処理能力を使うわけだ。
全部同意させないといけないのか????
それはおかしいよね。と普通なら思うと思うけど、そことCoinhiveのようなスクリプトとの違いは?
重くなるからギルティ*7なら検挙された人の中には重くならないように調整をかけていた人もいたが、それすら検挙されているけどなぜ?
他人の端末の処理能力をつかって利益を得るからギルティなら広告はなんでダメじゃないの?
重いし利益を得るからギルティってなら動画広告も爆死だし、なんかゲームができる広告とかも重くなったりするけどそれはダメじゃないの?

え?なんなの?

というわけで、僕は怒っているんですよ〜という話でした。

*1:このツイートだけ異様に反応が多くて面白いなーと思いました。

*2:というよりそもそも利用者は常に何に処理能力が使われるか気にしているものなの?僕はそんなに気にしてないけど。気にしているのなら、その割には詳しくない人多すぎない?

*3:まあ極論だし、飛躍しすぎってのもわかるが、意図しているかどうかとか同意があるかどうかとかで話されてもそうなるわ。としか。

*4:最初は"なにも開発できない世界"にしていたが日本以外はとくに大丈夫だろと思い"国"にした

*5:そりゃ計算する量が違うとかはあるが、両方共処理能力を使うことには変わりない

*6:その同意を取るプログラムを実行するための、同意をとるプログラムを実行するための、同意をとるための(以下無限ループ

*7:そもそも重くなるかどうかって端末によって違くないですか?うんこみたいなPC使ってたら楽天とかみたら爆発して死ぬんじゃない?