วันจันทร์ที่ 8 มีนาคม พ.ศ. 2553

Digital Signature ลายเซ็นดิจิทัล

ลายเซ็นดิจิทัล หรือลายเซ็นอิเลคทรอนิคส์ เป็นข้อมูลที่แนบไปกับเอกสารที่ส่งไปเพื่อเป็นการแสดงตัวตนว่าผู้ส่งข้อความเป็นใคร การลงนามในเอกสารของระบบสารสนเทศ (Information System) ที่อยู่ในรูปแบบการเข้ารหัสลับ โดยผู้รับปลายทางสามารถตรวจสอบและยืนยันลายเซ็นนี้ได้โดยที่ผู้ส่งไม่อาจปฏิเสธได้ และยังสามารถนำลายเซ็นนี้ไปเป็นหลักฐานในชั้นศาลได้
ลายเซ็นชื่อดิจิตอล (Digital Signature) จะใช้เทคนิคที่เรียกว่า การเข้ารหัส (Cryptography) โดยใช้ลายมือชื่อดิจิตอล (Digital Signature) ผู้เขียนข้อมูลอิเล็กทรอนิคส์สามารถลงนามในข้อมูลดังกล่าวโดยใช้รหัส หรือกุญแจลับ (Secret Cryptography Key / Private Key) ซึ่งรหัสดังกล่าวนี้ต้องรักษาไว้เป็นความลับอยู่เสมอ ลายมือชื่อ(ซึ่งอยู่ในรูปของรหัส) สามารถที่จะตรวจสอบความถูกต้องโดยใช้รหัสหรือกุญแจสาธารณะ (Public Key) ซึ่งเป็นรหัสที่มีหน้าที่ตรวจสอบความถูกต้องของรหัสลับเท่านั้น ไม่สามารถใช้เป็นรหัสลับไปทำหน้าที่เป็นลายมือชื่อของเจ้าของรหัสได้ รหัสดังกล่าวจึงสามารถประกาศให้สาธารณชนโดยทั่วไปรับทราบได้
การเข้ารหัสมี 2 แบบ
- การเข้ารหัสแบบสมมาตร “(Symmetric or Secret Key Cryptography) เป็นการเข้ารหัสแบบสมมาตรก่อนที่จะเริ่มติดต่อสื่อสารกัน จะต้องมีการแลกเปลี่ยนรหัสลับกันก่อน เพื่อใช้ในการตรวจสอบความถูกต้องแท้จริง
- การเข้ารหัสแบบอสมมาตร “(Asymmetric or Public Key Cryptography) ผู้เป็นเจ้าของต้องเก็บรักษาไว้อย่างปลอด (รหัสลับหรือกุญแจลับ)
ความจำเป็นของการใช้ลายเซ็นชื่อดิจิทัล (Digital Signature)
ในโลกของดิจิตอล การตรวจสอบความถูกต้องแท้จริงของข้อมูลอิเล็กทรอนิคส์เป็นเรื่องที่มีความสำคัญอย่างมาก หากเราไม่แน่ใจว่าข้อมูลที่ส่งมานั้นมาจากใคร และมีความสมบูรณ์หรือไม่ ความไว้วางใจในการติดต่อสื่อสารก็จะไม่มี โดยเฉพาะอย่างยิ่งในระบบเปิด (Open Environment) ที่คู่ค้าอาจเป็นคนที่เราไม่เคยพบมาก่อน ตัวอย่างของระบบเปิด เช่น บนเครือข่ายอินเทอร์เน็ต ความไว้วางใจมีความจำเป็นอย่างมากที่จะส่งเสริมให้มีผู้ใช้เครือข่ายดังกล่าว เพื่อประกอบพาณิชย์อิเล็กทรอนิคส์ (Electronic Commerce)เทคโนโลยีลายมือชื่อดิจิตอล ช่วยให้ระบบการตรวจสอบความถูกต้องแท้จริงมีประสิทธิภาพอย่างมาก เพราะหากไม่เคยพบคู่ค้าอีกฝ่ายหนึ่งมาก่อน ก็สามารถตรวจสอบได้ว่าผู้ที่ส่งข้อมูลนั้นเป็นใครได้อย่างแน่นอน ลายมือชื่อดิจิตอลสามารถใช้ตรวจสอบความถูกต้องแท้จริงกับข้อมูลอิเล็กทรอนิคส์ทุกประเภท ไม่ว่าจะเป็น Electronic Mail โปรแกรมคอมพิวเตอร์ หรือ Web pages เป็นต้น ดังนั้นจึงสามารถใช้โดยบุคคลธรรมดาแทนลายมือชื่อ (Hand - Written) เพื่อลงนามเอกสารทางอิเล็กทรอนิคส์ หรือใช้โดยนิติบุคคลแทนการใช้ตราประทับหรือหัวจดหมายแบบเดิมได้
กระบวนการในการลงลายมือ
1. เริ่มจากการนำเอาข้อมูลอิเล็กทรนอิกส์ต้นฉบับที่จะส่งไปนั้นมาผ่านกระบวนการทางคณิตศาสตร์ที่เรียกว่า ฟังก์ชันย่อยข้อมูล (Hash Function) เพื่อให้ได้ข้อมูลที่สั้นๆ ที่เรียกว่า ข้อมูลที่ย่อยแล้ว (Digest) ก่อนที่จะทำการเข้ารหัส เนื่องจากข้อมูลต้นฉบับมักจะมีความยาวมากซึ่งจะทำให้กระบวนการเข้ารหัสใช้เวลานานมาก

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










