CN111525972B - 一种基于二次多项式的时间同步方法 - Google Patents

一种基于二次多项式的时间同步方法 Download PDF

Info

Publication number
CN111525972B
CN111525972B CN202010179554.8A CN202010179554A CN111525972B CN 111525972 B CN111525972 B CN 111525972B CN 202010179554 A CN202010179554 A CN 202010179554A CN 111525972 B CN111525972 B CN 111525972B
Authority
CN
China
Prior art keywords
packet
state
client
time
server
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
CN202010179554.8A
Other languages
English (en)
Other versions
CN111525972A (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.)
XUZHOU STOMATOLOGICAL HOSPITAL
Xuzhou Medical University
Original Assignee
XUZHOU STOMATOLOGICAL HOSPITAL
Xuzhou Medical University
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 XUZHOU STOMATOLOGICAL HOSPITAL, Xuzhou Medical University filed Critical XUZHOU STOMATOLOGICAL HOSPITAL
Priority to CN202010179554.8A priority Critical patent/CN111525972B/zh
Publication of CN111525972A publication Critical patent/CN111525972A/zh
Application granted granted Critical
Publication of CN111525972B publication Critical patent/CN111525972B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658Clock or time synchronisation among packet nodes
    • H04J3/0661Clock or time synchronisation among packet nodes using timestamps
    • H04J3/0667Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

本发明公开了一种基于二次多项式的时间同步方法,包括客户端、服务器端两部分,具体实现方法如下:首先,本方法为客户端与服务器端定义若干种状态,在进行时间同步时,根据不同状态发送不同数据包;其次,客户端无法直接从服务器获取明文的时间数据,需要对时间数据进行特定公式的计算才可以获得时间信息;最终,客户端根据获得的时间信息与服务器端进行时间同步。本方法在时间同步过程中,不使用明文时间数据进行传输,增加了服务器端的信息安全,并且服务器端与客户端进行时间数据封装与解析时,使用二次多项式的方法,避免复杂的加密解密过程,降低服务器端与客户端的性能功耗。

Description

