s/g → 0:Valveが数学で転売ヤーを餓死させる方法

s/g → 0:Valveが数学で転売ヤーを餓死させる方法

Steam転売防止アルゴリズムValveランダム化

データソース:HN · HN

2026年6月23日、Valveの Steam Machine が正式に販売開始された。最低価格は$1,049(512GB版)、最上位の2TB + Steam Controller バンドルは$1,328。価格が発表されると、HNは大騒ぎになった——891コメント、1010ポイント。しかし技術コミュニティを本当に興奮させたのは、価格でもハードウェア仕様でも、LTT Labsによる「Newell Nucleus」SoCの分解でもなかった。HNで最も密度の高い議論は、Valveの転売防止システムの背後にある数学的ロジックに向けられていた。

Valveは先着順の秒殺販売も、抽選も、ユーザーに身分証明書のアップロードを要求することもしなかった。代わりに一見「非効率」に見えることをした:予約受付期間を2日半(6月23日〜6月25日午前10時PT)に引き伸ばし、期間終了後に全予約リストを一括でランダムに並べ替えた。同時に3つのハードルを設定した——Steamアカウントが良好な状態(good standing)であること、2026年4月27日までに少なくとも1回の購入記録があること、1世帯あたり1台まで。選ばれたユーザーにはメールが届き、72時間以内に支払いを完了する必要があり、さもなければ資格は次順位に繰り越される。落選者は待機キューに入り、解散はしない。

これらの4つの施策は個別に見れば目新しいものではない。しかし組み合わさることで、HNユーザーtmoertelが思わず数式を取り出して分析したくなる仕組みを構成している。

ランダム化は公平さではなく、次元を変える打撃

転売ヤーのビジネスモデルは2つの確実性の上に成り立っている:需要が供給を大幅に上回ること、そして転売ヤーが正規ユーザーよりも速く取引の終点に到達できること。先着順の秒殺システム(FCFS)は転売ヤーの完璧な狩り場である——スクリプトの応答速度はミリ秒単位、人間のクリック速度は秒単位であり、この差はカウントダウンがあるどんなページでも圧倒的なものに増幅される。

ランダム化予約キューは座標系を変えた。もはや誰が速いかではなく、誰が「本物」かを競う。48時間の予約期間では、遅れて来た人も早く来た人も同じスタートラインに立つ。期間終了後の一括ランダム並べ替えは、時間という次元を競争変数から除外した。

tmoertelがHNで行った分析は、この直感を数学に翻訳した。本人確認のない先着順システムでは、転売ヤーの期待シェアはキューに投入できるアカウント数と総需要の比に依存する。総需要を N、転売ヤーが制御する資格のあるアカウント数を s、正規プレイヤーのアカウント数を g とすると、転売ヤーの期待獲得シェアはおおよそ s / (s + g) となる。転売ヤーが大量登録で s を無限に拡大できるとき、この比率は容易に50%を超える。

しかしValveはランダム化に加えて第二の層を重ねた——アカウント信誉スコアがこの扉を完全に閉ざした。 4月27日という期限は公開情報の中で最も重要な数字である。ValveはSteam Controllerの販売開始前に設定されたタイムラインを選択した。つまり、Steam Machineの発表後に登録されたアカウントはすべて予約資格を持たない。s は新規アカウントの登録によっては膨張できない。

転売ヤーに残された道は、既存アカウントを使うことだ——買った闇アカウント、借りた古いアカウント、貯め込んだ休眠アカウント。しかしこれらのアカウントは2つの問題に直面する。第一に、その数は正規のアクティブユーザーよりはるかに少ない。Steamの月間アクティブユーザーは1.3億を超え、2026年4月27日までに購入経験のあるアカウントの割合は低くない。転売ヤーが持つ「古いアカウント + 購入記録あり + 良好な状態」の三重条件を満たすアカウント数 s は、正規プレイヤー g の前では微小な量である。s/g がゼロに近づくとき、転売ヤーの実際の獲得シェアもゼロに近づく。 第二に、1世帯1台の制限は、転売ヤーが分散したアカウントでの購入を一箇所に集中して出荷する経路を断つ——仮に運よく10の枠を獲得しても、10の異なる配送先を用意することはそれ自体が十分に高い物理的ハードルである。

これがtmoertelの結論が「転売ヤーは系統的に排除される」である理由である——システム設計により、転売ヤーが存在しても期待値ベースで利益を得ることが困難になる。利益を得るための前提は s が十分に大きいことであるが、s は3層のフィルター(時間閾値、信誉閾値、世帯制限)によってゼロに近い値に圧縮される。

5方式の工学的比較

