$\require{mediawiki-texvc}$

연합인증

연합인증 가입 기관의 연구자들은 소속기관의 인증정보(ID와 암호)를 이용해 다른 대학, 연구기관, 서비스 공급자의 다양한 온라인 자원과 연구 데이터를 이용할 수 있습니다.

이는 여행자가 자국에서 발행 받은 여권으로 세계 각국을 자유롭게 여행할 수 있는 것과 같습니다.

연합인증으로 이용이 가능한 서비스는 NTIS, DataON, Edison, Kafe, Webinar 등이 있습니다.

한번의 인증절차만으로 연합인증 가입 서비스에 추가 로그인 없이 이용이 가능합니다.

다만, 연합인증을 위해서는 최초 1회만 인증 절차가 필요합니다. (회원이 아닐 경우 회원 가입이 필요합니다.)

연합인증 절차는 다음과 같습니다.

최초이용시에는
ScienceON에 로그인 → 연합인증 서비스 접속 → 로그인 (본인 확인 또는 회원가입) → 서비스 이용

그 이후에는
ScienceON 로그인 → 연합인증 서비스 접속 → 서비스 이용

연합인증을 활용하시면 KISTI가 제공하는 다양한 서비스를 편리하게 이용하실 수 있습니다.

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

한국정보처리학회 2012년도 춘계학술발표대회, 2012 Apr. 26, 2012년, pp.792 - 795  

최성하 (한라대학교 정보통신방송공학부) ,  이현영 (한라대학교 정보통신방송공학부) ,  조승민 (한라대학교 정보통신방송공학부) ,  박희완 (한라대학교 정보통신방송공학부)

초록
AI-Helper 아이콘AI-Helper

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

AI 본문요약
AI-Helper 아이콘 AI-Helper

* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.

문제 정의

  • 본 논문에서는 달빅 코드를 구성하는 모든 명령어를 추출하는 것이 아니라 API 메소드 호출과 관련된 달빅 명령어만을 추출하여 유사도를 비교하는 버스마크 기법을 제안하고 실험을 통해서 속도 및 도용 탐지 능력을 평가한다.
  • 본 논문에서는 안드로이드 앱에 대하여 API 메소드 호출 유사도를 비교하는 버스마크 기법을 제안한다. 그리고 안드로이드 앱의 달빅(Dalvik) 코드[6] 전체에 대한 유사도 비교를 수행하는 선행 연구[7]와의 비교를 통해서 버스 마크 추출 속도와 유사도 측정 결과를 평가한다.
  • 본 논문에서는 안드로이드 코드 도용을 탐지하기 위한 방법으로서 API 호출 유사도를 측정하는 방법을 제안하였다.
본문요약 정보가 도움이 되었나요?

질의응답

핵심어 질문 논문에서 추출한 답변
소프트웨어 버스마크는 어떤 방법인가? 소프트웨어 버스마크는 소스 코드를 필요로 하지 않으면서 소프트웨어 바이너리나 자바 클래스 파일로부터 고유한 특징을 추출하여 유사도를 비교하는 방법이다.[4,5]
코드 표절 검사 도구를 사용하여 오픈 소스와의 유사도를 비교하려면 무엇이 확보되어야 하는가? 코드 표절 검사 도구를 사용하여 오픈 소스와의 유사도를 비교하려면 반드시 소스 코드를 먼저 확보하여야 한다. 그러나 단순히 라이선스 위반이 의심된다고 해서 개발사에게 소스 코드를 요구하기도 어렵고, 무분별하게 저작권 분쟁 위원회를 통해서 해결하는 것도 쉽지 않다.
k-gram 버스마크의 단점은 무엇인가? k-gram 버스마크는 JVM 명령어 레벨에서 유사도를 비교하기 때문에 서로 다른 프로그램을 구별하는 능력은 매우 뛰어나다. 그러나 유사 기능을 수행하는 다른 명령어로 변경되거나 명령어 순서가 뒤바뀌는 경우가 발생할 수 있기 때문에 버스마크가 쉽게 손상된다.
질의응답 정보가 도움이 되었나요?
섹션별 컨텐츠 바로가기

AI-Helper ※ AI-Helper는 오픈소스 모델을 사용합니다.

AI-Helper 아이콘
AI-Helper
안녕하세요, AI-Helper입니다. 좌측 "선택된 텍스트"에서 텍스트를 선택하여 요약, 번역, 용어설명을 실행하세요.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.

선택된 텍스트

맨위로