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

เกตเวย์เชื่อถือผู้ออกใบรับรอง ไม่ใช่รายการไฟล์

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

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

สี่คำถาม สี่ระเบียนที่ต่างกัน

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

Question you are answeringWhere the answer livesHow quickly it changesWhat it will never show
Was this identity ever created?The issuer's issuance databaseOnly when something is issuedWhether the device still exists
Is a copy sitting on this host?The paths you actually inspectedWhenever anyone copies filesCertificates that were never copied here
Has the issuer withdrawn it?Published revocation stateWhen the issuer next publishesWithdrawals that are not published yet
Is it connected right now?The live session tableContinuouslyAnything about past or future sessions

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

ผู้ออกและหมายเลขลำดับเป็นกุญแจถาวรเพียงอย่างเดียว

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

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

อ่านใบรับรองทีละใบ

ไวลด์การ์ดที่ขยายทั่วโฟลเดอร์ไม่ใช่ส่วนติดต่อแบบกลุ่ม และมันซ่อนว่าไฟล์ใดให้ผลลัพธ์ใด อ่านเมทาดาทาต่อใบรับรอง และอ่านด้านการเพิกถอนจากอาร์ติแฟกต์ของมันเอง เอกสารอ้างอิง OpenSSL x509 ระบุฟิลด์ที่ตัวเลือกเหล่านั้นพิมพ์ออกมา

openssl x509 -in <cert>.pem -noout -issuer -serial -subject -dates -fingerprint -sha256
openssl crl -in <issuer>.crl -noout -text | head -n 40

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

grep -c '^V' pki/index.txt
grep '^R' pki/index.txt | cut -f4,5

บัญชีรายการที่อยู่รอดจากการออกครั้งถัดไป

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

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

บทความที่เกี่ยวข้อง