กลับไปหน้าบทความ

อ่าน 10 นาที

โครงสร้างพื้นฐานกุญแจสาธารณะ

โครงสร้างพื้นฐานกุญแจสาธารณะ ( PKI ) คือชุดของบทบาท นโยบาย ฮาร์ดแวร์ ซอฟต์แวร์ และขั้นตอนที่ใช้ในการสร้าง จัดการ แจกจ่าย ใช้ จัดเก็บ และเพิกถอน ใบรับรอง ดิจิทัล...

โครงสร้างพื้นฐานกุญแจสาธารณะ

แผนภาพโครงสร้างพื้นฐานกุญแจสาธารณะ

โครงสร้างพื้นฐานกุญแจสาธารณะ ( PKI ) คือชุดของบทบาท นโยบาย ฮาร์ดแวร์ ซอฟต์แวร์ และขั้นตอนที่ใช้ในการสร้าง จัดการ แจกจ่าย ใช้ จัดเก็บ และเพิกถอนใบรับรองดิจิทัลรวมถึงการจัดการระบบ การเข้ารหัสแบบกุญแจสาธารณะ

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

ในด้านการเข้ารหัสลับ PKI คือการจัดเรียงที่เชื่อมโยงกุญแจสาธารณะกับตัวตนที่เกี่ยวข้องของหน่วยงาน (เช่น บุคคลและองค์กร) [ 1 ] [ 2 ]การเชื่อมโยงนี้เกิดขึ้นผ่านกระบวนการลงทะเบียนและออกใบรับรองที่และโดยหน่วยงานออกใบรับรอง (CA) ขึ้นอยู่กับระดับการรับรองของการเชื่อมโยง กระบวนการนี้อาจดำเนินการโดยกระบวนการอัตโนมัติหรือภายใต้การกำกับดูแลของมนุษย์ เมื่อดำเนินการผ่านเครือข่าย จำเป็นต้องใช้โปรโตคอลการ ลง ทะเบียนใบรับรองที่ปลอดภัยหรือโปรโตคอลการจัดการใบรับรอง เช่นCMP

บทบาท PKI ที่อาจได้รับมอบหมายจาก CA เพื่อรับรองการลงทะเบียนที่ถูกต้องและสมเหตุสมผลเรียกว่าหน่วยงานลงทะเบียน (RA) RA มีหน้าที่รับผิดชอบในการรับคำขอใบรับรองดิจิทัลและตรวจสอบความถูกต้องของหน่วยงานที่ยื่นคำขอ[ 3 ] RFC 3647 ของ Internet Engineering Task Forceกำหนด RA ไว้ว่า "หน่วยงานที่รับผิดชอบหน้าที่อย่างน้อยหนึ่งอย่างต่อไปนี้: การระบุตัวตนและการตรวจสอบความถูกต้องของผู้สมัครใบรับรอง การอนุมัติหรือปฏิเสธใบสมัครใบรับรอง การเริ่มต้นการเพิกถอนหรือระงับใบรับรองภายใต้สถานการณ์บางอย่าง การประมวลผลคำขอของสมาชิกในการเพิกถอนหรือระงับใบรับรอง และการอนุมัติหรือปฏิเสธคำขอของสมาชิกในการต่ออายุหรือเปลี่ยนคีย์ใบรับรอง อย่างไรก็ตาม RA ไม่ได้ลงนามหรือออกใบรับรอง (กล่าวคือ RA ได้รับมอบหมายงานบางอย่างในนามของ CA)" [ 4 ]แม้ว่าMicrosoftอาจจะอ้างถึง CA รองว่าเป็น RA [ 5 ]แต่สิ่งนี้ไม่ถูกต้องตามมาตรฐาน PKI X.509 RA ไม่มีอำนาจในการลงนามเหมือนกับ CA และมีหน้าที่เพียงตรวจสอบและจัดสรรใบรับรองเท่านั้น ดังนั้นในกรณีของ PKI ของ Microsoft ฟังก์ชัน RA จะมีให้ใช้งานผ่านทางเว็บไซต์ Microsoft Certificate Services หรือผ่านทางActive Directory Certificate Services ซึ่งบังคับใช้ Microsoft Enterprise CA และนโยบายใบรับรองผ่านเทมเพลตใบรับรอง และจัดการการลงทะเบียนใบรับรอง (แบบแมนนวลหรือแบบอัตโนมัติ) ในกรณีของ Microsoft Standalone CA ฟังก์ชัน RA จะไม่มีอยู่ เนื่องจากขั้นตอนทั้งหมดที่ควบคุม CA นั้นขึ้นอยู่กับขั้นตอนการบริหารและการเข้าถึงที่เกี่ยวข้องกับระบบที่โฮสต์ CA และตัว CA เอง มากกว่า Active Directory โซลูชัน PKI เชิงพาณิชย์ที่ไม่ใช่ของ Microsoft ส่วนใหญ่จะมีส่วนประกอบ RA แบบสแตนด์อะโลน