3. จากนั้นก็ทำการส่ง ลายมือชื่อไปพร้อมกับข้อมูลต้นฉบับ ไปยังผู้รับ ผู้รับก็จะทำการตรวจสอบว่าข้อมูลที่ได้รับถูกแก้ไขระหว่างทางหรือไม่ โดยการนำข้อมูลต้นฉบับที่ได้รับ มาผ่านกระบวนการย่อยด้วย ฟังก์ชันย่อยข้อมูล จะได้ข้อมูลที่ย่อยแล้วอันหนึ่ง


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





การสร้างรหัสหรือกุญแจ (Key)
ผู้ใช้สามารถสร้างรหัสหรือกุญแจคู่ (Key Pair) โดยใช้โปรแกรมการเข้ารหัส (Cryptography Software) ในปัจจุบันโปรแกรมการสื่อสารทางอินเตอร์เน็ต (Internet Communication Software) ที่เป็นที่นิยมใช้ อย่างเช่น Microsoft Internet Explorer และ Netscape Communicator ก็ได้มีโปรแกรมให้ผู้ใช้สามารถสร้างรหัส หรือกุญแจคู่ของตนเองได้ อย่างไรก็ดีรหัส หรือกุญแจดังกล่าวสามารถสร้างได้โดยบุคคลที่สาม ตัวอย่างเช่น ในภาคการธนาคารทางอิเล็กทรอนิคส์ (Electronic Banking Sector) ธนาคารส่วนใหญ่จะเป็นผู้สร้างกุญแจคู่ให้กับลูกค้า เพื่อเหตุผลทางด้านความปลอดภัย โดยส่วนใหญ่กุญแจลับมักถูกทำลายสำเนาโดยบุคคลที่สามทันทีเมื่อสร้างเสร็จ
โพรโตคอลในการพิสูจน์ตัวตน(Authentication Protocol)
ในระบบเครือข่ายแบบเปิดหรืออินเตอร์เน็ต การพิสูจน์ตัวตนถือได้ว่าเป็นกระบวนการเริ่มต้นและมีความสำคัญที่สุดในการปกป้องเครือข่ายให้ปลอดภัย โพรโตคอลในการพิสูจน์ตัวตน คือโพรโตคอลการสื่อสารที่มีกระบวนการพิสูจน์ตัวตนรวมอยู่ในชุดโพรโตคอล
โพรโตคอลการพิสูจน์ตัวตนที่กล่าวถึงในเอกสารฉบับนี้ เน้นเฉพาะโพรโตคอลหลักที่นิยมใช้อย่างแพร่หลายบนอินเตอร์เน็ตในปัจจุบัน ประกอบไปด้วย
Secure Socket Layer (SSL)
Secure Shell (SSH)
Internet Security (IPSEC)
Kerberos
Secure Socket Layer (SSL)
Secure Sockets Layer (SSL) เริ่มพัฒนาโดย Netscape Communications เพื่อใช้ในโพรโตคอลระดับแอพพลิเคชันคือ Hypertext Transfer Protocol (HTTP) ซึ่งเป็นการสื่อสารผ่านเว็บให้ปลอดภัย พัฒนาในช่วงต้นของยุคการค้าอิเล็กทรอนิคส์กำลังได้รับความนิยมในโลกอินเตอร์เน็ต
SSL ทำให้เกิดการสื่อสารอย่างปลอดภัยระหว่างไคลเอ็นต์และเซิร์ฟเวอร์ โดยการอนุญาตให้มีกระบวนการพิสูจน์ตัวตนวมกับการใช้งานลายเซ็นดิจิตอลสำหรับการรักษาความถูกต้องของข้อมูลและการเข้ารหัสข้อมูลเพื่อป้องกันความเป็นส่วนตัวระหว่างการสื่อสารข้อมูล
โพรโตคอล SSL อนุญาตให้สามารถเลือกวิธีการในการเข้ารหัส วิธีสร้างไดเจสต์ [*1] และลายเซ็นดิจิตอล ได้อย่างอิสระก่อนการสื่อสารจะเริ่มต้นขึ้น ตามความต้องการของทั้งเว็บเซิร์ฟเวอร์และบราวเซอร์ ทั้งนี้เพื่อเพิ่มความยืดหยุ่นในการใช้งาน เปิดโอกาสให้ทดลองใช้วิธีการในการเข้ารหัสวิธีใหม่ รวมถึงลดปัญหาการส่งออกวิธีการเข้ารหัสไปประเทศที่ไม่อนุญาต
Netscape เริ่มพัฒนา SSL เวอร์ชันแรกคือเวอร์ชัน 2.0 และเวอร์ชันถัดมาเป็น 3.0 ซึ่งสนับสนุนความสามารถด้านความปลอดภัยมากขึ้น และเป็นเวอร์ชันสุดท้ายก่อนที่จะเป็นมาตรฐานกลางของโพรโตคอลบนอินเตอร์เน็ต โดยเปลี่ยนชื่อเป็น Transport Layer Security หรือ TLS ซึ่งดูแลมาตรฐานโดย Internet Engineering Task Force (IETF) อธิบายเวอร์ชันของ SSL และผู้พัฒนาได้ตามตาราง


