การถอนลิขสิทธิ์ โปรแกรม (Remove License)

Download Report

Transcript การถอนลิขสิทธิ์ โปรแกรม (Remove License)

การพัฒนาระบบจัดการลิขสิทธิโปรแกรมผ่านเว็บเซอร์วสิ
A Development of Software License
Management System
การละเมิดลิขสิทธิ์โปรแกรมเป็ นปั ญหาสําคัญยิ่ง
สําหรับธุรกิจจําหน่ ายหรือพัฒนาโปรแกรมไม่ ว่าจะเป็ นการ
ละเมิดลิขสิทธิ์โดยการทําซํา้ หรือดัดแปลงโปรแกรมเพื่อแจก
หรือจําหน่ ายต่ อให้ กับบุคคลอื่นโดยไมได้ รับอนุ ญาต
แนวทางการป้องกันการละเมิดลิขสิทธิ์คือ การเก็บ
บันทึกรายละเอียดเครื่องคอมพิวเตอร์ ท่ ไี ด้ รับลิขสิทธิ์
โปรแกรมอย่ างถูกต้ องควบคู่กับรหัสลงทะเบียนโดย
บันทึกลงฐานข้ อมูล เพื่อเป็ นการอ้ างอิงข้ อมูลการเป็ น
เจ้ าของลิขสิทธิ์อย่ างถูกต้ อง ซึ่งในการส่ งข้ อมูลการ
ลงทะเบียนและรหัสเครื่องคอมพิวเตอร์ เราจะทําผ่ าน
เว็บเซอร์ วสิ
การเข้ ารหัสลับข้ อมูล
แบ่ งเป็ น 2 อัลกอลิทมึ คือ
1.1 อัลกอลิทมึ แบบสมมาตร ( Symmetric Key Algorithms)
จะใช้ กุญแจที่ เรียกว่ ากุญแจลับ (Secret key) ซึ่งมีเพียง
หนึ่งเดียวเพื่อใช้ ในการเข้ าและถอดรหัสข้ อความที่ส่งไป
1.2 อัลกอลิทมึ แบบอสมมาตร (Asymmetric Key Algorithms) โดย
กลุ่มที่สาํ คัญ รู ปแบบนีค้ ืออัลกอริทมึ แบบกุญแจ
สาธารณะ (Public keys Algorithms) ซึ่งจะใช้ กุญแจสองตัวเพื่อ
ทํางาน ตัวหนึ่งใช้ ในการเข้ ารหัสโดยใช้ กุญแจสาธารณะ
(Public key) และอีกตัวหนึ่งใช้ ในการถอดรหัสข้ อมูลที่
เข้ ารหัสมาโดยกุญแจส่ วนตัว (Private key)
การพิสูจน์ความสมบูรณ์ของข้อมูล (Data Integrity)
สามารถตรวจสอบได้โดยการใช้ Hash Function แบบ MD5 ซึ่งเป็ น
ฟังก์ชนั ทิศทางเดียว(One-way Function) ทําการคํานวณหาค่าแฮช (Hash
Value) ซึ่งเป็ นค่าเฉพาะที่แต่ละรูปแบบข้อมูลจะมีค่าที่ไม่ซ้าํ กัน โดยสามารถ
ตรวจสอบในรูปแบบของ ข้อความ (String) และไฟล์ขอ้ มูลได้ (Data File) และ
สามารถตรวจสอบได้ว่าข้อมูลที่มีน้นั มาจากต้นฉบับหรือไม่ ดังภาพ
การบีบอัดข้อมูลแบบ LZW (LZW Compression)
การบีบอัดข้อมูลเป็ นวิธกี ารเข้ารหัสข้อมูลเพือ่ ลดขนาด
ข้อมูลทําให้ประหยัดพื้นที่ในการจัดเก็บหรือเพือ่ ประโยชน์ในการส่งผ่านข้อมูล
อย่างรวดเร็ว โดยการบีบอัดแบบ LZW(Lempel-Ziv-Welch) ซึ่งมีอลั กอลิทมึ
การทํางานที่รวดเร็วและเป็ นการบีบอัดข้อมูลแบบไม่สูญเสียข้อมูล (Lossless
DataCompression) โดยข้อมูลก่อนและหลังการบีบอัดเมื่อคลายออกแล้ว
(Decompress) ข้อมูลที่ได้จะเหมือนกันโดยไม่ผิดเพี้ยน
การบีบอัดข้อมูลแบบ LZW (LZW Compression) (ต่อ)
การบีบอัดอาศัยหลักการของลักษณะรูปแบบความเป็ นไปได้
และเกิดการวนซํ้าของข้อมูลและ การแทนข้อมูลมีขนาดใหญ่ดว้ ย
ข้อมูลที่มีขนาดเล็กกว่าโดยมีการสร้างรหัสคํา (CodeWord)
กํากับไว้ใน ตารางสมุดรหัสคํา (Code Book)
CodeWord
Code Book
การอําพรางข้อมูล (Steganography)
การอําพรางข้อมูลเป็ นการซ่อนข้อความที่เขียน(Hidden Writing) ซึ่งมี
จุดมุ่งหมายหลักในการปกปิ ดส่วนสาระสําคัญของข้อมูล เช่น ไฟล์รูปภาพซึ่ง การซ่อน
ข้อมูลข้อความในไฟล์รูปภาพ (Image Steganography) โดยทัว่ ไปจะใช้วธิ ีท่ี
เรียกว่า LSB (Least Significant Bit)
การยืนยันตัวตนจากรหัสฮาร์ดแวร์
(Hardware ID)
เครื่องคอมพิวเตอร์มี Unique Number กํากับอยู่ซ่งึ สามารถใช้เป็ น
ข้อมูลยืนยันตัวตนและเป็ นข้อมูลตัวแทนอ้างอิงสําหรับเครื่องคอมพิวเตอร์ท่ตี ดิ ตัง้
โปรแกรมที่ได้รบั ลิขสิทธิ์(License) อย่างถูกต้องได้ โดยมีการบันทึกข้อมูล 4
ประเภทคือ
 Hard Disk

