兵庫県警に捕まるためのショートカットキー入門

#兵庫県警に捕まるためのショートカットキー入門
我々は警察に捕まるために何ができるのか？
これは非常に難しい問題である。なぜなら筆者は捕まったことがないのである。
それゆえに、すでに逮捕及び補導されている人物の行動をサンプルとして、いくつかの方法を検討する必要がある。

ここ数年で参考となる事例は以下の通りである。

- Coinhiveによるマイニング
- "JavaScriptでアラートの無限ループ"へのリンクを貼った13歳の女子中学生

逆に、捕まらないパターンは以下の通りである。

- 漫画村
- 正攻法な不正アクセス

ここでは捕まるための議論を行うため、捕まらないパターンは除外する。
では、話へ移る。 *ちなみにこれらはすべてジョークである。*

##プロバイダー
最初に、疑問がひとつある。

**Coinhiveの一件や、13歳の女子中学生は、なぜ捕まることができたのか。**
（厳密には山口県の39歳男性や鹿児島県の47歳男性も家宅捜索を受けているが、罪が確定していないので対象外とする）

これはプロバイダーへの問い合わせによる利用履歴の確認が大きいと思われる。
そのことから、捕まるためには、警察から問い合わせを行えるプロバイダーを利用している必要がある。

そこから推察するに、捕まるためには海外のプロバイダーを使ってはいけないことになる。
なぜか。

**警察組織は、日本語以外で自発的に問い合わせることが困難だからである。**

英語でも、やはり厳しいだろう。よって国内プロバイダーを利用することは必須である。


国内プロバイダーの他には何が必要だろうか。
パソコン利用者が不快に感じること
これは要件としてかなり重要である。
だが、それだけでいいのだろうか？

それだけでは足りないはずだ。

ここはジャパン。お気持ちの国である。

**お気持ちについて考える必要があるのだ。**

##Coinhiveによるマイニング
非常に曖昧な一件がCoinhiveによるマイニングである。
これ、やっていることは昔流行ったウイルスソフトなどにとてもよく似ているのである。

だが、それはあくまで印象の話である。

ソフトウェアの世界では、包丁どころかマシンガンや大砲まで流通しているようなものなのだ。
そして、**それらをどう使うかは人による**のである。

攻撃ツールは、脆弱性チェック（ペネトレーションテスト）に応用される。
裏で勝手に計算するCoinhiveは、ユニセフ・オーストラリアがやっているThe Hopepageと原理的に同じものである。
（参考：https://www.thehopepage.org/ ）

まっとうなプログラムであっても、その動作が不利益になる場合もある。
セキュリティソフトの起こしてきた様々な過剰検知や過剰動作、または大手企業によるWEBサービスがノーガード戦法で個人情報流出など、枚挙に暇がない。

ではなぜCoinhiveでは逮捕されたのか？
一方で、計算資源を使って動的な表示をするWEB広告はなぜ許されるのか？

これこそ**お気持ち**の問題であると思われる。

では、何がお気持ちの琴線に触れたのだろうか。広告が見逃されるのはなぜなのか。
筆者が注目するのは「**知っているか**」である。

広告を知らない人はまずいないだろう。しかし、マイニングであればどうであろうか。
WEB広告の見た目の挙動は簡単である。広告が出ていて、選択するとどこかに飛ばされるのだ。
しかしマイニングの見た目の挙動はどうだろうか。

**なんと、見えないのである。**

警察は一般的な人のお気持ちを汲んだのだ。
逆に言えば、Coinhiveは
「今マイニングをしていて、このくらい協力してもらっています。安全です。こんな感じです。グラフぐいーん」
と表示していれば捕まらなかっただろう。（妄想）
知らないものに対して、人は恐れるのだ。

つまり、**知らないものを提示できれば、捕まることができる**と言える。

##"JavaScriptでアラートの無限ループ"へのリンクを貼った13歳の女子中学生
では"JavaScriptでアラートの無限ループ"へのリンクを貼った13歳の女子中学生はどうだろうか。

無限ループへのリンクの件であるが、おそらく、このタイプである。
（100個ほどツッコミどころがあるが、例示用なのでご勘弁願いたい）

```HTML:thukamaru.html
<html>
  <head><title>無限ループ</title></head>
  <body>
    <script type="text/javascript">
    <!--
      for (; ;){ alert("絶対に何度でも出てくるよ！") };
    //-->
    </script>
  </body>
</html>
```

これはアラートが表示され、ボタンを押すと、次のアラートが再び表示されるものである。
終了判定が行われるまで続くが、終了条件が満たされないため無限に続く。
まともなブラウザであれば、ブラウザ側で無限ループを感知して対応してくれる。

しかし、**知らない人にとっては困る**のだろう。
ここでも、**知らない**がキーワードである。

こちらは、Coinhiveと比べるとずいぶんとショボい。なぜなら計算資源も食い荒らさないし、目の前のブラウザのアラートがすべてだ。
ではなぜ"JavaScriptでアラートの無限ループ"へのリンクを貼った13歳の女子中学生は補導されたのであろうか。

実際にアラートを見た人が**妨害されている**と感じるだと思われる。
なぜそう感じるのか。
知らないことはCoinhiveと同じ要因だが、こちらは見た目で分かるために以下の追加要因が考えられる。

- 操作を阻害されている
- 作業を妨害されている

この見た目の挙動ゆえに、意図しない挙動、不正な指令と判断されたのではないか。
ともかく、最終的に警察は動いたのである。

ああ！　こんな子供じみた単純なジョークで捕まるなんて！

だから。
だから。

我々は、**その上を行きたい。**
例えば、**ショートカットキーで**。


##キーボードショートカットでいかにして捕まるか
ここが論点である。
我々はいかにしてキーボードのショートカットキーで捕まることができるのであろうか。

これまでの流れで、操作を阻害することや、意図しない動きと感じられるもの、そして見た目が大げさであることが大事であることが予想される。
そのため、キーボードショートカットで優先順位の高いものはいくつかに限られる。

- 見た目の挙動が大きい
- ハイやイイエなどの選択肢が出る
- 作業の阻害度が高い

よって、今回は以下のショートカットキーを用意した。
（ハードウェアによってかなり差があるため、人によって使えるもの、使えないものがある）
（注：FnキーはノートPC向けで、ファンクションキーを利用したショートカットキーはメーカーへの依存度が高い）

- Windowsロゴキー  + L
- Windowsロゴキー ＋ 正符号 (+)
- Shiftキーを連打
- Ctrl ＋ Alt ＋ ←
- Ctrl ＋ P
- Fn ＋ F8 を押してからセカンドスクリーンのみを選択
- Fn を押しながら F11　を連打
- Fn ＋ PrtScr

これらについて掲示板や質問サイト、SNSなどで便利な機能として紹介することで、警察に捕まることができるだろう。

**例1）「パソコンの動作が重いときは、キーボードのCtrlキーを押しながらPキーを押すといい」**
**例2）「Windowsロゴキーを押しながら、プラス記号キーを押すと、機能が追加される」**

いかがだろうか。アラートの表示で困る人にとって、上記の内容は **怒り狂う**はずだ。
読者の方々がショートカットキーを書き込むことで捕まる日を、筆者は心待ちにしている。


###補足
今回示したショートカットキーはそれぞれ以下のとおりである。
OSの標準ショートカットキー以外はハードウェアに依存する。

- 画面ロック
- 拡大鏡
- 固定キー設定
- ディスプレイ方向変更
- 印刷
- ディスプレイ出力の切り替え
- ディスプレイの明るさを暗くする
- 無線LANのオンオフ