• Title/Summary/Keyword: 프로그램 유사도 평가

Search Result 323, Processing Time 0.031 seconds

Design and Implementation of a Plagiarism Detection Tool for Apps Created with the App-Inventor (앱 인벤터로 개발한 앱의 표절 탐지 도구 설계 및 구현)

  • Shin, Se-Hoon;Han, Dong-Jun;Han, Won-Keun;Park, Heewan
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2017.11a
    • /
    • pp.353-356
    • /
    • 2017
  • 앱 인벤터는 GUI 환경에서 블록 편집기를 사용하여 앱을 개발한다. 따라서 누구나 쉽게 앱 프로그래밍을 시작할 수 있다는 장점이 있다. 또한, 앱 인벤터의 공식 사이트의 gallery 공간에 공개된 수많은 공개 앱 소스(aia 파일)를 쉽게 구할 수 있기 때문에 다른 사람이 만든 앱의 소스를 그대로 가져다가 이미지만 바꿔서 자신이 만든 것처럼 앱을 공개할 수도 있다. 그러나 직접 블록 단위로 비교해보지 않고서는 표절이나 도용 여부를 판단하는 것은 쉽지 않다. 따라서 본 논문에서는 앱 인벤터로 개발한 앱들의 유사도를 자동으로 계산해주는 도구를 개발하였다. 원본 프로그램과 도용된 프로그램은 유사도가 높게 계산될 것임을 예상할 수 있기 때문에 유사도 계산 프로그램은 코드 도용을 확인하는 목적으로 활용될 수 있다. 본 논문에서 구현한 도구의 평가를 위해서 다양한 실험을 수행하였고, 실제로 유사도가 높았던 앱들이 서로 공통된 블록을 다수 포함하고 있음을 밝혀내었다. 이러한 실험결과를 바탕으로 우리가 개발한 도구가 앱 인벤터로 개발한 앱에 대해서 소스 표절이나 코드 도용을 탐지하는 목적으로 활용될 수 있을 것으로 기대한다.

A Study on the Relationship between Weighted Value and Qualitative Standard in Substantial Similarity (실질적 유사성 판단을 위한 가중치 활용과 질적 분석의 관계)

  • Kim, Si-Yeol
    • Journal of Software Assessment and Valuation
    • /
    • v.15 no.1
    • /
    • pp.25-35
    • /
    • 2019
  • In Korea, the calculation of quantitative similarity is commonly used to gauge the substantial similarity of computer programs. Substantial similarity should be assessed by considering the quantity and quality of areas that show similarity, but in practice, qualitative aspects are reflected by multiplying the weighted value in the calculation of quantitative similarity. However, such a practical method cannot be deemed adequate, considering the fundamental characteristic of the judgment on substantial similarity, which holds that the quantitative and qualitative aspects of similar areas should be considered on an equal footing. Thus, this study pointed out the issue regarding the use of weighted value and sought appropriate ways to take into account qualitative aspects when assessing the substantial similarity of computer programs.

A Method for Analyzing Features that Affect the Performance of SSD (SSD 성능에 영향을 주는 특징 분석 방법)

  • Kang, Yoonsuk;Jo, Yong-Yeon;Kim, Sang-Wook
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2018.05a
    • /
    • pp.315-316
    • /
    • 2018
  • 본 논문에서는 SSD 성능에 영향을 주는 특징(또는 특징 집합)을 평가하는 방법을 제안한다. 제안하는 평가 방법은 기존 연구의 "두 응용프로그램에서 추출한 IO 트레이스들이 서로 유사한 IO 패턴을 갖을 때, 동일한 SSD 에서의 수행 시간은 유사하다"는 관찰에 기반한다. 이를 통하여 우리는 주어진 SSD 에서 후보 특징들을 평가하고, 가장 높은 평가를 받는 특징 집합을 확인한다.

