Font Size: a A A

Design And Implementation Of A Third Party Library Detection System For Android Application

Posted on:2019-03-24Degree:MasterType:Thesis
Country:ChinaCandidate:J P HouFull Text:PDF
GTID:2348330542498199Subject:Computer technology
Abstract/Summary:PDF Full Text Request
With Android applications covering all aspects of user's life,developers of mobile applications need to embed a variety of third party libraries into their applications to implement a variety of different functions such as social,payment,navigation and so on.The widespread use of third party libraries brings convenience to application developers and shortens the application development cycle.But at the same time,embedding third party libraries can bring some third party library code into the application,posing the risk of some security issues to the application.The detection methods of third party libraries contained in the application at this stage are mainly classified into a whitelist method and a machine learning method.There are two types of machine learning methods based on whether there are data tags when counting characteristics.One is supervised learning classification,and the other is unsupervised learning clustering.Because of the rapid growth of the number of third party libraries in the market,whitelist method can not instant update the list.And because there are many types of third party libraries in the market,many third-party libraries have no distinguishing feature,classification method can not solve the issue.Clustering method will be the viable solution,but there is still much room for improvement in the accuracy of clustering results.In this paper,we aimed at the accuracy of clustering and did the following work:1,Aiming at the characteristics of the application which need to be extracted in the clustering,we explore the relationship between the extracted feature and the accuracy of the clustering result.2.We starts from the connection between sub-packages,propose the concept of module decomposition.Before the clustering,we analyze the functional linkages of all the sub-packages such as inheritance,interface calls,function calls,the relationship between member variables and so on,divided the closely linked sub-packages into the same module.Finally we will get the package dependency graph of the entire application.3,We combined together the module decomposition and the clustering to complete the whole system.And then we downloaded 183,089 applications on Google Play as the basis for experimental comparison.By comparing the experimental results obtained with the system in this paper with those of previous studies,we verified that the method we designed is not only efficient,fast,but also more accurate.
Keywords/Search Tags:third party library, machine learning, module decomposition
PDF Full Text Request
Related items