Skip to content

ตัวระบุเนื้อหา (CID)

ลายนิ้วมือเฉพาะที่ทุกไฟล์ IPFS ได้รับ

CID คืออะไร?

ตัวระบุเนื้อหา (CID) คือป้ายกำกับที่อธิบายตัวเองซึ่งระบุข้อมูลบน IPFS อย่างไม่ซ้ำกัน มาจากแฮชเข้ารหัสของเนื้อหาไฟล์ รวมกับ metadata เกี่ยวกับอัลกอริทึมแฮชและรูปแบบการเข้ารหัสที่ใช้

bafybeigdyrzt5sfp7udm7hu76uh7y26nf3efuylqabf3oclgtqy55fbzdi

CID ที่ขึ้นต้นด้วย bafy (หรือ bafk สำหรับเนื้อหาบล็อกเดียวขนาดเล็ก) ใช้ CIDv1 รูปแบบอธิบายตัวเองรุ่นใหม่ CID แบบเก่าที่ขึ้นต้นด้วย Qm ใช้ CIDv0 (SHA-256 เข้ารหัส base58) — ยังคงถูกต้อง ยังคงแก้ไขได้ แต่ไม่ใช่เอาต์พุตเริ่มต้นสำหรับเนื้อหาใหม่อีกต่อไป

คุณสมบัติหลัก

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

CID ใน IPFS.NINJA

ทุกไฟล์ที่คุณอัปโหลดจะส่งคืน CID ในการตอบกลับ API ใช้มันเพื่อ:

  • เข้าถึงไฟล์ผ่าน gateway: ipfs.ninja/ipfs/<CID>
  • ดึง metadata ของไฟล์: GET /file/<CID>
  • อ้างอิงเนื้อหาบน chain (NFT, smart contract)
  • แชร์กับใครก็ได้ — พวกเขาสามารถตรวจสอบว่าเนื้อหาตรงกัน

CIDv0 เทียบกับ CIDv1

คุณสมบัติCIDv0CIDv1
PrefixQm...bafy... (dag-pb, ไดเรกทอรีและไฟล์หลายชิ้น), bafk... (raw, เนื้อหาบล็อกเดียวขนาดเล็ก) รวมถึงแบบอื่น ๆ ตาม codec
ฟังก์ชันแฮชSHA-256 เท่านั้นหลายแบบ (SHA-256, Blake2b ฯลฯ)
การเข้ารหัสBase58 (ตัวพิมพ์ผสม)Multibase — base32 เป็นค่าเริ่มต้น (ตัวพิมพ์เล็ก, ปลอดภัยสำหรับ DNS)
อธิบายตัวเองไม่ใช่ (รวมข้อมูล codec + hash)
Chunkerค่าเริ่มต้นแบบเก่า 256 KiB1 MiB ตาม IPIP-0499
การเข้ารหัส leafห่อด้วย dag-pbraw bytes (raw-leaves=true)

IPFS.NINJA สร้างอะไร

การอัปโหลดและการปักหมุดที่ทำหลัง 2026-07-13 จะส่งคืน CIDv1 เป็นค่าเริ่มต้น: การเข้ารหัส CIDv1 base32, ชิ้นข้อมูลขนาด 1 MiB, raw leaves — โปรไฟล์ IPIP-0499 unixfs-v1-2025 ผลลัพธ์เชิงปฏิบัติ:

  • ไฟล์ขนาดเล็ก (≤ 1 MiB) จะได้กลับมาเป็น bafk... (CIDv1 บล็อกเดียวแบบ raw)
  • ไฟล์และไดเรกทอรีขนาดใหญ่กว่าจะได้กลับมาเป็น bafy... (CIDv1 แบบ dag-pb)
  • ไฟล์ที่อัปโหลดผ่านเราจะได้ CID เดียวกับที่เครื่องมือรุ่นใหม่ใด ๆ (Helia, Kubo ล่าสุด, ipfs-car) จะคำนวณได้จากไบต์เดียวกัน

ความเข้ากันได้ย้อนหลัง

CID แบบเก่า Qm... จากการอัปโหลดก่อนหน้ายังคงแก้ไขได้อย่างสมบูรณ์ — gateway, POST /pin, GET /file/:cid, ตัวแก้ไข IPNS และทุก endpoint อื่นยอมรับทั้งสองรูปแบบตลอดไป หากคุณมี CID Qm... จากการอัปโหลดก่อนหน้า สิ่งที่คุณสร้างไว้จะไม่หยุดทำงาน