MMRF v1.0
EN

安全

邊界就是架構本身,不是免責聲明。

質數資料集會招來一種顯而易見的誤用。MMRF 的回應不是一段使用條款,而是一個跑在資料層之前、直接拒絕十七個欄位名稱的守衛。

MMRF 是什麼

  • 一個固定區間內質數之數學性質的公開資料集。
  • 一個聚合查詢面:密度、分位數、直方圖、計數。
  • 一份關於該資料集如何成立的治理與來源記錄。

它不會做什麼

  • 接受任何形式的外部整數,包含 RSA modulus。
  • 回傳因數、因數候選,或一組候選。
  • 縮減搜尋範圍,或回答一個其價值就在於縮減範圍的問題。
  • 回傳最近質數、精確質數列表,或原始質數記錄。
  • 儲存或發布合數與其因數之間的關係。
  • 暴露受控資料集。它們不會經由任何路徑抵達本站。

永遠不會存在的端點

  • POST /factor
  • POST /rsa
  • POST /nearest-prime
  • POST /candidate-range
  • POST /target-query
  • POST /raw-primes
  • POST /source-factor

拒絕實際上如何運作

守衛在資料層被碰到之前就評估請求。被禁的欄位名稱會導致拒絕,理由中會指名該欄位,成本為 cost_units: 0,而 normalized_request 為 null——請求從未被正規化,因此下游沒有任何東西可供執行。

送出
{
  "version": "MMRF-SQL-0.8",
  "operation": "interval_density",
  "shard_start": 0,
  "shard_count": 1,
  "rsa_modulus": "1000036000099"
}
回傳
{
  "status": "DENIED",
  "decision": {
    "allowed": false,
    "decision": "DENY",
    "reasons": [
      "target_conditioned_or_factor_related_field_forbidden",
      "forbidden_field:rsa_modulus"
    ],
    "cost_units": 0,
    "normalized_request": null
  },
  "audit": {
    "event_id": "lake-query:ed5a56ba-…",
    "event_hash_sha256": "1d60abd3c37dbb0d…"
  }
}
成本: 0讀取分片: 0

拒絕依然會產生一個帶自身雜湊的稽核事件。拒絕是被記錄的,不是被默默丟棄的——這正是讓一連串嘗試誤用的行為變得可見、而非不可見的原因。

組合規則

單一的聚合答案是安全的;要留意的是一長串精心挑選的答案。所以這個查詢面同時受三重限制:固定的操作允許清單、每個工作階段的查詢預算,以及單次查詢可觸及分片數的上限。此外也要求研究者不要用允許的操作去重建被禁的輸出。

最後這一條是請求,不是強制,而且是刻意這樣寫的。一份宣稱能強制它其實做不到的事的政策,比一份誠實說明機制到哪裡為止的政策更糟。

回報

如果你找到一種方法,能用允許的操作取得被禁的輸出,那就是本設計的缺陷,值得透過runtime 儲存庫回報。請描述該組合方式,而不要公開一組可用的查詢序列。