透過您的圖書館登入
IP:3.145.206.169
  • 期刊

使用渾淆器和防篡改器技術保護和隱藏在Java Bytecode程式的軟體浮水印

Protect Software Watermarking by Obfuscation and Amper-proofing Techniques on Java Bytecode Language

摘要


JAVA是現在越來越普及的跨平台程式語言,由於它跨平台的特性,相當適合程式發展,但是,JAVA編譯出來的Bytecode不像其他語言般有著高的保密性,留下相當多高階語言的資訊,容易被反編譯。軟體浮水印是將某些特定的資訊經過特殊處理後,將其加入至指定的程式裡以證明作者或擁有者,並且軟體浮水印一定要確保其不易被破解者「去除」或「修改」,才能達到證明的目的。本文以保護JAVA Bytecode程式的軟體浮水印(Software Watermarking)為主,為了保證軟體浮水印的安全度,故使用混淆器技術(Obfuscation)將浮水印嵌入隱藏在JAVA Bytecode中,最後並使用防篡改器(Temper-proofing)技術以防止浮水印被修改。

並列摘要


This paper presents an approach to protect Java software copyright by integrating obfuscation watermark and temper-proofing techniques. Java programs can be easily decompiled and reverse engineered from Java bytecode to Java source code by decompilers. So, Java programs are prone to be pirated. Software watermarking protects software through embedding some secret information into software as an identifier of the ownership of copyright for this software. We use the propose obfuscation and tamper-proofing techniques to make software watermarks hard to find and to protect the Java bytecode program(s). After obfuscating the program, the thieves have difficulties to be aware of whether the program had been embedded a watermark or not, or hard to find the location of the watermark data. Tamper-proofing techniques will disable some or all of the program functionality once they detect any unwanted modifications during run time. Finally, we use Tamper-proofing techniques to protect the code be tampered. We success to present our robustly protect software watermarking based on control flow obfuscation and tamper-proofing techniques and to reach the goal to protect Java bytecode programs.

參考文獻


Collberg, C.,Carter, E.,Debray, S.,Huntwork, A.,Linn, C.,Stepp, M.(2004).Dynamic Path Based Software Watermarking.Proceedings of the Conference on Programming Language Design and Implementation.(Proceedings of the Conference on Programming Language Design and Implementation).
Collberg, C.,Thomborson, C.(1999).Software Watermarking: Models and Dynamic Embeddings.Conference Record of POPL '99: The 26th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages.(Conference Record of POPL '99: The 26th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages).
Collberg, C.,Thomborson, C.(2002).Watermarking, Tamper-Proofing, and Obfuscation-Tools for Software Protection.IEEE Transactions on Software Engineering.28(8),735-746.
(Davidson, R. I. and Myhrvold, N. Method and system for generating and auditing a signature for a computer program, US Patent 5,559,884, Assignee: Microsoft Corp. (1996).).
Jobfusator: Java Class File Obfuscator, http://www.duckware.com/jobfuscate/index.html, (2000).

延伸閱讀