การเข้ารหัส (Encryption)

Download Report

Transcript การเข้ารหัส (Encryption)

278412/278307
Electronic Commerce
บทที่ 8
การรักษาความปลอดภัย
สาหรับพาณิชย์ อเิ ล็กทรอนิกส์
อ.ธารารั ตน์ พวงสุวรรณ
[email protected]
Outline
• ภัยคุกคามต่ อพาณิชย์ อเิ ล็กทรอนิกส์
• มาตรการรักษาความปลอดภัยของข้ อมูล
สาหรับพาณิชย์ อเิ ล็กทรอนิกส์
• เทคโนโลยีการรักษาความปลอดภัยของข้ อมูล
ความปลอดภัยกับพาณิชย์ อเิ ล็กทรอนิกส์
• ความปลอดภัยทางกายภาพ (Physical Security)
• ความปลอดภัยของข้ อมูล (Information Security)
• สำหรับพำณิ ชย์อิเล็กทรอนิกส์จะเน้นถึงควำมปลอดภัยของข้อมูลเป็ น
หลัก
• ประเด็นในเรื่ องควำมปลอดภัยสำหรับพำณิ ชย์อิเล็กทรอนิกส์ เป็ น
อุปสรรคของกำรพัฒนำพำณิ ชย์อิเล็กทรอนิกส์
ผู้เจาะระบบรักษาความปลอดภัย
ผู้เจาะระบบรักษาความปลอดภัย คือ บุคคลที่ไม่มีสิทธิ์ในกำรเข้ำใช้
ระบบคอมพิวเตอร์ ลักลอบทำกำรเจำะระบบด้วยวิธีใดวิธีหนึ่ง แบ่งเป็ น
2 ประเภทหลัก ๆ ได้แก่
• Hacker
• Cracker
4
ภัยคุกคามพาณิชย์ อเิ ล็กทรอนิกส์
•
•
•
•
•
•
•
•
•
กำรเข้ำสู่เครื อข่ำยที่ไม่ได้รับอนุญำต (Unauthorized Access)
กำรทำลำยข้อมูลและเครื อข่ำย
กำรเปลี่ยน กำรเพิ่ม หรื อกำรดัดแปลงข้อมูล
กำรเปิ ดเผยข้อมูลแก่ผทู ้ ี่ไม่ได้รับอนุญำต
กำรทำให้ระบบบริ กำรของเครื อข่ำยหยุดทำงำน (Denial of service)
กำรขโมยข้อมูล
กำรปฏิเสธกำรบริ กำรที่ได้รับ และข้อมูลที่ได้รับหรื อส่ ง
กำรอ้ำงว่ำได้ให้บริ กำรทั้งๆ ที่ไม่ได้ทำ และหรื อกำรอ้ำงว่ำได้รับส่ ง
ไวรัสที่แอบแฝงมำกับผูท้ ี่เข้ำมำใช้บริ กำร
มาตรการรักษาความปลอดภัยของข้ อมูล
สาหรับพาณิชย์ อเิ ล็กทรอนิกส์
สิ่ งที่องค์กร บริ ษทั ห้างร้าน และบุคคลทัว่ ไป ต้องพิจารณา ใน
การทาธุรกรรมอิเล็กทรอนิกส์อย่างปลอดภัย คือความต้องพื้นฐาน 5
ประการ
1. Confidentiality
2. Access Control
3. Authentication
4. Data Integrity
5. Non-Repudiation
การรักษาความลับของข้ อมูล (Confidentiality)
• กำรรักษำควำมลับของข้อมูลที่เก็บไว้ หรื อส่ งผ่ำนทำงเครื อข่ำย
• โดยต้องป้ องกันข้อมูลไม่ให้ถูกเปิ ดเผยต่อบุคคลที่ไม่ได้รับอนุญำต
• เช่น กำรเข้ำรหัส กำรใช้บำร์โค๊ด กำรใส่ รหัสลับ(password)
กำรใช้ Firewall เป็ นต้น
7
การควบคุมการเข้ าถึงข้ อมูล(Access Control)
• คือ มำตรกำรควบคุมกำรเขำถึงข้อมูลหรื อกำรระบุตวั บุคคลใหมี
อำนำจหนำที่ในกำรเข้ำถึงข้อมูลตำมที่กำหนด
• เช่น กำรกำหนดสิ ทธิ์กำรเข้ำถึงข้อมูลต่ำงๆ ใน Web site
การควบคุมการเข้ าถึงข้ อมูล(Access Control)
• ควบคุมกำรเข้ำถึงทำงกำยภำพ (Physical Access Control)
• ควบคุมกำรเข้ำถึงทำงตรรกะ (Logical Access Control)
การระบุหรือยืนยันตัวบุคคล(Authentication)
• คือกำรระบุตวั บุคคลที่ติดตอวำเป็ นบุคคลตำมที่ไดกลำวอ้ำงไว้จริ ง
• โดยอำจดูจำกข้อมูลบำงสิ่ งบำงอยำงที่ใช้ยนื ยันหรื อระบุตวั ตนของ
บุคคลนั้น
• เช่น ลำยมือชื่อดิจิตอล (Digital Signature), รหัสผำน หรื อดูจำก
ลักษณะเฉพำะ/ลักษณะทำงกำยภำพของบุคคลนั้น
กลไกของการพิสูจน์ ตวั ตน (Authentication mechanisms)
การรักษาความถูกต้ องของข้ อมูล (Data Integrity)
คือ กำรรักษำข้อมูลที่ส่งจำกผูส้ งให้เหมือนเดิม และถูกต้องทุก
ประกำรเมื่อไปถึงยังผูร้ ับ
• รวมถึง กำรป้ องกันไมให้ขอ้ มูลถูกแก้ไขโดยตรวจสอบไมได้
• ซึ่งเทคนิคที่นิยมนำมำประยุกต์ใช้ในกำรรักษำควำมถูกต้องของ
ข้อมูลคือ “Hashing”
Hashing :
•
Key
Hash Function
Hash Code
การป้ องกันการปฏิเสธความรับผิดชอบ
(Non-Repudiation)
• คือกำรป้ องกันกำรปฏิเสธวำไมไดมีกำรรับหรื อสงขอมูลจำกฝำยต่ำงๆที่
เกี่ยวของ
• และกำรปองกันกำรอ้ำงที่เป็ นเท็จวำไดรับหรื อส่ งข้อมูล
• ใช้เทคนิค Digital Signature, กำรรับรองกำรให้บริ กำร หรื อ กำรแจ้งให้
ลูกค้ำทรำบถึงขอบเขตของกำรรับผิดชอบที่มีต่อสิ นค้ำ หรื อระหว่ำงกำรซื้อ
ขำย ไว้บนเว็บไซต์
เทคโนโลยีการรักษาความปลอดภัยของข้ อมูล
• กำรเข้ำรหัส (Encryption)
- Symmetric encryption (กุญแจเหมือนกัน)
- Asymmetric encryption (กุญแจต่ำงกัน)
• Secure Socket Layer (SSL)
• Secure Electronic Transaction (SET)
• ลำยเซ็นต์ดิจิตอล (Digital Signature)
• เทคโนโลยี CAPTCHA
การเข้ ารหัส (Cryptography)
Crypto ที่แปลว่ำ "กำรซ่อน"
Graph ที่แปลว่ำ "กำรเขียน"
•
•
•
•
Cryptography มีควำมหมำยว่ำ “กำรเขียนเพื่อซ่อนข้อมูล”
โดยมีจุดประสงค์เพื่อป้ องกันไม่ให้ผอู ้ ื่นสำมำรถอ่ำนข้อมูลได้
ยกเว้นผูท้ ี่เรำต้องกำรให้อ่ำนได้เท่ำนั้น
ซึ่งผูท้ ี่เรำต้องกำรให้อ่ำนได้จะต้องทรำบวิธีกำรถอดรหัสข้อมูลที่ซ่อนไว้
ได้
ศัพท์ ต่างๆที่ควรทราบเกีย่ วกับการเข้ าและถอดรหัส
•
•
•
•
•
•
•
Plain Text
Cipher Text
Algorithm
Encryption
Decryption
Key
Cryptography
การเข้ ารหัส (Cryptography)
• กำรทำให้ขอ้ มูลที่จะส่ งผ่ำนไปทำงเครื อข่ำยอยูใ่ นรู ปแบบที่ไม่สำมำรถ
อ่ำนออกได้ ด้วยกำรเข้ำรหัส (Encryption)
• ทำให้ขอ้ มูลนั้นเป็ นควำมลับ
• ผูม้ ีสิทธิ์จริ งเท่ำนั้นจะสำมำรถอ่ำนข้อมูลนั้นได้ดว้ ยกำรถอดรหัส
(Decryption)
• ใช้สมกำรทำงคณิ ตศำสตร์
• ใช้กญ
ุ แจซึ่งอยูใ่ นรู ปของพำรำมิเตอร์ที่กำหนดไว้ (มีควำมยำวเป็ นบิต)
17
การเข้ ารหัส (Encryption)
• ประกอบด้วยฝ่ ำยผูร้ ับ และฝ่ ำยผูส้ ่ ง
• ตกลงกฎเกณฑ์เดียวกัน ในกำรเปลี่ยนข้อควำมต้นฉบับให้เป็ นข้อควำม
อ่ำนไม่รู้เรื่ อง (cipher text)
18
การเข้ ารหัส (Encryption)
มีดว้ ยกัน 2 ลักษณะ คือ
1. การเข้ ารหัสแบบสมมาตร (Symmetric Encryption)
• วิธีน้ ีท้ งั ผูร้ ับและผูส้ ่ งข้อมูลจะทรำบ Key ที่เหมือนกัน
• ใช้ Key เดียวกันในกำรรับ-ส่ งข้อมูล
Symmetric Encryption
Secret key
ผูส้ ่ง
Plain text
Encryption Algorithm
Cipher text
Secret key
ผูร้ บั
Decryption Algorithm
Plain text
Symmetric Encryption
ข้ อดี
• กำรเข้ำ รหั ส ข้อ มู ล ท ำได้ร วดเร็ ว กว่ ำ เมื่ อ เที ย บกับ วิ ธี Asymmetric
Encryption
ข้ อจากัด/ ข้ อควรระวัง
• Confidentiality
• Authentication / Non-Repudiation
การเข้ ารหัส (Encryption)
2. (Asymmetric Key Cryptography หรือ Public Key Cryptography)
• ใช้แนวคิดของกำรมี Key เป็ นคู่ ๆ โดยที่ Key แต่ละคู่จะสำมำรถเข้ำ
และถอดรหัสของกันและกันได้เท่ำนั้น
• Key แรกจะถูกเก็บรักษำอยู่กบั เจ้ำของ Key เท่ำนั้น เรี ยกว่ำ Private
key
• และคู่ของ Private key ที่เปิ ดเผยต่อสำธำรณะหรื อส่ งต่อให้ผูอ้ ื่นใช้
เรี ยกว่ำ Public key
• เน้ น ที่ ผู้ รั บ เป็ นหลั ก คื อ จะใช้กุ ญ แจสำธำรณะของผูร้ ั บ ซึ่ งเป็ นที่
เปิ ดเผยในกำรเข้ำรหัส และจะใช้กญ
ุ แจส่ วนตัวของผูร้ ับในกำรถอดรหัส
Asymmetric Encryption
ประโยชน์ ของวิธีการเข้ ารหัสแบบอสมมาตร มีดังนี้
• ใช้รักษำควำมลับของข้อควำมที่จะจัดส่ งไปโดยใช้วิธีกำรเข้ำรหัส
ด้วย Public-Key
• ควำมเสี่ ยงของกำรล่วงรู ้ Private-Key จำกผูอ้ ื่นเป็ นไปได้ยำก
• แก้ปัญหำในส่ วน Authenticate / Non-Repudiation
Asymmetric Encryption
ข้ อจากัด/ ข้ อควรระวัง สำหรับกำรเข้ำรหัสแบบอสมมำตร มีดงั นี้
• กำรเข้ ำ รหั ส ข้ อ มู ล ท ำได้ ช้ ำ กว่ ำ เมื่ อ เที ย บกั บ วิ ธี Symmetric
Encryption
เปรียบเทียบข้ อดี-ข้ อเสี ย
กุญแจสมมาตร
กุญแจอสมมาตร
ข้ อดี
มีความรวดเร็ วเพราะใช้การคานวณที่
น้อยกว่า
สามารถสร้างได้ง่ายโดยใช้ฮาร์ ดแวร์
ข้ อดี
การบริ หารจัดการกุญแจทาได้ง่ายกว่า
เพราะ ใช้กุญแจในการเข้ารหัส และ
ถอดรหัสต่างกัน
สามารถระบุผใู ้ ช้โดยการใช้ร่วมกับ
ลายมือชื่อ อิเล็กทรอนิกส์
ข้ อเสี ย
ใช้เวลาในการเข้าและถอดรหัสค่อนข้าง
นาน เพราะต้องใช้การคานวณอย่างมาก
ข้ อเสี ย
การบริ หารจัดการกุญแจทาได้ยาก
เพราะกุญแจในการเข้ารหัสและถอด
รหัสเหมือนกัน
Secure Socket Layer (SSL)
• เป็ นโปรโตคอลที่ พฒ
ั นำโดย Netscape เพื่อใช้ในกำรรั กษำควำม
ปลอดภัยให้กบั ข้อมูลบน World Wide Web
• ใช้ส ำหรั บ ตรวจสอบและเข้ำ รหั ส ข้อ มู ล ในกำรติ ด ต่ อ สื่ อ สำร
ระหว่ำงเครื่ องให้บริ กำร (Server) และเครื่ องรับบริ กำร (Client)
• ใช้เ ทคนิ ค Cryptography
และ ใบรั บ รองดิ จิ ต อล (Digital
Certificates)
• ผูซ้ ้ื อ สำมำรถตรวจสอบตัว ตนของผูข้ ำยก่ อ นได้จ ำกใบรั บ รอง
อิเล็กทรอนิกส์ที่ผขู ้ ำยขอจำก CA
• แต่ส่วนใหญ่ผขู ้ ำยไม่สำมำรถตรวจสอบตัวตนของผูซ้ ้ื อได้เพรำะผู ้
ซื้อไม่มีใบรับรองอิเล็กทรอนิกส์
ใบรับรองดิจิตอล Digital Certificate
• ถูกนำมำใช้สำหรับยืนยันในตอนทำธุรกรรมว่ำเป็ นบุคคลนั้นๆจริ ง
ตำมที่ได้อำ้ งไว้
• ออกโดยองค์กรกลำงที่เป็ นที่เชื่อถือ เรี ยกว่ำ องค์กรรับรองควำมถูกต้อง
(Certification Authority)
• มีกญ
ุ แจสำธำรณะเพื่อเข้ำรหัสข้อมูลที่ส่งผ่ำนเว็บไซต์น้ นั
• ให้ควำมมัน่ ใจว่ำติดต่อกับ web site นั้นจริ ง
• ป้ องกันกำรขโมยข้อมูลลูกค้ำจำกเว็บไซต์อื่น (spoofing)
29
Certification Authority :CA
หรือ Certification Service Provider (CSP)
• Certification Authority หรื อผูอ้ อกใบรับรอง
• ปัจจุบนั นิยมเรี ยกว่า Certification Service Provider (CSP) หมายถึง
บุคคลที่สาม ที่ได้รับความเชื่อถือและไว้วางใจจากบุคคลหรื อองค์กร
โดยทัว่ ไป
• CA จะเป็ นผูต้ รวจสอบสถานะและออกใบรับรองอิเล็กทรอนิกส์ให้แก่
ผูส้ มัครขอใบรับรองฯ
• CA เป็ นผูร้ ับรองความมีตวั ตนของทั้งผูข้ ายและผูซ้ ้ือ (หรื อผูส้ ่ งและ
ผูร้ ับ)
ประเภทของใบรับรองดิจิตอล
• ประเภทของใบรับรองดิจิตอล โดยทัว่ ไป แบ่ง ได้ ดังนี้
1. ใบรับรองสาหรับบุคคล
2. ใบรับรองสาหรับเครื่องแม่ ข่าย
31
ใบรับรองอิเล็กทรอนิกส์ (Electronic Certificate)
รำยละเอียดของใบรับรองอิเล็กทรอนิกส์ ประกอบด้วย
• ข้อมูลระบุผทู ้ ี่ได้รับกำรรับรอง ได้แก่ ชื่อ องค์กร ที่อยู่
• ข้อมูลระบุผอู ้ อกใบรับรอง ได้แก่ ลำยมือชื่อดิจิทลั ขององค์กรที่ออก
ใบรับรอง และหมำยเลขประจำตัวของผูอ้ อกใบรับรอง
• กุญแจสำธำรณะของผูท้ ี่ได้รับกำรรับรอง
• วันหมดอำยุของใบรับรองอิเล็กทรอนิกส์
• ระดับชั้นของใบรับรองดิจิทลั ซึ่งมี 4 ระดับ ในระดับ4 เป็ นระดับที่มีกำร
ตรวจสอบเข้มงวดที่สุด และต้องกำรข้อมูลมำกที่สุด
• หมำยเลขประจำตัวของใบรับรองอิเล็กทรอนิกส์
32
ใบรับรองอิเล็กทรอนิกส์ (Electronic Certificate)
ตัวอย่ าง
https เป็ นการแสดงว่ า
มีระบบเข้ ารหัสรักษา
ความปลอดภัย
คลิ๊กรู ปกุญแจ เพื่อดู
ใบรับรองอิเล็อทรอ
นิกส์
33
ใบรับรองอิเล็กทรอนิกส์ (Electronic Certificate)
ตัวอย่ าง
34
หลักการทางานของ SSL (ต่ อ)
Request
Digital Certificate
Public-Key
Check Certificate
Encrypt
Decrypt
Public-Key
Private-Key
Symmetric-Key
Symmetric-Key
Symmetric-Key
Symmetric-Key
SSL Protocol
Secure Electronic Transaction : SET
• SET เป็ นโปรโตคอลที่ทำง Visa และ Master card คิดค้นร่ วมกับ
Microsoft และ Netscape
• เพื่อตรวจสอบกำรชำระเงินด้วยบัตรเครดิตผ่ำนเครื อข่ำย
อินเทอร์เน็ตและเครื อข่ำยต่ำง ๆ ด้วยกำรสร้ำงรหัส SET ระดับ 128
bit
• ใช้ใบรับรองอิเล็กทรอนิกส์ (Digital Certificates) ในกำรระบุ
ตัวตนที่เกี่ยวข้องกับกำรซื้อขำย เช่น ผูถ้ ือบัตร ผูข้ ำย ช่องทำงกำร
ชำระเงิน และ Certificate Authorization (CA)
• สำมำรถตรวจสอบกำรมีสิทธ์ ของผูเ้ กี่ยวข้องด้วยกำรใช้ลำยเซ็นต์
ดิจิตอล (Digital Signature)
Secure Electronic Transaction : SET
ข้อดีของกำรรักษำควำมปลอดภัยด้วย โปรโตคอล SET
1. ควำมปลอดภัยของข้อควำม (Message Privacy)
2. ควำมสมบูรณ์ของข้อควำม (Message Integrity)
3. ควำมน่ำเชื่อถือ ( Matual Authentication)
ลายเซ็นต์ ดิจิตอล (Digital Signature)
• หมำยถึง กลุ่มของตัวเลขกลุ่มหนึ่งซึ่งแสดงควำมมีตวั ตนของบุคคล
คนหนึ่ง (กลุ่มตัวเลขนี้จะมีเลขที่ไม่ซ้ ำกับใครเลย)
• ได้จำกกำรเข้ำรหัสข้อมูลด้วยกุญแจส่ วนตัว (Private key) ของผูส้ ่ ง
เปรี ยบเสมือนลำยมือชื่อของผูส้ ่ ง และถอดรหัสด้วยกุญแจสำธำรณะ
ของผูส้ ่ ง (Public key) เพื่อระบุตวั บุคคล
• จะใช้ในกำรแนบติดไปกับเอกสำรใดๆ ก็ตำมในรู ปแบบของไฟล์
• นอกจำกจะสำมำรถระบุตวั บุคคล และเป็ นกลไกกำรป้ องกันกำร
ปฏิเสธควำมรับผิดชอบแล้ว
• ยังสำมำรถป้ องกันข้อมูลที่ส่งไปไม่ให้ถูกแก้ไข หรื อหำกถูกแก้ไขไป
จำกเดิมก็สำมำรถล่วงรู ้ได
ลายเซ็นต์ ดิจิตอล (Digital Signature)
• กำรเข้ำ รหั ส ข้อ ควำมที่ ย ำวนั้น ค่ อ นข้ำ งเสี ย เวลำ เนื่ อ งจำก
ขั้นตอนกำรเข้ำรหัสต้องใช้กำรคำนวณเป็ นอย่ำงมำก
• จึ งมีกำรสร้ ำงขั้นตอนที่ คำนวณได้อย่ำงรวดเร็ ว โดยเปลี่ยน
ข้อควำมทั้งหมดให้เหลื อเพีย งข้อควำมสั้น ๆ เรี ย กว่ำ “Message
Digest”
• เมื่อได้ Message Digest มำแล้วก็จะนำ Message Digest นี้ ไป
เข้ำรหัสด้วย Private-Key เพื่อสร้ำงเป็ นลำยเซ็นต์ดิจิตอล (Digital
Signature) ต่อไป
การสร้ างลายเซ็นต์ ดจิ ิตอล
(Creating Digital Signature)
Private-Key
[ผู ้สง่ ]
Hash Function
ข้อมูล
 Authentication
 Integrity
 Non-repudiation
