Bush hid the facts

Bush hid the factsブッシュは事実を隠蔽した)は、Microsoft Windowsの一部のバージョンで生じることが確認されているバグ(障害)で、ASCIIでエンコードされた特定の文字列がUTF-16LEに解釈されて文字化けする現象の通称名。この特定の文字列の1つが「Bush hid the facts」であり、この文字列をメモ帳で編集した新規ファイルとして保存して閉じ、再び開くと「畂桳栠摩琠敨映捡獴」という意味不明な漢字の文字列で表示されることから、この名で呼ばれる。このブッシュとは第43代アメリカ合衆国大統領ジョージ・W・ブッシュのことであり、これはバグではなく、彼の政府がMicrosoftに依頼して隠蔽工作を行っていたとする陰謀論ジョークとして広まった。このバグは「hhhh hhh hhh hhhhh」[1]や「this app can break」[2](このアプリは壊れる)といった文字列でも発生することが確認されており、同じ位置に文字やスペースがあれば他の文字列でも再現可能とされている。

このバグはWin32 API内の文字エンコード検出関数の IsTextUnicode の誤作動が原因である。この関数は対象の文字列が有効なUTF-16LEコードの場合に True を返すというものだが、誤作動でUTF-16LEだと誤って解釈してしまい文字化けが生じる[3]。このバグが発見されたのは2004年初頭のことであったが、実は1994年にリリースされたMicrosoft Windows NT 3.5の時に IsTextUnicode が盛り込まれた時から発生する可能性があった[4]。最終的に2006年のVista版のメモ帳において、IsTextUnicode を用いない形のアルゴリズムに修正されたため発生しなくなったが、依然として IsTextUnicode を用いる、その他の多くのテキストエディタやツールでは、このバグが発生した[5]

出典

[編集]
  1. ^ Christensen, Brett M. (November 2, 2009). “Bush Hid The Facts - Notepad Conspiracy Claim”. Hoax Slayer. 2010年3月15日時点のオリジナルよりアーカイブ。2023年7月2日閲覧。
  2. ^ Kaplan, Michael S. (14 June 2006). “Behind 'How to break Windows Notepad'”. archives.miloush.net. 25 October 2013時点のオリジナルよりアーカイブ。2022年7月12日閲覧。
  3. ^ Chen, Raymond (March 24, 2007). “Some files come up strange in Notepad”. The New Old Thing. Microsoft. 2022年7月12日閲覧。
  4. ^ Cumps, David (February 27, 2004). “Notepad bug? Encoding issue?”. #region .Net Blog. February 15, 2009閲覧。
  5. ^ Kaplan, Michael S. (March 25, 2008). “Bush might've still hid the facts, but he can't hide them from Vista SP1/Server 2008 Notepad”. 13 April 2017閲覧。

外部リンク

[編集]