CN110392056A - 一种轻量级的物联网恶意软件检测***及方法 - Google Patents
一种轻量级的物联网恶意软件检测***及方法 Download PDFInfo
- Publication number
- CN110392056A CN110392056A CN201910670722.0A CN201910670722A CN110392056A CN 110392056 A CN110392056 A CN 110392056A CN 201910670722 A CN201910670722 A CN 201910670722A CN 110392056 A CN110392056 A CN 110392056A
- Authority
- CN
- China
- Prior art keywords
- malware
- internet
- software
- module
- communication module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/145—Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Medical Informatics (AREA)
- Computer Hardware Design (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Virology (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种轻量级的物联网恶意软件检测***及方法,属于物联网安全领域,解决现有技术中,现有的物联网设备的恶意软件,计算过程大多在物联网设备上,因物联网设备的计算能力局限性,从而造成不能充分辨别恶意软件。本发明包括物联网结点和云服务器;物联网结点包括:轻量级恶意软件辨别模块、通信模块和决策模块;云服务器包括:云通信模块、数据存储模块、分类器模块和云决策模块;以及对应***的执行方法。本发明用于轻量级的物联网恶意软件检测。
Description
技术领域
一种轻量级的物联网恶意软件检测***及方法,用于轻量级的物联网恶意软件检测,属于物联网安全领域。
背景技术
物联网(IoT)是传统互联网的扩展,它允许大量智能设备(如家用电器,网络摄像机,传感器和控制器)相互连接以共享信息,并能有效改善用户体验。物联网设备是用于特定领域的计算的微型计算机,而不是传统的功能特定的嵌入式设备,因此传统的针对互联网的多种现有攻击也可针对物联网设备,例如Mirai和Brickerbot僵尸网络。但是大多数物联网设备缺乏基本的安全监控和保护机制,同时由于物联网的特殊性,比如物联网设备计算能力有限、恶意软件通常针对特定类别的设备(互联网摄像头、硬盘录像机等),导致目前物联网安全发展缓慢,形势十分严峻,因此亟需适用于物联网设备的恶意软件检测方法。
现有的物联网设备的恶意软件,计算过程大多在物联网设备上,而物联网设备的计算能力局限性,所以造成不能充分辨别恶意软件的问题。
发明内容
针对上述研究的问题,本发明的目的在于提供一种轻量级的物联网恶意软件检测***及方法,解决现有技术中,现有的物联网设备的恶意软件,计算过程大多在物联网设备上,因物联网设备的计算能力局限性,从而造成不能充分辨别恶意软件。
为了达到上述目的,本发明采用如下技术方案:
一种轻量级的物联网恶意软件检测***,包括物联网结点和云服务器;
物联网结点包括:
轻量级恶意软件辨别模块:内嵌在物联网设备,根据识别策略识别运行的软件的二进制序列是否为可疑软件,若是,将运行的软件的二进制序列转化成一个灰度图像,否则不转化;
通信模块:将轻量级恶意软件辨别模块识别的可疑软件信息传输给云服务器;接收云服务器传来的处理指令或新的识别策略和处理指令,其中,可疑软件信息为可疑软件的关键标识,包括可疑软件的软件名和灰度图像;
决策模块:根据通信模块接收的处理指令对可疑软件进行处理,如果接收到了新的识别策略,则更新轻量级恶意软件辨别模块的识别策略,否则不更新;
云服务器包括:
云通信模块:接收从物联网结点通信模块传输来的可疑软件信息;
数据存储模块:用于存储包括一定量恶意软件和良性软件的数据集;
分类器模块:在初始化时,利用数据存储模块存储的数据集的二进制序列训练多层卷积神经网络得到训练后的识别二进制序列的分类器作为识别策略;在精确识别时,利用数据存储模块存储的数据集转换的灰度图像训练多层卷积神经网络得到训练后的识别灰度图像的分类器,采用训练后的识别灰度图像的分类器来识别云通信模块接收的可疑软件信息中的灰度图像,若识别结果反映可疑软件属于恶意软件,使用该恶意软件对识别二进制序列的训练后的分类器进行再次训练得到新的识别策略,并将识别结果和新的识别策略反馈给云决策模块,若识别结果反映可疑软件不属于恶意软件,则将识别结果反馈给云决策模块;
云决策模块:若果识别结果反映属于恶意软件,则使云通信模块将处理指令和新的识别策略传输给通信模块,并把该恶意软件信息添加到数据存储模块的数据集中,若不属于恶意软件,使云通信模块反馈一个观望的处理指令给通信模块。
进一步,所述轻量级恶意软件辨别模块中的识别策略为依赖已有的恶意程序的二进制序列,与运行的软件的二进制序列来判断是否为可疑软件,即运行的软件的二进制序列与识别策略中的恶意程序中的一个或多个二进制序列相似度超过一定阈值,则认为该软件为可疑软件。
进一步,所述多层卷积神经网络为双层以上。
一种轻量级的物联网恶意软件检测方法,包括如下步骤:
S1、物联网结点中内嵌在物联网设备上轻量级恶意软件辨别模块根据识别策略识别运行的软件的二进制序列是否为可疑软件,若是,将运行的软件的二进制序列转化成一个灰度图像,否则不转化;
S2、物联网结点中的通信模块将轻量级恶意软件辨别模块识别的可疑软件信息进行传输,其中,可疑软件的信息为可疑软件的关键标识,包括可疑软件的软件名、字符串序列和灰度图像;
S3、云服务器中的云通信模块接收从物联网结点通信模块传输来的可疑软件信息;
S4、云服务器中的分类器模块在初始化时,利用数据存储模块存储的数据集的二进制序列训练多层卷积神经网络得到训练后的识别二进制序列的分类器作为识别策略;在精确识别时,利用数据存储模块存储的数据集转换的灰度图像训练多层卷积神经网络得到训练后的识别灰度图像的分类器,采用训练后的识别灰度图像的分类器来识别云通信模块接收的可疑软件信息中的灰度图像,若识别结果反映可疑软件属于恶意软件,使用该恶意软件对识别二进制序列的训练后的分类器进行再次训练得到新的识别策略,并将识别结果和新的识别策略反馈给云决策模块,若识别结果反映可疑软件不属于恶意软件,则将识别结果反愤给云决策模块:
S5、云服务器中的云决策模块若识别结果反映属于恶意软件,则使云通信模块将处理指令和新的识别策略传输给通信模块,并把该恶意软件信息添加到数据存储模块的数据集中,若不属于恶意软件,使云通信模块反馈一个观望的处理指令给通信模块;
S6、物联网结点中的通信模块接收云服务器传来的处理指令或新的识别策略和处理指令;
S7、物联网结点中的决策模块根据通信模块接收而来的处理指令对可疑软件进行处理,如果接收到了新的识别策略,则更新轻量级恶意软件辨别模块的识别策略,否则不更新。
本发明同现有技术相比,其有益效果表现在:
一、本发明为第一个应用于物联网恶意软件样本上、第一个利用云端卷积神经网络来分类恶意软件的***和方法,不受物联网设备的计算能力的局限,能充分辨别恶意软件,保证了恶意软件识别的准确率。
二、本发明通过灰度图像进行传输,是为了方便上传和处理。
附图说明
图1是本发明的总体架构示意图。
具体实施方式
下面将结合附图及具体实施方式对本发明作进一步的描述。
实施例
一、云服务器初始化:在云服务器***上构建一个小的双层卷积神经网络后,通过预先准备的数据集对该双层卷积神经网络进行训练,并进行初步测试,其步骤如下:
①在某个物联网网络中增加中心服务器设备以部署云服务器;
②在云服务器上利用双层卷积神经网络构建分类器,通常情况下,卷积神经网络的层数大于等于两层;层数越小,训练卷积神经网络的计算量越小;本实施例为双层;
③准备数据集,包括从物联网蜜罐IoT POT收集的物联网威胁样本和从Ubuntu16.04.3***文件中收集的良性二进制样本;
④对数据集进行预处理以平衡样本数,即按软件家族分类,随机删除大类的样本,平衡每个家族的样本数量,防止训练过拟合;
⑤利用数据存储模块保存预处理后的恶意软件与良性软件的数据集。
⑥利用图像识别的方法使用部分数据集完成分类器的训练并利用剩余数据集对分类器性能进行测试,得到训练后的分类器,即在初始化时,利用数据存储模块存储的数据集的二进制序列训练多层卷积神经网络得到训练后的识别二进制序列的分类器作为识别策略;在精确识别时,利用数据存储模块存储的数据集转换的灰度图像训练多层卷积神经网络得到训练后的识别灰度图像的分类器。
二、探测器生成:假设该卷积神经网络经过5000次迭代训练,训练批量大小为32,学习率为0.0001,认为该双层卷积神经网络即为生成的一个小型轻量探测器,用于对可疑样本的初步检测,而不需要具体的分析可疑样本。
三、部署探测器:当一个物联网设备接入云服务器所在的物联网网络后,与云服务器通信,云服务器与该设备建立连接,即将生成的探测器部署于该设备上,并与设备轻量级恶意软件识别模块进行绑定,准备对该设备运行的软件进行检测。
四、恶意软件识别:当物联网设备上部署探测器后,设备轻量级恶意软件识别模块开始运行,实时探测物联网设备上运行的软件,其步骤如下:
①轻量级恶意软件识别模块输出表明该软件的初步识别结果是否为可疑软件;
②若是可疑软件,将运行的软件的二进制序列转换为8位字符串序列,然后将每个字符串转换为十进制数(即值0-255);
③格式化该十进制数为灰度图像;
④将转换后运行的软件对应的灰度图,利用通信模块将该软件的软件名称和灰度图像等关键标识信息上传到云服务器进行详细检测,并等待云服务器返回检测结果;若为正常软件,则继续执行此过程。五、恶意软件分类:云服务器中的云通信模块接收到设备上传的可疑软件后,利用已训练的识别灰度图像的分类器对该可疑软件进行详细检测并返回结果,其步骤如下:
①将可疑软件信息输入到已训练的分类器判断是否为恶意软件;
②若为恶意软件,分类器输出恶意软件分类结果,包括该恶意软件功能、类型、所属恶意软件族等信息;
③将识别结果返回给云服务器;
④利用数据存储模块保存该恶意软件;
⑤使用该恶意软件对分类器进行迭代训练,重新生成探测器并对设备上部署的探测器进行更新。
六、响应:物联网设备调用决策模块,根据云服务器返回的分类结果决定采取何种响应,其步骤如下:
①若分类结果为良性,则不进行额外操作,即反馈一个观望的处理指令;
②若分类结果为恶意,可采取防御措施,即反馈处理指令,如强制中止该软件、断开网络连接防止扩散等。
③更新探测器,即反馈新的识别襞略进行更新,并继续进行可疑软件识别。
综上所述,本发明中检测算法,是将检测算法分为识别和分类两阶段,其中识别部分对计算能力的要求较小,因此可以部署在物联网设备上;而将对计算能力要求大、占用资源多的分类部分放在服务器上运行。本发明中轻量级特指对物联网设备的要求小,使用云服务器分担检测算法的大部分工作。
以上仅是本发明众多具体应用范围中的代表性实施例,对本发明的保护范围不构成任何限制。凡采用变换或是等效替换而形成的技术方案,均落在本发明权利保护范围之内。
Claims (4)
1.一种轻量级的物联网恶意软件检测***,其特征在于,包括物联网结点和云服务器;
物联网结点包括:
轻量级恶意软件辨别模块:内嵌在物联网设备,根据识别策略识别运行的软件的二进制序列是否为可疑软件,若是,将运行的软件的二进制序列转化成一个灰度图像,否则不转化:
通信模块:将轻量级恶意软件辨别模块识别的可疑软件信息传输给云服务器;接收云服务器传来的处理指令或新的识别策略和处理指令,其中,可疑软件信息为可疑软件的关键标识,包括可疑软件的软件名和灰度图像;
决策模块:根据通信模块接收的处理指令对可疑软件进行处理,如果接收到了新的识别策略,则更新轻量级恶意软件辨别模块的识别策略,否则不更新;
云服务器包括:
云通信模块:接收从物联网结点通信模块传输来的可疑软件信息;
数据存储模块:用于存储包括一定量恶意软件和良性软件的数据集;
分类器模块:在初始化时,利用数据存储模块存储的数据集的二进制序列训练多层卷积神经网络得到训练后的识别二进制序列的分类器作为识别策略;在精确识别时,利用数据存储模块存储的数据集转换的灰度图像训练多层卷积神经网络得到训练后的识别灰度图像的分类器,采用训练后的识别灰度图像的分类器来识别云通信模块接收的可疑软件信息中的灰度图像,若识别结果反映可疑软件属于恶意软件,使用该恶意软件对识别二进制序列的训练后的分类器进行再次训练得到新的识别策略,并将识别结果和新的识别策略反馈给云决策模块,若识别结果反映可疑软件不属于恶意软件,则将识别结果反馈给云决策模块;
云决策模块:若果识别结果反映属于恶意软件,则使云通信模块将处理指令和新的识别策略传输给通信模块,并把该恶意软件信息添加到数据存储模块的数据集中,若不属于恶意软件,使云通信模块反馈一个观望的处理指令给通信模块。
2.根据权利要求1所述的一种轻量级的物联网恶意软件检测***,其特征在于,所述轻量级恶意软件辨别模块中的识别策略为依赖已有的恶意程序的二进制序列,与运行的软件的二进制序列来判断是否为可疑软件,即运行的软件的二进制序列与识别策略中的恶意程序中的一个或多个二进制序列相似度超过一定阈值,则认为该软件为可疑软件。
3.根据权利要求1所述的一种轻量级的物联网恶意软件检测***,其特征在于,所述多层卷积神经网络为双层以上。
4.一种轻量级的物联网恶意软件检测方法,其特征在于,包括如下步骤:
S1、物联网结点中内嵌在物联网设备上轻量级恶意软件辨别模块根据识别策略识别运行的软件的二进制序列是否为可疑软件,若是,将运行的软件的二进制序列转化成一个灰度图像,否则不转化;
S2、物联网结点中的通信模块将轻量级恶意软件辨别模块识别的可疑软件信息进行传输,其中,可疑软件的信息为可疑软件的关键标识,包括可疑软件的软件名、字符串序列和灰度图像;
S3、云服务器中的云通信模块接收从物联网结点通信模块传输来的可疑软件信息;
S4、云服务器中的分类器模块在初始化时,利用数据存储模块存储的数据集的二进制序列训练多层卷积神经网络得到训练后的识别二进制序列的分类器作为识别策略;在精确识别时,利用数据存储模块存储的数据集转换的灰度图像训练多层卷积神经网络得到训练后的识别灰度图像的分类器,采用训练后的识别灰度图像的分类器来识别云通信模块接收的可疑软件信息中的灰度图像,若识别结果反映可疑软件属于恶意软件,使用该恶意软件对识别二进制序列的训练后的分类器进行再次训练得到新的识别策略,并将识别结果和新的识别策略反馈给云决策模块,若识别结果反映可疑软件不属于恶意软件,则将识别结果反馈给云决策模块;
S5、云服务器中的云决策模块若识别结果反映属于恶意软件,则使云通信模块将处理指令和新的识别策略传输给通信模块,并把该恶意软件信息添加到数据存储模块的数据集中,若不属于恶意软件,使云通信模块反馈一个观望的处理指令给通信模块;
S6、物联网结点中的通信模块接收云服务器传来的处理指令或新的识别策略和处理指令;
S7、物联网结点中的决策模块根据通信模块接收而来的处理指令对可疑软件进行处理,如果接收到了新的识别策略,则更新轻量级恶意软件辨别模块的识别策略,否则不更新。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910670722.0A CN110392056A (zh) | 2019-07-24 | 2019-07-24 | 一种轻量级的物联网恶意软件检测***及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910670722.0A CN110392056A (zh) | 2019-07-24 | 2019-07-24 | 一种轻量级的物联网恶意软件检测***及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110392056A true CN110392056A (zh) | 2019-10-29 |
Family
ID=68287281
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910670722.0A Pending CN110392056A (zh) | 2019-07-24 | 2019-07-24 | 一种轻量级的物联网恶意软件检测***及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110392056A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021207874A1 (zh) * | 2020-04-13 | 2021-10-21 | 华为技术有限公司 | 一种非安全软件检测装置、检测方法以及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104850783A (zh) * | 2015-04-30 | 2015-08-19 | 中国人民解放军国防科学技术大学 | 一种基于哈希特征矩阵的恶意软件云检测方法及*** |
CN107092829A (zh) * | 2017-04-21 | 2017-08-25 | 中国人民解放军国防科学技术大学 | 一种基于图像匹配的恶意代码检测方法 |
US20180183815A1 (en) * | 2016-10-17 | 2018-06-28 | Kerry Wayne Enfinger | System and method for detecting malware |
CN108280350A (zh) * | 2018-02-05 | 2018-07-13 | 南京航空航天大学 | 一种面向Android的移动网络终端恶意软件多特征检测方法 |
CN108650260A (zh) * | 2018-05-09 | 2018-10-12 | 北京邮电大学 | 一种恶意网站的识别方法和装置 |
CN109784056A (zh) * | 2019-01-02 | 2019-05-21 | 大连理工大学 | 一种基于深度学习的恶意软件检测方法 |
-
2019
- 2019-07-24 CN CN201910670722.0A patent/CN110392056A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104850783A (zh) * | 2015-04-30 | 2015-08-19 | 中国人民解放军国防科学技术大学 | 一种基于哈希特征矩阵的恶意软件云检测方法及*** |
US20180183815A1 (en) * | 2016-10-17 | 2018-06-28 | Kerry Wayne Enfinger | System and method for detecting malware |
CN107092829A (zh) * | 2017-04-21 | 2017-08-25 | 中国人民解放军国防科学技术大学 | 一种基于图像匹配的恶意代码检测方法 |
CN108280350A (zh) * | 2018-02-05 | 2018-07-13 | 南京航空航天大学 | 一种面向Android的移动网络终端恶意软件多特征检测方法 |
CN108650260A (zh) * | 2018-05-09 | 2018-10-12 | 北京邮电大学 | 一种恶意网站的识别方法和装置 |
CN109784056A (zh) * | 2019-01-02 | 2019-05-21 | 大连理工大学 | 一种基于深度学习的恶意软件检测方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021207874A1 (zh) * | 2020-04-13 | 2021-10-21 | 华为技术有限公司 | 一种非安全软件检测装置、检测方法以及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114257386B (zh) | 检测模型的训练方法、***、设备及存储介质 | |
He et al. | Intrusion detection based on stacked autoencoder for connected healthcare systems | |
US20170063893A1 (en) | Learning detector of malicious network traffic from weak labels | |
CN109450842A (zh) | 一种基于神经网络的网络恶意行为识别方法 | |
CN107609399A (zh) | 基于nin神经网络的恶意代码变种检测方法 | |
CN107733851A (zh) | 基于通信行为分析的dns隧道木马检测方法 | |
CN109117634A (zh) | 基于网络流量多视图融合的恶意软件检测方法及*** | |
CN109005145A (zh) | 一种基于自动特征抽取的恶意url检测***及其方法 | |
CN110263538A (zh) | 一种基于***行为序列的恶意代码检测方法 | |
CN111786951B (zh) | 流量数据特征提取方法、恶意流量识别方法及网络*** | |
CN108769079A (zh) | 一种基于机器学习的Web入侵检测技术 | |
CN112039906B (zh) | 一种面向云计算的网络流量异常检测***及方法 | |
CN107256357A (zh) | 基于深度学习的安卓恶意应用的检测和分析方法 | |
CN113922985A (zh) | 一种基于集成学习的网络入侵检测方法及*** | |
Yin et al. | Towards accurate intrusion detection based on improved clonal selection algorithm | |
CN109583567A (zh) | 一种基于CNN的Web自动扫描器指纹识别模型 | |
CN1223941C (zh) | 一种基于相关特征聚类的层次入侵检测*** | |
CN110392056A (zh) | 一种轻量级的物联网恶意软件检测***及方法 | |
US20150150132A1 (en) | Intrusion detection system false positive detection apparatus and method | |
US9323987B2 (en) | Apparatus and method for detecting forgery/falsification of homepage | |
CN116244640A (zh) | 一种基于联邦学***衡轴承故障诊断方法及*** | |
Xu et al. | Edge4fr: A novel device-edge collaborative framework for facial recognition in smart uav delivery systems | |
Wang et al. | TransIDS: A Transformer-based approach for intrusion detection in Internet of Things using Label Smoothing | |
CN111371794B (zh) | 阴影域检测模型、检测模型建立方法、检测方法及*** | |
Aarthi et al. | A hybrid multiclass classifier approach for the detection of malicious domain names using RNN model |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191029 |