Message
Digest
Digital Signature
Encryption
Algorithm
ข้ อสั งเกตุการสร้ างและลงลายมือชื่อดิจิตอล
• ลำยมือชื่อดิจิทลั จะแตกต่ำงกันไปตำมข้อมูลต้นฉบับและบุคคลที่จะลง
ลำยมือชื่อ ไม่เหมือนกับลำยมือชื่อทัว่ ไปที่จะต้องเหมือนกันสำหรับ
บุคคลนั้นๆ ไม่ข้ ึนอยูก่ บั เอกสำร
• กระบวนกำรที่ใช้จะมีลกั ษณะคล้ำยคลึงกับกำรเข้ำรหัสแบบอสมมำตร
แต่กำรเข้ำรหัสจะใช้ กุญแจส่ วนตัวของผูส้ ่ ง และ กำรถอดรหัสจะใช้
กุญแจสำธำรณะของผูส้ ่ ง ซึ่งสลับกันกับ กำรเข้ำและถอดรหัสแบบ
กุญแจอสมมำตร ในกำรรักษำข้อมูลให้เป็ นควำมลับ
43
เทคโนโลยี CAPTCHA
• CAPTCHA ย่อมำจำก "Completely Automated Public Turing test to
tell Computers and Humans Apart"
• คือ กำรทดสอบเพื่อเข้ำสู่ระบบคอมพิวเตอร์แบบโต้ตอบชนิดหนึ่ง เพื่อ
ทดสอบว่ำผูใ้ ช้งำนเป็ นมนุษย์จริ งหรื อว่ำไม่ใช่ Bot หรื อ โปรแกรม
อัตโนมัติ)
• คิดค้นขึ้นใน ปี ค.ศ. 2000 โดย Luis on Ahn , Manuel
Blum, Nicholas J. Hopper และ John Langford
เทคโนโลยี CAPTCHA
• รู ปแบบง่ำยๆที่พบ คือ กำรนำตัวอักษรมำแปลงให้เป็ นรู ปภำพ แล้วถำม
ผูใ้ ช้วำ่ ตัวอักษรในรู ปภำพนั้นคืออะไร
• เพรำะปกติมนุษย์จะอ่ำนตัวอักษรจำกรู ปภำพได้โดยไม่รู้สึกว่ำต่ำงอะไร
กับ ข้อมูลตัวอักษร (text) ทัว่ ๆไป
• แต่สำหรับคอมพิวเตอร์มนั จะรู ้แค่วำ่ นี่เป็ นไฟล์ภำพเท่ำนั้น แต่ไม่รู้วำ่
เป็ นภำพอะไร
เทคโนโลยี CAPTCHA
• ปัจจุบนั มีคนพัฒนำโปรแกรมประเภท OCR เพื่อช่วยแปลงอักษรในภำพ
มำเป็ นข้อมูลที่เป็ นตัวอักษร (text)
• ดังนั้นจึงมีกำรพยำยำมป้ องกันโปรแกรม OCR ให้ทำงำนยำกขึ้น เช่น ทำ
ให้ตวั อักษรบิดเบี้ยว หรื อใส่ สิ่งรบกวนลงไป เช่น เส้น จุด หรื อรู ปต่ำงๆ
เป็ นต้น
ที่มำ : http://oujidee.blogspot.com/2013/06/captcha.html
http://hwan-wanwisa-ritsumret.blogspot.com/2013/06/apctcah.html