0Pricing
Cryptology Academy · บทเรียน

การแบ่งปันความลับเชิงภาพและรูปแบบการแบ่งปันแบบบวก

สำรวจการแบ่งปันแบบบวกที่ใช้ XOR และรูปแบบการเข้ารหัสเชิงภาพ

การแบ่งปันความลับเชิงภาพและรูปแบบการแบ่งปันแบบบวก เป็นบทเรียน Cryptology Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Cryptology Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Cryptology Academy มีบทเรียนทั้งหมด 4 บทเรียน

ภาพรวมการเข้ารหัสเชิงภาพ

การแบ่งปันความลับด้วยภาพ (Naor & Shamir, 1994) แบ่งภาพออกเป็นแผ่นใส n แผ่น โดยเมื่อซ้อนแผ่นใส k แผ่นเข้าด้วยกันจะเผยให้เห็นภาพลับ ขณะที่การใช้แผ่นใสจำนวนน้อยกว่านั้นจะไม่เปิดเผยข้อมูลใด ๆ แม้แต่แก่ผู้โจมตีที่มีความสามารถในการคำนวณไม่จำกัด

รูปแบบการเข้ารหัสด้วยภาพแบบ 2-of-2

พิกเซลแต่ละพิกเซลของความลับจะถูกขยายเป็นบล็อกขนาด 2x2 สำหรับพิกเซลดำ ส่วนแบ่งทั้งสองจะได้รับรูปแบบที่เติมเต็มกัน (เมื่อซ้อนกันจะเป็นสีดำทั้งหมด) สำหรับพิกเซลขาว ส่วนแบ่งทั้งสองจะได้รับรูปแบบเดียวกัน (เมื่อซ้อนกันจะมีสีดำ 50% = สีเทา) ดวงตาของมนุษย์จะรับรู้ความแตกต่างนี้

การแบ่งปันแบบบวกด้วย XOR

สำหรับสายบิต ให้แบ่งปันความลับ S โดยสร้าง R_1, R_2, ..., R_{n-1} แบบสุ่ม แล้วกำหนด R_n = S XOR R_1 XOR ... XOR R_{n-1} เมื่อนำส่วนแบ่งทั้ง n ส่วนมา XOR เข้าด้วยกันจะได้ S ส่วนแบ่งใด ๆ จำนวน n-1 ส่วนมีการสุ่มแบบสม่ำเสมอ จึงไม่เปิดเผยข้อมูลใด ๆ เกี่ยวกับ S

การแบ่งปันแบบบวกเทียบกับ Shamir

การแบ่งปันด้วย XOR หรือแบบบวกเป็นแบบ n-of-n ซึ่งต้องใช้ส่วนแบ่งทั้งหมด ส่วน SSS ของ Shamir เป็นแบบ k-of-n ซึ่งใช้ส่วนแบ่งใด ๆ k ส่วน การแบ่งปันแบบบวกเรียบง่ายและรวดเร็วกว่า ส่วน Shamir รองรับเกณฑ์ที่กำหนดได้ตามต้องการ โปรโตคอล MPC มักใช้การแบ่งปันแบบบวกสำหรับการดำเนินการเลขคณิต

การแบ่งปันความลับเหนือจำนวนเต็ม

สำหรับความลับที่เป็นจำนวนเต็ม ให้แบ่งปัน S ในรูป S = s_1 + s_2 + ... + s_n (mod p) โดย s_i แต่ละค่าคือสมาชิกสุ่มของ Z_p หากต้องการบวกค่าที่แบ่งปันไว้สองค่า A+B แต่ละฝ่ายจะบวกส่วนแบ่งของตนเองภายในเครื่อง: (a_i + b_i) mod p การบวกไม่จำเป็นต้องสื่อสารระหว่างกัน

การคูณในการแบ่งปันแบบบวก

การคูณค่าที่แบ่งปันแบบเป็นความลับต้องมีการโต้ตอบ วิธีชุดสามค่า Beaver แบบดั้งเดิมคือคำนวณล่วงหน้าสำหรับค่าที่สุ่มแบ่งปันไว้ (a, b, c=ab) หากต้องการคูณ x*y ให้เปิดเผย (x-a) และ (y-b) แก่ทุกฝ่าย (ค่าเหล่านี้ไม่เปิดเผยข้อมูลใด ๆ เกี่ยวกับ x,y) จากนั้นคำนวณ x*y โดยใช้ชุดสามค่านั้น