แต่ละเอนทิตีจะต้องสามารถระบุได้อย่างเฉพาะเจาะจงภายในโดเมนของ CA แต่ละโดเมน โดยอาศัยข้อมูลเกี่ยวกับเอนทิตีนั้นหน่วยงานตรวจสอบความถูกต้อง จากภายนอก (VA) สามารถให้ข้อมูลเอนทิตีนี้ในนามของ CA ได้

มาตรฐานX.509กำหนดรูปแบบที่ใช้กันทั่วไปสำหรับใบรับรองกุญแจสาธารณะ[ 6 ]

ความสามารถ

PKI ให้บริการ "ความน่าเชื่อถือ" ซึ่งโดยทั่วไปหมายถึงการเชื่อถือการกระทำหรือผลลัพธ์ของหน่วยงานต่างๆ ไม่ว่าจะเป็นบุคคลหรือคอมพิวเตอร์ วัตถุประสงค์ของบริการความน่าเชื่อถือเคารพในความสามารถอย่างน้อยหนึ่งข้อต่อไปนี้: การรักษาความลับ ความสมบูรณ์ และความถูกต้อง (CIA)

การรักษาความลับ:การรับประกันว่าไม่มีหน่วยงานใดสามารถดูข้อมูลในรูปแบบข้อความธรรมดาได้โดยเจตนาร้ายหรือโดยไม่ตั้งใจ ข้อมูลจะถูกเข้ารหัสเพื่อปกปิดเป็นความลับ แม้ว่าจะมีคนอ่านออกก็จะปรากฏเป็นข้อความที่อ่านไม่ออก การใช้งาน PKI เพื่อวัตถุประสงค์ในการรักษาความลับที่พบได้บ่อยที่สุดคือในบริบทของความปลอดภัยระดับการขนส่ง ( TLS ) TLS เป็นความสามารถที่รองรับความปลอดภัยของข้อมูลระหว่างการส่งผ่าน ตัวอย่างคลาสสิกของการใช้ TLS เพื่อรักษาความลับคือการใช้เว็บเบราว์เซอร์เพื่อเข้าสู่ระบบบริการที่โฮสต์บนเว็บไซต์บนอินเทอร์เน็ตโดยการป้อนรหัสผ่าน

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

ความถูกต้องแท้จริง:การรับประกันว่าหน่วยงานนั้นมี: i) ความมั่นใจในสิ่งที่กำลังเชื่อมต่ออยู่ และ/หรือ ii) สามารถแสดงหลักฐานยืนยันความถูกต้องตามกฎหมายของตนเองได้เมื่อเชื่อมต่อกับบริการที่ได้รับการป้องกัน แบบแรกเรียกว่าการตรวจสอบสิทธิ์ด้วยใบรับรองเซิร์ฟเวอร์ ซึ่งโดยทั่วไปจะใช้เมื่อเข้าสู่ระบบบนเว็บเซิร์ฟเวอร์ แบบหลังเรียกว่าการตรวจสอบสิทธิ์ด้วยใบรับรองไคลเอ็นต์ ตัวอย่างเช่น ใช้เมื่อเข้าสู่ระบบด้วยสมาร์ทการ์ดที่มีใบรับรองดิจิทัลและคีย์ส่วนตัว

ออกแบบ

การเข้ารหัสแบบกุญแจสาธารณะเป็น เทคนิค การเข้ารหัสที่ช่วยให้หน่วยงานต่างๆ สามารถสื่อสารได้อย่างปลอดภัยบนเครือข่ายสาธารณะที่ไม่ปลอดภัย และตรวจสอบตัวตนของหน่วยงานได้อย่างน่าเชื่อถือผ่านลายเซ็นดิจิทัล [ 7 ]

โครงสร้างพื้นฐานกุญแจสาธารณะ (PKI) คือระบบสำหรับการสร้าง จัดเก็บ และแจกจ่ายใบรับรองดิจิทัลซึ่งใช้ในการตรวจสอบว่ากุญแจสาธารณะเฉพาะเจาะจงนั้นเป็นของหน่วยงานใดหน่วยงานหนึ่ง PKI สร้างใบรับรองดิจิทัลที่เชื่อมโยงกุญแจสาธารณะกับหน่วยงานต่างๆ จัดเก็บใบรับรองเหล่านี้อย่างปลอดภัยในที่เก็บส่วนกลาง และเพิกถอนหากจำเป็น[ 8 ] [ 9 ] [ 10 ]

