カスタムファームウェア

カスタムファームウェア（CFW、Custom Firmware）とは、新しい機能を搭載したり隠された機能をロック解除するために、サードパーティーによって非公式に改造されたファームウェアのことを指す。主にゲーム機や様々な組み込み機器などのデバイス上で動作するが、多くの場合、PlayStation PortableやPlayStation 4、PlayStation 3、PlayStation Vita、Nintendo 3DS、Nintendo Switchなどのゲーム機の公式のシステムソフトウェア（公式ファームウェア、あるいは単にFW（Firmware）やOFW（Official Firmware）などと呼ばれる）が改造されたものを指す。多くはチート行為を可能にする為に改造を行う。また、全てのシステムバージョンにおいて改造が可能な訳ではない。また改造を施す事によりデータの損傷や機器が使用不可になってしまう事もある。チート行為は違反な為、オンライン上で使用するとBANされてしまい様々な不利益を受ける事にもなってしまう。

**ゲーム機におけるCFW**
通常の場合、公式ファームウェアでは署名済み（つまり、動作が公式に許可された）ソフトウェアのみが起動できる。しかし、CFWでは、動作が許可されていないHomebrew（自作のアプリケーション）やゲームデータのバックアップなどをゲーム機上で直接実行できる。ただし、CFWはソフトウェアの著作権侵害につながるので、NintendoやSONYなどのゲームメーカーは、CFWの導入をはじめとしたゲーム機の改造を一切認めていない。そのため、システムの脆弱性を突くエクスプロイトなどの特殊な方法を使用しない限り、公式ファームウェアをCFWに書き換えることはできない。また、公式ファームウェアの更新の際、CFWやそれに準ずるプログラムを導入可能にする脆弱性を利用不可能にすることがある。無論、このような改造をしたことが判明した場合、メーカー保証は対象外となる。

**PlayStation Portable、PlayStation 3、PlayStation Vita**
CFWは、ソニーが販売した携帯用ゲーム機PlayStation Portableでよく知られる。PSPのCFWには、Dark_AleXによるM33 のほか、5.50GEN シリーズ、Minimum Edition（ME / LME）date=2021年7月、PROdate=2021年7月などがある。
CFWは、PlayStation 3にも存在する。ただし、2019年9月現在、CFWが導入できるのは初期のモデルおよびスリムモデル（CECH-20xxからCECH-25xxまで）のみ。スリムモデル（CECH-30xx）およびスーパースリムモデルは、CFWとほぼ同様の機能を備えたHEN（Homebrew Enabler）のみ導入可能。
PlayStation Vitaには、PS VitaのPSPエミュレーター上で実行できるPSP用CFWを意味するeCFWがあるdate=2021年7月。eCFWには、ARKやTN-V、およびAdrenalineなどがある。特にAdrenalineは、システムレベルでハッキングを行っているため、より多くの機能を利用することができる。
2016年には、PS Vitaハックシーンが大きく変わった。MoleculeというハッキングチームがHENkakuをリリースし、FW3.60でPS VitaのCFW導入を可能にした。また、その後taiHENをリリース。taiHENは、HENkakuの最新バージョンが実行されるフレームワークである。これにより、PSPで使用していたようにシステムレベルでプラグインをロードすることができ、様々な機能の変更や追加が可能になった。また、Ensoを使用すれば、Vitaのブートローダーの脆弱性を利用してHENkakuを持続可能にし、ブート時に実行できるようになる。そのため、VitaにはHENkakuとtaiHEN、およびEnsoを含む完全なCFWが確立されている。3.60のユーザーは、Henkaku Ensoのまま3.65に更新することもできる。

