# ความปลอดภัยและขอบเขตความเชื่อถือ

**โมเดลภัยคุกคาม Pre-alpha ยังไม่มีการตรวจสอบความปลอดภัยเสร็จสมบูรณ์ อย่าฝากความปลอดภัยของเงินที่มีนัยสำคัญไว้กับเอกสารหรือตัวอย่างปัจจุบัน**

## ขอบเขตภัยคุกคาม

อาร์ติแฟกต์ปลอมหรือถูกแก้ การผูกผู้ออกกับกุญแจผิด การรีเพลย์ ความสับสนข้ามเชน/สินทรัพย์ ข้อสังเกตเก่า การปรับสายโซ่ใหม่ หลักฐานขาด การตอบ RPC/ตัวทำดัชนีที่ถูกโจมตี พฤติกรรมโทเคนไม่รองรับ และเวอร์ชันนโยบายไม่สอดคล้อง

URL ในรายงาน ผล API จารึก และข้อความเอเจนต์อาจมีคำสั่งอันตรายหรือกระตุ้น SSRF การดึงข้อมูลต้องจำกัด scheme ป้องกันเครือข่ายส่วนตัวและที่อยู่ metadata จำกัด redirects เวลาและจำนวนไบต์ และไม่ใช้สิทธิ์รับรองที่ติดมากับสภาพแวดล้อม ต้องจำกัดพฤติกรรม parser และ regex

## ภัยที่ใบรับรองแก้ไม่ได้

ลายเซ็นถูกต้องไม่พิสูจน์ความจริง การคำนวณอย่างซื่อสัตย์จากข้อมูลเท็จอาจผิดจากโลกจริง ผู้ดูแลอาจละงานบางงานก่อนผูกมัดชุดงาน การสุ่มผู้ประเมินไม่ลบความเสี่ยงสมรู้ร่วมคิด เวลาประทับไม่พิสูจน์ลำดับแบบผูกขาด ความลับ หรือความพร้อมข้อมูล นโยบายอาจออกแบบผิดแม้เงื่อนไขผ่าน

## แยกกุญแจและเอเจนต์

การลงนาม production คลังเงิน ข้อมูลรับรองการ deploy และเอเจนต์วิจัยเป็นโดเมนความเชื่อถือแยกกัน worker วิจัยไม่มีอำนาจใช้กระเป๋า การเปลี่ยนแปลงต้องผ่าน review ก่อนแก้กุญแจที่ยอมรับหรือปล่อยรุ่น GitHub และเอกสารสาธารณะไม่เก็บ seed phrase, private key, API secret หรือหลักฐานลูกค้าที่อ่อนไหว

## ข้อกำหนดปฏิบัติการ

ตรึงส่วนพึ่งพา ทบทวนการเปลี่ยน supply chain ใช้สิทธิ์น้อยที่สุด ปกปิดข้อมูล log จำกัดการเก็บข้อมูล และบันทึกเหตุขัดข้อง เมื่อหลักฐานไม่พร้อมให้ INDETERMINATE อย่าเปลี่ยนพฤติกรรมล้มเหลวเพื่อให้เดโมผ่าน

`SECURITY.md` ของรีโพซิทอรีระบุช่องทางแจ้งปัญหา จนกว่าจะตั้งช่องทางความปลอดภัยสาธารณะที่ยืนยันแล้ว ให้ใช้ช่องทางร่วมงานส่วนตัวที่มีอยู่ และห้ามเผยรายละเอียดโจมตีหรือข้อมูลลูกค้าจริงใน issue สาธารณะ

<!-- p21-source-payment-v08 -->

## ทำซ้ำได้ไม่ได้แปลว่าสุ่มไร้อคติ

nonce สาธารณะไม่ใช่แหล่งสุ่มส่วนตัวหรือสม่ำเสมอ การแฮช nonce หรือเพิ่มแฮชบล็อกไม่ได้ลบอิทธิพลของผู้ขุดหรือสร้างเอนโทรปีอิสระ บริบทคำขอต่างกันให้ผลคำนวณต่างกัน ไม่ใช่ความสุ่มอิสระใหม่ [7]

การเลือกโดยข้อมูลอนาคตต้องผูกชุดผู้มีสิทธิ์ ลำดับ น้ำหนัก ID คำขอ บริบท อัลกอริทึม โปรไฟล์แหล่งข้อมูล กฎเลือกบล็อกอนาคตที่แน่นอน และนโยบายยืนยันก่อนทราบข้อมูล เก็บหลักฐานเวลาของ commitment ที่บุคคลภายนอกตรวจได้ แฮชที่สร้างภายหลังไม่พิสูจน์การตกลงล่วงหน้า กำหนดคำขอที่ยอมรับเพียงหนึ่ง การลองใหม่ การยกเลิก การปกปิดผล การเผยแพร่ล่าช้า และการกู้คืนเมื่อเชนจัดระเบียบใหม่ เพื่อป้องกันเลือกผลจากการสุ่มซ้ำ ประเมินมูลค่ารวมของงานที่ใช้แหล่งเดียวกัน ห้ามให้การเล่นซ้ำอดีตมีระดับการรับรองเดียวกับการเลือกจากอนาคต


