arrow
返回

XtraLibD: Detecting Irrelevant Third-Party Libraries in Java and Python Applications

delete2022-02-11
delete0
delete
OA
AI
R
Ritu Kapur *
P
Poojith U Rao
A
Agrim Dewam
B
Balwinder Sodhi
DOI:10.1007/978-3-030-96648-5_7delete
delete原文链接
delete原文求助
delete分享
delete收藏
摘要

摘要

En 中文
Software development comprises the use of multiple Third-Party Libraries (TPLs). However, the irrelevant libraries present in software application's distributable often lead to excessive consumption of resources such as CPU cycles, memory, and modile-devices' battery usage. Therefore, the identification and removal of unused TPLs present in an application are desirable. We present a rapid, storage-efficient, obfuscation-resilient method to detect the irrelevant-TPLs in Java and Python applications. Our approach's novel aspects are i) Computing a vector representation of a .class file using a model that we call Lib2Vec. The Lib2Vec model is trained using the Paragraph Vector Algorithm. ii) Before using it for training the Lib2Vec models, a .class file is converted to a normalized form via semantics-preserving transformations. iii) A eXtra Library Detector (XtraLibD) developed and tested with 27 different language-specific Lib2Vec models. These models were trained using different parameters and >30,000 .class and >478,000 .py files taken from >100 different Java libraries and 43,711 Python available at MavenCentral.com and Pypi.com , respectively. XtraLibD achieves an accuracy of 99.48% with an F1 score of 0.968 and outperforms the existing tools, viz., LibScout, LiteRadar, and LibD with an accuracy improvement of 74.5%, 30.33%, and 14.1%, respectively. Compared with LibD, XtraLibD achieves a response time improvement of 61.37% and a storage reduction of 87.93% (99.85% over JIngredient). Our program artifacts are available at haps://www.doi.org/10.5281/zenodo.5179747.
Keyword:
Third-party library detection
Code similarity
Paragraph vectors
Software bloat
Obfuscation

期刊

E
Evaluation of Novel Approaches to Software Engineering
IF:
0
论文数:
1
被引数:
0

机构

I
indian institute of technology (iit) - ropar
学者数:
967
论文数: 951
被引数: 2
I
indian institute of technology system (iit system)
学者数:
9.5W
论文数: 9.9W
被引数: 93
引用论文

引用论文

Genomewide Analysis of mRNA Processing in Yeast Using Splicing-Specific Microarrays
err2002-05-03
err0
PREAI
errTyson A. Clark; Charles W. Sugnet; Manuel Ares
err分享
err收藏
err分享
err收藏
Neuronal gelsolin prevents apoptosis by enhancing actin depolymerization
err2004-01-01
err0
PREAI
errChristoph Harms; Julian Bösel; Marion Lautenschlager; Ulrike Harms; Johann S Braun; Heide Hörtnagl; Ulrich Dirnagl; David J Kwiatkowski; Klaus Fink; Matthias Endres
err分享
err收藏
err分享
err收藏
Corepressor Recruitment by Agonist-Bound Nuclear Receptors
err2004-01-01
err0
PREAI
errJohn H White; Isabelle Fernandes; Sylvie Mader; Xiang-Jiao Yang
err分享
err收藏
Ligand-dependent transcription activation by nuclear receptors requires the DRIP complex
err1999-04-01
err0
PREAI
errChristophe Rachez; Bryan D. Lemon; Zalman Suldan; Virginia Bromleigh; Matthew Gamble; Anders M. Näär; Hediye Erdjument-Bromage; Paul Tempst; Leonard P. Freedman
err分享
err收藏
Software Bertillonage Determining the provenance of software development artifacts
err2012-04-24
err35
PREAI
errDavies, Julius; German, Daniel M.; Godfrey, Michael W.; Hindle, Abram
err分享
err收藏
学者 查看更多内容