Cryptology Academy · บทเรียน

การฝากคีย์ การสำรองข้อมูล และขั้นตอนการกู้คืน

ออกแบบกลยุทธ์สำรองคีย์ด้วยการแบ่งปันความลับของ Shamir และการกู้คืนแบบ m-of-n

บทเรียน 4 จาก 412 ขั้นตอน

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

ปัญหาการฝาก key

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

ข้อกำหนดการฝาก key ขององค์กร

องค์กรฝาก key สำหรับการเข้ารหัสไว้ เพื่อให้ IT สามารถถอดรหัสข้อมูลขององค์กรได้หากพนักงานไม่พร้อมใช้งาน การดำเนินการนี้กำหนดโดยนโยบายและข้อบังคับ เช่น ภาระหน้าที่ในการให้เจ้าของข้อมูลเข้าถึงข้อมูลตาม GDPR

ข้อถกเถียงเรื่องการฝาก key กับหน่วยงานบังคับใช้กฎหมาย

รัฐบาลมักเสนอให้บังคับใช้การฝาก key เป็นระยะ ๆ เช่น Clipper Chip ในปี 1993 และโครงการ “Going Dark” ของ FBI ตั้งแต่ปี 2015 เป็นต้นมา นักวิทยาการเข้ารหัสลับโต้แย้งว่าวิธีนี้สร้างประตูหลังที่ฝ่ายตรงข้ามสามารถใช้โจมตีได้ และไม่สามารถบังคับใช้ได้จริงในทางเทคนิค

การแบ่งปันความลับของ Shamir สำหรับการสำรอง key

แบ่ง key หลักออกเป็นส่วนแบ่งจำนวน n ส่วนโดยใช้รูปแบบเกณฑ์ (k,n) ของ Shamir ส่วนแบ่งจำนวน k ส่วนใด ๆ สามารถสร้าง key กลับคืนได้ แต่มีจำนวนน้อยกว่า k ส่วนจะไม่เปิดเผยข้อมูลใด ๆ ตัวอย่างการฝาก key แบบคลาสสิกคือมีผู้ดูแล 5 คน และ 3 คนใด ๆ สามารถกู้คืนได้

from cryptography.hazmat.primitives import hashes
# Note: Shamir SSS is not in the stdlib cryptography package.
# Use: pip install secretsharing
# from secretsharing import PlaintextToHexSecretSharer as SS
# shares = SS.split_secret("my_hex_key", 3, 5)  # 3-of-5
# recovered = SS.recover_secret(shares[:3])
print("Shamir 3-of-5 split: any 3 of 5 custodians reconstruct the key")

ผู้ดูแลโทเค็นฮาร์ดแวร์

ส่วนแบ่งของ Shamir แต่ละส่วนจะถูกเขียนลงบนโทเค็นฮาร์ดแวร์ เช่น สมาร์ตการ์ดหรือ HSM แบบ USB จากนั้นมอบโทเค็นให้ผู้ดูแล การกู้คืนต้องให้ผู้ดูแลมารวมตัวกันในห้องปลอดภัยและนำโทเค็นของตนมาแสดง

พิธีการ key แบบ M จาก N

ระหว่างการตั้งค่า ให้สร้าง key ใน HSM แบ่งออกเป็นส่วนแบ่งของ Shamir จำนวน n ส่วน เขียนแต่ละส่วนลงบนสมาร์ตการ์ดของผู้ดูแล และทำลาย key ที่รวมกันอยู่ใน HSM จัดทำเอกสารและตรวจสอบพิธีการทั้งหมด

การสำรอง key ที่เข้ารหัสไปยังที่จัดเก็บออฟไลน์

เข้ารหัสข้อมูลสำรองของ key หรือส่วนแบ่งของ Shamir ด้วยวลีรหัสผ่านที่รัดกุม จัดเก็บไว้บนสื่อออฟไลน์ เช่น USB ที่เข้ารหัสหรือรหัส QR บนกระดาษในตู้นิรภัย ทดสอบการกู้คืนทุกไตรมาส และกระจายสำเนาไปยังสถานที่ทางภูมิศาสตร์ที่แตกต่างกัน

ขั้นตอนการกู้คืน key

จัดทำเอกสารทีละขั้นตอนว่าใครเป็นผู้อนุมัติการกู้คืน (การควบคุมสองบุคคล) ผู้ดูแลจะรวมตัวกันอย่างไร ช่องของ HSM ใดจะรับ key ที่สร้างกลับคืน วิธีตรวจสอบ key ที่กู้คืน และวิธีบันทึกเหตุการณ์

การควบคุมสองบุคคลและการแบ่งแยกความรู้

การควบคุมสองบุคคล: คนสองคนต้องดำเนินการร่วมกันเพื่อใช้ key โดยคนหนึ่งมี PIN และอีกคนมีบัตร การแบ่งแยกความรู้: ไม่มีคนใดคนหนึ่งรู้ค่าของ key ทั้งหมดตามลำพัง PCI-DSS กำหนดให้ใช้ทั้งสองแนวทางสำหรับ key สำหรับการเข้ารหัส key

การทดสอบการกู้คืน

ข้อมูลสำรองของ key ที่ไม่เคยทดสอบก็ไม่ต่างจากไม่มีข้อมูลสำรอง กำหนดการฝึกซ้อมทุกไตรมาส: รวมผู้ดูแลจำนวน k คน สร้าง key กลับคืน ตรวจสอบว่าสามารถถอดรหัสข้อความเข้ารหัสสำหรับทดสอบได้ จากนั้นฝากส่วนแบ่งชุดใหม่อีกครั้ง

ตรวจสอบความเข้าใจ

PCI-DSS กำหนดให้ดำเนินการอย่างไรเมื่อเกี่ยวข้องกับ key สำหรับการเข้ารหัส key

สรุปบทเรียน

การฝากเก็บกุญแจช่วยรักษาสมดุลระหว่างความต้องการกู้คืนกับความเสี่ยงด้านความปลอดภัย การแบ่งปันความลับของ Shamir จะแบ่งกุญแจเพื่อให้ผู้ดูแลจำนวน m จากทั้งหมด n คนสามารถกู้คืนได้ ผู้ดูแลจะถือโทเค็นฮาร์ดแวร์ การควบคุมแบบสองบุคคลและการแยกความรู้ช่วยป้องกันภัยคุกคามจากบุคคลภายใน ควรทดสอบกระบวนการกู้คืนเป็นประจำ

เริ่มต้นได้ฟรี

เรียนรู้ Cryptology Academy ด้วย AI tutor — ฟรี

เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป

คอร์ส
67
บทเรียน
261

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

บทเรียน “การฝากคีย์ การสำรองข้อมูล และขั้นตอนการกู้คืน” ฟรีหรือไม่

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

คุณจะเรียนรู้อะไรในบทเรียน “การฝากคีย์ การสำรองข้อมูล และขั้นตอนการกู้คืน”

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

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

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

บทเรียน “การฝากคีย์ การสำรองข้อมูล และขั้นตอนการกู้คืน” ใช้เวลานานแค่ไหน

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

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

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

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

  1. วงจรชีวิตคีย์: สร้าง จัดเก็บ หมุนเวียน ทำลาย
  2. สถาปัตยกรรม HSM และอินเทอร์เฟซ PKCS#11
  3. AWS KMS, GCP Cloud KMS และ Azure Key Vault
  4. การฝากคีย์ การสำรองข้อมูล และขั้นตอนการกู้คืน
← กลับไปที่ Cryptology Academy