PKI ประกอบด้วย: [ 9 ] [ 11 ] [ 12 ]

  • หน่วยงานออกใบรับรอง (CA) ซึ่งทำหน้าที่จัดเก็บ ออก และลงนามในใบรับรองดิจิทัล
  • หน่วยงานรับรองการลงทะเบียน (RA) ซึ่งทำหน้าที่ตรวจสอบตัวตนของหน่วยงานที่ร้องขอให้จัดเก็บใบรับรองดิจิทัลไว้ที่หน่วยงานออกใบรับรอง (CA);
  • ไดเร็กทอรีส่วนกลางซึ่งเป็นสถานที่ปลอดภัยสำหรับจัดเก็บและจัดทำดัชนีคีย์
  • ระบบจัดการใบรับรองซึ่งทำหน้าที่จัดการสิ่งต่างๆ เช่น การเข้าถึงใบรับรองที่จัดเก็บไว้ หรือการส่งมอบใบรับรองที่จะออกให้
  • นโยบายใบรับรองซึ่งระบุข้อกำหนดของ PKI เกี่ยวกับขั้นตอนต่างๆ วัตถุประสงค์คือเพื่อให้บุคคลภายนอกสามารถวิเคราะห์ความน่าเชื่อถือของ PKI ได้

วิธีการรับรอง

หน่วยงานออกใบรับรอง

บทบาทหลักของ CA คือการ ลงนาม และเผยแพร่กุญแจสาธารณะ ที่ผูกกับผู้ใช้แบบ ดิจิทัล การดำเนินการนี้ทำโดยใช้กุญแจส่วนตัวของ CA เอง ดังนั้นความเชื่อมั่นในกุญแจของผู้ใช้จึงขึ้นอยู่กับความเชื่อมั่นในความถูกต้องของกุญแจของ CA เมื่อ CA เป็นบุคคลที่สามที่แยกต่างหากจากผู้ใช้และระบบ จะเรียกว่าหน่วยงานจดทะเบียน (RA) ซึ่งอาจแยกจาก CA หรือไม่ก็ได้[ 13 ]การผูกกุญแจกับผู้ใช้จะถูกสร้างขึ้นโดยซอฟต์แวร์หรือภายใต้การกำกับดูแลของมนุษย์ ขึ้นอยู่กับระดับความมั่นใจที่การผูกนั้นมี

คำว่าบุคคลที่สามที่เชื่อถือได้ (TTP) อาจใช้สำหรับหน่วยงานออกใบรับรอง (CA) ได้เช่นกัน ยิ่งไปกว่านั้น PKI เองก็มักถูกใช้เป็นคำพ้องความหมายสำหรับการใช้งาน CA [ 14 ]

การเพิกถอนใบรับรอง

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

สำหรับการแจกจ่ายข้อมูลการเพิกถอนให้กับลูกค้า ความทันท่วงทีของการค้นพบการเพิกถอน (และด้วยเหตุนี้จึงเป็นช่วงเวลาที่ผู้โจมตีสามารถใช้ประโยชน์จากใบรับรองที่ถูกบุกรุกได้) จะต้องแลกเปลี่ยนกับการใช้ทรัพยากรในการสอบถามสถานะการเพิกถอนและข้อกังวลด้านความเป็นส่วนตัว[ 18 ]หากข้อมูลการเพิกถอนไม่พร้อมใช้งาน (ไม่ว่าจะเกิดจากอุบัติเหตุหรือการโจมตี) ลูกค้าจะต้องตัดสินใจว่าจะใช้กลไก fail-hardและถือว่าใบรับรองนั้นถูกเพิกถอน (ซึ่งจะทำให้ความพร้อมใช้งาน ลดลง ) หรือจะใช้กลไก fail-softและถือว่าใบรับรองนั้นยังไม่ถูกเพิกถอน (และอนุญาตให้ผู้โจมตีหลีกเลี่ยงการเพิกถอนได้) [ 19 ]

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

ส่วนแบ่งตลาดของผู้ออกหลักทรัพย์

ในรูปแบบความสัมพันธ์ที่น่าเชื่อถือนี้ CA คือบุคคลที่สามที่ได้รับความไว้วางใจ ทั้งจากผู้เป็นเจ้าของใบรับรองและจากผู้ที่อ้างอิงใบรับรองนั้น

