diff options
Diffstat (limited to 'talermerchantdemos/blog/articles/ja/javascript-trap.html')
-rw-r--r-- | talermerchantdemos/blog/articles/ja/javascript-trap.html | 55 |
1 files changed, 35 insertions, 20 deletions
diff --git a/talermerchantdemos/blog/articles/ja/javascript-trap.html b/talermerchantdemos/blog/articles/ja/javascript-trap.html index ceaa4fe..50c64ab 100644 --- a/talermerchantdemos/blog/articles/ja/javascript-trap.html +++ b/talermerchantdemos/blog/articles/ja/javascript-trap.html @@ -1,26 +1,35 @@ <!--#set var="ENGLISH_PAGE" value="/philosophy/javascript-trap.en.html" --> <!--#include virtual="/server/header.ja.html" --> -<!-- Parent-Version: 1.90 --> +<!-- Parent-Version: 1.96 --> +<!-- This page is derived from /server/standards/boilerplate.html --> +<!--#set var="TAGS" value="essays licensing traps" --> +<!--#set var="DISABLE_TOP_ADDENDUM" value="yes" --> <!-- This file is automatically generated by GNUnited Nations! --> -<title>JavaScriptの罠</title> +<title>JavaScriptの罠 - GNUプロジェクト - フリーソフトウェアファウンデーション</title> <!--#include virtual="/philosophy/po/javascript-trap.translist" --> <!--#include virtual="/server/banner.ja.html" --> +<!--#include virtual="/philosophy/ph-breadcrumb.ja.html" --> +<!--GNUN: OUT-OF-DATE NOTICE--> +<!--#include virtual="/server/top-addendum.ja.html" --> +<div class="article reduced-width"> <h2>JavaScriptの罠</h2> -<p><a href="http://www.stallman.org/">リチャード・ストールマン</a>著</p> +<address class="byline"><a href="https://www.stallman.org/">リチャード・ストールマン</a>著</address> <p><strong>あなたは、そうとは知らずに、不自由なプログラムをあなたのコンピュータで毎日実行しているかもしれません — ウェブ・ブラウザを通じて。</strong></p> <!-- any links that used to point to the appendices should point to free-your-javascript.html instead. --> -<blockquote> +<div class="announcement"> +<hr class="no-display" /> <p>ウェブマスタのみなさん: ウェブサイトにおいて、JavaScriptプログラムのライセンスを提示する<a href="/software/librejs/free-your-javascript.html">いくつかの方法</a>があります。</p> -</blockquote> +<hr class="no-display" /> +</div> <p>自由ソフトウェアコミュニティでは、<a href="/philosophy/free-software-even-more-important.html">どんな不自由なプログラムもそのユーザを虐待する</a>、という考えがよく知られています。わたしたちの中には、プロプライエタリなソフトウェアをまったく拒否することで自由を守る人もいます。多くの人は不自由はプログラムへの打撃だと認識します。</p> @@ -36,23 +45,26 @@ Docsはあなたのマシンに0.5メガバイトにも及ぶJavaScriptのプロ href="/philosophy/free-sw.html">自由ソフトウェアの意味</a>の一部に、ユーザがそのプログラムのソースコード(プログラムの設計)にアクセスできることがあります。プログラムのソースコードとは、プログラマが修正するために好ましい形態を意味し、役立つ空白、説明の注釈、そして意味のある名前を含みます。コンパクト化されたコードは偽者であり、ソースコードの役に立たない代替です。そのプログラムの本当のソースコードをユーザが利用できないのであれば、ユーザはプログラムを理解できません。ですからそのプログラムは不自由です。</p> <p>不自由であることに加えて、多くのこのようなプログラムは<em>マルウェア</em>です。なぜなら<a -href="http://github.com/w3c/fingerprinting-guidance/issues/8">ユーザを詮索するからです</a>。もっと嫌なことに、いくつかのサイトは<a +href="https://github.com/w3c/fingerprinting-guidance/issues/8">ユーザを詮索するからです</a>。もっと嫌なことに、いくつかのサイトは<a href="https://freedom-to-tinker.com/2017/11/15/no-boundaries-exfiltration-of-personal-data-by-session-replay-scripts/">そのページを見ているすべてのユーザの行動</a>を記録するサービスを使います。そのサービスはおそらくその記録を「墨消し」し、ウェブサイトが取得すべきでない敏感なデータを除外するでしょう。しかし、たとえそれが信頼性をもって処理されるとしても、このようなサービスの全体の目的はウェブサイトに取得すべきでない個人情報を提供することなのです。</p> <p>JavaScriptのプログラムをロードしたときに、ブラウザは通常何も言いません。いくつかのブラウザは、JavaScriptを完全に停止する方法を有してますが、たとえ、この問題を知っていたとしても、こういった瑣末ではない不自由なプログラムを同定し、ブロックするのには大変な労力が必要となるでしょう。しかし、自由ソフトウェアのコミュニティでさえ、ほとんどのユーザはこの問題を知りません。ブラウザの沈黙がこの問題を隠す傾向にあるのです。</p> -<p>JavaScriptプログラムを自由ソフトウェアライセンスでソースコードを配布し、自由ソフトウェアとしてリリースすることは可能です。もしそのプログラムがそれ自身で意味があるものなら(一緒に来るページと機能と目的が独立であれば)、問題ありません。あなたのマシンにファイルとしてコピーでき、変更し、ブラウザでそのファイルを見て実行できます。しかし、これは通常のケースではありません。</p> +<p>明確にすると、JavaScript言語がユーザの自由にとってほかの言語と比べて本質的に良い/悪いということはありません。JavaScriptプログラムを自由ソフトウェアライセンスでソースコードを配布し、自由ソフトウェアとしてリリースすることは可能です。もしそのプログラムがそれ自身で意味があるものなら(一緒に来るページと機能と目的が独立であれば)、問題ありません。あなたのマシンにファイルとしてコピーでき、変更し、ブラウザでそのファイルを見て実行できます。ほかの自由なプログラムと同様にインストールのためにパッケージすることさえできますし、シェルコマンドで実行もできます。こういったプログラムは、Cのプログラムと特段異なる道徳上の問題があるわけではありません。</p> + +<p>JavaScriptの罠の問題は、JavaScriptのプログラムがユーザが訪れるウェブページとともにもたらされる時に生じます。こういった +JavaScript のプログラムは、特定のページやサイトで動くように書かれ、そのページやサイトは機能するためにそのプログラムに依存します。</p> -<p>通常のケースでは、JavaScriptのプログラムは、特定のページやサイトで動くことが意図され、そのページやサイトは機能するためにそのプログラムに依存することになります。ここで別の問題が発生します: -たとえプログラムのソースが利用可能でも、あるページやサイトを訪れたときに、オリジナルの代わりにあなたの改変版を実行する方法をブラウザは提供しないのです。この効果はTivoizationと似たようなものです。克服するのに困難を極める、ということはありませんが。</p> +<p>そのページのJavaScriptのコードをあなたがコピーして変更したとしましょう。ここで、別の問題が生じます: +たとえプログラムのソースが利用可能でも、ブラウザは、そのページやサイトを訪れた際、あなたの変更したバージョンをオリジナルの代わりに実行する方法を提供しないのです。この効果はTivoizationと似たようなものです。克服するのに困難を極める、というほどではありませんが。</p> -<p>JavaScriptはウェブサイトでユーザに送られるプログラムに使われる唯一の言語ではありません。FlashはJavaScriptの拡張された一種を通じてプログラミングをサポートします。充分に完全な自由なFlashプレイヤを有するなら、(今後)不自由なFlashの問題をわたしたちは扱う必要が出るでしょう。SilverlightはFlashと同様な問題を作り出すと思われます。それがより悪いのは、マイクロソフトがそれを不自由なコーデックのプラットフォームとして使うからです。それが通常、自由な代替コーデックとともに来るのでなければ、Silverlightの自由な代替は自由な社会のために、その仕事をなし得ないでしょう。</p> +<p>JavaScriptはウェブサイトでユーザに送られるプログラムに使われる唯一の言語ではありません。FlashはJavaScriptの拡張された一種を通じてプログラミングをサポートしましたが、これは過去のものです。マイクロソフトのSilverlightはFlashと同様な問題を作り出すと思われます。それがより悪いのは、マイクロソフトがそれを不自由なコーデックのプラットフォームとして使うからです。それが通常、自由な代替コーデックとともに来るのでなければ、Silverlightの自由な代替は自由な社会のために、その仕事を適切になし得ないでしょう。</p> <p>Javaアプレットもブラウザで実行され、同様な問題を引き起こします。一般に、どのような種類のアプレットシステムもこの種の問題を有しています。アプレットの自由な実行環境を有するということは、この問題に出くわすのに十分なところに、わたしたちを連れていってくれる、というだけです。</p> <p>理論的にはHTMLとCSSでプログラムすることが可能ですが、実際にはその機能は限られ不便です。(HTMLとCSSだけで)何かをすることは、すばらしいハックでしょう。そのようなプログラムは自由であるべきですが、CSSは2019年の時点において、ユーザの自由に対する深刻な問題ではありません。</p> -<p>ウェブサイトに対して、自由な(ある人は「オープン」と言います)、すなわち、その文書が公表されていて誰もが自由に実装できる、そういったフォーマットとプロトコルだけを通じて通信することを要求する、力強い運動が発達してきました。しかし、ウェブページの中のJavaScriptプログラムの存在がこの基準を不十分とします。JavaScriptそれ自身は、フォーマットとして自由で、ウェブサイトでJavaScriptを使うことは必ずしも悪くありません。しかし、上で述べたように、JavaScriptプログラムが不自由な場合、悪いものになりえます。サイトがプログラムをユーザに送信するとき、文書があり障害がない言語でかかれているプログラムだというだけでは十分ではないのです。つまり、そのプログラムも自由でなければなりません。「ユーザには自由なプログラムだけが送信される」ことが倫理的なウェブサイトの基準の部分となるべきです。</p> +<p>ウェブサイトに対して、自由な(ある人は「オープン」と言います)、すなわち、その文書が公表されていて誰もが自由に実装できる、そういったフォーマットとプロトコルだけを通じて通信することを要求する、力強い運動が発達してきました。しかし、ウェブページの中のJavaScriptプログラムの存在がこの基準を不十分とします。JavaScriptそれ自身は、フォーマットとして自由で、ウェブサイトでJavaScriptを使うことは必ずしも悪くありません。しかし、上で述べたように、JavaScriptプログラムが不自由な場合、悪いものになりえます。サイトがプログラムをユーザに送信するとき、文書があり障害がない言語でかかれているプログラムだというだけでは十分ではないのです。つまり、そのプログラムも自由でなければなりません。「ユーザには自由なプログラムだけが送信される」ことが倫理的なウェブサイトの基準の一部となるべきです。</p> <p>黙ったまま不自由なプログラムをロードして実行することは、「ウェブ・アプリケーション」によって引き起こされるいくつかの問題の一つです。「ウェブ・アプリケーション」という用語はユーザに送られるソフトウェアとサーバで実行されるソフトウェアの基本的な区別を無視するよう設計されています。それはブラウザで実行される特別なクライアントプログラムを指すこともありえますし、特別なサーバソフトウェアを指すこともありえます。また、特別なサーバソフトウェアと一緒に動く特別なクライアントプログラムを指すこともありえます。たとえそれらが密接に統合され単一のプログラムの部分のように構成されていたとしても、クライアント側とサーバ側では異なる倫理上の問題を引き起こします。この論説では、クライアント側のソフトウェアの問題だけを扱います。サーバの問題は別に扱っています。</p> @@ -102,13 +114,16 @@ href="/software/librejs/">LibreJS</a>は、あなたが訪れるページの、 <!-- any links that used to point to the appendices should point to free-your-javascript.html instead. --> -<blockquote> +<div class="announcement"> +<hr class="no-display" /> <p>ウェブマスタのみなさん: ウェブサイトにおいて、JavaScriptプログラムのライセンスを提示する<a href="/software/librejs/free-your-javascript.html">いくつかの方法</a>があります。</p> -</blockquote> +<hr class="no-display" /> +</div> <p><strong>謝辞</strong>: <a href="/people/people.html#mattlee">マット・リー</a>と<a -href="http://ejohn.org">ジョン・レジッグ</a>に、提案された基準の定義への助力に関して感謝します。また、デビッド・パルナキアンに、この問題にわたくしの関心を向けさせてくれたことを感謝します。</p> +href="https://johnresig.com/">ジョン・レジッグ</a>に、提案された基準の定義への助力に関して感謝します。また、デビッド・パルナキアンに、この問題にわたくしの関心を向けさせてくれたことを感謝します。</p> +</div> <div class="translators-notes"> @@ -118,7 +133,7 @@ href="http://ejohn.org">ジョン・レジッグ</a>に、提案された基準 <!-- for id="content", starts in the include above --> <!--#include virtual="/server/footer.ja.html" --> -<div id="footer"> +<div id="footer" role="contentinfo"> <div class="unprintable"> <p>FSFおよびGNUに関する問い合わせは<a @@ -137,12 +152,12 @@ href="mailto:webmasters@gnu.org"><webmasters@gnu.org></a>までお送り <web-translators@gnu.org></a>.</p> - <p>For information on coordinating and submitting translations of + <p>For information on coordinating and contributing translations of our web pages, see <a href="/server/standards/README.translations.html">Translations README</a>. --> 正確で良い品質の翻訳を提供するよう努力していますが、不完全な場合もあるかと思います。翻訳に関するコメントと提案は、<a -href="mailto:web-translators@gnu.org"><web-translators@gnu.org></a>におねがいします。</p><p>わたしたちのウェブページの翻訳の調整と提出については、<a +href="mailto:web-translators@gnu.org"><web-translators@gnu.org></a>におねがいします。</p><p>わたしたちのウェブページの翻訳の調整と貢献については、<a href="/server/standards/README.translations.html">翻訳 README</a>をご覧ください。</p> </div> @@ -162,11 +177,11 @@ href="/server/standards/README.translations.html">翻訳 README</a>をご覧く There is more detail about copyright years in the GNU Maintainers Information document, www.gnu.org/prep/maintain. --> -<p>Copyright © 2009-2013, 2016, 2017, 2018, 2019 Richard Stallman</p> +<p>Copyright © 2009-2013, 2016-2019, 2021 Richard Stallman</p> <p>このページは<a rel="license" href="http://creativecommons.org/licenses/by-nd/4.0/deed.ja">Creative -Commons Attribution-NoDerivs 4.0 International License</a>の条件で許諾されます。</p> +Commons Attribution-NoDerivatives 4.0 International License</a>の条件で許諾されます。</p> <!--#include virtual="/server/bottom-notes.ja.html" --> <div class="translators-credits"> @@ -177,7 +192,7 @@ Commons Attribution-NoDerivs 4.0 International License</a>の条件で許諾さ <p class="unprintable"><!-- timestamp start --> 最終更新: -$Date: 2020/01/16 07:31:21 $ +$Date: 2021/11/01 13:30:49 $ <!-- timestamp end --> </p> |