一种基于二次多项式的时间同步方法
技术领域
本发明涉及计算机时间同步技术领域,具体是一种基于二次多项式的时间同步方法。
背景技术
目前,在计算机领域时间同步绝大部分使用网络时间协议(NTP),该协议可以提供高精准度的时间校正,但是该协议在时间同步过程中,使用明文数据进行传输校对,这会大大降低服务器安全性。
发明内容
为了克服上述现有技术的缺点,本发明提供一种基于二次多项式的时间同步方法,有效提高了在时间同步时服务器数据传输的安全性。
本发明是以如下技术方案实现的:一种基于二次多项式的时间同步方法,其特征在于:包括客户端、服务器端两部分;
首先,为客户端与服务器端定义若干种状态,在进行时间同步时,根据不同状态发送不同数据包;
其次,客户端无法直接从服务器获取明文的时间数据,需要对时间数据进行二次多项式计算可以获得时间信息;
最终,客户端根据获得的时间信息与服务器端进行时间同步。
优选的,客户端有5种状态,分别是:Down状态、Init状态、Active状态、Exchange状态、Full状态;具体每种状态设计如下:
(1)Down状态:客户端尚未开启的时间同步协议;
(2)Init状态:客户端开启的时间同步协议,在该状态下,客户端主动向服务器端发送时间同步请求;
(3)Active状态:当客户端在Init状态下,接收到服务器端返回的Ready包时,客户端从Init状态变为该状态,若接收到服务器端返回的Wait包,客户端状态不发生改变,仍为Init状态;
(4)Exchange状态:当客户端在Active状态下,向服务器端发送日期请求Request-Date包时,客户端变为该状态,在该状态下,客户端接收到服务器返回的Offer-Date包后,再次向服务器发送时间请求Request-Time包,服务器端接收到Request-Time包后,返回Offer-Time包给客户端;
(5)Full状态:当客户端成功获取到日期与时间数据后,通过特定公式计算出时间,并同步完成后,进入该状态,在该状态下,表示客户端已经与服务器时间同步完成,默认30分钟后客户端重新进入Init状态并重新进行时间同步。
优选的,服务器端有3种状态,分别是:Down状态、Ready状态、Exchange状态;具体每种状态设计如下:
(1)Down状态:服务器端尚未开启本发明的时间同步协议;
(2)Ready状态:服务器端开启本发明的时间同步协议,在该状态下,表示服务器端可以进行时间同步,若接收到客户端发送的Hello包,则会回复Ready包;
(3)Exchange状态:当服务器端在Ready状态下,回复过Ready包后,进入该状态,在该状态下,若服务器端收到客户端发送的Request-Date包与Request-Time包,会回复对应的Offer-Date包与Offer-Time包,若收到客户端发送的Hello包,则会回复Wait包,若对应一组Offer-Date包与Offer-Time包发送完毕后,则服务器端变回Ready状态。
优选的,各种状态中,其数据包格式如下:
(1)Hello包:数据包类型-固定值01代表本包类型、源IP地址、目标IP地址;
(2)Ready包:数据包类型-固定值02代表本包类型、状态类型(固定值ready)、源IP地址、目标IP地址;
(3)Wait包:数据包类型-固定值03代表本包类型、状态类型(固定值wait)、说明、源IP地址、目标IP地址;
(4)Request-Date包:数据包类型-固定值04代表本包类型、请求日期字段、源IP地址、目标IP地址;
(5)Offer-Date包:数据包类型-固定值05代表本包类型、源IP地址、目标IP地址、日期数据;
(6)Request-Time包:数据包类型-固定值06代表本包类型、请求时间字段、源IP地址、目标IP地址;
(7)Offer-Time包:数据包类型-固定值07代表本包类型、源IP地址、目标IP地址、时间数据。
优选的,日期同步计算方法如下:
服务器端利用二次多项式y=ax2+bx+c来进行对日期数据的封装,其中a表示年份,b表示月份,c表示日,分别随机3个x值,根据公式分别计算出y值,根据x值与y值以(x,y)的形式放入Offer-Date包中的日期数据字段返回给客户端,客户端接收到3组(x,y)后,分别将x值与y值带入公式中,通过计算,可以得到a、b、c,即年、月、日。
优选的,时间同步计算方法如下:
服务器端利用二次多项式y=mx2+nx+q来进行对时间数据的封装,其中m表示小时,n表示分钟,q表示秒,分别随机3个x值,根据公式分别计算出y值,根据x值与y值以(x,y)的形式放入Offer-Time包中的时间数据字段返回给客户端,客户端接收到3组(x,y)后,分别将x值与y值带入公式中,通过计算,可以得到m、n、q,即时、分、秒。
与已有技术方案相比,本发明的有益效果:
(1)在时间同步过程中,不使用明文时间数据进行传输,增加了服务器端的信息安全;
(2)服务器端与客户端进行时间数据封装与解析时,使用二次多项式的方法,避免复杂的加密解密过程,降低服务器端与客户端的性能功耗。
附图说明
下面结合附图对本发明作进一步说明。
图1为本发明的整体流程图;
图2为本发明中客户端状态示意图;
图3为本发明中服务器端状态示意图;
图4为本发明中Hello包格式示意图;
图5为本发明中Ready包格式示意图;
图6为本发明中Wait包格式示意图;
图7为本发明中Request-Date包格式示意图;
图8为本发明中Offer-Date包格式示意图;
图9为本发明中Request-Time包格式示意图;
图10为本发明中Offer-Time包格式示意图。
具体实施方式
如图1所示一种基于二次多项式的时间同步方法及其通信协议,包括客户端、服务器端两部分,具体实现方法如下:首先,本方法为客户端与服务器端定义若干种状态,在进行时间同步时,根据不同状态发送不同数据包。其次,客户端无法直接从服务器获取明文的时间数据,需要对时间数据进行特定公式的计算才可以获得时间信息。最终,客户端根据获得的时间信息与服务器端进行时间同步。
如图2所示,本发明中客户端有5种状态,客户端有5种状态,分别是:Down状态、Init状态、Active状态、Exchange状态、Full状态,具体每种状态设计如下:
(1)Down状态:客户端尚未开启的时间同步协议;
(2)Init状态:客户端开启的时间同步协议,在该状态下,客户端主动向服务器端发送时间同步请求;默认每10秒向服务器发送一次Hello包;
(3)Active状态:当客户端在Init状态下,接收到服务器端返回的Ready包时,客户端从Init状态变为该状态,若接收到服务器端返回的Wait包,客户端状态不发生改变,仍为Init状态;
(4)Exchange状态:当客户端在Active状态下,向服务器端发送日期请求Request-Date包时,客户端变为该状态,在该状态下,客户端接收到服务器返回的Offer-Date包后,再次向服务器发送时间请求Request-Time包,服务器端接收到Request-Time包后,返回Offer-Time包给客户端;
(5)Full状态:当客户端成功获取到日期与时间数据后,通过特定公式计算出时间,并同步完成后,进入该状态,在该状态下,表示客户端已经与服务器时间同步完成,默认30分钟后客户端重新进入Init状态并重新进行时间同步。如图3所示,服务器端有3种状态,分别是:Down状态、Ready状态、Exchange状态;具体每种状态设计如下:
(1)Down状态:服务器端尚未开启本发明的时间同步协议;
(2)Ready状态:服务器端开启本发明的时间同步协议,在该状态下,表示服务器端可以进行时间同步,若接收到客户端发送的Hello包,则会回复Ready包;
(3)Exchange状态:当服务器端在Ready状态下,回复过Ready包后,进入该状态,在该状态下,若服务器端收到客户端发送的Request-Date包与Request-Time包,会回复对应的Offer-Date包与Offer-Time包,若收到客户端发送的Hello包,则会回复Wait包,若对应一组Offer-Date包与Offer-Time包发送完毕后,则服务器端变回Ready状态。
如图4-10所示,本发明中上述状态中,数据包格式如下:
(1)Hello包:数据包类型(固定值01代表本包类型)、源IP地址、目标IP地址;
(2)Ready包:数据包类型(固定值02代表本包类型)、状态类型(固定值ready)、源IP地址、目标IP地址;
(3)Wait包:数据包类型(固定值03代表本包类型)、状态类型(固定值wait)、说明、源IP地址、目标IP地址;
(4)Request-Date包:数据包类型(固定值04代表本包类型)、请求日期字段、源IP地址、目标IP地址;
(5)Offer-Date包:数据包类型(固定值05代表本包类型)、源IP地址、目标IP地址、日期数据(3组(x,y)形式的数据);
(6)Request-Time包:数据包类型(固定值06代表本包类型)、请求时间字段、源IP地址、目标IP地址;
(7)Offer-Time包:数据包类型(固定值07代表本包类型)、源IP地址、目标IP地址、时间数据(3组(x,y)形式的数据)。
日期同步计算方法如下:
服务器端利用二次多项式y=ax2+bx+c来进行对日期数据的封装,其中a表示年份,b表示月份,c表示日,分别随机3个x值,根据公式分别计算出y值,根据x值与y值以(x,y)的形式放入Offer-Date包中的日期数据字段返回给客户端,客户端接收到3组(x,y)后,分别将x值与y值带入公式中,通过计算,可以得到a、b、c,即年、月、日。
例如,若日期为2019年12月25日,则公式为y=2019x2+12x+25,随机3个x值,分别为x=1、x=2、x=3,带入公式中计算,可得到y=2056、y=8125、y=18232,服务器端将x值与y值进行封装为(1,2056)(2,8125)(3,18232),放入Offer-Date包中的日期数据字段返回给客户端,客户端按照格式进行解析,将x值y值带入公式中,通过计算,可以得到a=2019、b=12、c=25,即得到日期数据2019年12月25日。
时间同步计算方法如下:
服务器端利用二次多项式y=mx2+nx+q来进行对时间数据的封装,其中m表示小时,n表示分钟,q表示秒,分别随机3个x值,根据公式分别计算出y值,根据x值与y值以(x,y)的形式放入Offer-Time包中的时间数据字段返回给客户端,客户端接收到3组(x,y)后,分别将x值与y值带入公式中,通过计算,可以得到m、n、q,即时、分、秒。
例如,若时间为13点36分18秒,则公式为y=13x2+36x+18,随机3个x值,分别为x=1、x=2、x=3,带入公式中计算,可得到y=67、y=142、y=243,服务器端将x值与y值进行封装为(1,67)(2,142)(3,243),放入Offer-Time包中的时间数据字段返回给客户端,客户端按照格式进行解析,将x值y值带入公式中,通过计算,可以得到m=13、n=36、q=18,即得到时间数据13点36分18秒。
由上述技术方案可知,本方法在时间同步过程中,不使用明文时间数据进行传输,增加了服务器端的信息安全,并且服务器端与客户端进行时间数据封装与解析时,使用二次多项式的方法,避免复杂的加密解密过程,降低服务器端与客户端的性能功耗。