**Nintendo 3DS**
ニンテンドー3DSの改造シーンには、オリジナルのゲームカートリッジをエミュレートするマジコンとCFWの両方が含まれる。現在最も広く使用されているCFWは、Aurora WrightとTuxSHによって開発されたLuma3DSである。これにより、ニンテンドー3DS上で未署名のCIA（CTR Importable Archives）ファイルをインストールできる。過去のCFWには、Gateway（DRM経由でフラッシュカートリッジにロックされた独自のCFW、3DS初のCFW）やPasta、RxTools（初期に無料で広く使用されたもの）、Cakes CFW（初のオープンソースCFW）、ReiNAND（Luma3DSのベース）、およびCorbenik。現在開発中のCFWはLuma3DS（以前はAuReiNANDとして知られていた）のみ。
3DSのCFWは当初、EmuNANDおよびRedNAND（3DSのNANDメモリのコピーを含むSDカードのパーティション化されていないスペースからシステムを起動する機能）に依存していた。これらは、EmuNANDが正常に機能しなくなった場合や使用できなくなった場合に通常のシステムNANDが影響を受けないため、3DSシステムをブリックから保護できる。さらに、EmuNANDは通常のシステムNANDとは別に更新することも可能。これにより、ユーザーは、システムNANDが脆弱なバージョンを保持しながら、EmuNANDに最新のシステムバージョンをインストールすることができる。そのため、古い3DSシステムバージョンでオンラインプレイとニンテンドーeショップへのアクセスが可能。
EmuNANDはarm9loaderhaxのリリースにより廃止された。arm9loaderhaxは3DS起動時のARM9エクスプロイトで、これによりSysNANDを安全に使用かつ更新できるようになった。ただし、このエクスプロイトでは、インストールに必要なコンソール固有のOTPを取得するために、非常に初期のシステムバージョンにダウングレードする必要があった。
2017年5月19日、arm9loaderhaxに代わって、sighaxと呼ばれる新しいエクスプロイトがリリースされた。sighaxは、bootROMのコンテキストでコードの実行を許可するため、ダウングレードやOTPが不要になり、ユーザーがシステムをさらに素早く制御できるようになった。続いて、sighaxを使いやすく改良したBoot9Strapがリリース。それと同時に、ntrbootと呼ばれる別のbootROMエクスプロイトが発表された。これにより、bootROMに存在するバックドアを使用して、ファームウェアバージョンに関係なく、3DSでシステム全体を制御できるようになった（bootROMはファームウェアのようには更新できないため）。ただし、導入にはマジコンと磁石が必要。最初のリリースは8月12日で、AceKard 2iとR4i Gold 3DS RTSをサポートしていた。

**Nintendo Switch**
Nintendo SwitchのCFWには、AtmosphereやReiNX、およびSXOSがある。

**他のデバイスにおけるCFW**
ゲーム機のほか、デジタルカメラやワイヤレスルーター、およびスマートテレビなど、様々なデバイスでCFWを導入できる。以下に主なものを列記する。- ポータブルメディアプレーヤー用のロックボックス - iPodポータブルメディアプレーヤー用のiPodLinux - キヤノン製デジタルカメラ用のCHDKおよびMagic Lantern - ニコン製デジタル一眼レフカメラ用のNikon Hackerプロジェクト- コンピューター用のCorebootとLibreboot - ワイヤレスルーター向けのファームウェアプロジェクトには次のものが含まれる。 
** Ben NanonoteやBuffalo WZR-HP-G300NH、および最小限のリソースを持つコンピューター用のLibreWRTプロジェクト 
** OpenWrtおよびDD-WRTなどの派生 
** Instruments AR7チップセットをベースにしたADSLゲートウェイルーター用のRouterTech（PspbootまたはAdam2 ブートローダーを使用）Texas - ケーブルモデムのアンキャッピングを可能にするCable HackとSigma（法律に抵触するおそれがある） - DVDドライブをリージョンフリーにするファームウェア- Samsung製スマートテレビ用のSamyGO 
*ソニー製ウォークマンA30/A40/A50/ZX300/WM1A/WM1Z 用のcustom firmware

**脚注**

**外部リンク**
  PSP®「プレイステーション・ポータブル」 システムソフトウェア アップデート | プレイステーション® オフィシャルサイト-  PlayStation®3 システムソフトウェア アップデート | プレイステーション® オフィシャルサイト-  PlayStation®Vita/PlayStation®TV システムソフトウェア アップデート | プレイステーション® オフィシャルサイト-  ニンテンドー3DSのシステムバージョン変更履歴｜ニンテンドー3DS サポート情報｜Nintendo-  本体更新情報｜Nintendo Switch サポート情報｜Nintendo