Valveのこの仕組みを転売防止方式のスペクトラムの中に置くと、どのようなトレードオフを選択したかがより明確に見える。

方式核心メカニズム転売ヤーへの殺傷力正規ユーザーへのコスト代表事例
先着順 (FCFS)リクエスト時間順極めて低い——スクリプトが人間を圧倒ユーザーは張り込み、クリック速度競争、botに繰り返し敗北PS5発売、NVIDIA RTX 30シリーズ
純抽選 (Lottery)ランダム選択中程度——転売ヤーは複数アカウントで参加可能ランダムで公平だが、ユーザーにコントロール感なし一部のスニーカー販売
実名制 + 顔認証本人確認と紐付け高い——複数アカウント困難プライバシーコスト大、越境適用性低い中国の一部購入シーン
招待制 (Invite-only)ベンダーがユーザーを選別高い——ベンダーが割当を制御資格が不透明、ユーザーは傲慢に扱われたと感じるSony PS5初期招待、NVIDIA優先プログラム
ランダム化予約 + 信誉階層時間窓ランダム再配列 + アカウント履歴フィルタ高い——s/g がゼロに漸近古いアカウントが必要、新規ユーザーは除外されるValve Steam Machine

表の中で最も重要な列は「正規ユーザーへのコスト」である。転売防止は決して技術のみの次元の問題ではない——それぞれの方式は「転売ヤーを排除する」ことと「正規ユーザーに誤認損害を与える」ことの間に異なる境界線を引いている。 先着順は境界線を「速度」に引いた。結果として、スクリプトを書かないすべての正規ユーザーが誤認損害を被る。抽選は境界線を「運」に引いた。努力で確実性を得たいユーザーが誤認損害を被る。実名制は境界線を「プライバシー」に引いた。生体情報を提供したくない人が誤認損害を被る。招待制は境界線を「ベンダーの選好」に引いた。アルゴリズムに選ばれない沈黙の大多数が誤認損害を被る。

Valveの方式は境界線を「アカウント履歴」に引いた。Steamユーザーがそこで一度もお金を使ったことがないか、アカウントが最近登録された場合、この境界線の外側に置かれる可能性がある。 これは完璧な方式ではない——2026年4月28日になって初めてSteamに登録したPCゲーマーは、このロジックに拍手を送ったりはしない。しかし工学的観点から見ると、この方式は一つのことを達成している:誤認損害の範囲を、定義可能で予測可能であり、かつ転売ヤーの行動特性と高い負の相関を持つ集団に限定している。新しいアカウントが必ずしも転売ヤーではないが、転売ヤーはほぼ確実に新しいアカウントを使う。Valveが「新規ユーザーを犠牲にするくらいなら」という方向に傾いたのは、意識的な工学的決定であり、無意識の過失ではない。

単純化されたランダム化割当モデル

Valveは正確なアルゴリズムを公開していないが、公開情報から近似的な骨格を逆推定できる。以下は核心ロジックを説明するための単純化されたPython実装である:

import random
from datetime import datetime, timedelta

CUTOFF_DATE = datetime(2026, 4, 27)
WINDOW_CLOSE = datetime(2026, 6, 25, 10, 0)  # 10am PT
MAX_PER_HOUSEHOLD = 1
AVAILABLE_UNITS = 50000  # Valveは初回出荷量を未公表


class Reservation:
    def __init__(self, steam_id, account_created, has_purchase_before_cutoff,
                 is_good_standing, household_id):
        self.steam_id = steam_id
        self.account_created = account_created
        self.has_purchase_before_cutoff = has_purchase_before_cutoff
        self.is_good_standing = is_good_standing
        self.household_id = household_id


def filter_eligible(reservations):
    """第一層:ハードな資格フィルタ。条件を満たさないものは即座に除外。"""
    eligible = []
    seen_households = set()

    for r in reservations:
        if not r.is_good_standing:
            continue
        if not r.has_purchase_before_cutoff:
            continue
        if r.household_id in seen_households:
            continue  # 一世帯一台

        seen_households.add(r.household_id)
        eligible.append(r)

    return eligible


def allocate(reservations, available_units):
    """第二層:ランダム並べ替え後、順次割り当て。"""
    eligible = filter_eligible(reservations)

    # 一括ランダム並べ替え——予約期間全体で時間的優先順位なし
    random.shuffle(eligible)

    winners = eligible[:available_units]
    waitlist = eligible[available_units:]

    return winners, waitlist

この骨格の工学的直感は:フィルタ層が「誰が入場資格があるか」の問題を解決し、ランダム層が「資格者の中で誰が先に入手するか」の問題を解決する。 2つの層は互いに依存せず、いずれの層のパラメータも独立して調整可能である——期限は前後させることができ、ランダム化は加重ランダムに置き換えることができ(例:古いアカウントのウェイトを高くする)、世帯制限は物理アドレス照合に変更できる。モジュール構造により、Valveは将来新しい転売ヤーの戦略に直面したときに最初から設計をやり直す必要がない。

