マジックナンバー:プログラマーがあなたのPCに隠す秘密のコード

Nov 3, 2024
プライバシーとセキュリティ

最初の人が電卓で5318008を書き留めて以来、オタクはPC内に秘密の番号を隠し、それらを使用してアプリケーションとファイル間の秘密のハンドシェイクをネゴシエートしてきました。今日は、もっと面白い例をいくつか見ていきます。

魔法数とは何ですか?

ほとんどのプログラミング言語は、32ビット整数型を使用して、舞台裏で特定の種類のデータを表します。内部的には、数値はRAMに格納されるか、CPUによって32個の1と0として使用されますが、ソースコードではどちらかで記述されます。通常の10進形式、または0から9までの数字とAからFまでの文字を使用する16進形式として。

オペレーティングシステムまたはアプリケーションがファイルの種類を判別する場合、ファイルの先頭を調べて、ファイルの種類を示す特別なマーカーを探すことができます。たとえば、PDFファイルはASCII形式の「%PDF-1.3」に等しい16進値0x255044462D312E33で始まる場合や、ZIPファイルは元のPKZipユーティリティの子孫である「PK」に等しい0x504Bで始まる場合があります。この「署名」を見ると、他のメタデータがなくてもファイルの種類を簡単に識別できます。

コンパイルされたJavaクラスファイルはCAFEBABEで始まります

Linuxユーティリティの「ファイル」をターミナルから使用して、ファイルのタイプを判別できます。実際には、 ファイルからマジックナンバーを読み取ります 「魔法」と呼ばれます。

アプリケーションが関数を呼び出したい場合、整数などの標準タイプを使用してその関数に値を渡すことができます。整数は、ソースコードで16進形式で表現できます。これは、AUTOSAVE_INTERVALのような人間が読める形式の名前で定義された識別子である定数に特に当てはまりますが、実際の整数(または他のタイプ)の値にマップされます。そのため、プログラマーがソースコードで関数を呼び出すたびに60などの値を入力する代わりに、AUTOSAVE_INTERVAL定数を使用して読みやすくすることができます。 (定数はすべて大文字で書かれているため、通常は簡単に認識できます)。

これらの例はすべて、次の用語に該当する可能性があります マジックナンバー 、関数またはファイルタイプが正しく機能するために、特定の16進数が必要になる場合があるためです。値が正しくない場合、機能しません。また、プログラマーが少し楽しみたい場合は、英語で何かを綴る16進数を使用してこれらの値を定義することがあります。 hexspeak

マジックナンバーを楽しむ:いくつかの注目すべき例

すべてのAppleScriptはFADEDEADで終わります

ざっと見てみると Linuxソースコードに 、Linuxでの_reboot()システムコールでは、16進数の0xfee1deadに等しい「マジック」変数を渡す必要があることがわかります。最初にその魔法の値を渡さずにその関数を呼び出そうとすると、エラーが返されます。

のGUID(グローバル一意識別子) BIOSブートパーティション の中に GPTパーティションスキーム は21686148-6449-6E6F-744E-656564454649であり、ASCII文字列「Hah!IdontNeedEFI」を形成します。これは、GPTが通常で使用されるという事実をほのめかしています。 BIOSをUEFIに置き換えたコンピューター 、ただし、必ずしもそうである必要はありません。

マイクロソフトは有名に 0x0B00B135を非表示にしました Linuxに送信されたソースコードをサポートするHyper-V仮想マシンで 値を0xB16B00B5に変更しました 、そして最後に彼らは 10進数に切り替えました ソースコードから完全に削除される前。

