วันอาทิตย์ที่ 22 พฤษภาคม พ.ศ. 2554

บทความ : การป้องกันลิขสิทธิ์ซอฟต์แวร์ด้วย Sentinel HASP

การป้องกันลิขสิทธิ์ซอฟต์แวร์ด้วยฮาร์ดล็อก Sentinel HASP โดยวิธีการ Call API

วิเชษฐ ดารากัย
1บริษัท ฟิแทบ คอมเพล็กซ์ จำกัด,  E-mail : wichetd@fitab.com

บทคัดย่อ:
อุตสาหกรรมซอฟต์แวร์จัดเป็นหนึ่งในอุตสหกรรม ยุทธศาสตร์ของประเทศ แต่ในปัจจุบันได้มีการละเมิดลิขสิทธิ์ซอฟต์แวร์อย่างมากมาย การป้องกันลิขสิทธิ์ซอฟต์แวร์ถือเป็นปัจจัยสำคัญที่ผู้พัฒนาซอฟต์แวร์จะต้องตระหนัก เพราะแต่ละปี รายงานการละเมิดลิขสิทธิ์ซอฟต์แวร์มีจำนวนเพิ่มขึ้น โดยเฉพาะทวีปเอเชีย อันเนื่องมาจากความต้องการใช้งานซอฟต์แวร์ ซึ่งซอฟต์แวร์บางประเภทจะมีราคาที่ค่อนข้างสูง และด้วยความก้าวหน้าทางด้านเทคโนโลยีสารสนเทศ ทำให้อุปกรณ์และเครื่องคอมพิวเตอร์มีราคาถูกลงมาก เป็นผลทำให้จำนวนผู้ใช้ (User) มีจำนวนเพิ่มมากขึ้น ดังนั้น การป้องกันลิขสิทธิ์ซอฟต์แวร์จึงมีความสำคัญเป็นอย่างมาก นอกจากจะเป็นการคุ้มครองลิขสิทธิ์ทางปัญญาแล้วยังเป็นการเพิ่มรายได้จากการพัฒนาซอฟต์แวร์ที่ต้องสูญเสียไปจากการละเมิดลิขสิทธิ์ (Software Protection for Revenue Protection and Growth : SafeNet Ince)[1]

คำสำคัญ: ฮาร์ดล็อก / การป้องกันลิขสิทธิ์ซอฟต์แวร์ / การ Call API
1.บทนำ
ฮาร์ดล็อกเป็นอุปกรณ์คอมพิวเตอร์ประเภทฮาร์ดแวร์ สำหรับใช้ในการป้องกันลิขสิทธิ์ซอฟต์แวร์ที่อยู่ในระดับความปลอดภัยสูงสุดของการป้องกัน ในขณะที่การพัฒนาซอฟต์แวร์ปัจจุบันของผู้ผลิตหรือพัฒนาซอฟต์แวร์ยังไม่มีรูปแบบการป้องกันลิขสิทธิ์ซอฟต์แวร์ที่ชัดเจน ปัจจุบันรูปแบบการป้องกันลิขสิทธิ์ซอฟต์แวร์ที่นิยมใช้มี รูปแบบ คือ 1) การป้องกันโดยใช้ซอฟต์ล็อก(ใช้ซอฟต์แวร์ในการป้องกัน) 2) การป้องกันโดยใช้ฮาร์ดล็อก (ใช้ฮาร์ดแวร์ในการป้องกัน) ซึ่งทั้ง รูปแบบมีวิธีการและระดับความปลอดภัยที่แตกต่างกัน


2. ฮาร์ดล็อก
เป็นอุปกรณ์ฮาร์ดแวร์สำหรับใช้ในการป้องกันลิขสิทธิ์ซอฟต์แวร์ที่มีความปลอดภัยสูงสุด มีลักษณะเป็นฮาร์ดแวร์ สำหรับเสียบที่ช่อง USB ของเครื่องคอมพิวเตอร์ ในขณะใช้งานซอฟต์แวร์หรือโปรแกรมที่ได้รับการป้องกันลิขสิทธิ์ หากไม่มีฮาร์ดล็อกเสียบอยู่ที่ช่อง USB ของเครื่องคอมพิวเตอร์ เราจะไม่สามารถเข้าใช้ซอฟต์แวร์หรือโปรแกรมนั้นได้ หรือในขณะที่เราใช้งานซอฟต์แวร์หรือโปรแกรมที่ผ่านการป้องกันลิขสิทธิ์และได้มีการถอดฮาร์ดล็อกออก ซอฟต์แวร์หรือโปรแกรมก็จะไม่สามารถใช้งานต่อไปได้ [1]


3. การป้องกันลิขสิทธิ์ซอฟต์แวร์โดยการใช้ฮาร์ดล็อกโดยวิธีการ Call API
ในการป้องกันลิขสิทธิ์ซอฟต์แวร์โดยการใช้ฮาร์ดล็อก มีรูปแบบการป้องกันอยู่ 2 รูปแบบ คือ