Bin Determination for the calculation at effective flow (At middle Nakdong River) (낙동강 중류 유효유량 산정을 위한 Bin 결정 기법 연구)

  • Hwang, Man-Ha;Yoon, Young-Ho;Kim, Kyung-Min;Son, Kwang-Ik
    • Proceedings of the Korea Water Resources Association Conference
    • /
    • 2012.05a
    • /
    • pp.522-522
    • /
    • 2012
  • 최근 각종 하천 개발 사업이 활발히 진행되면서 안정하도 평가가 활발히 이루어지고 있다. 안정하도 평가를 위해서는 흐름과 하천의 수리기하특성간의 관계를 연결시켜주는 기준유량이 필요한데 이러한 유량이 곧 유효유량이라 할 수 있다. 유효유량은 수년에 결쳐 연 유사량의 대부분을 이동시키는 유량의 평균값으로 정의되며, 적어도 일년에 한 번이나 두 번 또는 대부분의 경우 매년 여러번 발생하는 적당한 빈도의 유량규모에 의해 연 유사량의 대부분을 이동시키는 유량이다. 대표적인 유효유량 산정 프로그램인 Geo-tool은 유황곡선과 유사량 관계 곡선을 활용하여 유효유량을 계산한다. 프로그램에 입력하는 유량은 Bin 수와 지정하는 규칙에 따라 유량구간이 나뉜 후 각 구간별 평균유량에 대한 유사량을 산정한다. 이 때 산정된 구간별 유사량값과 이 구간의 유량이 발생한 일수를 산정함으로써 이 구간의 유량을 통해 발생한 연간 총유사량을 산정한다. 각 구간별 연간 총유사량으로부터 가장 많은 유사량을 이송시키는 구간에 해당되는 평균유량을 유효유량으로 선정하게 된다. 즉 유효유량은 유량범위 간격에 민감하게 반응하므로 Bin의 선정이 중요하다고 할 수 있다. 그러나 국내외에서 Bin 산정에 대한 명백한 기준이 없는 상황이므로 본 연구에서는 Arithmeic Bin과 Logarithmic Bin를 모두 사용하여 낙동강 중류 유효유량 산정에 가장 적합한 Bin의 수와 Bin 간격 산정 규칙을 제시하였다.

  • PDF

Software Montage: Filtering of Detecting Target of Similar Software for Digital Forensic Investigation (소프트웨어 몽타주: 디지털 포렌식 수사를 위한 유사 소프트웨어 탐지 대상의 필터링)

  • Park, Hee-Wan;Han, Tai-Sook
    • Journal of KIISE:Computing Practices and Letters
    • /
    • v.16 no.4
    • /
    • pp.497-501
    • /
    • 2010
  • A software montage means information that can be extracted quickly from software and includes inherent characteristics. If a montage is made from well-known programs, we can filter candidates of similar programs among the group of programs based on the montage. In this paper, we suggest software montages based on two characteristics: API calls and strings. To evaluate the proposed montages, we performed experiments to filter candidates of some similar programs to instant messenger programs. From the experiments, we confirmed that the proposed montages can be used as a forensic tool that filters a group of similar programs even when their functions are not known in advance.

API Similarity Comparison Tool Development for Detecting Theft of Android Application (안드로이드 앱 도용 탐지를 위한 API 유사도 비교 도구 구현)

  • Choi, Sung-Ha;Lee, Hyun-Young;Cho, Seung-Min;Park, Heewan
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2012.04a
    • /
    • pp.792-795
    • /
    • 2012
  • 최근 오픈 소스 커뮤니티가 활성화되고 수많은 오픈 소스들이 공개되고 있어서 많은 개발자들이 오픈 소스를 활용하고 있다. 그러나 오픈 소스도 정해진 라이선스 기반으로 공개되므로 오픈 소스를 사용할 때는 반드시 라이선스를 확인해야 한다. 본 논문에서는 안드로이드 앱의 라이선스 위반이나 코드 도용을 확인할 수 있는 방법으로서 안드로이드 앱 사이의 API 메소드 호출 유사도를 측정하는 방법을 제안한다. 원본 프로그램과 도용된 프로그램은 유사한 API 메소드를 사용할 것임을 예상할 수 있기 때문에 API 메소드 호출이 유사한 것을 확인하면 간접적으로 코드 도용을 확인할 수 있다. 본 논문에서 개발한 API 유사도 측정 도구는 안드로이드 앱의 소스 코드를 필요로 하지 않고, 안드로이드 달빅(Dalvik) 바이트 코드로부터 직접 API 호출 명령어를 분석하여 유사도를 측정한다는 특징이 있다. 본 논문에서 구현한 도구의 평가를 위해서 API 호출 유사도 비교 실험을 수행하였다. 그 결과, 실제로 API 호출 유사도가 높았던 두 앱이 서로 공통된 모듈을 포함하고 있음을 밝혀내었다. 그리고 선행 연구에서 제안했었던 안드로이드 달빅 코드 전체에 대한 유사도 비교 도구보다 비교 속도가 35% 정도 향상된 것을 확인하였다.

