dsh-duty-separation-proof

前言

在 DeepSeek Harness(DSH)的生態中,分離職責是安全審計的核心目標之一。NIST 定義了多種 SoD 類型(靜態、動態、基於對象等),現有插件如 dsh-guarded-hcl 主要針對優化器/評估器/策略邊界,而 dsh-decision-effect-proof 負責決策與效果的 reconciling。

本插件解決的問題是:針對一套已供應的 DSH 工作流收據,如何離線、確定性地證明其是否遵守了聲明的職責衝突策略?

定位

dsh-duty-separation-proof 是一個專注於事後審計的離線證據生成工具。它不提供實時控制,而是對提供的收據鏈進行完整性校驗和策略合規性分析。

  • 名稱:dsh-duty-separation-proof
  • 維護者:dongsheng123132
  • 分類:admin-security
  • 許可證:MIT

核心功能

  1. 離線確定性證據:不依賴實時系統狀態,基於輸入數據生成固定結果。
  2. 流程順序校驗:嚴格驗證請求、批准、執行、觀察的精確順序。
  3. 身份與哈希綁定:驗證工作流、對象、修訂版本的身份與哈希綁定。
  4. 收據鏈連續性:檢查收據鏈是否斷裂或異常。
  5. 主體互斥校驗:驗證執行主體與批准主體是否屬於互斥集合。
  6. 法定人數驗證:確保批准流程達到預設的法定人數。
  7. 主體多樣性驗證:驗證主體和觀察者的身份多樣性與新鮮度。
  8. 內容尋址輸出:生成經過脫敏、內容尋址的 JSON 判定報告。

使用方法

插件提供了命令行工具進行檢查和驗證。DSH Bundle 暴露了 dsh_duty_separation_inspect 和 dsh_duty_separation_verify 工具,Standalone MCP Server 也提供了等效的 proof-only inline tools。

# 運行測試
npm test
# 運行靜態檢查
npm run check
# 檢查特定示例
node bin/dsh-duty-separation-proof.mjs inspect examples/settled.json
# 驗證證據
node bin/dsh-duty-separation-proof.mjs verify examples/settled.json

技術細節

  • Manifest 邊界:所有工作流、對象、修訂、策略、主體、觀察者和收據的身份均爲 lowercase SHA-256 值。報告僅包含有界的 proofId 哈希。
  • 標準序列:驗證的序列必須以 request 開始,包含 execute,以 observe 結束,中間可包含多個 approve 階段。
  • 策略輸入:disjointDutySets(互斥職責集)和法定人數閾值是明確的策略輸入。

注意事項

  • 非授權系統:本插件不是授權系統。它不授予角色、批准請求、執行更改、認證收據、檢查實時系統或證明提供的賬本詳盡無遺。
  • 報告屬性:生成的報告故意將 authenticatesReceipts、provesLedgerExhaustive 和 provesAbsenceOfUndeclaredActions 標記爲 false。

參考資料

NIST Separation of Duty glossary
NIST SP 800-192

GitHub 倉庫 | SkillHub 目錄

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