Skip to content
ブラウザ拡張機能でEpisoPassを使う
CoffeeScript JavaScript Makefile
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
icons
Makefile
README.md
app.coffee
app.js
crypt.coffee
crypt.js
episopass.coffee
episopass.crx
episopass.js
episopass.png
episopass.xpi
episopassextension-0.0.5-fx.xpi
exports.js
jquery-2.1.4.min.js
manifest.json
md5.js

README.md

ブラウザ拡張機能でEpisoPassを使う

EpisoPass

  • ChromeやFirefoxの拡張機能を使ってEpisoPassがログイン画面で動くようにしたもの
  • FacebookやAmazonのログイン画面でメールアドレスを入力してから パスワード入力枠をクリックすると上のようにEpisoPass問題が表示され、すべてに回答するとパスワードが計算されて入力される
  • たとえばAmazonアカウントのメールアドレスとしてmasui@pitecan.comを使用する場合はhttp://EpisoPass.com/Amazon_masui@pitecan.comに問題を用意しておき、正答を選択したとき生成されるパスワードをAmazon.comに登録しておく
  • Amazonのログイン画面上ですべての回答に正しく回答すると 登録したパスワードが生成されてログインに成功する

対応サービス

以下のサービスに対応しています。

ダウンロード / インストール

という状況なのでChromeに自力インストールするしか仕方ないかも 2017/10/03 17:54:55

実装

  • EpisoPass.com/(ID).json からなぞなぞ問題のJSONデータを取得し、それをもとにして問題をユーザに提示し、回答からパスワード生成する
  • 問題の編集はEpisoPass.com/(ID)で行なう
  • e.g. http://EpisoPass.com/Amazon_masui@pitecan.com

注意点

  • FirefoxとChromeで同じJSが使えるのだが制限が微妙に違う
  • Firefoxではhttp://EpisoPass.comからgetJSON()できるのだがChromeではできない
  • Chromeでは、https://EpisoPass.comからXMLHttpRequest()しなければ動かない
  • このためにEpisoPass.comをhttps化しなければならなかった...
  • EpisoPass.com側はCORS対応しておく必要があった

拡張機能パッケージの生成

  • make xpi でFirefoxの拡張機能ファイルができる
    • ユーザIDとか秘密文字列とかを環境変数にセットが必要
  • Chromeの拡張機能ファイルはchrome://extensions/で「拡張機能のパッケージ化」を指定して人力で作成する

公開

問題 / 感想

  • AmazonとFacebookでしか使えません
  • サービスごとに異なるIDで登録が必要
  • 全くパスワードを見ることも打つこともなくパスワード利用システムにログインできるのは便利
  • こういうシステムは昔はGreasemonkeyで作ってたが、拡張機能で作る方がよさげである
  • スワイプ対応はできてない
You can’t perform that action at this time.