Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Taisook Han is active.

Publication


Featured researches published by Taisook Han.


parallel computing | 1997

Fault-tolerant wormhole routing in mesh with overlapped solid fault regions

Seong-Pyo Kim; Taisook Han

Abstract A fault-tolerant wormhole routing algorithm on mesh-connected processors is proposed. The proposed algorithm is based on the solid fault model and allows the fault polygons to be overlapped. The algorithm utilizes the position of fault region relative to the current channel to route a message around overlapped fault polygons. A node deactivating algorithm to convert a non-solid fault region into a solid fault region is also proposed. The proposed routing algorithm uses four virtual channels and is deadlock- and livelock-free.


Information & Software Technology | 2009

A method for detecting the theft of Java programs through analysis of the control flow information

Hyun-il Lim; Heewan Park; Seokwoo Choi; Taisook Han

A software birthmark refers to the inherent characteristics of a program that can be used to identify the program. In this paper, a method for detecting the theft of Java programs through a static software birthmark is proposed that is based on the control flow information. The control flow information shows the structural characteristics and the possible behaviors during the execution of program. Flow paths (FP) and behaviors in Java programs are formally described here, and a set of behaviors of FPs is used as a software birthmark. The similarity is calculated by matching the pairs of similar behaviors from two birthmarks. Experiments centered on the proposed birthmark with respect to precision and recall. The performance was evaluated by analyzing the F-measure curves. The experimental results show that the proposed birthmark is a more effective measure compared to earlier approaches for detecting copied programs, even in cases where such programs are aggressively modified.


Lecture Notes in Computer Science | 2007

A static birthmark of binary executables based on API call structure

Seokwoo Choi; Heewan Park; Hyun-il Lim; Taisook Han

A software birthmark is a unique characteristic of a program that can be used as a software theft detection. In this paper we suggest and empirically evaluate a static birthmark of binary executables based on API call structure. The program properties employed in this birthmark are functions and standard API calls when the functions are executed. The API calls from a function includes the API calls explicitly found from the function and its descendants within limited depth in the call graph. To statically identify functions, call graphs and API calls, we utilizes IDAPro disassembler and its plug-ins. We define the similarity between two functions as the proportion of the number of all API calls to the number of the common API calls. The similarity between two programs is obtained by the maximum weight bipartite matching between two programs using the function similarity matrix. To show the credibility of the proposed techniques, we compare the same applications with different versions and the various types of applications which include text editors, picture viewers, multimedia players, P2P applications and ftp clients. To show the resilience, we compare binary executables compiled from various compilers. The empirical result shows that the similarities obtained using our birthmark sufficiently indicates the functional and structural similarities among programs.


IEICE Transactions on Information and Systems | 2008

Detecting Theft of Java Applications via a Static Birthmark Based on Weighted Stack Patterns

Hyun-il Lim; Heewan Park; Seokwoo Choi; Taisook Han

A software birthmark means the inherent characteristics of a program that can be used to identify the program. A comparison of such birthmarks facilitates the detection of software theft. In this paper, we propose a static Java birthmark based on a set of stack patterns, which reflect the characteristic of Java applications. A stack pattern denotes a sequence of bytecodes that share their operands through the operand stack. A weight scheme is used to balance the influence of each bytecode in a comparison of the birthmarks. We evaluate the proposed birthmark with respect to two properties required for a birthmark: credibility and resilience. The empirical results show that the proposed birthmark is highly credible and resilient to program transformation. We also compare the proposed birthmark with existing birthmarks, such as that of Tamada et al. and the k-gram birthmark. The experimental results show that the proposed birthmark is more stable than the birthmarks in terms of resilience to program transformation. Thus, the proposed birthmark can provide more reliable evidence of software theft when the software is modified by someone other than author.


international workshop on security | 2008

Detecting Java Theft Based on Static API Trace Birthmark

Heewan Park; Seokwoo Choi; Hyun-il Lim; Taisook Han

Software birthmark is the inherent program characteristics that can identify a program. In this paper, we propose a static API trace birthmark to detect Java theft. Because the API traces can reflect the behavior of a program, our birthmark is more resilient than the existing static birthmarks. Because the API traces are extracted by static analysis, they can be applied to library programs which earlier dynamic birthmarks cannot handle properly. We evaluate the proposed birthmark in terms of credibility and resilience. Experimental results show that our birthmark can detect common library modules of two packages while other birthmarks fail to detect.