- [*1] ไดเจสต์ (Digest) คือข้อความที่เกิดจากการเข้ารหัสข้อมูลด้วยฟังก์ชันแฮชเช่น MD5 หรือ SHA-1
- [*2] ห่วงโซ่ Certificate (Certificate Chain) คือการเพิ่มข้อมูล Certificate ที่เกี่ยวเนื่องกันเมื่อใช้ในขั้นตอนแลกเปลี่ยนข้อมูล ซึ่งจะช่วยลดเวลาในการค้นหา Certificate จากผู้ให้บริการ Certificate Authority (CA) ที่เกี่ยวเนื่องกันมากกว่า 1 ขึ้นไป



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


ขั้นตอน 1 : ประกาศชุดวิธีการเข้ารหัส ไดเจสต์ และลายเซ็นดิจิตอลที่สนับสนุนของทั้งไคลเอ็นต์และเซิร์ฟเวอร์
ไคลเอ็นต์และเซิร์ฟเวอร์ส่งข้อความเริ่มต้นการสื่อสาร (Hello message) ซึ่งประกอบไปด้วยเวอร์ชันของโพรโตคอลที่ใช้ วิธีการเข้ารหัสที่เว็บเซิร์ฟเวอร์และไคลเอ็นต์สนับสนุน หมายเลขระบุการสื่อสาร (Session identifier) รวมถึงวิธีการบีบอัดข้อมูลในการสื่อสารที่สนับสนุน
หมายเลขระบุการสื่อสารที่เกิดขึ้น ใช้สำหรับตรวจสอบการเชื่อมต่อระหว่างไคลเอ็นต์และเซิร์ฟเวอร์ ถ้ามีการเชื่อมต่อก่อนหน้านี้เกิดขึ้น แสดงว่าได้มีการตกลงวิธีการสื่อสารแล้ว สามารถเริ่มต้นส่งข้อมูลได้ทันที เป็นการลดเวลาติดต่อสื่อสารลง
ขั้นตอน 2 : การพิสูจน์ตัวตนของเซิร์ฟเวอร์ต่อไคลเอ็นต์
ถัดมาเว็บเซิร์ฟเวอร์ทำการส่ง Certificate หรือใบยืนยันความมีตัวตนของเซิร์ฟเวอร์ ไคลเอ็นต์จะทำการตรวจสอบ Certificate กับผู้ให้บริการ Certificate Authority ที่ได้ตั้งค่าไว้ เพื่อยืนยันความถูกต้องของ Certificate ของเซิร์ฟเวอร์
ขั้นตอน 3 : การพิสูจน์ตัวตนของไคลเอ็นต์ต่อเซิร์ฟเวอร์ ถ้าจำเป็น
เซิร์ฟเวอร์สามารถร้องขอ Certificate จากไคลเอ็นต์เพื่อตรวจสอบความถูกต้องของ Client ด้วยก็ได้ ใช้ในกรณีที่มีการจำกัดการใช้งานเฉพาะไคลเอ็นต์ที่ต้องการเท่านั้น ซึ่ง SSL สนับสนุนการตรวจสอบได้จากทั้งเซิร์ฟเวอร์และไคลเอ็นต์ ขึ้นอยู่กับการเลือกใช้งานในขณะติดต่อสื่อสารที่เกิดขึ้นนั้น
ขั้นตอน 4 : ไคลเอ็นต์และเซิร์ฟเวอร์ตกลงชุดวิธีการเข้ารหัส การสร้างไดเจสต์ และการใช้ลายเซ็นดิจิตอล
ขั้นตอนการตรวจสอบ Certificate ที่เซิร์ฟเวอร์ร้องขอจากไคลเอ็นต์จะมีหรือไม่มีก็ได้ ขึ้นอยู่กับการตั้งค่าบนเซิร์ฟเวอร์ หลังจากขั้นตอนการตรวจสอบเสร็จสิ้น เซิร์ฟเวอร์และไคลเอ็นต์จะตกลงการใช้งานวิธีการเข้ารหัสระหว่างกันโดยใช้ค่าที่ได้จากการประกาศในขั้นตอนแรก
วิธีการแลกเปลี่ยนกุญแจในการเข้ารหัส (Key exchange method) คือการกำหนดกลไกการแลกเปลี่ยนกุญแจที่ใช้ในการเข้ารหัสระหว่างการสื่อสาร โดยทั้งไคลเอ็นต์และเซิร์ฟเวอร์จะใช้กุญแจนี้ในการเข้ารหัสและถอดรหัสข้อมูล ใน SSL เวอร์ชัน 2.0 จะสนับสนุนวิธีการแลกเปลี่ยนกุญแจแบบ RSA ส่วน SSL เวอร์ชัน 3.0 ขึ้นไปจะสนับสนุนวิธีการอื่นๆ เพิ่มเติมเช่นการใช้ RSA ร่วมกับการใช้ Certificate หรือ Diffie-Hellman เป็นต้น
วิธีการเข้ารหัสในปัจจุบันแบ่งเป็นสองวิธีคือ การใช้กุญแจเดียวกันในการเข้ารหัสและถอดรหัส อาจเรียกกุญแจนี้ว่า Session key หรือ Secret key ส่วนอีกวิธีการคือ การใช้กุญแจคนละตัวในการเข้ารหัสและถอดรหัส ประกอบไปด้วยกุญแจสาธารณะและกุญแจส่วนตัวซึ่งเป็นคู่กันเสมอ เข้ารหัสด้วยกุญแจใด จะต้องถอดรหัสด้วยกุญแจที่คู่กันและตรงกันข้ามเท่านั้น มักใช้วิธีการเข้ารหัสด้วยกุญแจคนละตัวมาใช้ในการเข้ารหัส Session key และส่งไปให้ฝั่งตรงข้ามก่อนการสื่อสารจะเกิดขึ้นรวมเรียกว่าวิธีการแลกเปลี่ยนกุญแจในการเข้ารหัส
SSL ใช้วิธีการเข้ารหัสด้วยกุญแจสมมาตร หรือกุญแจเดียวในการเข้ารหัสและถอดรหัส ตามที่กล่าวข้างต้น วิธีการเข้ารหัสคือ การเข้ารหัสด้วย DES และ 3DES (Data Encryption Standard), วิธีการเข้ารหัสด้วย IDEA ส่วน RC2 และ RC4 เป็นวิธีการเข้ารหัสของ RSA รวมถึงวิธีการเข้ารหัสแบบ Fortezza สำหรับความยาวของการเข้ารหัสที่ใช้คือ 40 บิต, 96 บิต และ 128 บิต
การสร้าง Message Authentication Code (MAC) เพื่อใช้สำหรับการยืนยันความถูกต้องของข้อมูลระหว่างการสื่อสารและป้องกันการปลอมข้อมูล ส่วนฟังก์ชันสร้างไดเจสต์ที่ SSL สนับสนุนและเลือกใช้ได้ในปัจจุบันคือ MD5 ขนาด 128 บิต และ SHA-1 (Secure Hash Algorithm) ขนาด 160 บิต
ซึ่งจะได้วิธีการที่ทั้งสองฝ่ายสนับสนุนและเหมาะสมซึ่งเป็นขั้นตอนสุดท้ายก่อนการสื่อสารที่มีการเข้ารหัสจะเริ่มต้นขึ้น
การเก็บรักษากุญแจลับ (Private Key)
โดยปกติผู้ใช้สามารถเก็บกุญแจลับของตนไว้ชั่วคราวได้ใน Hard Disk ของตนเอง ซึ่งผู้ใช้สามารถเข้าใช้กุญแจลับของตนเองได้ต่อเมื่อใส่รหัสผ่านของตนเองก่อน การเก็บรูปแบบนี้ มีข้อเสียคือ ไม่สามารถนำกุญแจดังกล่าวติดตัวไปมาได้ ดังนั้นจึงมีการคิดค้นให้สามารถเก็บกุญแจลับได้ในสื่อที่สามารถนำติดตัวไปได้ เช่น บนบัตรอัจฉริยะ (Smart Card) ซึ่งการเก็บในรูปแบบดังกล่าวได้รับความนิยมมาก ผู้ใช้สามารถสอดบัตรดังกล่าวกับเครื่องอ่านข้อมูล และผู้ใช้ก็สามารถลงลายมือชื่อทางอิเล็กทรอนิคส์ได้ทันที เมื่อได้สร้างกุญแจสาธารณะ และกุญแจลับแล้ว ถือเป็นสิ่งที่มีความสำคัญอย่างยิ่งที่จะเก็บกุญแจลับให้ปลอดภัย หากมีบุคคลที่ไม่ประสงค์ดีนำกุญแจลับไป เขาสามารถนำไปปลอมเป็นลายมือชื่อของเจ้าของกุญแจดังกล่าวได้ การเก็บรักษากุญแจลับ จึงเป็นเรื่องราวของเจ้าของที่จะต้องมีมาตรการและระบบรักษาความปลอดภัยที่ดีเพียงพอ