## หลักฐานชำระเงินและบัญชีที่บันทึกครั้งเดียว

ใบแจ้งชำระผูกผู้เรียก แฮชคำขอ คีย์ idempotency เครือข่ายและสินทรัพย์ที่แน่นอน ผู้รับของร้านค้า จำนวนเต็มหน่วยย่อย สิทธิ์เครดิตบริการ เวลาหมดอายุ และนโยบายชำระบัญชี ตัวเชื่อมต่อตรวจเหตุการณ์โอนที่ดำเนินการจริง รวมปลายทาง จำนวน ตัวตนการสร้างโทเคน บล็อกเชนหลัก จำนวนยืนยัน ขอบเขตดัชนี และเวอร์ชันกฎ ID ธุรกรรม การเห็นใน mempool การสร้าง inscription หรือภาพยอดกระเป๋าไม่ใช่การชำระบัญชี

ใช้เครือข่าย การสร้างสินทรัพย์ ธุรกรรม และตัวตนการดำเนินการหรือ inscription เป็นคีย์เหตุการณ์ไม่ซ้ำ ผูกเจ้าของใบแจ้งชำระกับผู้เรียกตามสัญญา ไม่รับเพียงแฮชธุรกรรมใดก็ได้ การเพิ่มเครดิต การจองงาน การใช้และคืนเครดิตต้องใช้ธุรกรรมบัญชีแบบอะตอมและข้อบังคับคีย์ไม่ซ้ำ การลองใหม่หรือ webhook ซ้ำต้องไม่เพิ่มเครดิตหรือเรียกเก็บซ้ำ หลักฐานไม่ครบ ดัชนีล่าช้าหรือขัดกัน และเชนจัดระเบียบใหม่ต้องรอหรือทบทวน กำหนดบัญชีชดเชยและนโยบายรับความเสียหายของผู้ดำเนินการสำหรับการจัดระเบียบใหม่ลึก ห้ามแอบหักเงินลูกค้ารายอื่น


[1] https://digital-matter-theory.gitbook.io/digital-matter-theory/introduction/digital-elements/.element-registry

[2] https://github.com/Trac-Systems/ord-tap/blob/b8f6ea35cf6b9d405d4db7c58555e3c8ab33e8cd/src/index/updater/inscription_updater/tap/ops/dmt_element.rs

[3] https://digital-matter-theory.gitbook.io/digital-matter-theory/introduction/nat-use-cases/usdnat-method-1-live

[4] https://digital-matter-theory.gitbook.io/digital-matter-theory/introduction/non-arbitrary-tokens-nats/nat-token-transfer

[5] https://docs.x402.org/core-concepts/network-and-token-support

[6] https://github.com/Trac-Systems/ord-tap/blob/b8f6ea35cf6b9d405d4db7c58555e3c8ab33e8cd/README.md

[7] https://arxiv.org/abs/1605.04559

<!-- p21-enforcement-v10 -->

## ภัยจากเอเจนต์ประสงค์ร้ายและการปฏิเสธเท็จ

รายงานไม่สามารถบังคับเอเจนต์ที่ถือกุญแจแบบไม่จำกัดได้ การบังคับใช้ที่มี assurance สูงต้องแยก capability: โมเดลเสนอ action ได้ แต่ signer หรือ API authority ที่ป้องกันต้องเข้าถึงผ่าน execution gate ที่ตรวจ authorization ใหม่เท่านั้น หากโมเดลยังมีคีย์หรือช่องทางจ่ายอื่นที่ไม่ถูกจำกัด ห้ามอ้างว่า gate บังคับใช้ได้

Authorization ต้องผูก canonical action, request, policy, network, asset/recipient/amount เมื่อเกี่ยวข้อง, nonce และ expiry และคำนวณ action digest ใหม่ก่อน sign เพื่อป้องกัน substitution และ TOCTOU

ผู้รับที่ประสงค์ร้ายไม่สามารถเปลี่ยนข้อเท็จจริงด้วยคำว่า DENIED การตัดสินใจ `ACCEPT / REJECT / REVIEW` เป็น signed artifact แยกต่างหาก รายงาน `CONTRADICTORY` ได้เฉพาะเมื่อมี deterministic precommitted policy และหลักฐานครบ มิฉะนั้นเป็น `UNRESOLVED` และต้องเก็บ signed decisions ที่ขัดกันเป็น equivocation evidence