Claims (5)

1.一种基于二次多项式的时间同步方法,其特征在于:包括客户端、服务器端两部分;
首先,为客户端与服务器端定义若干种状态,在进行时间同步时,根据不同状态发送不同数据包;
其次,客户端无法直接从服务器获取明文的时间数据,需要对时间数据进行二次多项式计算可以获得时间信息;
最终,客户端根据获得的时间信息与服务器端进行时间同步;
客户端有5种状态,分别是:Down状态、Init状态、Active状态、Exchange状态、Full状态;具体每种状态设计如下:
(1)Down状态:客户端尚未开启的时间同步协议;
(2)Init状态:客户端开启的时间同步协议,在该状态下,客户端主动向服务器端发送时间同步请求;
(3)Active状态:当客户端在Init状态下,接收到服务器端返回的Ready包时,客户端从Init状态变为该状态,若接收到服务器端返回的Wait包,客户端状态不发生改变,仍为Init状态;
(4)Exchange状态:当客户端在Active状态下,向服务器端发送日期请求Request-Date包时,客户端变为该状态,在该状态下,客户端接收到服务器返回的Offer-Date包后,再次向服务器发送时间请求Request-Time包,服务器端接收到Request-Time包后,返回Offer-Time包给客户端;
(5)Full状态:当客户端成功获取到日期与时间数据后,通过特定公式计算出时间,并同步完成后,进入该状态,在该状态下,表示客户端已经与服务器时间同步完成,默认30分钟后客户端重新进入Init状态并重新进行时间同步。
2.根据权利要求1所述的一种基于二次多项式的时间同步方法,其特征在于:服务器端有3种状态,分别是:Down状态、Ready状态、Exchange状态;具体每种状态设计如下:
(1)Down状态:服务器端尚未开启时间同步协议;
(2)Ready状态:服务器端开启时间同步协议,在该状态下,表示服务器端可以进行时间同步,若接收到客户端发送的Hello包,则会回复Ready包;
(3)Exchange状态:当服务器端在Ready状态下,回复过Ready包后,进入该状态,在该状态下,若服务器端收到客户端发送的Request-Date包与Request-Time包,会回复对应的Offer-Date包与Offer-Time包,若收到客户端发送的Hello包,则会回复Wait包,若对应一组Offer-Date包与Offer-Time包发送完毕后,则服务器端变回Ready状态。
3.根据权利要求2所述的一种基于二次多项式的时间同步方法,其特征在于:各种状态中,其数据包格式如下:
(1)Hello包:数据包类型-固定值01代表本包类型、源IP地址、目标IP地址;
(2)Ready包:数据包类型-固定值02代表本包类型、状态类型、源IP地址、目标IP地址;
(3)Wait包:数据包类型-固定值03代表本包类型、状态类型、说明、源IP地址、目标IP地址;
(4)Request-Date包:数据包类型-固定值04代表本包类型、请求日期字段、源IP地址、目标IP地址;
(5)Offer-Date包:数据包类型-固定值05代表本包类型、源IP地址、目标IP地址、日期数据;
(6)Request-Time包:数据包类型-固定值06代表本包类型、请求时间字段、源IP地址、目标IP地址;
(7)Offer-Time包:数据包类型-固定值07代表本包类型、源IP地址、目标IP地址、时间数据。
4.根据权利要求1所述的一种基于二次多项式的时间同步方法,其特征在于:日期同步计算方法如下:
服务器端利用二次多项式y=ax2+bx+c来进行对日期数据的封装,其中a表示年份,b表示月份,c表示日,分别随机3个x值,根据公式分别计算出y值,根据x值与y值以(x,y)的形式放入Offer-Date包中的日期数据字段返回给客户端,客户端接收到3组(x,y)后,分别将x值与y值带入公式中,通过计算,可以得到a、b、c,即年、月、日。
5.根据权利要求1所述的一种基于二次多项式的时间同步方法,其特征在于:时间同步计算方法如下:
服务器端利用二次多项式y=mx2+nx+q来进行对时间数据的封装,其中
m表示小时,n表示分钟,q表示秒,分别随机3个x值,根据公式分别计算出y值,根据x值与y值以(x,y)的形式放入Offer-Time包中的时间数据字段返回给客户端,客户端接收到3组(x,y)后,分别将x值与y值带入公式中,通过计算,可以得到m、n、q,即时、分、秒。
CN202010179554.8A 2020-03-16 2020-03-16 一种基于二次多项式的时间同步方法 Active CN111525972B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010179554.8A CN111525972B (zh) 2020-03-16 2020-03-16 一种基于二次多项式的时间同步方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010179554.8A CN111525972B (zh) 2020-03-16 2020-03-16 一种基于二次多项式的时间同步方法