ใบรับรองดิจิตอล (Digital Certificate) คือ
มีความจำเป็นที่จะต้องอาศัยการยีนยันรับรองจากบุคคลที่สามารถไว้วางใจได้ (Trusted Third Party) บุคคลที่เป็นผู้น่าไว้วางใจดังกล่าวจะเป็นผู้ที่สามารถยีนยันว่ากุญแจสาธารณะนั้นสามารถตรวจสอบความถูกต้องของกุญแจลับได้ การยีนยันความสัมพันธ์ดังกล่าวจะทำโดยการออกใบรับรองดิจิตอล (Digital Certificate) โดยบุคคลที่สามที่น่าไว้วางใจนี้เรียกว่าหน่วยงานออกใบรับรอง (Certification Authority) ซึ่งต้องเป็นที่ยอมรับจากบุคคลที่เกี่ยวข้องว่ามีความเป็นกลางและไว้วางใจได
ประกอบไปด้วย
- หมายเลขของใบรับรอง (serial number )
- วิธีการที่ใช้ในการเข้ารหัสข้อมูล (Algorithm)
- หน่วยงานที่ออก (issuer)
- เวลาที่ใบรับรองเริ่มใช้ได้ (starting time)
- เวลาที่ใบรับรองหมดอายุ (expiring time)
- ผู้ได้รับการรับรอง (subject)
- กุญแจสาธารณะของผู้ได้รับการรับรอง (subject’s public key)
- ลายมือชื่อดิจิตอลของหน่วยงานที่ออกใบรับรอง (CA signature)
แบ่งตามลักษณะการใช้งาน
- ใบรับรองเครื่องแม่ข่าย (Server certificate) เช่นใบรับรองเครื่องแม่ข่าย SSL ที่ใช้ทั่วไปในการพาณิชย์อิเล็กทรอนิกส์ ซึ่งจะมีชื่อของ บริษัทที่เกี่ยวข้อง ชื่อโดเมนของเครื่อง กุญแจสาธารณะของเครื่อง เป็นต้น
- ใบรับรองบุคคล (Personal certificate) หรือใบรับรองเครื่องลูกข่าย (client certificate) ซึ่งจะระบุชื่อบุคคลนั้นและข้อมูลอื่นๆ เช่น รหัสไปรษณีย์อิเล็กทรอนิกส์หรือที่อยู่ - ใบรับรององค์กรออกใบรับรอง (certification authority certificate) ซึ่งจะมีชื่อองค์กรออกใบรับรองที่ได้รับการรับรอง และกุญแจสาธารณะขององค์กรนั้น และลายมือชื่อดิจิตัลขององค์กรออกใบรับรองที่ให้การรับรอง ซึ่งอาจเป็นการรับรองตนเอง (self-certified) ก็ได้ในกรณีที่องค์กรออกใบรับรองทั้งสองเป็นหน่วยงานเดียวกัน

