Hai Jin

Hai Jin

orcid

Research Focus & Metrics

Academic Career Length

24Years (2003-Present)

(Calculated once Scilit publication data is synced: current year − year of first publication + 1)

Representative Publications

View All Publications
13 January 2021 in IEEE Transactions on Dependable and Secure Computing
Verified
Journal Article
Closed access
ZLZhen Li
Zhen Li
DZDeqing Zou
Deqing Zou
SXShouhuai Xu
Shouhuai Xu
HJHai Jin
Hai Jin
YZYawei Zhu
Yawei Zhu
ZCZhaoxuan Chen
Zhaoxuan Chen
The detection of software vulnerabilities (or vulnerabilities for short) is an important problem that has yet to be tackled, as manifested by the many vulnerabilities reported on a daily basis. This calls for machine learning methods for vulnerability detection. Deep learning is attractive for this purpose because it alleviates the requirement to manually define features. Despite the tremendous success of deep learning in other application domains, its applicability to vulnerability detection is not systematically understood. In order to fill this void, we propose the first systematic framework for using deep learning to detect vulnerabilities in C/C++ programs with source code. The framework, dubbed Syntax-based, Semantics-based, and Vector Representations (SySeVR), focuses on obtaining program representations that can accommodate syntax and semantic information pertinent to vulnerabilities. Our experiments with four software products demonstrate the usefulness of the framework: we detect 15 vulnerabilities that are not reported in the National Vulnerability Database. Among these 15 vulnerabilities, seven are unknown and have been reported to the vendors, and the other eight have been “silently” patched by the vendors when releasing newer versions of the pertinent software products.

9 July 2019 in Proceedings of the IEEE
Verified
Journal Article
Closed access
LLLi Lin
Li Lin
XLXiaoFei Liao
XiaoFei Liao
HJHai Jin
Hai Jin
PLPeng Li
Peng Li
We are living in a world where massive end devices perform computing everywhere and everyday. However, these devices are constrained by the battery and computational resources. With the increasing number of intelligent applications (e.g., augmented reality and face recognition) that require much more computational power, they shift to perform computation offloading to the cloud, known as mobile cloud computing (MCC). Unfortunately, the cloud is usually far away from end devices, leading to a high latency as well as the bad quality of experience (QoE) for latency-sensitive applications. In this context, the emergence of edge computing is no coincidence. Edge computing extends the cloud to the edge of the network, close to end users, bringing ultra-low latency and high bandwidth. Consequently, there is a trend of computation offloading toward edge computing. In this paper, we provide a comprehensive perspective on this trend. First, we give an insight into the architecture refactoring in edge computing. Based on that insight, this paper reviews the state-of-the-art research on computation offloading in terms of application partitioning, task allocation, resource management, and distributed execution, with highlighting features for edge computing. Then, we illustrate some disruptive application scenarios that we envision as critical drivers for the flourish of edge computing, such as real-time video analytics, smart ``things'' (e.g., smart city and smart home), vehicle applications, and cloud gaming. Finally, we discuss the opportunities and future research directions.

23 September 2019 in IEEE Transactions on Dependable and Secure Computing
Verified
Journal Article
Closed access
DZDeqing Zou
Deqing Zou
SWSujuan Wang
Sujuan Wang
SXShouhuai Xu
Shouhuai Xu
ZLZhen Li
Zhen Li
HJHai Jin
Hai Jin
Fine-grained software vulnerability detection is an important and challenging problem. Ideally, a detection system (or detector) not only should be able to detect whether or not a program contains vulnerabilities, but also should be able to pinpoint the type of a vulnerability in question. Existing vulnerability detection methods based on deep learning can detect the presence of vulnerabilities (i.e., addressing the binary classification or detection problem), but cannot pinpoint types of vulnerabilities (i.e., incapable of addressing multiclass classification). In this paper, we propose the first deep learning-based system for multiclass vulnerability detection, dubbed μVulDeePecker. The key insight underlying μVulDeePecker is the concept of code attention, which can capture information that can help pinpoint types of vulnerabilities, even when the samples are small. For this purpose, we create a dataset from scratch and use it to evaluate the effectiveness of μVulDeePecker. Experimental results show that μVulDeePecker is effective for multiclass vulnerability detection and that accommodating control-dependence (other than data-dependence) can lead to higher detection capabilities.

3 September 2019 in IEEE Transactions on Parallel and Distributed Systems
Verified
Journal Article
Closed access
QHQiang He
Qiang He
GCGuangming Cui
Guangming Cui
XZXuyun Zhang
Xuyun Zhang
FCFeifei Chen
Feifei Chen
Shuguang DengShuguang Deng
Shuguang Deng
YYYun Yang
Yun Yang

27 April 2021 in IEEE Transactions on Dependable and Secure Computing
Verified
Journal Article
Closed access
ZLZhen Li
Zhen Li
DZDeqing Zou
Deqing Zou
SXShouhuai Xu
Shouhuai Xu
ZCZhaoxuan Chen
Zhaoxuan Chen
YZYawei Zhu
Yawei Zhu
HJHai Jin
Hai Jin
Automatically detecting software vulnerabilities is an important problem that has attracted much attention from the academic research community. However, existing vulnerability detectors still cannot achieve the vulnerability detection capability and the locating precision that would warrant their adoption for real-world use. In this article, we present a vulnerability detector that can simultaneously achieve a high detection capability and a high locating precision, dubbed Vul nerability Dee p learning-based Locator (VulDeeLocator). In the course of designing VulDeeLocator, we encounter difficulties including how to accommodate semantic relations between the definitions of types as well as macros and their uses across files, how to accommodate accurate control flows and variable define-use relations, and how to achieve high locating precision. We solve these difficulties by using two innovative ideas: (i) leveraging intermediate code to accommodate extra semantic information, and (ii) using the notion of granularity refinement to pin down locations of vulnerabilities. When applied to 200 files randomly selected from three real-world software products, VulDeeLocator detects 18 confirmed vulnerabilities (i.e., true-positives). Among them, 16 vulnerabilities correspond to known vulnerabilities; the other two are not reported in the National Vulnerability Database (NVD) but have been “silently” patched by the vendor of Libav when releasing newer versions.

13 August 2020 in IEEE Transactions on Parallel and Distributed Systems
Verified
Journal Article
Closed access
XXXiaoyu Xia
Xiaoyu Xia
FCFeifei Chen
Feifei Chen
QHQiang He
Qiang He
JGJohn Grundy
John Grundy
MAMohamed Almorsy Abdelrazek
Mohamed Almorsy Abdelrazek
HJHai Jin
Hai Jin
In the edge computing (EC) environment, edge servers are deployed at base stations to offer highly accessible computing and storage resources to nearby app users. From the app vendor's perspective, caching data on edge servers can ensure low latency in app users' retrieval of app data. However, an edge server normally owns limited resources due to its limited size. In this paper, we investigate the collaborative caching problem in the EC environment with the aim to minimize the system cost including data caching cost, data migration cost, and quality-of-service (QoS) penalty. We model this collaborative edge data caching problem (CEDC) as a constrained optimization problem and prove that it is NP-complete. We propose an online algorithm, called CEDC-O, to solve this CEDC problem during all time slots. CEDC-O is developed based on Lyapunov optimization, works online without requiring future information, and achieves provable close-to-optimal performance. CEDC-O is evaluated on a real-world data set, and the results demonstrate that it significantly outperforms two representative approaches.