จากรายงานของ NetCraft ในปี 2015 [ 21 ]มาตรฐานอุตสาหกรรมสำหรับการตรวจสอบ ใบรับรอง Transport Layer Security (TLS) ที่ใช้งานอยู่ ระบุว่า "แม้ว่าระบบนิเวศ [TLS] ทั่วโลกจะมีการแข่งขันสูง แต่ก็ถูกครอบงำโดย CA รายใหญ่เพียงไม่กี่ราย — หน่วยงานออกใบรับรองสามแห่ง ( Symantec , Sectigo , GoDaddy ) คิดเป็นสามในสี่ของใบรับรอง [TLS] ที่ออกทั้งหมดบนเว็บเซิร์ฟเวอร์ที่เปิดเผยต่อสาธารณะ ตำแหน่งสูงสุดตกเป็นของ Symantec (หรือVeriSignก่อนที่จะถูกซื้อโดย Symantec) นับตั้งแต่การสำรวจ [ของเรา] เริ่มต้นขึ้น โดยปัจจุบันคิดเป็นสัดส่วนเกือบหนึ่งในสามของใบรับรองทั้งหมด เพื่อแสดงให้เห็นถึงผลกระทบของวิธีการที่แตกต่างกัน ในบรรดาไซต์ที่มีการใช้งานมากที่สุดหนึ่งล้านแห่ง Symantec ออกใบรับรองที่ถูกต้องและเชื่อถือได้ถึง 44% ซึ่งมากกว่าส่วนแบ่งการตลาดโดยรวมอย่างมีนัยสำคัญ"

หลังจากเกิดปัญหาใหญ่ในการจัดการการออกใบรับรอง ผู้เล่นรายใหญ่ทั้งหมดจึงค่อยๆ ไม่ไว้วางใจใบรับรองที่ออกโดย Symantec โดยเริ่มตั้งแต่ปี 2017 และเสร็จสมบูรณ์ในปี 2021 [ 22 ] [ 23 ] [ 24 ] [ 25 ]

ใบรับรองชั่วคราวและการเข้าสู่ระบบครั้งเดียว

แนวทางนี้เกี่ยวข้องกับเซิร์ฟเวอร์ที่ทำหน้าที่เป็นหน่วยงานออกใบรับรองแบบออฟไลน์ภายใน ระบบ ลงชื่อเข้าใช้ครั้งเดียวเซิร์ฟเวอร์ลงชื่อเข้าใช้ครั้งเดียวจะออกใบรับรองดิจิทัลให้กับระบบไคลเอ็นต์ แต่จะไม่จัดเก็บใบรับรองเหล่านั้น ผู้ใช้สามารถเรียกใช้โปรแกรม ฯลฯ ด้วยใบรับรองชั่วคราวได้ โซลูชันประเภทนี้มักพบได้ทั่วไปในใบรับรองแบบX.509 [ 26 ]

ตั้งแต่เดือนกันยายน 2020 เป็นต้นไป อายุการใช้งานของใบรับรอง TLS จะลดลงเหลือ 13 เดือน

เครือข่ายแห่งความไว้วางใจ

แนวทางทางเลือกในการแก้ปัญหาการตรวจสอบความถูกต้องของข้อมูลกุญแจสาธารณะคือ ระบบเครือข่ายความไว้วางใจ (web-of-trust) ซึ่งใช้ใบรับรอง ที่ลงนามด้วยตนเอง และการรับรองจากบุคคลที่สาม คำว่า "เครือข่ายความไว้วางใจ" ในที่นี้ไม่ได้หมายความว่ามีเครือข่ายความไว้วางใจเพียงเครือข่ายเดียว หรือจุดร่วมของความไว้วางใจ แต่หมายถึงเครือข่ายความไว้วางใจจำนวนมากที่อาจไม่เกี่ยวข้องกัน ตัวอย่างของการนำแนวทางนี้ไปใช้ ได้แก่PGP (Pretty Good Privacy) และGnuPG (ซึ่งเป็นการนำOpenPGPซึ่งเป็นมาตรฐานของ PGP ไปใช้) เนื่องจาก PGP และการนำไปใช้ต่างๆ อนุญาตให้ใช้ ลายเซ็นดิจิทัล ทางอีเมลสำหรับการเผยแพร่ข้อมูลกุญแจสาธารณะด้วยตนเอง จึงค่อนข้างง่ายที่จะสร้างเครือข่ายความไว้วางใจของตนเอง

หนึ่งในประโยชน์ของเครือข่ายความไว้วางใจ เช่นในPGPคือสามารถทำงานร่วมกับ PKI CA ที่ได้รับความไว้วางใจอย่างเต็มที่จากทุกฝ่ายในโดเมน (เช่น CA ภายในบริษัท) ที่ยินดีรับประกันใบรับรองในฐานะผู้แนะนำที่เชื่อถือได้ หาก "เครือข่ายความไว้วางใจ" ได้รับความไว้วางใจอย่างสมบูรณ์แล้ว ด้วยธรรมชาติของเครือข่ายความไว้วางใจ การเชื่อถือใบรับรองหนึ่งใบหมายถึงการให้ความเชื่อถือแก่ใบรับรองทั้งหมดในเครือข่ายนั้น PKI จะมีคุณค่าก็ต่อเมื่อมีมาตรฐานและแนวปฏิบัติที่ควบคุมการออกใบรับรอง และการรวม PGP หรือเครือข่ายความไว้วางใจที่จัดตั้งขึ้นเองอาจลดความน่าเชื่อถือของการใช้งาน PKI ขององค์กรหรือโดเมนนั้นลงอย่างมาก[ 27 ]