องค์กรออกใบรับรอง (Digital Certificate)
โครงสร้างพื้นฐานซึ่งจะช่วยให้สามารถระบุตัวบุคคลได้อย่างสะดวกและมีความน่าเชื่อถือสูงคือหน่วยงานที่เรียกว่า “องค์กรใบรับรอง” หรือที่เรียกกันว่าโครงสร้างพื้นฐานสาธารณะ (Public Key Infrastructure หรือ KPI) ซึ่งจะเป็นตัวกลางในการตรวจสอบและออกใบรับรองให้ผู้อื่น
บุคคลต่างๆ ที่เกี่ยวข้อง
- ผู้ถือใบรับรอง (certificate holder)
- ผู้ใช้ใบรับรอง ในการระบุตัวผู้ถือใบรับรอง (relying party)
- องค์กรออกใบรับรอง หรือเรียกว่าบุคคลที่สามที่เชื่อถือได้ (trusted third party)
บทบาทขององค์กรออกใบรับรอง (Digital Certificate)
1. บริการเทคโนโลยีเข้ารหัสซึ่งประกอบไปด้วย
- การผลิตกุญแจลับ (generation of private key)
- การส่งมอบกุญแจลับ (Distribution of private key)
- การผลิตกุญแจลับและกุญแจสาธารณะ (Generation of public/private key)
- การผลิตลายมือชื่อดิจิตอล (Generation of digital signature)
- การรับรองลายมือชื่อดิจิตอล (Validation of digital signature)
2. บริการที่เกี่ยวข้องกับการออกใบรับรองซึ่งประอบไปด้วย
- การออกใบรับรอง (Certificate issuance)
- การตีพิมพ์ใบรับรองเผยแพร่แกบุคคลทั่วไป (certificate publishing)
- การเก็บต้นฉบับใบรับรอง (certificate archiving)
- การกำหนดนโยบายการออกและอนุมัติใบรับรอง (policy creation/approval)
3. บริการเสริมซึ่งได้แก่
- การบันทึกข้อมูลต่างๆที่จำเป็นต้องใช้ในการออกหรือยกเลิกใบรับรอง (Registration)
- การเก็บต้นฉบับข้อมูล (data archiving)
- การตรวจสอบสัญญาต่างๆ (natural authentication)
- การกู้กุญแจ (key recovery)
- การทำทะเบียน (directory)
ข้อจำกัดในการระบุตัวบุคคลด้วยใบรับรองดิจิทัล
1. การระบุตัวบุคคลจะยึดที่ตัวกุญแจลับที่บุคคลนั้นเป็นเจ้าของ ในความเป็นจริงผู้ที่ใช้กุญแกนั้นอาจจะไม่ใช่เจ้าของก็สามารถใช้ได้
2. ใบรับรองตามมาตราฐาน X. 509 v3 ซึ่งเป็นมาตราฐานหลักไม่ได้ระบุข้อมูลข้อมูลบางอย่างเกี่ยวกับตัวบุคคล เช่น เพศ อายุ
3. ในการใช้ใบรับรองตามมาตราฐาน X. 509 v3 ผู้ใช้ไม่สามารถเลือกเปิดเผยข้อมูลของตนเองได้แต่ต้องเปิดเผยข้อมูลทั้งหมด ทั้งที่ในบางครั้งไม่จำเป็นต้องเปิดเผยทั้งหมด
4. ในการตรวจสอบหลักฐานในการระบุตัวบุคคลมักใช้วิธีง่ายเพื่อประหยัดต้นทุน ทำให้ขาดความน่าเชื่อถือ
5. การออกใบรับรองตัวบุคคล ในด้านพานิชย์อิเล็กทรอนิกส์ ระหว่างธุระกิจกับผู้บริโภค ส่วนใหญ่ยังเป็นการออกใบรับรองให้เฉพาะธุรกิจ หรือการรับรองเครื่องแม่ช่ายแบบ SSL ทำให้ผู้บริโภคไม่สามารถระบุตัวผู้ขายได้ ผู้ขายไม่สามารถระบุตัวผู้ซื้อได้
ในทางกฏหมาย
ลายเซ็นดิจิตอล คือ การทำเครื่องหมาย (Seal) บนข้อมูลดิจิทัลโดยใช้รหัสลายเซ็นส่วนตัว (Private Signature Key) โดยที่การทำเครื่องหมายดังกล่าวจะมีความเกี่ยวเนื่องกับรหัสหรือกุนแจสาธารณะ โดยจะมีบุคคลภายนอกที่ทำหน้าที่รับรอง (Certification Authority) รับรองว่าลายเซ็นดิจิทัลดังกล่าวเป็นลายเซ็นของผู้เซ็นจริง
ตัวอย่างองค์กรที่นำไปใช้งานของไทย
- กรมศุลกากรได้มีการนำเอาลายเซ็นดิจิทัลเข้ามาใช้ในขั้นตอนของการดำเนินงาน จากเดิมที่เคยมีการพิมพ์ใบขนสินค้าพร้อมกับการลงลายมือชื่อของผู้มีอำนาจหรือผู้ที่ได้รับมอบอำนาจ เพื่อให้เอกสารฉบับนั้นถูกต้องตามกฎหมาย ให้กลายมาเป็น ระบบการผ่านพิธีการศุลกากรอิเล็กทรอนิกส์แบบไร้เอกสารโดยผู้ประกอบการส่งของออก (Exporter) หรือตัวแทนออกของ (Customs Broker) ทุกรายจะต้องพร้อมเข้าสู่ระบบ Paperless ภายใน 29 เมษายน 2549 นี้ จะต้องทำการลงทะเบียนเป็นผู้ผ่านพิธีการ ขั้นตอนต่อมาคือการยื่นขอใบรับรองอิเล็กทรอนิกส์ กับหน่วยงานผู้ให้บริการใบรับรองอิเล็กทรอนิกส์ (CA) ซึ่งหน่วยงานที่กรมฯ รับรองและแนะนำในไปจดทะเบียนในขณะนี้คือ TOT Certificate Authority (TOT CA)

เอกสารอ้างอิง
ศูนย์พัฒนาพานิชย์อิเล็กทรอนิกส์ การทำธุรกรรมออนไลน์น่าเชื่อถือเพียงใด. [ออนไลน์]
เข้าถึงได้จาก : http://www.ecommerce.or.th/project/e-guide/d-sign.html.

สุธิดา วัฒนชัย. ลายเซ็นดิจิทัล. [ออนไลน์].
เข้าถึงได้จาก : http://ce.eng.dpu.ac.th/images/academic/pdf/475_swt.pdf#

วศิน เพิ่มทรัพย์. กลไกการทำงานของ Digital Signature. [ออนไลน์]
เข้าถึงได้จากhttp://www.provision.co.th/pcdirect/index.php?itemid=64&catid=6.

สิริพร จิตเจริญธรรม.ความรู้เบื้องต้นเกี่ยวกับการพิสูจณ์ตัวตน. [ออนไลน์]
เข้าถึงได้จาก http://www.thaicert.org/paper/authen/authentication_guide.php























ไม่มีความคิดเห็น:

แสดงความคิดเห็น