IEEE Transactions on Fuzzy Systems | 2000

Iterative inversion of fuzzified neural networks

Sungwoo Park; Taisook Han

The inversion of a neural network is a process of computing inputs that produce a given target when fed into the neural network. The inversion algorithm of crisp neural networks is based on the gradient descent search in which a candidate inverse is iteratively refined to decrease the error between its output and the target. In this paper. we derive an inversion algorithm of fuzzified neural networks from that of crisp neural networks. First, we present a framework of learning algorithms of fuzzified neural networks and introduce the idea of adjusting schemes for fuzzy variables. Next, we derive the inversion algorithm of fuzzified neural networks by applying the adjusting scheme for fuzzy variables to total inputs in the input layer. Finally, we make three experiments on the parity-three problem, examine the effect of the size of training sets on the inversion, and investigate how the fuzziness of inputs and targets of training sets affects the inversion.


computer software and applications conference | 2009

A Static Java Birthmark Based on Control Flow Edges

Hyun-il Lim; Heewan Park; Seokwoo Choi; Taisook Han

A software birthmark is an inherent characteristic of a program that can be used to identify that program. By comparing the birthmarks of two programs, it is possible to infer if one program is a copy of another. In this paper, we propose a static birthmark based on the control flow edges in Java programs. Control flow edges can represent possible behaviors in program execution. Thus, a set of the control flow edges of a program can be used as a birthmark for that program. The similarity between two programs can then be calculated by finding pairs of similar behaviors of the control flow edges in the two birthmarks. The proposed birthmark is evaluated and compared with previous approaches in terms of credibility and resilience. Experimental results show that the proposed birthmark is more reliable than previous methods for detecting programs that are suspected to be copied.


international conference on industrial informatics | 2008

Detecting code theft via a static instruction trace birthmark for Java methods

Heewan Park; Seokwoo Choi; Hyun-il Lim; Taisook Han

A software birthmark is an inherent program characteristic that can identify a program. In this paper, we propose a static instruction trace birthmark to detect code theft of Java methods. Because the static instruction traces can reflect the algorithmic structure of a program, our birthmark can be used to detect algorithm theft which existing static birthmarks cannot handle. Because the static instruction traces are extracted by static analyses, they can be applied to library programs which previous dynamic birthmarks could not. We evaluate the proposed birthmark with respect to two criteria: credibility and resilience. Experimental result shows that our birthmark is more resilient than and at least as credible as the existing Java birthmarks.


The Computer Journal | 2011

Detecting Common Modules in Java Packages Based on Static Object Trace Birthmark

Heewan Park; Hyun-il Lim; Seokwoo Choi; Taisook Han

A software birthmark means inherent characteristics that can be used to identify a program. In this paper, we propose a birthmark technique based on object traces of Java programs. Java is an object-oriented programming language that provides various predefined class libraries that help programmers to produce software easily. In order to utilize Java class libraries, we have to use Java object instructions. The Java object instructions are hard to replace or remove, and so a set of sequences of object instructions is a proper candidate to represent inherent characteristics of a program. We propose a new birthmark using the sequences of object instructions. We evaluate the proposed birthmark with open source programs and compare it with previous static birthmarks. Experiments show that the detection capability of our birthmark is much higher than that of other static birthmarks despite obfuscations by Smokescreen and ZKM.


virtual reality modeling language symposium | 1997

Object-oriented VRML for multi-user environments

Sungwoo Park; Taisook Han

We suggest a new 3D scene description language which is a derivative of VRML (Virtual Reality Modeling Language). The language enhances the object-oriented feature of VRML, especially with respect to programmi ng the behavior of nodes. The language no longer provides the Script node and the route. Instead, event handlers enable a node to take general actions. The event handler is included in the definition of node prototypes. The lanWage has a feature that sup ports the multi-user environment. One of the design criteria is its suitability for the easy implementation of multi-user virtual environment systems. For this purpose, we propose a new structure of messages distributed among clients in a multi-user system. CR

Collaboration


Dive into the Taisook Han's collaboration.

Researchain Logo
Decentralizing Knowledge