แนวคิดเรื่องเครือข่ายความไว้วางใจ (Web of Trust) ถูกนำเสนอครั้งแรกโดยฟิล ซิมเมอร์แมน ผู้สร้าง PGP ในปี 1992 ในคู่มือสำหรับ PGP เวอร์ชัน 2.0:

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

โครงสร้างพื้นฐานกุญแจสาธารณะแบบง่าย

อีกทางเลือกหนึ่งซึ่งไม่เกี่ยวข้องกับการตรวจสอบความถูกต้องของข้อมูลคีย์สาธารณะ คือโครงสร้างพื้นฐานคีย์สาธารณะแบบง่าย (SPKI) ซึ่งพัฒนามาจากความพยายามอิสระสามครั้งเพื่อเอาชนะความซับซ้อนของเครือข่ายความไว้วางใจของX.509และPGP SPKI ไม่เชื่อมโยงผู้ใช้กับบุคคล เนื่องจากคีย์เป็นสิ่งที่ได้รับความไว้วางใจ ไม่ใช่บุคคล SPKI ไม่ใช้แนวคิดเรื่องความไว้วางใจใดๆ เนื่องจากผู้ตรวจสอบก็คือผู้ออกใบรับรองด้วย สิ่งนี้เรียกว่า "วงจรการอนุญาต" ในศัพท์เฉพาะของ SPKI ซึ่งการอนุญาตเป็นส่วนสำคัญของการออกแบบ[ 28 ] PKI ประเภทนี้มีประโยชน์เป็นพิเศษสำหรับการบูรณาการ PKI ที่ไม่ต้องพึ่งพาบุคคลที่สามสำหรับการอนุญาตใบรับรอง ข้อมูลใบรับรอง ฯลฯ ตัวอย่างที่ดีคือ เครือข่าย ที่แยกจากกันในสำนักงาน

PKI แบบกระจายศูนย์

ตัวระบุแบบกระจายศูนย์ (DIDs) ขจัดความจำเป็นในการพึ่งพาหน่วยงานทะเบียนกลางสำหรับตัวระบุ รวมถึงหน่วยงานออกใบรับรองกลางสำหรับการจัดการคีย์ ซึ่งเป็นมาตรฐานใน PKI แบบลำดับชั้น ในกรณีที่หน่วยงานทะเบียน DID เป็นบัญชีแยกประเภทแบบกระจายศูนย์แต่ละหน่วยงานสามารถทำหน้าที่เป็นหน่วยงานรากของตนเองได้ สถาปัตยกรรมนี้เรียกว่า PKI แบบกระจายศูนย์ (DPKI) [ ​​29 ] [ 30 ]

ประวัติศาสตร์

การพัฒนา PKI เกิดขึ้นในช่วงต้นทศวรรษ 1970 ที่หน่วยงานข่าวกรองของอังกฤษGCHQซึ่งJames Ellis , Clifford Cocksและคนอื่นๆ ได้ค้นพบสิ่งสำคัญที่เกี่ยวข้องกับอัลกอริธึมการเข้ารหัสและการแจกจ่ายคีย์[ 31 ]เนื่องจากการพัฒนาที่ GCHQ เป็นความลับอย่างยิ่ง ผลลัพธ์ของงานนี้จึงถูกเก็บเป็นความลับและไม่ได้มีการกล่าวถึงต่อสาธารณะจนกระทั่งช่วงกลางทศวรรษ 1990

การเปิดเผยต่อสาธารณะเกี่ยวกับอัลกอริทึมการแลกเปลี่ยนกุญแจ ที่ปลอดภัย และอัลกอริทึมกุญแจแบบไม่สมมาตรในปี 1976 โดยDiffie , Hellman , Rivest , ShamirและAdlemanได้เปลี่ยนแปลงการสื่อสารที่ปลอดภัยไปอย่างสิ้นเชิง ด้วยการพัฒนาเพิ่มเติมของการสื่อสารอิเล็กทรอนิกส์ดิจิทัลความเร็วสูง ( อินเทอร์เน็ตและระบบก่อนหน้า) ความจำเป็นในการหาวิธีที่ผู้ใช้สามารถสื่อสารกันได้อย่างปลอดภัยจึงปรากฏชัดขึ้น และเป็นผลสืบเนื่องมาจากความจำเป็นนั้น จึงจำเป็นต้องมีวิธีการที่ผู้ใช้สามารถมั่นใจได้ว่าพวกเขากำลังติดต่อกับใครอยู่จริง ๆ