しかしこのモデルには暗黙の前提がある:Valveは「アクティブプレイヤー」と「休眠アカウント」を区別できる能力を持っている。Steamのアカウント信誉スコアは多次元的である——購入履歴、ゲームプレイ時間、コミュニティへの貢献(ワークショップ、レビュー、ガイド)、アカウント年数、VAC禁止記録の有無、支払い方法の履歴的一貫性。Valveはあなたのゲームライブラリの価値、最後にDota 2を開いた日時、そして友人リストに3年以上の古い友人が何人いるかを知っている。 転売ヤーは購入記録のある古いアカウントを買うことはできても、10年のゲームプレイ時間と200人の友人は付与できない。これらの次元の組み合わせは、「期限までに購入したことがあるか」よりもはるかに深い堀を構成する。

なぜこの方式が「エレガント」と言われるのか

HNでのこの方式への賞賛は「エレガント」という言葉に集中している。この言葉は工学的文脈で特定の意味を持つ:最小の複雑さで最大のレバレッジを得ること。 Valveは新しい暗号プロトコルを発明したわけでも、ゼロ知識証明を導入したわけでも、オンチェーン本人確認を導入したわけでもない。使用したのはすべてSteamプラットフォームに既存のデータ——購入記録、アカウント状態、世帯住所——と、一つの乱数生成器である。

4つのメカニズムが重なることで生み出される効果は、各部分の総和を超える:

  1. 時間窓がスクリプトの優位性を排除——転売ヤーのbotより速くある必要はない。48時間以内の好きな時にワンクリックするだけでよい。
  2. 期限がアカウント供給を凍結——発表後に転売ヤーは戦力を拡充できず、s は所定の値にロックされる。
  3. 信誉スコアが履歴のないアカウントを排除——s の「有効供給」はさらに実際の使用痕跡がある古いアカウントのみに圧縮される。
  4. 世帯制限が集中出荷を遮断——個々の転売ヤーの s が1より大きくても、同一の物理アドレスで引き換えることはできない。

この4ステップは1つの漏斗を構成する:「購入したい全員」から「購入資格のある人」から「ランダムに選ばれた人」から「実際に商品を受け取れる人」へ。各ステップでの漏出は転売ヤーにとって非対称的な打撃となる——正規ユーザーは各ステップで数パーセントポイント失うだけだが、転売ヤーは各ステップで一桁のオーダーで失う。

この非対称性がs/g公式の真髄である。転売ヤーの初期 s が正規プレイヤーのわずか1/100であれば、4層のフィルタリングを経た後、最終的にマシンを入手する割合は1/10000にも低下しうる。そしてこのシステム全体において、正規ユーザーは普段Steamで行っている以外のことを何も要求されない。

限界と未解決の問題

現在の公開情報から見ると、この方式には欠点がないわけではない。

第一に、古いアカウントの闇市場取引は依然として存在する。Steamアカウントに5年の履歴、購入記録、良好な状態があれば、闇市場での価格は決して安くはないが、転売ヤーを思い止まらせるほどでもない——1台のSteam Machineの転売利益がアカウントコストとマシンコストを上回る限り、転売ヤーには古いアカウントを買い集めるインセンティブがある。期限設定は新規アカウントの注入を制限するが、既存の古いアカウントの取引を消滅させるわけではない。この防御線の有効性は、一部は闇市場の古いアカウントの価格弾力性に依存する。このデータを握っているのはValveであり、外部は推測するしかない。

第二に、ランダム化予約は従来の抽選と形式的には近いが、ユーザーの知覚は異なる——Valveがそれを抽選と呼んでいないからだ。48時間の予約期間はユーザーに「自分は並んでいる」という錯覚を与える——たとえこの列が期間終了後にランダムにシャッフルされるとしても。この設計が穏やかな心理的操作を構成するかどうかは議論に値する。あるHNユーザーは率直に言った:「これと抽選の違いは何だ?ただ抽選箱を隠しただけだ。」しかし別の返信が重要な違いを指摘した:抽選はしばしば瞬時に完了し、ユーザーは数秒後に結果を知る。一方、ランダム化予約は「参加感」を48時間に引き伸ばし、参加感自体が購入不安の一部を消費する。 心理学的には、不安が少なければ少ないほど、ユーザーの結果に対する受容度は高まる——たとえ結果自体が同じくランダムであっても。

