DC Field | Value | Language |
---|---|---|
dc.contributor.advisor | Han, Tai-Sook | - |
dc.contributor.advisor | 한태숙 | - |
dc.contributor.author | Lim, Hyun-il | - |
dc.contributor.author | 임현일 | - |
dc.date.accessioned | 2011-12-13T05:27:06Z | - |
dc.date.available | 2011-12-13T05:27:06Z | - |
dc.date.issued | 2009 | - |
dc.identifier.uri | http://library.kaist.ac.kr/search/detail/view.do?bibCtrlNo=327792&flag=dissertation | - |
dc.identifier.uri | http://hdl.handle.net/10203/33277 | - |
dc.description | 학위논문(박사) - 한국과학기술원 : 전산학전공, 2009. 8., [ ix, 127 p. ] | - |
dc.description.abstract | Software is an intellectual property of the developers. Nevertheless, software piracy is one of the major obstacles to the growth of software industries. In order to cope with this problem, several researches are ongoing, such as software watermark, code obfuscation, code encryption, source code plagiarism detection, and software birthmark. A software birthmark refers to program`s inherent characteristics that can be used to identify a program. Similarities measured by comparing birthmarks of programs can provide a guideline for detecting software thefts. In this thesis, we present approaches to detecting software thefts through software birthmarks based on semantic units of programs. A semantic unit refers to a cohesive fragment in a program code that shows meaningful behavior of the program. So, a semantic unit may correspond to a basic behavior for performing some arranged tasks in a program. Detecting software theft is accomplished by comparing such semantic units between programs. We propose two approaches to analyzing semantic units of programs. First, the control flow-based approach is presented. The control flow information shows the structural characteristics and the possible behaviors while a program is executed. Flow paths and their behaviors in Java programs are formally described, and a set of behaviors of flow paths is used as a software birthmark. Second, the stack simulation-based approach is presented for Java programs. Because operand stack manipulations are fundamental operations among instructions in Java programs, they can show coherent relations among instructions. Stack behaviors are analyzed by statically simulating operand stack variations of Java programs. A set of stack behaviors of a Java program is used as a birthmark of the program. Similarity between two birthmarks is calculated by comparing and matching the similar elements of the birthmarks. Experiments are performed on the proposed methods with respect to credibilit... | eng |
dc.language | eng | - |
dc.publisher | 한국과학기술원 | - |
dc.subject | software theft detection | - |
dc.subject | software protection | - |
dc.subject | program analysis | - |
dc.subject | software birthmark | - |
dc.subject | Java bytecode analysis | - |
dc.subject | 소프트웨어 도용 탐지 | - |
dc.subject | 소프트웨어 보호 | - |
dc.subject | 프로그램 분석 | - |
dc.subject | 소프트웨어 버스마크 | - |
dc.subject | 자바 바이트코드 분석 | - |
dc.subject | software theft detection | - |
dc.subject | software protection | - |
dc.subject | program analysis | - |
dc.subject | software birthmark | - |
dc.subject | Java bytecode analysis | - |
dc.subject | 소프트웨어 도용 탐지 | - |
dc.subject | 소프트웨어 보호 | - |
dc.subject | 프로그램 분석 | - |
dc.subject | 소프트웨어 버스마크 | - |
dc.subject | 자바 바이트코드 분석 | - |
dc.title | Software theft detection through analysis of the semantic units of program | - |
dc.title.alternative | 프로그램의 의미 단위 분석을 통한 소프트웨어의 도용 탐지 방법 | - |
dc.type | Thesis(Ph.D) | - |
dc.identifier.CNRN | 327792/325007 | - |
dc.description.department | 한국과학기술원 : 전산학전공, | - |
dc.identifier.uid | 000975329 | - |
dc.contributor.localauthor | Han, Tai-Sook | - |
dc.contributor.localauthor | 한태숙 | - |
Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.