Preferred Name
Jeff
Creative Commons License
This work is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 4.0 License.
ORCID
https://orcid.org/0000-0002-5163-6784
Date of Graduation
5-8-2020
Semester of Graduation
Spring
Document Type
Thesis
Degree Name
Master of Science (MS)
Department
Department of Computer Science
Advisor(s)
Xunhua Wang
Nathan Sprague
Brett Tjaden
Abstract
Code stylometry is applying analysis techniques to a collection of source code or binaries to determine variations in style. The variations extracted are often used to identify the author of the text or to differentiate one piece from another.
In this research, we were able to create a multi-input deep learning model that could accurately categorize and group code from multiple projects. The deep learning model took as input word-based tokenization for code comments, character-based tokenization for the source code text, and the metadata features described by A. Caliskan-Islam et al. Using these three inputs, we were able to achieve 90% validation accuracy with a loss value of 0.1203 using 12 projects consisting of 5,877 files. Finally, we analyzed the Bitcoin source code using our data model showing a high probability match to the OpenSSL project.
Recommended Citation
Tindell, Richard J. II, "A multi-input deep learning model for C/C++ source code attribution" (2020). Masters Theses, 2020-current. 46.
https://commons.lib.jmu.edu/masters202029/46
Included in
Artificial Intelligence and Robotics Commons, Information Security Commons, Programming Languages and Compilers Commons