OLEH
ANDI Syarwani
D032191020
Metode ini [c] perilaku percobaan empiris untuk mengevaluasi efektivitas dan kapasitas
BINMATCH. Pertama, BINMATCH dievaluasi dengan binari yang dikompilasi dengan
konfigurasi kompilasi yang berbeda, termasuk opsi varian optimasi dan kompiler. Hasilnya
kemudian dibandingkan dengan solusi yang ada (§VB). Kedua, kami mengevaluasi
efektivitas BINMATCH dalam menangani kebingungan dengan membandingkan program-
program biner dengan versi-versi kaburnya (§VC). Terakhir, dengan contoh yang
memotivasi NConvert menggambarkan d dalam §II-A, kami menunjukkan bagaimana
BINMATCH menemukan fungsi cacat yang terhubung secara statis dari NConvert (§VD).
IV. HASIL
Mengakses metode ini [5], itu menunjukkan bahwa yang diusulkan telah mendeteksi
sekitar 66% dari . Dalam beberapa contoh ini, mereka menempatkan perintah loop seperti
"For and While" sehingga algoritma yang diusulkan tidak memiliki kemampuan untuk
membedakan mereka yang merupakan bagian dari pengurangan persentase deteksi terkait
dengan perintah ini. Perlu dicatat bahwa potongan-potongan code input relatif sederhana,
dan code-code itu pada tingkat contoh yang sama diberikan di seluruh kertas.
Penelitian lain, yang menghadirkan BINMATCH untuk menganalisis program biner ELF
(Executable and Linkable Format) pada arsitektur IA-32. Karena metode ini berbasis
semantik, BINMATCH dapat di-porting ke platform lain, misalnya, file PE (Portable
Executable) di Windows. fungsi inline menimbulkan ancaman bagi keakuratan BINMATCH.
Secara empiris, kompiler menggarisbawahi suatu fungsi karena fungsinya pendek dan
dipanggil beberapa kali. Yaitu, ukuran dan waktu doa mungkin fitur dari fungsi sebaris.
Dengan demikian, dimungkinkan untuk mendeteksi fungsi sebaris dengan teknik
pembelajaran mesin.
Dari 755 pasangan clone yang ditemukan oleh T-CORE, 259 adalah tipe-IV clone.
Gambar 1 menunjukkan contoh clone tipe-IV. Dalam contoh ini, dua integrator berbeda
sedang diuji. Integrator itu sendiri, seperti yang diterapkan dalam code produksi, adalah
clone tipe-IV: mereka masing-masing menerapkan algoritma yang berbeda untuk integrasi
suatu kurva. Dua tes ini memverifikasi properti yang sama dari algoritma integrasi yang
berbeda pada kurva yang sama. Kami menyatakan bahwa semantik tes (apa yang sedang
diverifikasi) adalah sama, namun bagaimana hal itu dilakukan (algoritma dan
parameternya) berbeda. Oleh karena itu, kedua tes ini juga merupakan clone tipe-IV.
VI. REFERENSI
[1] Hamid Nasirloo, Fatemeh Azimzadeh. “Semantic Code Clone Detection Using Abstract Memory States and
Program Dependency Graphs”, 2018 4th International Conference on Web Research (ICWR), pp. 19 – 27,
2018.
[2] Y. Hu, Y. Zhang, J. Li, and H. Wang. “BinMatch: A Semantics-based Hybrid Approach on Binary Code Clone
Analysis”, 2018.
[3] B. v. Bladel, dan S. Demeyer., “A Novel approach for detecting Type -IV Clones in Test Code”, IWSC 2019
Huangzhu China, 2019, pp. 8 – 12.
[4] Nisha Gupta, Charmi hariya, Vanshika Gandhi, Vishaka Shelke, “Detection Of Code Clones”,
[5] R. Komondoor dan S. Horwitz., “Using slicing to identify duplication in source code,” in International static
analysis symposium. Springer, 2001, pp. 40–56.
[6] J. Krinke, “Identifying similar code with program dependence graphs,” in Reverse Engineering, 2001.
Proceedings. Eighth Working Conference on. IEEE, 2001, pp. 301–309.
[7] L. Jiang and Z. Su., “Automatic mining of functionally equivalent code fragments via random testing,” pada
Proceedings of the eighteenth international symposium on Software testing and analysis. ACM, 2009, pp.
81–92.
[8] M. Chandramohan, Y. Xue, Z. Xu, Y. Liu, C. Y. Cho, dan H. B. K. Tan. Bingo: “Cross-architecture cross-os binary
search”, pada Proceedings of the 24th ACM SIGSOFT International Symposium on Foundations of Software
Engineering (FSE), 2016.
[9] M. Egele, M. Woo, P. Chapman, dan D. Brumley. “Blanket execution: dynamic similarity testing for program
binaries and components”, In Proceedings of the 23rd USENIX Security Symposium (USENIX Security), 2014.