Serial Number
 Mac Address
 Main Board ID
แนวคิดและการออกแบบระบบ
ส่วนประกอบของระบบ (Generic Component) ประกอบด้วยสองส่วนหลัก คือ
1. ฝัง่ เครื่องแม่ข่าย(Server) ซึ่งเป็ นเว็บเซอร์วส
ิ (Web Services)
สถาปัตยกรรมระบบในฝัง่ เครื่องแม่ข่าย
2. ฝัง่ เครื่องลูกข่าย (Client)
เป็ นโปรแกรมทีพ่ ฒั นาเพือ่ การค้า
โดยถูกพัฒนาโดยทีมงานโปรแกรมเมอร์ตาม
รูปแบบและความถนัดของตนเองโดยทาการ
รวม (Integrate) ส่วนควบคุมการจัด
ลิขสิทธิ์เข้าไป ซึง่ เรียกว่า โปรแกรมเริ่มการ
ทางาน(Launcher Applition)
ภาพรวมการทํางานของระบบ
ไฟล์ ไลบราลี
(Dynamic Link Library File)
ฟังก์ชนั ที่ใช้งานบ่อยๆสําหรับเรียกใช้ไว้ 6 ประเภทคือ
1.กระบวนการเข้ารหัสข้อมูล (Encryption)
2.การอําพรางข้อมูลในไฟล์รูปภาพ
(Image Steganography)
โดยวิธีแบบ LSB (Least Significant Bit)
3.การคํานวณวันที่และเวลา
4.การอ่านค่าข้อมูลฮาร์ดแวร์ (Hardware Profile)
5.การควบคุมลิขสิทธิ์โปรแกรมเพือ่ การค้า
6.การประสานงานและติดต่อผ่านเว็บเซอร์วสิ
ข้อมูลที่อยู่ ในไฟล์รูปภาพ (Hidden Information)
ข้อมูลสําคัญที่ถกู อําพรางไว้เพื่อใช้เป็ นข้อมูลอ้างอิงในการ
ตรวจสอบและควบคุมการใช้งานลิขสิทธิ์ มี 4 ประเภทคือ
1.ค่าแฮชและข้อมูลของโปรแกรมเริ่มการทํางาน
2.ค่าแฮชและข้อมูลของโปรแกรมเพื่อการค้า
3.ข้อมูลลิขสิทธิและคุณสมบัติท่ไี ด้รบั
4.ข้อมูลฮาร์ดแวร์ต่างๆของเครื่องคอมพิวเตอร์
โปรแกรมเริ่มการทํางาน (Launcher Application)
การควบคุมการใช้ งานโปรแกรมเพือ่ การค้า (Commercial Software) ตาม
ลิขสิ ทธิ์ทผี่ ู้ใช้ งานได้ รับนั้นจะถูกควบคุมโดย Launcher Application ซึ่ง
จะอ่านค่ าลิขสิ ทธิ์จากไฟล์รูปภาพหากมีสิทธิในการใช้ งานจะทําการ
ตรวจสอบ Hash Value ของไฟล์ตัวมันเองและไฟล์ของโปรแกรม หาก
ถูกต้ อง จะส่ งค่ าตัวแปรรหัสเปิ ดใช้ งาน(Active ID) ซึ่งเป็ นค่ าแฮชของทั้งสอง
ไฟล์รวมกับเลขสุ่ ม Random Number พร้ อมกับเปิ ดโปรแกรมแกรมเพือ่
การค้ าโดยจะมี Parameter เหล่านีผ้ ่ านคําสั่ ง “Shell”
โปรแกรมเริ่มการทํางาน (Launcher Application) ต่ อ
ทําการแยกและตรวจสอบค่าที่ถกู ส่งมาว่ามาจากแหล่ง
ที่น่าเชื่อถือหรือไม่หากการยืนยันตัวตนถูกต้องจะอนุ ญาตให้ใช้งานและ
จับเวลาการใช้งานต่อไป ดังภาพ
ส่วนตัวติดตัง้ (Setup Package) ที่เครื่องลูกข่าย
ส่วนประกอบระบบสาหรับติดตัง้ ทีเ่ ครื่องลูกข่าย
การแลกเปลีย่ นข้อมูลผ่านเว็บเซอร์วสิ
การถอนลิขสิทธิ์ โปรแกรม (Remove License)
ผูใ้ ช้งานสามารถถอนลิขสิทธิ์โปรแกรมไปติดตัง้ ที่เครื่องขึ้นอยู่กบั
คุณสมบัตลิ ขิ สิทธิ์ท่ไี ด้รบั โดยระบุขอ้ มูลยืนยันตัวตนเพือ่ ตรวจสอบว่าเป็ น
เจ้าของลิขสิทธิ์ท่แี ท้จริงหรือไม่โดยเปรียบเทียบกับรหัสฮาร์ดแวร์ ใน
ฐานข้อมูลที่ได้จากการเปิ ดใช้งานลิขสิทธิ์โปรแกรม (Activate)ในครัง้
แรก ดังภาพ
การถอนลิขสิทธิ์ โปรแกรม (Remove License)
การถอนลิขสิทธิ์โปรแกรม
การปรับปรุงลิขสิทธิ์โปรแกรม (Update License)
คุณสมบัติ ลิขสิทธิ์ต่างๆสามารถปรับปรุงหรือเปลี่ยนแปลงได้ เช่น การเพิม่
จํานวนวันที่ใช้งาน โดยการระบุขอ้ มูลยืนยันตัวตนเพือ่ เข้าสูร่ ะบบและรหัสเปิ ดใช้งาน
ลิขสิทธิ์โปรแกรม(Activate Code) ใหม่ท่ไี ด้จากการสัง่ ซื้อโดยหากข้อมูลทุก
อย่างถูกต้องข้อมูลคุณสมบัตลิ ขิ สิทธิ์จะถูกปรับปรุงใหม่โดยรวมกับของเก่าที่มีอยู่
ผลการดําเนิ นงาน
จากแนวคิดการออกแบบและพัฒนาระบบจัดการลิขสิทธิ์
โปรแกรมผ่านเว็บเซอร์วสิ ระบบแบ่งการทํางานออกเป็ น 2 ส่วนและมี
ความสามารถในการทํางานดังนี้
1.ส่วนเครื่องแม่ข่าย (Server)
2. ส่วนเครื่องลูกข่าย (Client)
สรุป SOAP
การพัฒนาระบบจัดการลิขสิทธิ์โปรแกรมผ่านเว็บเซอร์วสิ
Service Requestor ผูใ้ ช้จะร้องขอรับลิขสิ ทธิ์ที่ถูกต้อง จากผู ้
ให้บริ การ เช่น การซื้อเกมส์ ผูใ้ ช้กจ็ ะต้องร้องขอใช้บริ การลิขสิ ทธิ์ที่
ถูกต้องเพื่อใช้ในการลงทะเบียนบนฮาร์ดแวร์ในเครื่ องคอมพิวเตอร์
นั้นๆ หลังจากมีการใช้งาน หรื อติดตั้งเกมส์แล้ว Service Requestor จะ
ส่ งข้อมูลรหัสไปตรวจสอบความถูกต้องกับยัง Service Registry
สรุป SOAP
การพัฒนาระบบจัดการลิขสิทธิ์โปรแกรมผ่านเว็บเซอร์วสิ (ต่อ)
Service Registry จะทาการตรวจสอบว่ามีสญ
ั ญาการให้บริ การหรื อไม่
และมีบริ การอะไรบ้าง ถ้าไม่ผา่ นเงื่อนไขก็จะเคลียร์ขอ้ มูลทิ้งทันที
** เช่นการลงโปรแกรมเกมส์ บนเครื่ องคอมพิวเตอร์ Service Registry ก็จะทาการ
ตรวจสอบว่า รหัสบนฮาร์ ดแวร์ กับ รหัสต้นฉบับตรงกันหรื อไม่ เพื่อป้ องกันการ
ละเมิดลิขสิ ทธิ์
Service Provider จะทาการซ่อนข้อมูลในส่ วนที่มีการติดต่อระหว่าง
Client กับ Web Service ก่อนจะส่ งกลับไปยัง Server
สมาชิกกลุม่
นายประยุทธ์ แซ่ เตียว 53660048
นายนนทชัย โพธิืเหมือน 53660092
นายณัฎฐพล ทองเจริญ 53660086
นางสาวนิภาพร ชุ่ มแจ่ ม 53660004
นางสาว สุ พตั รา สาบัญทิตย์ 53660067
นายชลทิศ แสงอากาศ 53660084
นางสาวอรชพร เทียมสุ วรรณ 53660074