より楽しい例は次のとおりです。

  • 0xbaaaaaad –使用者 iOSクラッシュログ ログがシステム全体のスタックショットであることを示します。
  • 0xbad22222 – iOSのクラッシュロギングで使用され、VoIPアプリが誤動作したためにiOSによって強制終了されたことを示します。
  • 0x8badf00d –(Ate Bad Food)iOSのクラッシュログで使用され、アプリケーションが何かを実行するのに時間がかかりすぎて、ウォッチドッグのタイムアウトによって強制終了されたことを示します。
  • 0xdeadfa11 –(Dead Fall)アプリがユーザーによって強制終了されたときにiOSクラッシュロギングによって使用されます。
  • 0xDEADD00D –VMの異常終了を示すためにAndroidによって使用されます。
  • 0xDEAD10CC(デッドロック)アプリケーションがバックグラウンドでリソースをロックするときにiOSのクラッシュログで使用されます。
  • 0xBAADF00D(Bad Food)が使用する LocalAlloc デバッグのためのWindowsの機能。
  • 0xCAFED00D(Cafe dude)は、Javaのpack200圧縮で使用されます。
  • コンパイルされたクラスファイルの識別子としてJavaによって使用される0xCAFEBABE(Cafe babe)
  • 任天堂が使用する0x0D15EA5E(病気) ゲームキューブとWii 通常の起動が発生したことを示します。
  • によって使用される0x1BADB002(1つの不良ブート) マルチブート マジックナンバーとしての仕様
  • 0xDEADDEAD –Windowsが 手動で開始されたデバッグクラッシュ 、別名ブルースクリーンオブデス。

もちろん、これらだけではありませんが、面白そうな例の短いリストです。もう知っていますか?コメントで教えてください。

自分の例を見る

16進エディターを開いてから、任意の数のファイルタイプを開くと、さらに多くの例を見ることができます。 Windows、OS X、またはLinuxで利用できるフリーウェアの16進エディタはたくさんあります。 フリーウェアをインストールするときは注意してください がらくたやスパイウェアに感染しないようにします。

追加の例として、ClockworkModのようなAndroid携帯のリカバリイメージは「ANDROID!」で始まります。 ASCII形式で読み取った場合。

注意: 見回している間は何も変更しないでください。 16進エディタは物事を壊す可能性があります!

IPhone Secret Codes!

Samsung Secret Codes To Speed Up Your Phone

Call Of Duty: Black Ops - Hidden Menu Secret And Computer Codes - Mini-Games And Cheats

JavaScript Security: Hide Your Code?

Secret Phone Codes You Didn't Know Existed!

CODES Honor Play - Secret Menu / Hidden Mode / EMUI Tricks


プライバシーとセキュリティ - 最も人気のある記事

監視カメラは誰も識別できないと役に立たない

プライバシーとセキュリティ Aug 27, 2025

防犯カメラの場所を慎重に検討することが重要です。すべてのエリアをカバーしていると思うかもしれませんが、人や車を特定できる�..


巨大なmacOSバグにより、パスワードなしでrootログインが可能になります。これが修正です

プライバシーとセキュリティ Dec 2, 2024

macOS High Sierraで新たに発見された脆弱性により、ラップトップにアクセスできる人は誰でも、設定したセキュリティプロトコルをバイ�..


プライベートブラウジングの仕組みと、完全なプライバシーを提供しない理由

プライバシーとセキュリティ Jul 5, 2025

未取得のコンテンツ プライベートブラウジング、プライベートブラウジング、シークレットモード–多くの名前がありますが、すべ�..


Windows10の最初の11月のビッグアップデートの新機能

プライバシーとセキュリティ Aug 3, 2025

WindowsUpdateを介して本日届くはずのWindows10の最初の大きな更新プログラムは、Windows 10の多くの問題を修正します。マイクロソフトは、�..


GoogleウォレットとApplePay:知っておくべきこと

プライバシーとセキュリティ Dec 3, 2024

未取得のコンテンツ Apple Payは光沢があり、新しく、多くの報道を受けています。しかし、Androidユーザーは何年にもわたって独自の同..


読者にソフトウェアのダウンロードを推奨することを嫌う理由

プライバシーとセキュリティ May 20, 2025

未取得のコンテンツ Windowsソフトウェアのダウンロードはめちゃくちゃです。多くのプログラムは、アドウェアやその他の悪意のある..


ヒントボックスから:自動ヘッドフォン音量調整、コンパクトなWindows ReadyBoost、および安全な電話充電

プライバシーとセキュリティ Aug 18, 2025

未取得のコンテンツ 週に一度、私たちはヒントボックスに浸り、私たちがやってくる素晴らしい読者のヒントのいくつかを共有します。�..


Diigoで拡張ブックマークを作成する

プライバシーとセキュリティ Jun 21, 2025

未取得のコンテンツ タグといくつかのメモだけでなく、ブックマークに追加したいですか? Diigoを使用すると、タグ、個人用および付箋、�..


カテゴリ