Valve Anti-Cheat(バルブ・アンチチート、略称: VAC)は、パソコンゲームなどの配信プラットフォームである「Steam」のコンポーネントとして、Valve Corporationが開発した不正行為(チート)を検出するためのアンチチートソフトウェア。2002年に初めて『カウンターストライク』に向けてリリースされた。ソフトウェアがプレイヤーのシステム上でチートプログラムを検出すると、VAC保護されたゲームサーバへ恒久的にアクセスできなくなり、プレイヤーのSteamアカウントに対しても追加の制限が適用される。

## 歴史

2001年、『カウンターストライク』や『ハーフライフ』のために設計されたアンチチートソフトウェア「PunkBuster」の開発元であるEven Balance Inc.は、Valveからのサポートを受けられなかったため、ゲームへのサポートを停止した。Valveは、チート対策の技術をゲームに統合する提案を受けていたが、これを拒否している。Valveはその後、不正行為の「長期的な解決策」に取り組み始めた。

2002年、VACの初版は『カウンターストライク』に向けてリリースされ、当初のシステムでは不正行為が確認された場合、プレイヤーを24時間のみ利用禁止(BAN)にしていた。しかし、この期間は次第に1年から5年間へと増加。2005年にリリースされたVAC2では恒久化した。VAC2は2005年2月に発表され、翌月にはベータテストを開始した。2006年11月17日、新たなVACシステムによって前週のみで10,000件以上の不正行為を検出したことを発表した。

2010年7月、『Team Fortress 2』のゲーム内アイテムとして「ゴールデンレンチ」と呼ばれる珍しい武器・ツールが存在する。このアイテムを得るためのチャンスを、Valveからの情報漏洩によって増やすことに成功した数人のプレイヤーが、VACによって利用を禁止されていることに気が付いた。同月、Steamのアップデートによってディスク上のDLLファイルが更新され、そのファイルがゲームによってメモリに読み込まれた後に不正行為として誤検出が起こり、約12,000人の『コール オブ デューティ モダン・ウォーフェア2』の所有者が利用を禁止された。これらの禁止処置は取り消され、影響を受けたプレイヤーには『Left 4 Dead 2』をギフトとして無料で提供するなどした。

2014年2月、システムがユーザーのDNSキャッシュにアクセスし、ユーザーがアクセスしたウェブサイトを監視しているという噂が広まった。Valveの共同設立者であるゲイブ・ニューウェルはreddit経由で応答し、チェックの目的がカーネルレベルのチートプログラムを検出するための二次的な対策であることを明らかにした。また、クライアントの10パーセント未満がこのチェックを受け、結果的に570件の不正行為が確認され、利用を禁止している。

2016年5月、システムは利用を禁止したアカウントと同じ電話番号で関連付けられたアカウントに対しても同様の処置を行うことを開始した。また、『Team Fortress 2』で人気のチートプログラムとなっていた「LMAOBOX」が検出できるようになり、その結果3,000件以上という一度に多くの禁止処置を行った。

2017年2月、Valveは『カウンターストライク グローバル・オフェンシブ』においてチートを検出するために、機械学習によるアプローチを導入する計画を発表した。この時点でシステムの初期バージョンが既にリリースされており、Overwatch(監視)システムを介し、プレイヤーが手動で検出できるようになった。

## 開発

### システムの設計

システムの設計については、チートプログラムの開発者やソーシャル・エンジニアリングに役立ってしまう可能性があるため、ほとんどが公開されていない。

基本的な設計として、システムはクライアントに対してチャレンジを送信し、適切な応答が確認されなかった場合、不正行為の可能性があるとしてフラグが立てられる。ヒューリスティクスを使用し、コンピュータのメモリやプロセスをスキャンした際にチートプログラムの有無を検出する。異常が検出されるたびにインシデントレポートが作成され、禁止されたアプリケーションソフトウェアを集約したデータベースとの比較やValveのエンジニアによって分析が行われる。エンジニアはコードを独自の環境にコピーした上で検査し、新しいチートプログラムとして確認された場合、情報をデータベースに追加する。

SteamのリードエンジニアであるJohn Cookによると、アンチチートソフトウェア自体が悪用されるのを防ぐために、「ソフトウェアは絶えず更新され、必要に応じてデータをサーバへ小分けにして送信しているため、ハッカーたちは特定の時間に実行されるごく一部の情報しか見ることができない。よって、彼らはその一部を回避できるかもしれないが、全てをハッキングすることはできない。」としている。

### 検出から禁止処置を行うまで

Valveはチートプログラムやそれを扱うウェブサイトについての情報をメールなどで受け付けている。また、Steamコミュニティのプロフィールからも不正行為の疑いがあるプレイヤーを報告できるが、これらの情報だけでは利用を禁止されない。

チートが見つかった場合、プレイヤーのSteamアカウントには即時にチートのフラグが付けられる。この時点では、プレイヤーにはチートが検出されたという表示はされず、VAC保護されたサーバからアカウントが恒久的に利用を禁止されるのは、「数日または数週間」遅れた頃とされている。しかし、ゲームによっては利用を禁止するまでに「数週間から数か月」かかる場合もあり、プレイヤーから批判が起こることもあった。

### 追加の制限

利用の禁止を受けたプレイヤーは、Steamアカウントに関しても追加の制限を受ける。例えば、Steam上のファミリー共有機能により、ゲームの所有者はゲームライブラリを他のSteamユーザーと共有してプレイできるが、所有者が禁止処置を受けた場合は共有できなくなる。反対に、共有を受けた者から不正行為が確認された場合は、所有者の共有機能の取り消しや禁止処置が取られる場合もある。

その他、アカウント間でのアイテムの移動やゲームの返金、Steam Translation Serverプロジェクトへの参加ができないなどといった制限も存在する。

## 社会的な影響

### Steamプラットフォームにおける処置や傾向

禁止処置を受けたアカウントのプロフィールには「VAC検出記録(VAC ban(s) on record)」として表示が残る。この表示はプロフィールの可視性(プライバシー設定)に関係なく一般公開され、非表示にすることはできない。

2011年4月から10月までに禁止処置を受けた43,465人のアカウントの分析では、利用を禁止されたフレンドユーザーが多いユーザーほど、将来的に自身もVACによって禁止処置を受ける可能性が高く、また、処置を受けた後、自身のフレンドユーザーの多くを解除し、プロフィールをプライバシー設定によって多くを隠すようになる傾向がある。

VACによって禁止処置を受けたプレイヤーは「Going on "VACation"(休暇を取っている)」と揶揄されることもある。

### eスポーツにおける事例

禁止処置を受けたプレイヤーは、ほとんどのeスポーツトーナメントにおける競技からも追放されている。

2014年、チームに所属していたプロゲーマーであるemilio(Joel Mako)が、ライブストリーミングの途中で禁止処置を受けた。emilioは最初に「自身のメインアカウントとメールアドレスで関連付けられたスマーフアカウントの1つにおいてゲームをプレイしていた友人」が原因であるとして、チートの使用を否定していた。その後、2015年にチートの使用を認めている。

他にも、KQLY(Hovik Tovmassian)やsmn(Simon Beck)、Sf(Gordon Giry)の3名もDreamHack Winter 2014への出場を控えていたが、直前に禁止処置を受けた。ESEA Leagueは禁止処置について、Valveと直接協力した結果であると主張した。smnとKQLYはどちらもチートの使用を認めている。