Flashエミュレータ「Ruffle」についての疑問に勝手に答える記事

Adobe Flash Playerの代替として注目されるRuffleについて、Twitterはてブで見かけたいろいろな疑問に勝手に答える記事です。

Ruffleが何なのかについては公式サイトWikipediaをご覧ください。

あとこちらの解説記事もおすすめです。

trap.jp

※筆者はRuffle公式とは無関係の第三者です。当記事についての疑問をRuffle公式リポジトリのIssueなどで問い合わせるのはおやめください。

 

Q.合法なの?

A.合法です。

Flashの仕様自体はもともと公開されており、更に2008年5月のライセンス変更で公開仕様を元に互換プレイヤーを作成することが可能になりました。

Ruffleはそれ以降に作られたものです。

 

Q.セキュリティ的に危なくないの?

A.基本的に安全です。

Adobe Flash Playerの特に問題視された仕組みを根本から見直しているので、次々に致命的な脆弱性が襲いかかってくるようなことは発生しません。

たとえばFlash経由の攻撃の中でも猛威を奮ったドライブバイダウンロードは、Ruffleでは起こりえません。(ブラウザ本体に致命的な脆弱性がある場合にはこの限りではありませんが、ブラウザ本体に脆弱性があればFlash関係なく攻撃されます。)

 

Adobe Flash Playerが危険とされたのは、Webブラウザの標準的な仕組みとは別の独自の仕組みで動作しており、ブラウザ本体が持っている防御機構をFlashコンテンツに対して十分に活用できなかったためです。

一方で、Ruffleはブラウザ本体の仕組みの中で動いています。

これにより、通常のWebアプリ(サーバー側設置時)やブラウザ拡張機能(ブラウザへのインストール時)と同等の安全性を保証できます。

 

(余談ですが、少し前に廃止されたJavaAppletとそれを現代のブラウザで実行するCheerpJの関係もこれと同じです。)

 

おおまかな仕組みを画像にまとめましたので、ご興味のある方はご覧ください。

 

Q.動かないコンテンツがあるんだけど?

A.今なお対応コンテンツが次々に増えています。

また、Ruffleはオープンソースですので、動かないコンテンツについて報告したり、Ruffleを自分で修正することもできます。

 

英語以外を含むコンテンツやFlashの新しめの機能を使ったコンテンツでは不具合が発生することが多いですが、これらも開発者の方はすでに把握されているため、すぐにとはいかないまでも将来的には対応されると思います。

今すぐに動かしたい日本語コンテンツがある方のために、私が雑に日本語関連の不具合をいくつか直したフォーク(派生版)もおいておきます。

【追記】本家の日本語関連の不具合の多くが修正されたようなので、フォントだけこちらのフォークのものを使って本家をビルドすると日本語が表示できる状態になりました。

github.com

 

Q.動作が重いんだけど?

A.他のブラウザをお試しください。

私の体感ですがRuffleはFirefoxよりChromeのほうがキビキビ動く気がします。

他の方の環境だとFirefoxのほうがキビキビ動く場合もあるようで、正直良くわかりません。

 

Q.Flash Playerみたいに突然終了しない?

A.Ruffleはライセンスを守れば改変・再配布が可能なので、完全に歴史の闇に葬られることはありません。

また、先述の通り仕組み上致命的なセキュリティ問題が発生しづらいため、脆弱性により公開終了を余儀なくされる可能性も低いと思われます。