Publications (2)

Publication Number Publication Date
CN111525972A CN111525972A (zh) 2020-08-11
CN111525972B true CN111525972B (zh) 2022-12-30

Family

ID=71910375

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010179554.8A Active CN111525972B (zh) 2020-03-16 2020-03-16 一种基于二次多项式的时间同步方法

Country Status (1)

Country Link
CN (1) CN111525972B (zh)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102487357A (zh) * 2010-12-03 2012-06-06 杭州华三通信技术有限公司 用于主备倒换后持续转发的控制方法和控制装置
CN106160995B (zh) * 2015-04-21 2019-04-16 郑珂威 基于系数映射变换的多项式完全同态加密方法及系统
CN107395312B (zh) * 2017-09-19 2019-03-19 电信科学技术第五研究所有限公司 一种安全网络时间同步方法及装置
CN107888315B (zh) * 2017-12-04 2019-06-18 清华大学 一种时间同步方法

Also Published As

Publication number Publication date
CN111525972A (zh) 2020-08-11

Similar Documents

Publication Publication Date Title
CN108965484B (zh) 一种物联网数据的传输方法、系统及终端
US20230273912A1 (en) Data processing method and apparatus for blockchain network, computer device, and computer-readable storage medium
US5430709A (en) Network monitoring method and apparatus
EP3211852A1 (en) Ssh protocol-based session parsing method and system
CN111917727A (zh) 基于5G和WiFi的电力物联网安全智能图传系统及方法
WO2021022794A1 (zh) 基于rdma的数据传输方法、网卡、服务器及介质
CN111083161A (zh) 数据传输的处理方法及装置、物联网设备
WO2018107606A1 (zh) 物联网中消息传递方法和装置
WO2003055165A2 (en) Simplified stateless tcp/ip protocol
CN110011892A (zh) 一种虚拟专用网络的通信方法及相关装置
CN114185582A (zh) 基于quic协议的汽车软件在线升级系统及方法
CN111525972B (zh) 一种基于二次多项式的时间同步方法
CN110868447B (zh) 一种多火箭并发测控系统及其工作方法
CN109286506B (zh) 一种流量计费的方法、系统及装置
CN112612816B (zh) 以太坊联盟链的业务结果查询方法、装置、设备及介质
WO2024022022A1 (zh) 一种多网卡融合通信方法及通信系统
CN112702338B (zh) Ike报文获取方法及装置
CN110912904B (zh) 恶意设备识别方法、装置、存储介质和计算机设备
CN113037834A (zh) 基于分布式即时推送的Web页面状态更新方法及装置
CN111030914B (zh) 一种数据传输方法及数据传输系统
CN106612307B (zh) 一种永远在线业务的实现方法及装置
CN114422227B (zh) 一种基于网络安全的数据采集分析系统
CN111901126B (zh) 一种基于v2x协议栈网络层避免解密验签模块耗时的方法
JP2002026927A (ja) カプセリング方法及び装置並びにプログラム記録媒体
CN116233060B (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