มีการคิดค้นและวิเคราะห์โปรโตคอลการเข้ารหัสลับต่างๆ ซึ่ง สามารถใช้ หลักการเข้ารหัสลับ แบบใหม่ ได้อย่างมีประสิทธิภาพ ด้วยการคิดค้นเวิลด์ไวด์เว็บและการแพร่กระจายอย่างรวดเร็ว ความต้องการการตรวจสอบสิทธิ์และการสื่อสารที่ปลอดภัยจึงยิ่งทวีความรุนแรงมากขึ้น เหตุผลทางการค้าเพียงอย่างเดียว (เช่นอีคอมเมิร์ซการเข้าถึงฐานข้อมูลที่เป็นกรรมสิทธิ์ทางออนไลน์จากเว็บเบราว์เซอร์ ) ก็เพียงพอแล้วTaher Elgamalและคนอื่นๆ ที่Netscapeได้พัฒนา โปรโตคอล SSL (' https ' ในURL ของเว็บ ) ซึ่งรวมถึงการสร้างคีย์ การตรวจสอบสิทธิ์เซิร์ฟเวอร์ (ก่อนเวอร์ชัน 3 เป็นแบบทางเดียวเท่านั้น) และอื่นๆ[ 32 ]ดังนั้นจึงมีการสร้างโครงสร้าง PKI สำหรับผู้ใช้เว็บ/เว็บไซต์ที่ต้องการการสื่อสารที่ปลอดภัย

ผู้ขายและผู้ประกอบการมองเห็นความเป็นไปได้ของตลาดขนาดใหญ่ จึงเริ่มก่อตั้งบริษัท (หรือโครงการใหม่ในบริษัทที่มีอยู่แล้ว) และเริ่มเรียกร้องให้มีการรับรองทางกฎหมายและการคุ้มครองจากความรับผิด โครงการเทคโนโลยีของสมาคมเนติบัณฑิตอเมริกันได้เผยแพร่การวิเคราะห์อย่างละเอียดเกี่ยวกับแง่มุมทางกฎหมายที่คาดการณ์ได้บางประการของการดำเนินงาน PKI (ดูแนวทางการลงลายมือชื่อดิจิทัลของ ABA ) และหลังจากนั้นไม่นาน รัฐต่างๆ ในสหรัฐอเมริกาหลายรัฐ ( ยูทาห์เป็นรัฐแรกในปี 1995) และเขตอำนาจศาลอื่นๆ ทั่วโลกก็เริ่มออกกฎหมายและนำข้อบังคับมาใช้ กลุ่มผู้บริโภคตั้งคำถามเกี่ยวกับความเป็นส่วนตัวการเข้าถึง และการพิจารณาความรับผิด ซึ่งได้รับการพิจารณามากขึ้นในบางเขตอำนาจศาลมากกว่าในเขตอำนาจศาลอื่นๆ[ 33 ]กฎหมายและข้อบังคับที่ประกาศใช้มีความแตกต่างกัน และมีปัญหาทางเทคนิคและการดำเนินงานในการเปลี่ยนโครงการ PKI ให้เป็นการดำเนินงานเชิงพาณิชย์ที่ประสบความสำเร็จ ความคืบหน้าช้ากว่าที่ผู้บุกเบิกคาดคิดไว้มาก

ในช่วงต้นศตวรรษที่ 21 เห็นได้ชัดว่าวิศวกรรมการเข้ารหัสพื้นฐานนั้นไม่สามารถนำไปใช้งานได้อย่างถูกต้อง ขั้นตอนการปฏิบัติงาน (ทั้งแบบด้วยตนเองและแบบอัตโนมัติ) ก็ไม่ใช่เรื่องง่ายที่จะออกแบบให้ถูกต้อง (และแม้ว่าจะออกแบบได้แล้ว ก็ยังยากที่จะดำเนินการได้อย่างสมบูรณ์แบบ ซึ่งเป็นสิ่งที่วิศวกรรมต้องการ) มาตรฐานที่มีอยู่ก็ไม่เพียงพอ

ผู้จำหน่าย PKI พบตลาดแล้ว แต่ไม่ใช่ตลาดที่คาดการณ์ไว้ในช่วงกลางทศวรรษ 1990 และเติบโตช้ากว่าและในรูปแบบที่แตกต่างไปจากที่คาดการณ์ไว้[ 34 ] PKI ไม่ได้แก้ปัญหาบางอย่างตามที่คาดหวังไว้ และผู้จำหน่ายรายใหญ่หลายรายก็เลิกกิจการหรือถูกซื้อกิจการโดยผู้อื่น PKI ประสบความสำเร็จมากที่สุดในการใช้งานในภาครัฐ การใช้งาน PKI ที่ใหญ่ที่สุดจนถึงปัจจุบันคือ โครงสร้างพื้นฐาน PKI ของ Defense Information Systems Agency (DISA) สำหรับโครงการ Common Access Cards