3.1 การป้องกันโดยวิธีการ Shell
เป็นการป้องกันลิขสิทธิ์ซอฟต์แวร์ด้วยวิธีการที่ง่ายที่สุด โดยการนำไฟล์โปรแกรมที่ได้จากการ Complier เรียบร้อยแล้ว เช่น *.EXE, *.DLL หรือ *.JAR[2] จากนั้นนำไฟล์ดังกล่าวเข้าสู่เครื่องมือเพื่อทำการ Shell ซึ่งไฟล์ที่ผ่านการ Shell จะเป็นไฟล์ที่ผ่านการป้องกันลิขสิทธิ์จากนั้นเราสามารถนำไฟล์ดังกล่าวไปทำชุดติดตั้ง (Setup) ต่อไป

3.2 การป้องกันโดยวิธีการ Call API

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


4. วิธีการในการ Call API
ในการศึกษาครั้งนี้ได้ยกตัวอย่างการป้องกันลิขสิทธิ์ซอฟต์แวร์ด้วยวิธีการ Call API ในภาษา C# [3] การที่เลือกใช้ภาษานี้เป็นตัวอย่างเนื่องจากปัจจุบันเป็นภาษาที่ได้รับความนิยมอย่างแพร่หลายของผู้พัฒนาซอฟต์แวร์หรือโปรแกรมเมอร์ ขั้นตอนในการ Call API มีดังนี้

4.1 เปิดโปรแกรมในภาษา C# (ใช้ชุดเครื่องมือ Microsoft Visual C# 2008 Express Edition สำหรับเปิดโปรแกรม)

ในที่นี้ ใช้ภาษา C# เป็นตัวอย่างในการ Call API



รูปที่ 1 โปรแกรมภาษา C# สำหรับการ Call API
4.2 สร้างซอสโค้ดสำหรับการ Call API

ซอสโค้ดสำหรับการ Call API สามารถสร้างได้ด้วยชุดเครื่องมือจาก Sentinel HASP Vendor Suite


รูปที่ 2 การสร้างซอสโค้ดภาษา C# สำหรับการ Call API จาก Sentinel HASP Vendor Suite

4.3 ติดตั้งซอสโค้ดสำหรับการ Call API

นำซอสโค้ดที่ได้จากการสร้างโดย Sentinel HASP Vendor Suite เข้ามาติดตั้งในโปรแกรมที่ต้องการป้องกัน


รูปที่ 3 ติดตั้งซอสโค้ดภาษา C# สำหรับการ Call API

5. สรุป
หลังจากได้ทำการ Call API ซอสโค้ดเข้าไปยังโปรแกรมที่ต้องการป้องกันลิขสิทธิ์เรียบร้อยแล้ว จากนั้นทำการทดสอบ 2 เหตุการณ์ คือ

5.1 การทดสอบการเปิดโปรแกรมในขณะที่มีฮาร์ดล็อกเสียบอยู่ที่เครื่องคอมพิวเตอร์


เมื่อทำการเปิดโปรแกรมขณะที่มีฮาร์ดล็อกเสีบอยู่ที่พอร์ต USB ของเครื่องคอมพิวเตอร์ สามารถเปิดเข้าใช้งานได้

รูปที่ 4 สามารถเข้าใช้งานโปรแกรมได้

5.2 การทดสอบการเปิดโปรแกรมในขณะที่ไม่มีฮาร์ดล็อกเสียบอยู่ที่เครื่องคอมพิวเตอร์


เมื่อทำการเปิดโปรแกรมขณะที่มีฮาร์ดล็อกเสีบอยู่ที่พอร์ต USB ของเครื่องคอมพิวเตอร์ จะไม่สามารถเปิดเข้าใช้งานได้



รูปที่ 5 ไม่สามารถเข้าใช้งานโปรแกรมได้



จากการทดสอบ เมื่อต้องการใช้งานโปรแกรมที่ผ่านการป้องกันลิขสิทธิ์ซอฟต์แวร์เราจำเป็นต้องมีการเสียบฮาร์ดล็อกเข้ากับพอร์ต USB ของเครื่องคอมพิวเตอร์ตลอดเวลาในขณะที่มีการใช้งานโปรแกรม
รูปที่ 6 ฮาร์ดล็อก Sentinel HASP สำหรับใช้ในการป้องกันลิขสิทธิ์ซอฟต์แวร์


เอกสารอ้างอิง

[1]        Hard lock Sentinel HASP: http://www.safenet-inc.com/
[2]        Barry Burd, 2011, .jar files. "JAVA FOR DUMMMIES 5 THEDITION", Wiley Publishing,Inc., 2011, 366,pp.
[3]        Joel Scambray and Stuart McClure, "Hacking Exposed Windows : Windows Security Secrets & Solutions, Third Edition."McGrawHill,2008
[4]        Ronald L. Krutz and Russell Dean Vines : "The CISSP Prep Guide : Gold Edition." Wiley Publishing,Inc., 2003
[5]        สุธี พงศาสกุลชัย และคณะ "คัมภีร์ Visual C# 2005" บริษัท เคทีพี คอมพ์ แอนด์ คอนซัลท์ จำกัด, 2549

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

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