第三に、このシステムの成功は「良好な状態」の定義が非公開であることに大きく依存している。転売ヤーが信誉スコアの正確な重みを知っていれば、アカウントを戦略的に育成できる。曖昧なスコアリング基準自体が一つの防御壁である。しかしこの壁にも代償がある——拒否されたユーザーは自分がどこで不足しているのかを知ることができず、改善できない。これはクレジットカードの拒否と似ている:アルゴリズムは不合格と言うが、その理由は教えてくれない。

第四に、Steam Machine の需要規模はまだ確定していない。需要が供給を大幅に上回る場合——たとえば500万台の予約に対して5万台の実在庫——s/gがゼロに近づいても、なお45万人の正規ユーザーがマシンを入手できない。彼らは二次市場での購入者として再出現する——これこそが転売ヤーが存在する根本的前提である。転売防止システムは転売ヤーによる配分プロセスの横取りを阻止するが、需給ギャップそのものを消滅させることはできない。 ギャップが存在する限り、二次市場は消えない——唯一の違いは、マシンが「運の良い正規ユーザー」によって転売されるのか、「システムに排除された転売ヤー」によって転売されるのかである。前者の場合、少なくとも転売ヤーは第一層のプレミアムを取得していない。

他社の回答

SonyはPS5発売時に典型的なFCFSと中途半端なキューイングを使用した——カウントダウンがゼロになる瞬間にユーザーが殺到し、ページはクラッシュし、マシンは3秒で在庫切れ表示となり、eBayでの値上げ幅は50%から200%の間で変動した。Sonyは後にPlayStation Directでランダム化キューを導入したが、アカウント履歴のハードな閾値が欠如していたため、転売ヤーは複数デバイス・複数アカウントで参加できた。NVIDIAのRTX 30シリーズは別の壊滅的事例である——2020年から2022年にかけて、マイニングブームと転売ヤーの二重の圧力の下で、RTX 3080の二次市場価格は一時的に発売価格の3倍に達した。NVIDIAは招待制(GeForce Experienceを通じてゲームプレイ時間の長いユーザーを選別)を試みたが、実行の徹底度と適用範囲はValveの今回の取り組みに遠く及ばなかった。

Valveの特異な優位性は、20年にわたって蓄積されたアカウントエコシステムにある。 SonyのPSNアカウントにも履歴はあるが、PSNの購入データはSteamほど密ではない——コンソールユーザーは主にパッケージ版を購入するかもしれない。NVIDIAにはGeForce Experienceはあるが、Eコマースプラットフォームはない。Valveは世界最大のPCゲーム配信プラットフォームであり、ハードウェア販売チャネルでもある——つまり、その「ユーザープロファイル」は競合よりも厚いだけでなく、トランザクションレベルである——Steamはあなたがいくら使ったか、どのゲームを買ったか、どのデバイスでプレイしているか、さらにはゲームの返金頻度まで知っている。このデータ資産こそがs/g公式を成立させている根本的前提である。アカウント履歴データがなければ、ランダム化予約は単により親切な抽選にすぎず、最も重要な第二層のフィルタリングを失う。

結び

ValveのSteam Machineにおける転売防止方式は、本質的には「割当権を時間に返す——秒単位の争奪戦ではなく、年単位のアカウント蓄積」である。転売ヤーが得意とするのは速度競争である——スクリプトのミリ秒応答、マルチスレッド並行処理、IPプールのローテーション。Valveは競技種目を「速度」から「履歴」に変えた。Steamで数年分の行動を蓄積した正規ユーザーは、追加の努力を一切必要としない——彼はすでに転売ヤーのストックアカウントよりも価値があるのだ。

s/g → 0 はシステム設計目標であり、数学的恒等式ではない。 期限設定、信誉スコア、世帯制限、ランダム並べ替え——これら4つのパラメータで構成される制御面により、Valveは将来、転売ヤーの戦略進化に対応するためにパラメータを調整することができ、新製品をリリースするたびにゼロから新しい購入メカニズムを設計する必要がない。ハードウェアを継続的にリリースする計画を持つ企業(Steam Frame VRがすでに進行中)にとって、これは転売防止が毎回の販売における緊急対応ではなく、反復可能な工学的サブシステムであることを意味する。

このシステムが実際に転売ヤーのシェアをどこまで圧縮できるのか、どれだけの新規ユーザーを誤認損害するのか、そして期限設定戦略が長期的に「アカウント育成」地下産業を生み出すのか——これらの問いへの答えは販売初日には明らかにならない。しかし少なくとも今日、ValveはHNの技術コミュニティが思わず草稿用紙を取り出して数学モデルを導出したくなるような答えを提示した。それ自体が、ほとんどの転売防止方式の結末よりもはるかに優れている。