通信集线器及其应用程序间的信息验证方法与流程

文档序号:13909934阅读:170来源:国知局
通信集线器及其应用程序间的信息验证方法与流程
本发明涉及一种信息验证机制,且特别涉及一种通信集线器及其应用程序间的信息验证方法。
背景技术
:一般而言,在操作系统中的各应用程序中的数据不允许其他应用程序来存取。这是为了防止私人数据或机密数据被其他应用程序存取,因此其他应用程序无法直接经由共享的存储器来取得数据。为了能使不同的应用程序能够互相存取资源并进行协调工作,则利用行程间通信(inter-processcommunication,ipc)技术来传送数据或信号。然而,任何的恶意程序能够伪装成有效的应用程序并利用ipc来传送信息以取得使用者的隐私。因此,需要一种通信集线器及其应用程序间的信息验证方法来解决上述问题。技术实现要素:本发明提供一通信集线器及其应用程序间的信息验证方法,利用每一个应用程序的密钥来对在每个应用程序间的信息传送进行验证,以防止恶意程序的不法存取。本发明的应用程序间的信息验证方法,该信息验证方法用于一通信集线器,其中在该通信集线器中安装有一第一应用程序及一第二应用程序,该信息验证方法包括:在一开机过程中,执行一开机程序对一第一应用程序及一第二应用程序分别产生一第一密钥及一第二密钥,并传送该第一密钥及该第二密钥至该第一应用程序以及传送该第一密钥及该第二密钥至该第二应用程序,使得该第一应用程序与该第二应用程序在进行信息传送时夹带对应的密钥;在执行一操作系统的情况下,当该第一应用程序接收到来自该第二应用程序的一信息时,依据该信息中所夹带的密钥来验证该信息是否有效;在判定该信息为有效时,该第一应用程序根据该信息回传一响应信息至该第二应用程序;以及在判定该信息为无效时,忽略或丢弃该信息。本发明所提及的通信集线器,该通信集线器包括:一储存单元,该储存单元储存一第一应用程序与一第二应用程序,其中该第一应用程序及该第二应用程序分别对应至一第一设备与一第二设备;以及一处理器,该处理器耦接至该储存单元;其中,在开机过程中,该处理器执行一开机程序对该第一应用程序及该第二应用程序分别产生一第一密钥及一第二密钥,并传送该第一密钥及该第二密钥至该第一应用程序以及传送该第一密钥及该第二密钥至该第二应用程序,使得该第一应用程序与该第二应用程序在进行信息传送时夹带对应的密钥;在该处理器执行一操作系统的情况下,当该第一应用程序接收到来自该第二应用程序的一信息时,该第一应用程序依据该信息中所夹带的密钥来验证该信息是否有效;在判定该信息为有效时,该第一应用程序根据该信息来回传一响应信息至该第二应用程序;以及在判定该信息为无效时,该第一应用程序忽略或丢弃该信息。在本发明的一实施例中,上述通信集线器还包括:本地通信单元,耦接至处理器,并与第一设备及第二设备进行连接,其中第一应用程序与第二应用程序通过本地通信单元来获得第一设备及第二设备各自的数据。在本发明的一实施例中,上述通信集线器还包括:远程通信单元,耦接至处理器,并与服务器进行连接,其中第一应用程序与第二应用程序通过远程通信单元,将所获得的第一设备及第二设备各自的数据传送至服务器。在本发明的一实施例中,在开机过程中,处理器传送第一密钥及第二密钥至第一应用程序以及传送第一密钥及第二密钥至第二应用程序之后,储存第一密钥及第二密钥至第一应用程序及第二应用程序所对应的储存空间,使得第一应用程序及第二应用程分别皆具有第一密钥及第二密钥。在本发明的一实施例中,上述信息的标头包括记录来源端密钥的字段。在执行操作系统的情况下,当第一应用程序接收到来自第二应用程序的信息时,第一应用程序判断信息中所夹带的来源端密钥是否为第二密钥;若信息中所夹带的来源端密钥与第二密钥不同,则第一应用程序判定信息为无效;若信息中所夹带的来源端密钥与第二密钥相同,则第一应用程序判定该信息为有效。在本发明的一实施例中,上述信息的标头包括记录目的端密钥的字段。在执行操作系统的情况下,当第一应用程序接收到来自第二应用程序的信息时,第一应用程序判断信息中所夹带的目的端密钥是否为该第一密钥;若信息中所夹带的目的端密钥与第一密钥相同,则第一应用程序判定信息为有效;若信息中所夹带的目的端密钥与第一密钥不同,则第一应用程序判定信息为无效。在本发明的一实施例中,上述信息的标头包括记录来源端密钥的字段以及记录目的端密钥的字段。在执行操作系统的情况下,当第一应用程序接收到来自第二应用程序的信息时,第一应用程序判断信息中所夹带的目的端密钥与来源端密钥是否分别为第一密钥与第二密钥;若信息中所夹带的目的端密钥与来源端密钥分别为第一密钥与第二密钥,则判定信息为有效;以及若信息中所夹带的目的端密钥与第一密钥不同,或者来源端密钥与第二密钥不相同,则判定信息为无效。在本发明的一实施例中,上述第一密钥及第二密钥分别为一第一随机数及一第二随机数。在本发明的一实施例中,所述信息的格式为行程间通信(inter-processcommunication,ipc)格式。基于上述,本发明在开机过程中给予每一个应用程序对应的一个密钥,利用这些密钥来对在每个应用程序间的信息传送进行验证,以防止恶意程序的不法存取。为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附附图作详细说明如下。附图说明图1是依照本发明一实施例的通信集线器的框图。图2是依照本发明一实施例的应用程序间的信息验证方法的流程图。图3是依照本发明一实施例的判断信息是否有效的方法流程图。主要组件符号说明:100通信集线器110处理器120储存单元130存储器140远程通信单元150本地通信单元s205~s225应用程序间的信息验证方法各步骤s305~s325判断信息是否有效的方法各步骤具体实施方式图1是依照本发明一实施例的通信集线器的框图。请参照图1,通信集线器100包括处理器110、储存单元120、存储器130、远程通信单元140以及本地通信单元150。处理器110耦接至储存单元120、存储器130、远程通信单元140以及本地通信单元150。处理器110例如为中央处理单元(centralprocessingunit,cpu)、图像处理单元(graphicprocessingunit,gpu)、物理处理单元(physicsprocessingunit,ppu)、可编程的微处理器(microprocessor)、嵌入式控制芯片、数字信号处理器(digitalsignalprocessor,dsp)、特殊应用集成电路(applicationspecificintegratedcircuits,asic)或其他类似装置。处理器110用来执行通信集线器100中的硬件、固件以及处理软件内的数据。储存单元120例如为只读存储器(readonlymemory,rom)或闪存(flashmemory)。储存单元120中储存了开机固件、多个应用程序、随机数生成模块、操作系统等。开机固件例如为基本输入输出系统(basicinputoutputsystem,bios)。存储器130例如为随机存取存储器(randomaccessmemory,ram)。在此,通信集线器100中所有构件的驱动程序以及操作系统等等,都会先载入(load)到存储器130,以供处理器110读取。例如,通过存储器映像(shadowram)的方式将开机固件载入至存储器130中,以供处理器110来存取。远程通信单元140以及本地通信单元150为支持有线传输协议或无线传输协议的硬件,使得通信集线器100能够与远程装置或外部装置进行连接。远程通信单元140,例如为3g/4g(thirdgeneration/fourthgeneration)通信单元,本地通信单元150例如为以太网络、蓝牙、zigbee或wi-fi通信单元等。在一实施例中,本地通信单元150与外部的至少一个设备连接。而储存单元120中的应用程序或部分应用程序通过本地通信单元150来获得设备的数据。在另一实施例中,每一个设备皆有对应的一个应用程序,通信集线器100利用各应用程序来与各设备进行沟通。所述设备例如为电子电表、电子水表、电子瓦斯表以及其他电子家用设备等;特别说明的是,上述设备与通信集线器100沟通的数据可能是机密数据,因此利用本发明的应用程序间的信息验证方法可达到保护机密数据的目的。远程通信单元140与服务器进行连接。储存单元120中的各应用程序通过远程通信单元140,将所获得的各设备的数据传送至服务器。在其他实施例中,随机数生成模块亦可以由硬件实现,耦接于处理器110。在此并不限制随机数生成器为软件或硬件。图2是依照本发明一实施例的应用程序间的信息验证方法的流程图。在此,不一定要将通信集线器100中全部的应用程序都使用下述信息验证方法,可视情况来决定哪些应用程序需要使用下述信息验证方法。例如,可以针对用来处理较机密或私人的信息的应用程序即可。请同时参照图1及图2,在步骤s205中,在开机过程中,处理器110执行开机程序并对第一应用程序及第二应用程序分别产生第一密钥及第二密钥,并传送第一密钥及第二密钥至第一应用程序以及传送第一密钥及第二密钥至第二应用程序,使得第一应用程序与第二应用程序在进行信息传送时夹带对应的密钥。在开机过程中,开机程序先初始化第一应用程序与第二应用程序,接着通过随机数生成模块产生第一随机数作为第一应用程序的第一密钥,并且产生第二随机数作为第二应用程序的第二密钥。在本实施例中,以两个应用程序(第一应用程序与第二应用程序)为例来进行说明,第一应用程序对应至第一设备,第二应用程序对应至第二设备。然而,在其他实施例中并不限定应用程序的数量。例如,在其他实施例中,在开机过程中,开机程序先初始化所有的应用程序,接着通过随机数生成模块来产生多个随机数来作为密钥。接着,开机程序将这些密钥传送给每一个应用程序。当应用程序接收到这些密钥时,会将这些密钥储存至应用程序各自所分配到的储存空间中。而各应用程序所分配到的密钥可以不同,或者有可能两个应用程序分配到的密钥为相同。例如,如表格1所示,假设储存单元120中包括应用程序a~c,则开机程序在初始化应用程序a~c之后,由随机数生成器产生随机数rna给应用程序a,产生随机数rnb给应用程序b,产生随机数rnc给应用程序c。之后,将随机数rna~rnc以及各个随机数与应用程序之间的对应关系传送给应用程序a~c,使得每一个应用程序都知道全部应用程序所对应的随机数。表格1应用程序随机数arnabrnbcrnc在执行完开机程序后,处理器110将操作系统载入至存储器130以执行操作系统,并且在执行操作系统的情况下,启动各应用程序。在处理器110执行操作系统的情况下,在步骤s210中,第一应用程序接收到来自第二应用程序的信息。在此,第一应用程序与第二应用程序之间传递的信息会夹带来源端密钥、传送端密钥至少其中一者或者所述两者。例如,在信息的标头新增记录来源端密钥的字段,或者新增记录目的端密钥的字段,或者新增两个字段来记录来源端密钥与目的端密钥。所述信息的格式例如为行程间通信(inter-processcommunication,ipc)格式。接着,在步骤s215中,依据信息中所夹带的密钥来验证信息是否有效。例如,第一应用程序会根据信息中的来源端密钥与目的端密钥至少其中一个来判断信息是否有效。例如,判断信息中所夹带的来源端密钥是否为第二密钥。若信息中所夹带的来源端密钥与第二密钥不相同,则判定信息为无效。若信息中所夹带的来源端密钥与第二密钥相同,则判定信息为有效。或者,判断信息中所夹带的目的端密钥是否为第一密钥。若信息中所夹带的目的端密钥与第一密钥相同,则判定信息为有效。若信息中所夹带的目的端密钥与第一密钥不同,则判定信息为无效。或者,判断信息中所夹带的目的端密钥与来源端密钥是否分别为第一密钥与第二密钥。若信息中所夹带的目的端密钥与来源端密钥分别为第一密钥与第二密钥,则判定信息为有效。若信息中所夹带的目的端密钥与第一密钥不同,或者来源端密钥与第二密钥不相同,则判定信息为无效。在判定信息有效时,在步骤s220中,第一应用程序依据信息回传响应信息至第二应用程序。在判定信息为无效时,第一应用程序会忽略(ingore)或丢弃(drop)此一信息。以下再举另一例来详细说明验证信息是否有效的步骤。图3是依照本发明一实施例的判断应用程序间的信息是否有效的方法流程图。本实施例为上述步骤s215的其中一种实施方式。在处理器110执行操作系统的情况下,当第一应用程序接收到来自第二应用程序的信息时,在步骤s305中,在处理器110判断第一应用程序中接收信息的通信端口是否被指派给第二应用程序。若第一应用程序中接收信息的通信端口已被指派给第二应用程序,则执行步骤s310。若第一应用程序中接收信息的通信端口并未被指派给第二应用程序,则如步骤s325所示,判定信息为无效。在应用程序被初始化时,处理器110会对每一个应用程序指派用来接收特定应用程序的信息的通信端口。在此,所述通信端口为行程间通信(inter-processcommunication,ipc)端口。例如,假设在第一应用程序中指派给第二应用程序的通信端口为ipc1,通信端口ipc1只会接收来自第二应用程序的信息。若第一应用程序中接收信息的通信端口为ipc1,则前往步骤s310。若第一应用程序中接收信息的通信端口不是ipc1,则判定信息无效。即,被指派给第二应用程序的通信端口只能接收到来自第二应用程序所传送的信息,非指派的通信端口不应该接收到表示来自第二应用程序所传送的信息。若判定第一应用程序中接收信息的通信端口已被指派给第二应用程序,在步骤s310中,判断信息中所夹带的来源端密钥是否为第二密钥。若信息中所夹带的来源端密钥与第二应用程序所分配到的第二密钥不同,则如步骤s325所示,判定信息为无效;若信息中所夹带的来源端密钥与第二应用程序所分配到的密钥相同,则执行步骤s315。在步骤s315中,判断信息中所夹带的目的端密钥是否为第一密钥。若信息中所夹带的目的端密钥与第一应用程序所分配到的第一密钥相同,则如步骤s320所示,判定信息为有效。若信息中所夹带的目的端密钥与第一应用程序所分配到的密钥不同,则如步骤s325所示,判定该信息为无效。特别说明的是,本发明的应用程序间的信息验证方法,可以执行步骤s310及s315中至少其一即可,且s310及s315之间的顺序并无限制。综上所述,在每一次的开机重新产生密钥来指派给各个应用程序,使得这些应用程序在进入操作系统阶段时,利用这些密钥对每个应用程序间的信息传送进行验证,以防止恶意程序的不法存取。并且,还可进一步搭配各应用程序的通信端口来进行验证,进一步加强安全性。虽然本发明已以实施例公开如上,然而其并非用以限定本发明,任何所属
技术领域
中普通技术人员,在不脱离本发明的精神和范围的情况下,应当可作些许的更动与润饰,故本发明的保护范围应当视所附的权利要求书所界定者为准。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1