การใช้งาน

ระบบ PKI ประเภทต่างๆ และจากผู้จำหน่ายหลายราย มีการใช้งานมากมาย รวมถึงการจัดหาคีย์สาธารณะและการผูกข้อมูลประจำตัวผู้ใช้ ซึ่งใช้สำหรับ:

การใช้งานแบบโอเพนซอร์ส

  • OpenSSLเป็นรูปแบบ CA ที่ง่ายที่สุดและเป็นเครื่องมือสำหรับ PKI เป็นชุดเครื่องมือที่พัฒนาด้วยภาษา C ซึ่งรวมอยู่ใน ระบบปฏิบัติการ Linux รุ่นหลักๆ ทุก ระบบ และสามารถใช้ทั้งในการสร้าง CA (แบบง่าย) ของคุณเองและในการเปิดใช้งาน PKI สำหรับแอปพลิเคชันต่างๆ ( ได้รับอนุญาตภายใต้ Apache )
  • EJBCAเป็นซอฟต์แวร์ CA ที่มีคุณสมบัติครบถ้วน ระดับองค์กร พัฒนาด้วยภาษา Javaสามารถใช้ในการตั้งค่า CA ทั้งเพื่อใช้งานภายในองค์กรและเป็นบริการ ( ได้รับอนุญาตภายใต้ LGPL )
  • XiPKI [ 36 ] CA และตัวตอบสนอง OCSP พร้อม การสนับสนุน SHA-3ที่ใช้งานในJava ( ได้รับอนุญาตภายใต้ Apache )
  • XCA [ 37 ]เป็นอินเทอร์เฟซกราฟิกและฐานข้อมูล XCA ใช้ OpenSSL สำหรับการดำเนินการ PKI พื้นฐาน
  • DogTag เป็น CA ที่มีคุณสมบัติครบถ้วน ซึ่งได้รับการพัฒนาและดูแลรักษาโดยเป็นส่วนหนึ่งของโครงการFedora
  • CFSSL [ 38 ] [ 39 ]ชุดเครื่องมือโอเพนซอร์สที่พัฒนาโดยCloudFlareสำหรับการลงนาม การตรวจสอบ และการรวมใบรับรอง TLS ( ได้รับอนุญาตภายใต้ BSD 2-clause )
  • Vault [ 40 ]เครื่องมือสำหรับการจัดการความลับอย่างปลอดภัย (รวมถึงใบรับรอง TLS) พัฒนาโดยHashiCorp ( ได้รับอนุญาตภายใต้ Mozilla Public License 2.0 )
  • Boulder คือ CA ที่ใช้ ACMEซึ่งเขียนด้วยภาษา Go Boulder เป็นซอฟต์แวร์ที่ใช้ในการทำงานของLet's Encrypt

การวิจารณ์

บางคนโต้แย้งว่าการซื้อใบรับรองเพื่อรักษาความปลอดภัยเว็บไซต์ด้วยSSL/TLSและการรักษาความปลอดภัยซอฟต์แวร์ด้วยการลงนามรหัสเป็นการลงทุนที่แพงสำหรับธุรกิจขนาดเล็ก[ 41 ] อย่างไรก็ตาม การเกิดขึ้นของทางเลือกฟรี เช่นLet's Encryptได้เปลี่ยนแปลงสิ่งนี้HTTP/2ซึ่งเป็นเวอร์ชันล่าสุดของโปรโตคอล HTTP อนุญาตให้มีการเชื่อมต่อที่ไม่ปลอดภัยในทางทฤษฎี ในทางปฏิบัติ บริษัทเบราว์เซอร์รายใหญ่ได้ชี้แจงอย่างชัดเจนว่าพวกเขาจะสนับสนุนโปรโตคอลนี้เฉพาะผ่านการเชื่อมต่อTLS ที่ปลอดภัยด้วย PKI เท่านั้น [ 42 ]การใช้งาน HTTP/2 ในเว็บเบราว์เซอร์ รวมถึงChrome , Firefox , OperaและEdgeรองรับ HTTP/2 เฉพาะผ่าน TLS โดยใช้ ส่วนขยาย ALPNของโปรโตคอล TLS ซึ่งหมายความว่า เพื่อให้ได้ประโยชน์ด้านความเร็วของ HTTP/2 เจ้าของเว็บไซต์จะต้องซื้อใบรับรอง SSL/TLS ที่ควบคุมโดยบริษัทต่างๆ

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

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

