CN110109673B - 一种基于北斗亚纳秒级高精度授时的编译器检测装置及方法 - Google Patents

一种基于北斗亚纳秒级高精度授时的编译器检测装置及方法 Download PDF

Info

Publication number
CN110109673B
CN110109673B CN201910339090.XA CN201910339090A CN110109673B CN 110109673 B CN110109673 B CN 110109673B CN 201910339090 A CN201910339090 A CN 201910339090A CN 110109673 B CN110109673 B CN 110109673B
Authority
CN
China
Prior art keywords
compiler
code
data
delay
codes
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.)
Active
Application number
CN201910339090.XA
Other languages
English (en)
Other versions
CN110109673A (zh
Inventor
刘艳
彭蓉
郭迟
崔竞松
陈威
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan University WHU
Original Assignee
Wuhan University WHU
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wuhan University WHU filed Critical Wuhan University WHU
Priority to CN201910339090.XA priority Critical patent/CN110109673B/zh
Publication of CN110109673A publication Critical patent/CN110109673A/zh
Application granted granted Critical
Publication of CN110109673B publication Critical patent/CN110109673B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Devices For Executing Special Programs (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种基于北斗亚纳秒级高精度授时的编译器检测装置及方法,通过发包程序发送指定格式的数据包;开发板在有数据包通过时执行加载的被测代码;信号时戳生成器对通过开发板前和通过之后的指定格式的数据包进行标记,生成标记有亚纳秒级时间戳的数据包;收包程序对接收的标记有亚纳秒级时间戳的数据包进行时间差计算,获得延时数据;延时数据处理程序根据延时数据,对编译器的配置情况进行检测。本发明可以实现简化对编译器检测的流程,提供了一种较为方便的检测方式,并且提高了检测效率。

Description

一种基于北斗亚纳秒级高精度授时的编译器检测装置及方法
技术领域
本发明涉及网络安全技术领域,具体涉及一种基于北斗亚纳秒级高精度授时的编译器检测装置及方法。
背景技术
众所周知,代码编译器就是将“一种语言(通常为高级语言)”翻译为“另一种语言(通常为低级语言)”的程序。一个现代编译器的主要工作流程:源代码(source code)→预处理器(preprocessor)→编译器(compiler)→目标代码(object code)→链接器(Linker)→可执行程序(executables)。编译器在进行编译时,往往需要设置相关的编译参数,以满足用户的编译要求,使用不同的编译参数得到编译结果也会不同,同样的,当同一种编译器的版本不同时,对相同代码编译的结果也不相同。
本申请发明人在实施本发明的过程中,发现现有技术的方法,至少存在如下技术问题:
现有技术中采用的编译器检测方法,通常需要获取代码样本才能得以实施,而在硬件场景、嵌入式场景中,获取代码样本较为困难。因此,现有技术中的检测方法存在实现较为复杂的技术问题。
发明内容
有鉴于此,本发明提供了一种基于北斗亚纳秒级高精度授时的编译器检测装置及方法,用以解决或者至少部分解决现有技术中的检测方法存在的实现较为复杂的技术问题。
本发明第一方面提供了一种基于北斗亚纳秒级高精度授时的编译器检测装置,该装置包括:信号时戳生成器、开发板、发包程序、收包程序以及延时数据处理程序,其中,
发包程序,用于发送指定格式的数据包;
开发板,用于在有数据包通过时执行加载的被测代码,其中,被测代码由编译器进行编译;
信号时戳生成器,用于对通过开发板前和通过开发板后的数据包进行标记,,生成标记有亚纳秒级时间戳的数据包,其中,通过开发板前的数据包与通过开发板后的数据包具有相同的结构;
收包程序,用于对接收的标记有亚纳秒级时间戳的数据包进行时间差计算,获得延时数据;
延时数据处理程序,用于根据延时数据,对编译器的配置情况进行检测。
在一种实施方式中,收包程序,具体用于:
对接收的标记有亚纳秒级时间戳的数据包进行匹配;
根据匹配的结果,计算出数据包通过开发板前与通过开发后的时间戳差值,获得延时数据。
在一种实施方式中,延时数据包括:不同编译器版本的延时数据、不同编译器参数的延时数据以及不同被测代码的延时数据。
在一种实施方式中,延时数据处理程序,具体用于:
对不同编译器版本的延时数据进行分析,将不同编译器版本对应的延时进行比较,判断编译器的配置是否发生变化;
对不同编译器参数的延时数据进行分析,对不同编译器参数对应的延时进行比较,判断编译器的配置是否发生变化。
在一种实施方式中,延时数据处理程序具体用于:
对不同编译器版本对应的延时差异与预设值进行比较,如果超过预设值,则判定编译器的配置发生变化;
对不同编译器参数对应的延时差异与预设值进行比较,如果超过预设值,则判定编译器的配置发生变化。
在一种实施方式中,不同被测代码包括第一被测代码和第二被测代码,将第一被测代码作为基准代码,第一被测代码经过修改后获得第二被测代码,两段代码具备相同的功能,延时数据处理程序,还用于:
对不同被测代码的延时数据进行分析,将第二被测代码对应的延时与基准代码的延时进行比较,判断第二被测代码是否为篡改后的代码。
基于同样的发明构思,本发明第二方面提供了一种基于第一方面的检测装置实现的编译器检测方法,其特征在于,该方法包括:
通过发包程序发送指定格式的数据包;
通过开发板在有数据包通过时执行加载的被测代码,其中,被测代码由编译器进行编译;
通过信号时戳生成器对通过开发板前和通过开发板后的数据包进行标记,生成标记有亚纳秒级时间戳的数据包,其中,通过开发板前的数据包与通过开发板后的数据包具有相同的结构;
通过收包程序对接收的标记有亚纳秒级时间戳的数据包进行时间差计算,获得延时数据;
通过延时数据处理程序根据延时数据,对编译器的配置情况进行检测。
在一种实施方式中,所述方法还包括:
设置至少两段代码实现同一功能,其中,一段代码由另一段代码进行一定修改获得,将其中一段代码作为基准代码;
通过延时数据处理程序对不同被测代码的延时数据进行分析,将被测代码对应的延时与基准代码的延时进行比较,判断被测代码是否为篡改后的代码。
本申请实施例中的上述一个或多个技术方案,至少具有如下一种或多种技术效果:
本发明提供的基于北斗亚纳秒级高精度授时的编译器检测装置,包括用于发送指定格式的数据包的发包程序、用于在有数据包通过时执行加载的被测代码的开发板、用于对指定格式的数据包进行标记,生成标记有亚纳秒级时间戳的数据包信号时戳生成器、用于对接收的标记有亚纳秒级时间戳的数据包进行时间差计算,获得延时数据的收包程序以及用于根据延时数据,对编译器的配置情况进行检测的延时数据处理程序。并基于上述检测装置提供了一种编译器检测方法。
相对于现有技术通过获取代码样本的方式来对编译器进行检测而言,本发明的装置和方法通过延时数据处理程序对不同条件下的数据包的延时数据进行分析,从而对编译器的情况进行判断,也就是说,本发明可以通过观测代码执行时间来鉴别编译结果是否发生了改变,从而对编译器的设置情况进行判断,从而简化了对编译器检测的流程,提供了一种较为方便的检测方式,并且提高了检测效率,解决了现有技术中实现复杂的技术问题。
并且,本发明基于北斗亚纳秒级高精度授时技术研发的信号时间生成器,可以获取代码在经过编译器编译后的高精度执行延时数据。从而突破传统延时测量设备时间精度低的限制,提高检测精度。
进一步地,本发明还可以对同一编译环境下代码是否发生变化进行检测,以防止代码被非法篡改或者嵌入后门,可以提高安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中基于北斗亚纳秒级高精度授时的编译器检测装置的结构框图;
图2为应用图1中的装置进行编译器检测的实施示意图;
图3为采用图1中所示装置进行编译器检测的构思图;
图4为本发明实施例中基于北斗亚纳秒级高精度授时的编译器检测方法的流程图。
具体实施方式
本发明的目的在于提供一种基于北斗亚纳秒级高精度授时的编译器检测装置及方法,用以改善现有技术检测方法存在的实现较为复杂的技术问题。
本发明的主要构思如下:
采用一种编译器配置检测技术以及代码是否被篡改的检测技术,基于北斗亚纳秒级高精度授时技术获取代码经过编译器编译后的高精度处理延时。
具体为:公开了一种将北斗亚纳秒高精度授时技术应用于编译器版本、编译参数识别的检测装置及方法,以判断代码编译过程中编译器的配置情况;还涉及一种将北斗亚纳秒高精度授时技术应用于同一编译环境下代码是否发生篡改的检测方法,以判断在同样的编译器版本以及编译参数环境下代码是否发生了修改。
同时,基于北斗亚纳秒级高精度授时技术研发了精确到亚纳秒级定时的信号时戳生成器,用于获取代码在经过编译器编译后的高精度执行延时数据。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
本实施例提供了一种基于北斗亚纳秒级高精度授时的编译器检测装置,请参见图1,该装置包括:发包程序101、开发板102、信号时戳生成器103、收包程序104以及延时数据处理程序105,其中,被测代码已由编译器编译完成,
发包程序101,用于发送指定格式的数据包;
开发板102,用于在有数据包通过时执行加载的被测代码,其中,被测代码由编译器进行编译;
信号时戳生成器103,用于对通过开发板前和通过开发板后的数据包进行标记,生成标记有亚纳秒级时间戳的数据包,其中,通过开发板前的数据包与通过开发板后的数据包具有相同的结构;
收包程序104,用于对接收的标记有亚纳秒级时间戳的数据包进行时间差计算,获得延时数据;
延时数据处理程序105,用于根据延时数据,对编译器的配置情况进行检测。
具体来说,发包程序101设置于一台计算机(例如PC1)上,用于向另一台计算机(PC2)发送指定格式的数据包。开发板102开发板中预先加载被测代码,且当有网络数据包通过时会执行的上述被测代码,本发明中的开发板被用作加载已经被编译好了的程序的载体。被测代码是通过编译器编译好的,使用编译器并配置好编译器的编译参数对要被测试的代码进行编译,其中编译器的版本、编译参数的设置对代码进行编译后会有不同的文件结果。
在具体的实施过程中,PC1上的发包程序发送数据包经过加载有编译好的程序代码的开发板到达PC2。发包程序发送的数据包在经过开发板之前被信号时戳生成器1检测到后,信号时戳生成器1生成一个标记有此时的一个绝对时间time1(纳秒级)的数据包1;发包程序发送的数据包在经过开发板之后被信号时戳生成器2检测到后,信号时戳生成器2生成一个标记有此时的一个绝对时间time2(纳秒级)的数据包2,然后收包程序收到数据包1和数据包2后,计算数据包1上的time1和数据包2上的time2的差值,即为发包程序发送的数据包经过开发板的延时。(具体实现过程如图2所示)
收包程序是指设置在与发包程序不同的另一台计算机(PC3)的程序,主要功能是接收到数据包后取出每个数据包上的时间戳并进行时间差的计算。
需要说明的是,数据包通过开发板前和通过开发板后,结构和内容未发生变化,信号时戳生成器会在通过开发板前后分别标记一个高精度时戳后生成一个新的数据包,然后由收包程序对通过开发板前后的时戳进行时间差计算,计算延时。
延时数据处理程序和收包程序在同一台计算机上,用于对收包程序计算出延时数据进行过滤分析,尤其关注的是使用不同编译器或编译器的版本不同或编译器的编译参数不同时的代码的执行延时数据。
在一种实施方式中,收包程序具体用于:
对接收的标记有亚纳秒级时间戳的数据包进行匹配;
根据匹配的结果,计算出数据包通过开发板前与通过开发后的时间戳差值,获得延时数据。
具体来说,收包程序会接收到大量的标记有时间戳的数据包,然后通过预设匹配算法匹配出通过开发板前与通过开发板后的同一数据包,然后对该数据包进行时间戳计算。
在一种实施方式中,延时数据包括:不同编译器版本的延时数据、不同编译器参数的延时数据以及不同被测代码的延时数据。
具体来说,可以通过修改编译器的版本、编译器的参数、修改被测代码,然后通过信号时戳生成器产生不同的标记有亚纳秒级时间戳的数据包,进而通过收包程序进行时间差计算,计算出不同编译器版本的延时数据、不同编译器参数的延时数据以及不同被测代码的延时数据。
在一种实施方式中,延时数据处理程序,具体用于:
对不同编译器版本的延时数据进行分析,将不同编译器版本对应的延时进行比较,判断编译器的配置是否发生变化;
对不同编译器参数的延时数据进行分析,对不同编译器参数对应的延时进行比较,判断编译器的配置是否发生变化。
在具体实现时,选择编译器版本包括版本A和版本B,版本A会获得一个延时,版本B会获得一个延时,本发明的检测方案可以区分出来编译器版本的配置;编译器参数也类似,A参数会获得一个延时,B参数会获得一个延时,然后比较这两个延时能区分出来编译器参数的配置的改变。
在一种实施方式中,延时数据处理程序具体用于:
对不同编译器版本对应的延时差异与预设值进行比较,如果超过预设值,则判定编译器的配置发生变化;
对不同编译器参数对应的延时差异与预设值进行比较,如果超过预设值,则判定编译器的配置发生变化。
具体来说,采用本发明的延时数据处理程序对代码编译器的分析,可以通过使用同一编译器不同编译方式(修改编译器参数后,编译方式不同)对同一代码进行编译以及使用不同版本编译器对同一代码进行编译两种检测方式,对其产生的延时数据进行分析,并对时间特征进行捕获,再进一步分析编译器的配置是否发生变化。
在一种实施方式中,延时数据处理程序具体用于:
对不同编译器版本对应的延时差异与预设值进行比较,如果超过预设值,则判定编译器的配置发生变化;
对不同编译器参数对应的延时差异与预设值进行比较,如果超过预设值,则判定编译器的配置发生变化。
具体来说,如果编译器版本A对应的延时或者版本B对应的延时差异超过预设值时,则可以判定编译器的配置发生变化。不同编译器参数的情况也类似。并且,通过本发明提供的信号时戳生成器,可以将时延精度提升至纳秒级。举例来说,当预设值为200纳秒时,如果时延差异大于200纳秒,则认为编译器配置发生了变化。采用本发明的装置或方法可以检测到微小变化,提高了检测的精度。
在一种实施方式中,不同被测代码包括第一被测代码和第二被测代码,将第一被测代码作为基准代码,第一被测代码经过修改后获得第二被测代码,两段代码具备相同的功能,延时数据处理程序,还用于:
对不同被测代码的延时数据进行分析,将第二被测代码对应的延时与基准代码的延时进行比较,判断第二被测代码是否为篡改后的代码。
具体来说,可以先指定基准代码,例如将第一被测代码作为基准代码,通过本发明的装置经过实验后会得到一个延时,然后在基于基准代码进行修改后得到第二被测代码,采用同样的方式计算出一个延时,比较这两个延时的差距能判断代码是否在基准代码上进行了篡改。其中,实际应用过程中,基于基准代码,可以进行不同的修改,得到多条与基准代码功能相同的代码,第一被测代码和第二被测代码仅当作示例,本发明不对被测代码的数量做具体限定。
本发明对于同一编译器同一编译方式,对实现同一功能的两段不同程序代码进行检测,其中,一段程序代码是正常的代码,另一段代码为对其进行篡改过的程序代码,尽管同样可以实现相同功能,但相当于被嵌入了后门。当获取这两段代码的延时,将这两段代码的延时与预设标准代码的延时进行比较,当两者延时大小不相同时,则可以判断当前被测代码被篡改,否则未被修改。
为了更清楚地说明本发明提供的检测装置的有益效果,下面通过一个具体的示例,请参见图2。
步骤1,按照实施模型搭建实验设备,包括PC1、开发板、PC2、交换机、信号时戳生成器1、2、PC3,其中,PC1和PC2上设置有发包程序,PC3上设置有收包程序和延时数据处理程序。
步骤2,PC1向PC2发送可设定格式的数据包0,信号时戳生成器1和信号时戳生成器2会在数据包0进入被测开发板时,分别生成一个标记有当前绝对时间的亚纳秒级时戳的数据包1和数据包2,这两类数据包会进入PC3中收包程序进行匹配处理得到与被测代码对应的大量延时数据。
步骤3,仅改变编译器的版本,重复步骤2,得到不同版本编译器对同一段代码进行编译后的延时数据。
步骤4,仅改变编译器的编译参数如优化设置参数-O,对与步骤3中的同一代码进行编译后重复步骤2得到同一编译器不同编译参数下对同一段代码进行编译后的延时数据。
步骤5,设置至少两段代码实现同一功能,其中一段代码由另一段代码进行了一定修改获得。重复步骤2得到使用同一编译器同一编译参数对不同代码进行编译后的延时数据,其中,导致这些延时数据不同的影响因素是代码进行了修改。
步骤6,分析步骤3和步骤4中的延时数据,可以分析对代码进行编译的编译器的配置选择(版本、编译参数)对代码最终的执行延时的影响,分析步骤5的延时数据可以分析在同样的编译器环境下,代码是否被篡改。
基于同一发明构思,本申请还提供了与实施例一中基于北斗亚纳秒级高精度授时的编译器检测装置实现的检测方法,详见实施例二。
实施例二
本实施例提供了一种基于北斗亚纳秒级高精度授时的编译器检测装置实现的检测方法,请参见图4,该方法包括:
步骤S201:通过发包程序发送指定格式的数据包;
步骤S202:通过开发板在有数据包通过时执行加载的被测代码,其中,被测代码由编译器进行编译;
步骤S203:通过信号时戳生成器对通过开发板前和通过开发板后的数据包进行标记,生成标记有亚纳秒级时间戳的数据包,其中,通过开发板前的数据包与通过开发板后的数据包具有相同的结构;
步骤S204:通过收包程序对接收的标记有亚纳秒级时间戳的数据包进行时间差计算,获得延时数据;
步骤S205:通过延时数据处理程序根据延时数据,对编译器的配置情况进行检测。
在一种实施方式中,所述方法还包括:
设置至少两段代码实现同一功能,其中,一段代码由另一段代码进行一定修改获得,将其中一段代码作为基准代码;
通过延时数据处理程序对不同被测代码的延时数据进行分析,将被测代码对应的延时与基准代码的延时进行比较,判断被测代码是否为篡改后的代码。
总体来说,本发明提供的检测装置及方法,主要构思如图3所示,首先,采用配置好编译器的编译参数得编译器对被测代码进行编译,其中编译器的版本、编译参数的设置对代码进行编译后会有不同的文件结果;然后,通过信号时戳生成器生成标记有时间的数据包,接着,分析不同编译环境下或者相同编译环境下不同被测代码对应的延时数据,分别从分析编译器和分析代码两个方面进行检测,其中,分析编译器包括编译器的版本和配置参数,分析代码包括判断代码是否被篡改。
由于本发明实施例二所介绍的方法,为基于本发明实施例一中基于北斗亚纳秒级高精度授时的编译器检测装置所实现的方法,故而基于本发明实施例一所介绍的装置,本领域所属人员能够了解该方法的具体实施过程,故而在此不再赘述。凡是基于本发明实施例一的装置所采用的方法都属于本发明所欲保护的范围。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (8)

1.一种基于北斗亚纳秒级高精度授时的编译器检测装置,其特征在于,该装置包括:信号时戳生成器、开发板、发包程序、收包程序以及延时数据处理程序,其中,
发包程序,用于发送指定格式的数据包;
开发板,用于在有数据包通过时执行加载的被测代码,其中,被测代码由编译器进行编译;
信号时戳生成器,用于对通过开发板前和通过开发板后的数据包进行标记,生成标记有亚纳秒级时间戳的数据包,其中,通过开发板前的数据包与通过开发板后的数据包具有相同的结构;
收包程序,用于对接收的标记有亚纳秒级时间戳的数据包进行时间差计算,获得延时数据;
延时数据处理程序,用于根据延时数据,对编译器的配置情况进行检测,具体包括:通过使用同一编译器不同编译方式对同一代码进行编译以及使用不同版本编译器对同一代码进行编译两种检测方式,对其产生的延时数据进行分析,并对时间特征进行捕获,再进一步分析编译器的配置是否发生变化。
2.如权利要求1所述的装置,其特征在于,收包程序,具体用于:
对接收的标记有亚纳秒级时间戳的数据包进行匹配;
根据匹配的结果,计算出数据包通过开发板前与通过开发后的时间戳差值,获得延时数据。
3.如权利要求1所述的装置,其特征在于,延时数据包括:不同编译器版本的延时数据、不同编译器参数的延时数据以及不同被测代码的延时数据。
4.如权利要求3所述的装置,其特征在于,延时数据处理程序,具体用于:
对不同编译器版本的延时数据进行分析,将不同编译器版本对应的延时进行比较,判断编译器的配置是否发生变化;
对不同编译器参数的延时数据进行分析,对不同编译器参数对应的延时进行比较,判断编译器的配置是否发生变化。
5.如权利要求4所述的装置,其特征在于,延时数据处理程序具体用于:
对不同编译器版本对应的延时差异与预设值进行比较,如果超过预设值,则判定编译器的配置发生变化;
对不同编译器参数对应的延时差异与预设值进行比较,如果超过预设值,则判定编译器的配置发生变化。
6.如权利要求3所述的装置,其特征在于,不同被测代码包括第一被测代码和第二被测代码,将第一被测代码作为基准代码,第一被测代码经过修改后获得第二被测代码,两段代码具备相同的功能,延时数据处理程序,还用于:
对不同被测代码的延时数据进行分析,将第二被测代码对应的延时与基准代码的延时进行比较,判断第二被测代码是否为篡改后的代码,具体为:当获取第一被测代码和第二被测代码的延时,将这两段代码的延时与预设标准代码的延时进行比较,当两者延时大小不相同时,判断当前被测代码被篡改,否则未被修改。
7.一种基于权利要求1至权利要求6中任一项权利要求的装置的编译器检测方法,其特征在于,该方法包括:
通过发包程序发送指定格式的数据包;
通过开发板在有数据包通过时执行加载的被测代码,其中,被测代码由编译器进行编译;
通过信号时戳生成器对通过开发板前和通过开发板后的数据包进行标记,生成标记有亚纳秒级时间戳的数据包,其中,通过开发板前的数据包与通过开发板后的数据包具有相同的结构;
通过收包程序对接收的标记有亚纳秒级时间戳的数据包进行时间差计算,获得延时数据;
通过延时数据处理程序根据延时数据,对编译器的配置情况进行检测。
8.如权利要求7所述的方法,其特征在于,所述方法还包括:
设置至少两段代码实现同一功能,其中,一段代码由另一段代码进行一定修改获得,将另一段代码作为基准代码;
通过延时数据处理程序对不同被测代码的延时数据进行分析,将被测代码对应的延时与基准代码的延时进行比较,判断被测代码是否为篡改后的代码,具体为:当获取基准代码和被测代码的延时,将这两段代码的延时与预设标准代码的延时进行比较,当两者延时大小不相同时,判断当前被测代码被篡改,否则未被修改。
CN201910339090.XA 2019-04-25 2019-04-25 一种基于北斗亚纳秒级高精度授时的编译器检测装置及方法 Active CN110109673B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910339090.XA CN110109673B (zh) 2019-04-25 2019-04-25 一种基于北斗亚纳秒级高精度授时的编译器检测装置及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910339090.XA CN110109673B (zh) 2019-04-25 2019-04-25 一种基于北斗亚纳秒级高精度授时的编译器检测装置及方法

Publications (2)

Publication Number Publication Date
CN110109673A CN110109673A (zh) 2019-08-09
CN110109673B true CN110109673B (zh) 2020-10-30

Family

ID=67486689

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910339090.XA Active CN110109673B (zh) 2019-04-25 2019-04-25 一种基于北斗亚纳秒级高精度授时的编译器检测装置及方法

Country Status (1)

Country Link
CN (1) CN110109673B (zh)

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110106716A (ko) * 2010-03-23 2011-09-29 삼성전자주식회사 프로그램 컴파일러, 설치 장치, 및 설치 방법
CN102346710B (zh) * 2011-10-13 2015-04-29 北京航空航天大学 一种基于动态插桩技术的数据包处理时延分析方法
CN105354119A (zh) * 2015-12-09 2016-02-24 浪潮电子信息产业股份有限公司 一种rack-arm服务器测试的方法
CN105893105A (zh) * 2016-03-29 2016-08-24 乐视控股(北京)有限公司 一种针对多个编译平台的编译***和方法
CN106301655B (zh) * 2016-08-18 2018-04-10 清华大学 主端设备、从端设备以及主端延时调整同步定时***
CN106325970A (zh) * 2016-10-17 2017-01-11 宁德时代新能源科技股份有限公司 编译方法和编译***
US10298345B2 (en) * 2017-01-13 2019-05-21 Globalfoundries Inc. Clock synchronizaton using codeword marker
CN108199913B (zh) * 2017-12-18 2020-10-20 瑞斯康达科技发展股份有限公司 一种实现时延测试的方法及设备
CN108631900B (zh) * 2018-07-24 2020-10-30 北京新宇航星科技有限公司 高精度时间戳的前置打戳方法及***

Also Published As

Publication number Publication date
CN110109673A (zh) 2019-08-09

Similar Documents

Publication Publication Date Title
CN110737899A (zh) 一种基于机器学习的智能合约安全漏洞检测方法
CN101714119A (zh) 基于二进制程序的测试数据生成器和方法
CN111259399B (zh) 用于web应用的动态检测漏洞攻击的方法及***
CN107193732B (zh) 一种基于路径比对的校验函数定位方法
CN104133771B (zh) 一种测试方法及装置
CN110196801B (zh) 一种基于代码覆盖率的测试方法及装置
CN106155897B (zh) 一种业务处理方法及装置
CN104657634A (zh) 盗版应用的识别方法和装置
CN111181805B (zh) 一种基于测试用例的微服务测试挡板生成方法及***
CN109255240B (zh) 一种漏洞处理方法和装置
CN105117341A (zh) 一种基于动态符号执行的分布式自动测试案例生成方法
CN103823665B (zh) 一种sdk活跃度分析方法、网络服务器及***
CN110781073A (zh) 安全测试方法和***
CN112732563A (zh) 接口脚本测试日志提取方法、装置、终端及存储介质
Paiva¹ et al. Experimental evaluation of code smell detection tools
CN115391230A (zh) 一种测试脚本生成、渗透测试方法、装置、设备及介质
CN110109673B (zh) 一种基于北斗亚纳秒级高精度授时的编译器检测装置及方法
CN114860573A (zh) 软件成分的分析方法、装置、电子设备及存储介质
CN109873822B (zh) 基于北斗亚纳秒级高精度授时的防火墙规则变化的检测装置及方法
CN109670311A (zh) 基于高级语义的恶意代码分析与检测方法
KR20140088963A (ko) 애플리케이션 개발을 위한 런타임 에러 테스팅 시스템 및 방법
CN106557412A (zh) 一种模糊测试的方法及装置
KR20180060616A (ko) Rba기반 통합 취약점 진단 방법
CN109918870B (zh) 基于北斗亚纳秒级高精度授时的程序代码执行延时测量装置及方法
CN116522345A (zh) 漏洞挖掘方法、装置、设备及可读存储介质

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
GR01 Patent grant
GR01 Patent grant