Code authorship identification using convolutional neural networks

  • Abuhamad, Mohammed
  • Rhim, Ji-su
  • AbuHmed, Tamer
  • Ullah, Sana
  • Kang, Sanggil
  • 외 1명
Citations

WEB OF SCIENCE

43
Citations

SCOPUS

53

초록

Although source code authorship identification creates a privacy threat for many open source contributors, it is an important topic for the forensics field and enables many successful forensic applications, including ghostwriting detection, copyright dispute settlements, and other code analysis applications. This work proposes a convolutional neural network (CNN) based code authorship identification system. Our proposed system exploits term frequency-inverse document frequency, word embedding modeling, and feature learning techniques for code representation. This representation is then fed into a CNN-based code authorship identification model to identify the code's author. Evaluation results from using our approach on data from Google Code Jam demonstrate an identification accuracy of up to 99.4% with 150 candidate programmers, and 96.2% with 1,600 programmers. The evaluation of our approach also shows high accuracy for programmers identification over real-world code samples from 1987 public repositories on GitHub with 95% accuracy for 745 C programmers and 97% for the C++ programmers. These results indicate that the proposed approaches are not language-specific techniques and can identify programmers of different programming languages. (C) 2018 Elsevier B.V. All rights reserved.

키워드

Code authorship identificationProgram features privacyConvolutional neural networkDeep learning identificationSoftware forensics and securityATTRIBUTION
제목
Code authorship identification using convolutional neural networks
저자
Abuhamad, MohammedRhim, Ji-suAbuHmed, TamerUllah, SanaKang, SanggilNyang, DaeHun
DOI
10.1016/j.future.2018.12.038
발행일
2019-06
유형
Article
저널명
Future Generation Computer Systems
95
페이지
104 ~ 115