ดูเพิ่มเติม

เอกสารอ้างอิง

  • ชุง แทจุง; ล็อก เจย์; จันดราเซการัน บาลากฤษณัน; ชอฟฟ์เนส เดวิด; เลวิน เดฟ; แม็กส์ บรูซ เอ็ม.; มิสเลิฟ อลัน; รูลา จอห์น; ซัลลิแวน นิค; วิลสัน คริสโต (2018). "เว็บพร้อมสำหรับ OCSP Must-Staple แล้วหรือยัง?" (PDF) . รายงานการประชุม Internet Measurement Conference 2018.หน้า  105–118 . doi : 10.1145/3278532.3278543 . ISBN 9781450356190. S2CID  53223350 .
  • Larisch, James; Choffnes, David; Levin, Dave; Maggs, Bruce M.; Mislove, Alan; Wilson, Christo (2017). "CRLite: ระบบที่ปรับขนาดได้สำหรับการส่งการเพิกถอน TLS ทั้งหมดไปยังเบราว์เซอร์ทั้งหมด" การประชุมวิชาการ IEEE ว่าด้วยความปลอดภัยและความเป็นส่วนตัว (SP) ปี 2017หน้า  539–556 . doi : 10.1109/sp.2017.17 . ISBN 978-1-5090-5533-3. S2CID  3926509 .
  • Sheffer, Yaron; Saint-Andre, Pierre; Fossati, Thomas (พฤศจิกายน 2022). ข้อแนะนำสำหรับการใช้ งานTransport Layer Security (TLS) และ Datagram Transport Layer Security (DTLS) อย่างปลอดภัย IETF . doi : 10.17487/RFC9325 . RFC 9325 .
  • Smith, Trevor; Dickinson, Luke; Seamons, Kent (2020). "Let's Revoke: Scalable Global Certificate Revocation". Proceedings 2020 Network and Distributed System Security Symposium . doi : 10.14722/ndss.2020.24084 . ISBN 978-1-891562-61-7. S2CID  211268930 .

อ่านเพิ่มเติม

  • Choudhury, Suranjan; Bhatnagar, Kartik; Haque, Wasim (2002). โครงสร้างพื้นฐานกุญแจสาธารณะ: การนำไปใช้และการออกแบบ . Professional mindware. นิวยอร์ก, NY: M&T Books. ISBN 978-0-7645-4879-6.
  • Schmeh, Klaus (2003). การเข้ารหัสและโครงสร้างพื้นฐานกุญแจสาธารณะบนอินเทอร์เน็ต . ชิเชสเตอร์ เวสต์ซัสเซ็กซ์ อังกฤษ: Wiley. ISBN 0-470-84745-X.
ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Public_key_infrastructure&oldid=1360206034 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ โครงสร้างพื้นฐานกุญแจสาธารณะ

โครงสร้างพื้นฐานกุญแจสาธารณะ ( PKI ) คือชุดของบทบาท นโยบาย ฮาร์ดแวร์ ซอฟต์แวร์ และขั้นตอนที่ใช้ในการสร้าง จัดการ แจกจ่าย ใช้ จัดเก็บ และเพิกถอน ใบรับรอง ดิจิทัล...

ความสามารถ

PKI ให้บริการ "ความน่าเชื่อถือ" ซึ่งโดยทั่วไปหมายถึงการเชื่อถือการกระทำหรือผลลัพธ์ของหน่วยงานต่างๆ ไม่ว่าจะเป็นบุคคลหรือคอมพิวเตอร์ วัตถุประสงค์ของบริการความน่าเชื่อถือเคารพในความสามารถอย่างน้อยหนึ่งข้อต่อไปนี้: การรักษาความลับ ความสมบูรณ์ และความถูกต้อง (CIA)

ออกแบบ

การเข้ารหัสแบบกุญแจสาธารณะ เป็น เทคนิค การเข้ารหัส ที่ช่วยให้หน่วยงานต่างๆ สามารถ สื่อสารได้อย่างปลอดภัย บน เครือข่ายสาธารณะที่ไม่ปลอดภัย และตรวจสอบตัวตนของหน่วยงานได้อย่างน่าเชื่อถือผ่าน ลายเซ็นดิจิทัล [ 7 ]

หน่วยงานออกใบรับรอง

บทบาทหลักของ CA คือการ ลงนาม และเผยแพร่ กุญแจสาธารณะ ที่ผูกกับผู้ใช้แบบ ดิจิทัล การ ดำเนินการนี้ทำโดยใช้กุญแจส่วนตัวของ CA เอง ดังนั้นความเชื่อมั่นในกุญแจของผู้ใช้จึงขึ้นอยู่กับความเชื่อมั่นในความถูกต้องของกุญแจของ CA เมื่อ CA...