An Effective Method for Comparing Control Flow Graphs through Edge Extension (에지 확장을 통한 제어 흐름 그래프의 효과적인 비교 방법)

  • Lim, Hyun-Il
    • KIPS Transactions on Computer and Communication Systems
    • /
    • v.2 no.8
    • /
    • pp.317-326
    • /
    • 2013
  • In this paper, we present an effective method for comparing control flow graphs which represent static structures of binary programs. To compare control flow graphs, we measure similarities by comparing instructions and syntactic information contained in basic blocks. In addition, we also consider similarities of edges, which represent control flows between basic blocks, by edge extension. Based on the comparison results of basic blocks and edges, we match most similar basic blocks in two control flow graphs, and then calculate the similarity between control flow graphs. We evaluate the proposed edge extension method in real world Java programs with respect to structural similarities of their control flow graphs. To compare the performance of the proposed method, we also performed experiments with a previous structural comparison for control flow graphs. From the experimental results, the proposed method is evaluated to have enough distinction ability between control flow graphs which have different structural characteristics. Although the method takes more time than previous method, it is evaluated to be more resilient than previous method in comparing control flow graphs which have similar structural characteristics. Control flow graph can be effectively used in program analysis and understanding, and the proposed method is expected to be applied to various areas, such as code optimization, detection of similar code, and detection of code plagiarism.

Shear Strength Evaluation of Unreinforced Masonry Walls Using Pushover Analysis (푸쉬오버 해석을 통한 비보강 조적벽체의 전단강도평가)

  • Lee, Jung-Han;Kim, Hye-Won;Kim, Jin-Seon;Park, Byung-Cheol;Yi, Waon-Ho
    • Proceedings of the Computational Structural Engineering Institute Conference
    • /
    • 2010.04a
    • /
    • pp.746-749
    • /
    • 2010
  • 본 연구에서는 비보강 조적조에 대한 부재 비선형거동 및 비탄성힌지 속성을 고려할 수 있는 midas GEN Ver.741(해외판) 프로그램에 의한 비보강 조적벽체의 푸쉬오버 해석결과와 실험결과와의 비교를 통하여 비보강 조적조 건축물의 전단강도평가를 비롯하여 내진성능평가를 위한 역량스펙트럼 해석 프로그램을 검증하고자 한다. midas GEN Ver.741(해외판) 프로그램의 사용성 검증을 위하여 조적벽체의 축하중, 형상비, 쌓기방법(두께) 그리고 개구부 유무를 변수로 한 10개의 비보강 조적벽체의 전단강도를 비교 평가한다. 비보강 조적벽체에 대한 실험결과와 해석결과를 비교한 결과 각 시험체별 전단강도 값이 비교적 유사한 것으로 나타나며 국내 기존 비보강 조적조 건축물에 대한 해석방법으로 본 프로그램의 사용이 가능한 것으로 평가되었다.

  • PDF

A Method for Detecting Program Plagiarism Comparing Class Structure Graphs (클래스 구조 그래프 비교를 통한 프로그램 표절 검사 방법)

  • Kim, Yeoneo;Lee, Yun-Jung;Woo, Gyun
    • The Journal of the Korea Contents Association
    • /
    • v.13 no.11
    • /
    • pp.37-47
    • /
    • 2013
  • Recently, lots of research results on program comparison have been reported since the code theft become frequent as the increase of code mobility. This paper proposes a plagiarism detection method using class structures. The proposed method constructs a graph representing the referential relationship between the member variables and the methods. This relationship is shown as a bipartite graph and the test for graph isomorphism is applied on the set of graphs to measure the similarity of the programs. In order to measure the effectiveness of this method, an experiment was conducted on the test set, the set of Java source codes submitted as solutions for the programming assignments in Object-Oriented Programming course of Pusan National University in 2012. In order to evaluate the accuracy of the proposed method, the F-measure is compared to those of JPlag and Stigmata. According to the experimental result, the F-measure of the proposed method is higher than those of JPlag and Stigmata by 0.17 and 0.34, respectively.

A Functional Unit Dynamic API Birthmark for Windows Programs Code Theft Detection (Windows 프로그램 도용 탐지를 위한 기능 단위 동적 API 버스마크)

  • Choi, Seok-Woo;Cho, Woo-Young;Han, Tai-Sook
    • Journal of KIISE:Software and Applications
    • /
    • v.36 no.9
    • /
    • pp.767-776
    • /
    • 2009
  • A software birthmark is a set of characteristics that are extracted from a program itself to detect code theft. A dynamic API birthmark is extracted from the run-time API call sequences of a program. The dynamic Windows API birthmarks of Tamada et al. are extracted from API call sequences during the startup period of a program. Therefore. the dynamic birthmarks cannot reflect characteristics of main functions of the program. In this paper. we propose a functional unit birthmark(FDAPI) that is defined as API call sequences recorded during the execution of essential functions of a program. To find out that some functional units of a program are copied from an original program. two FDAPIs are extracted by executing the programs with the same input. The FDAPIs are compared using the semi-global alignment algorithm to compute a similarity between two programs. Programs with the same functionality are compared to show credibility of our birthmark. Binary executables that are compiled differently from the same source code are compared to prove resilience of our birthmark. The experimental result shows that our birthmark can detect module theft of software. to which the existing birthmarks of Tamada et al. cannot be applied.