รูปแบบการแบ่งปันความลับเชิงเส้น

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

การแบ่งปันความลับแบบบรรจุ

การแบ่งปันแบบ Packed Shamir สามารถเก็บความลับหลายค่าไว้ในพหุนามเดียว โดยเข้ารหัสความลับ k ค่าเป็นสัมประสิทธิ์ของพหุนามดีกรี (n-k) วิธีนี้ช่วยลดต้นทุนการสื่อสารต่อค่าในโปรโตคอล MPC เมื่อจำเป็นต้องแบ่งปันค่าจำนวนมากพร้อมกัน

การตรวจจับการโกง

รูปแบบการแบ่งปันพื้นฐานไม่มีการป้องกันผู้ถือส่วนแบ่งที่ประสงค์ร้ายซึ่งส่งส่วนแบ่งไม่ถูกต้อง การแบ่งปันความลับที่ตรวจสอบได้ (VSS) เพิ่มค่าให้คำมั่น ส่วนการแบ่งปันความลับแบบทนทานเพิ่มการแก้ไขข้อผิดพลาด ทำให้การกู้คืนสำเร็จได้แม้มีส่วนแบ่งที่ไม่ถูกต้อง t ส่วน

การประยุกต์ใช้

การเข้ารหัสเชิงภาพ: การยืนยันความถูกต้องของเอกสารสิ่งพิมพ์และบัตรลงคะแนนที่ปลอดภัย การแบ่งปันแบบบวก: MPC ของ SPDZ และการรวมข้อมูลอย่างปลอดภัยในการเรียนรู้แบบรวมศูนย์ (Google) รูปแบบตามเกณฑ์: การสำรองข้อมูลค่าเริ่มต้นของกระเป๋าเงินฮาร์ดแวร์และการจัดการกุญแจระดับองค์กร

รูปแบบแบบลาดระดับ

รูปแบบแบบลาดระดับ (k,n) มีความปลอดภัยอ่อนกว่า โดยส่วนแบ่งน้อยกว่า k-d ส่วนจะเปิดเผยข้อมูลบางส่วน (มีระดับความลับ d ระดับ) ใช้เมื่อไม่จำเป็นต้องรักษาความลับอย่างสมบูรณ์ของส่วนแบ่งบางส่วน แต่ประสิทธิภาพด้านพื้นที่จัดเก็บมีความสำคัญ รูปแบบนี้ทำให้ใช้ส่วนแบ่งที่สั้นกว่า Shamir ได้

แบบทดสอบสั้น ๆ

ในการแบ่งปันแบบบวกด้วย XOR แบบ n-of-n ต้องใช้ส่วนแบ่งกี่ส่วนเพื่อกู้คืนความลับ

สรุปทบทวน

การเข้ารหัสเชิงภาพแบ่งภาพออกเป็นแผ่นใส การแบ่งปันแบบบวกใช้ XOR สำหรับรูปแบบ n-of-n และ Shamir รองรับ k-of-n MPC ใช้การแบ่งปันแบบบวกกับชุดสามค่า Beaver สำหรับการคูณ ต่อไป: ลายเซ็นตามเกณฑ์และการใช้งานจริง

คำถามที่พบบ่อย

บทเรียน “การแบ่งปันความลับเชิงภาพและรูปแบบการแบ่งปันแบบบวก” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “การแบ่งปันความลับเชิงภาพและรูปแบบการแบ่งปันแบบบวก” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Cryptology Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Cryptology Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “การแบ่งปันความลับเชิงภาพและรูปแบบการแบ่งปันแบบบวก”

สำรวจการแบ่งปันแบบบวกที่ใช้ XOR และรูปแบบการเข้ารหัสเชิงภาพ คุณปฏิบัติ Cryptology Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Cryptology Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Cryptology Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน

บทเรียน “การแบ่งปันความลับเชิงภาพและรูปแบบการแบ่งปันแบบบวก” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Cryptology Academy นี้ได้ไหม

ได้ บทเรียน Cryptology Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. ปัญหาการแบ่งปันความลับ
  2. การแบ่งปันความลับของ Shamir: คณิตศาสตร์พหุนาม
  3. การแบ่งปันความลับเชิงภาพและรูปแบบการแบ่งปันแบบบวก
  4. ลายมือชื่อแบบเกณฑ์และกรณีการใช้งานจริง
← กลับไปที่ Cryptology Academy