ปรับปรุงครั้งสุดท้าย:
หมายเหตุ: เวอร์ชั่นภาษาอังกฤษถูกปรับปรุงหลังจากการแปลภาษา () แสดงเป็นภาษาอังกฤษ
เป้าหมายของเล็ท’ส เอ็นคริปต์ และ โปรโตคอล ACME นั้นเพื่อให้การติดตั้ง HTTPS เซิร์ฟเวอร์เป็นไปได้ และสามารถรับหนังสือรับรองที่เว็บบราวเซอร์เชื่อถือได้อย่างอัตโนมัติ โดยไม่ต้องมีคนมาดำเนินการ ซึ่งทำได้โดยการทำงานของเอเจนท์ที่ใช้จัดการหนังสือรับรองบนเว็บเซิร์ฟเวอร์
เพื่อให้เข้าใจในการทำงานของเทคโนโลยี เรามาดูขั้นตอนของการติดตั้ง https://example.com/
ด้วยเอเจนท์สำหรับจัดการหนังสือรับรอง ที่รองรับการทำงานของเล็ท’ส เอ็นคริปต์
โดยมีทั้งหมดสองขั้นตอน ขั้นตอนแรก เอเจนท์จะทำการพิสูจน์แก่ CA ว่าเว็บเซิร์ฟเวอร์เป็นผู้ควบคุมโดเมน จากนั้น เอเจนท์สามารถร้องขอ, ต่ออายุ และยกเลิกหนังสือรับรองของโดเมนนั้นได้
การตรวจสอบโดเมน
เล็ท’ส เอ็นคริปต์ชี้ตัวผู้ดูแลระบบเซิร์ฟเวอร์โดยใช้กุญแจสาธารณะ ในครั้งแรกที่ซอฟต์แวร์เอเจนท์ทำการติดต่อกับเล็ท’ส เอ็นคริปต์ มันจะสร้างคู่กุญแจใหม่ขึ้น และพิสูจน์ให้ CA ของเล็ท’ส เอ็นคริปต์เห็นว่าเครื่องเซิร์ฟเวอร์นี้เป็นผู้ควบคุมโดเมน กระบวนการนี้เหมือนกับกระบวนการของ CA แบบดั้งเดิมในการสร้างบัญชีผู้ใช้ และเพิ่มโดเมนให้แก่บัญชีผู้ใช้
ในการเริ่มกระบวนการ เอเจนต์จะถามมาที่ CA ของเล็ท’ส เอ็นคริปต์ถึงสิ่งที่ต้องทำในการพิสูจน์ว่ามันเป็นผู้ควบคุม example.com
CA ของเล็ท’ส เอ็นคริปต์จะดูที่โดเมนเนมที่ถูกเรียกและจ่ายบททดสอบอย่างน้อยหนึ่งบททดสอบ นี่เป็นหนึ่งในหลายวิธีที่เอเจนต์สามารถพิสูจน์ว่าเป็นผู้ควบคุมโดเมน ตัวอย่างเช่น CA อาจจะให้เอเจนท์เลือกว่า:
- ลองทำ DNS record มาหนึ่งตัวภายใต้
example.com
, หรือ - ลองสร้างลิงก์ HTTP มาหนึ่งลิงก์ ภายใต้ URI ที่เป็นที่รู้จักกันดีบน
http://example.com/
นอกจากบททดสอบแล้ว CA ของเล็ท’ส เอ็นคริปต์ ยังให้ nonce ซึ่งเอเจนท์ต้องลงนามด้วยคู่กุญแจส่วนตัว ในการพิสูจน์ว่ามันเป็นผู้ควบคุมคู่กุญแจ
ซอฟต์แวร์เอเจนท์ทำบททดสอบหนึ่งจากหลายๆบททดสอบสำเร็จ อย่างเช่นมันสามารถทำบททดสอบที่สองด้านบนได้เรียบร้อย: มีการสร้างไฟล์ในพาธที่กำหนดไว้บนเว็บไซต์ http://example.com
เอเจนท์ลงนาม nonce ที่ได้รับมาด้วยกุญแจส่วนตัวของมัน หลังจากที่เอเจนท์ดำเนินการเรียบร้อยแล้ว มันจะแจ้ง CA ว่ามันพร้อมที่จะจบการตรวจสอบความถูกต้อง
จากนั้นเป็นหน้าที่ของ CA ที่จะตรวจสอบว่าบททดสอบเป็นไปตามที่กำหนด จากนั้น CA จะตรวจสอบลายเซ็นบน nonce และทดสอบดาวน์โหลดไฟล์จากเว็บเซิร์ฟเวอร์และดูว่าเนื้อหาไฟล์เป็นไปตามที่คาดหวัง
ถ้าลายเซ็นบน nonce ถูกต้อง และบททดสอบถูกต้อง จากนั้นเอเจนท์ที่ผูกกับคีย์สาธารณะนั้นจะได้รับมอบอำนาจให้จัดการหนังสือรับรองสำหรับ example.com
เราเรียกคู่กุญแจที่เอเจนท์ใช้ว่า “คู่กุญแจที่ได้รับอำนาจ” สำหรับ example.com
การขอรับและเรียกคืนหนังสือรับรอง
เมื่อเอเจนท์ได้รับคู่กุญแจที่ได้รับอำนาจแล้ว การร้องขอ การต่ออายุ และการเลิกใช้หนังสือรับรองก็ทำได้ง่าย—แค่ส่งข้อความจัดการหนังสือรับรอง และลงนามด้วยคู่กุญแจที่ได้รับอำนาจ
ในการรับหนังสือรับรองสำหรับโดเมน เอเจนท์จะสร้าง คำร้องขอลงนามหนังสือรับรอง (CSR) PKCS#10 ที่ถาม CA ของเล็ท’ส เอ็นคริปต์ให้ออกหนังสือรับรองโดเมน example.com
ด้วยคีย์สาธารณะ โดยปกติแล้ว CSR จะมีลายเซ็นจากคีย์ส่วนบุคคลคู่กับคีย์สาธารณะใน CSR เอเจนท์ลงนาม CSR ทั้งหมดด้วยคีย์ที่ได้รับอำนาจสำหรับโดเมน example.com
เพื่อให้เล็ท’ส เอ็ทคริปต์ทราบว่าได้รับอนุญาตแล้ว
เมื่อ CA ของเล็ท’ส เอ็นคริปต์รับคำร้องขอ มันจะตรวจสอบลายเซ็นทั้งสองตัว ถ้าทุกอย่างเป็นไปด้วยดี มันจะออกหนังสือรับรองสำหรับโดเมน example.com
ด้วยคีย์สาธารณะจาก CSR แล้วส่งคืนให้เอเจนท์
การเรียกคืนหนังสือรับรอง ทำงานในลักษณะเดียวกัน เอเจนท์จะลงนามคำร้องขอเรียกคืนด้วยคู่กุญแจที่ได้รับอำนาจสำหรับ example.com
, และ CA ของเล็ท’ส เอ็นคริปต์ทำการตรวจสอบว่าคำร้องขอได้รับอนุญาตแล้ว ถ้าเป็นไปตามนั้น มันจะประกาศข้อมูลการเรียกคืนหนังสือรับรอง เข้าสู่ช่องทางการเรียกคืนปกติ (เช่น OCSP) เพื่อให้ผู้ที่เกี่ยวข้องเช่น บราวเซอร์สามารถทราบได้ว่ามันไม่ควรยอมรับหนังสือรับรองที่ถูกยกเลิกไปแล้ว