电子系统、电子装置及电子装置的存取认证方法与流程

文档序号:13697496阅读:164来源:国知局
技术领域本发明涉及一种数据存取技术,且特别涉及一种具有安全认证机制的电子系统、电子装置及电子装置的存取认证方法。

背景技术:
内部集成电路总线(Inter-ICBus,I2C)是一种能够让系统中的集成电路彼此沟通,且具备软件定义协议(Software-Defined)的两线式总线技术。由于简单且普遍的特性,内部集成电路总线已成为全球性系统控制的工业标准,并可应用在温度感测、电压电平转换器(VoltageLevelTranslator)、电可擦除可编程只读存储器(ElectricallyErasableProgrammableReadOnlyMemory,EEPROM)、通用输入输出组件(GeneralPurposeI/O)、模拟数字和数字模拟转换器(A/DandD/AConverter),编解码器(CODEC)以及各种微处理器等领域。使用内部集成电路总线的电子装置可区分为主装置(Master)及从装置(Slave),并可仅通过串行数据线(SerialDataLine)及串行时钟线(SerialClockLine)而并接。主装置例如是中央处理器,从装置例如是被控制的集成电路(IC)装置。利用串行数据线及串行时钟线的信号变化所组合成的不同信号,可使主装置及从装置之间通过总线而相互沟通。然而,由于在同一内部集成电路总线上,一般会设置多个主装置及从装置,当这些装置的地址彼此相近时,基于信号衰减、信号干扰、软件设计错误等因素影响,将可能导致从装置被主装置任意读写,而使从装置执行不当的读写存取动作,甚至造成系统的功能运作发生不稳定或是错误的情况。尽管目前的技术可以利用通用输入输出(GeneralPurposeInput/Output,GPIO)接口中的写保护引脚(WriteProtectPin)来接收主装置或其他电路的控制信号,以使从装置具有写保护功能,但此作法必须通过外部控制才能得以实现。因此,需要提供一种电子系统、电子装置及电子装置的存取认证方法来解决上述问题。

技术实现要素:
有鉴于此,本发明的实施例提供一种电子系统、电子装置及其存取认证方法,其可由从装置对主装置的存取请求执行认证机制,以避免主装置进行恶意或错误的存取动作。本发明提出一种电子系统,该电子系统包括:一主装置以及一从装置;该从装置通过一串行传输接口耦接该主装置,该从装置包括一数据储存单元,且该从装置使用一预设密码对该数据储存单元进行保护,其中该主装置通过该串行传输接口对该从装置发送用以存取该数据储存单元的一存取请求,且从装置依据该预设密码及该主装置输入的密码进行认证,以决定是否允许该主装置对该数据储存单元进行存取。本发明提出一种电子装置,该电子装置包括:一数据储存单元以及一处理单元;该处理单元耦接该数据储存单元,使用一预设密码对该数据储存单元进行保护,通过一串行传输接口接收一主装置所发送的用以存取该数据储存单元的一存取请求,以及依据该预设密码及该主装置输入的密码进行认证,以决定是否允许该主装置对数据储存单元进行存取。本发明提出一种电子装置的存取认证方法,该存取认证方法包括:使用一预设密码对该电子装置的一数据储存单元进行保护;通过一串行传输接口接收一主装置所发送的用以存取该数据储存单元的一存取请求;以及依据该预设密码及该主装置输入的密码进行认证,以决定是否允许该主装置对该数据储存单元进行存取。基于上述,本发明的实施例所提出的电子系统、电子装置及其存取认证方法利用预设密码对从装置的数据储存单元进行保护,故在主装置发送用以存取被保护的数据储存单元的存取请求时,从装置能够依据主装置输入的密码进行认证,从而决定是否允许主装置对数据储存单元进行存取。如此一来,从装置能够有效利用串行传输接口的传输格式以对主装置的存取请求执行认证机制,并且无须通过外部控制即可实现从装置的自我保护,进而预防主装置恶意或错误的存取动作。为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附的附图作详细说明如下。附图说明图1是依照本发明一实施例所绘示的电子系统的方框图。图2是依照本发明一实施例所绘示的电子系统的存取认证方法的流程图。图3是依照本发明一实施例所绘示的范例。图4是依照本发明一实施例所绘示的范例。图5是依照本发明一实施例所绘示的范例。主要组件符号说明:100电子系统110主装置120从装置122_1、122_2数据储存单元124_1、124_2密码储存单元126处理单元130串行传输接口S210~S230、S310~S380、S410~S480、步骤S510~S570具体实施方式为了改善在应用内部集成电路总线的电子系统中因缺乏安全认证机制而存在主装置可能执行错误的存取动作的风险,本发明的实施例的从装置利用预设密码保护数据储存单元,使得当主装置对被保护的数据储存单元发送存取请求时,从装置可依据主装置输入的密码加以进行认证,以决定是否允许主装置对数据储存单元进行存取。藉此,本发明的实施例的从装置无须经由外部控制即能够执行存取认证机制,从而实现自我保护的功能。图1是依照本发明一实施例所绘示的电子系统的方框图。请参照图1,电子系统100例如是网络交换机(Switch)等嵌入式系统或手机、笔记本型计算机、桌上型计算机等系统。电子系统100可包括至少一个主装置及至少一个从装置,在本实施例中列举一个主装置110以及一个从装置120以方便以下说明,但在其他实施例中并不限制主装置以及从装置的数量。主装置110例如是中央处理器等具有运算能力的电子装置或组件。从装置120例如是复杂可编程逻辑器件(ComplexProgrammableLogicDevice,CPLD)、现场可编程门阵列(FieldProgrammableGateArray,FPGA)等可程序化的逻辑装置或组件,其例如是应用于指示器(例如发光二极管)灯号控制或是风扇、电源等开关控制。从装置120通过串行传输接口130耦接主装置110以互相传输数据。其中,串行传输接口130例如是内部集成电路总线、串行外设接口(SerialPeripheralInterface,SPI)等。从装置120包括至少一个数据储存单元、至少一个密码储存单元以及处理单元126。为了方便说明,在本实施例中列举了两个数据储存单元122_1、122_2及两个密码储存单元124_1、124_2。而在其他实施例中并不限制数据储存单元及密码储存单元的数量。数据储存单元122_1、122_2以及密码储存单元124_1、124_2例如是寄存器(Register)。其中,数据储存单元122_1、122_2用以储存数据,而密码储存单元124_1、124_2则用以储存主装置110所写入的输入密码。处理单元126耦接数据储存单元122_1、122_2以及密码储存单元124_1、124_2。处理单元126例如是中央处理单元(CentralProcessingUnit,CPU),或是其他可程序化的微处理器(Microprocessor)等。在本实施例中,处理单元126用以使用预设密码对数据储存单元122_1进行保护,从而在主装置110欲存取被保护的数据储存单元122_1时,对主装置110的存取请求进行认证,以决定是否允许主装置110对被保护的数据储存单元122_1进行存取。为了便于说明,在以下实施例中使用从装置120来描述其处理单元126对于存取认证机制的运作情形。以下即搭配上述系统架构来说明存取认证的详细流程。图2是依照本发明一实施例所绘示的电子系统的存取认证方法的流程图,且适用于图1的电子系统100。在本实施例中,以从装置120对数据储存单元122_1进行保护,且主装置110欲通过串行传输接口130来存取被保护的数据储存单元122_1的情况为例进行以下说明。请同时参照图1及图2,在步骤S210中,从装置120使用预设密码对数据储存单元122_1进行保护。具体而言,在一实施例中,预设密码可以藉由Verilog或VHDL等硬件描述语言(HardwareDescriptionLanguage)来进行设定,以使从装置120可对数据储存单元122_1进行保护。其中,预设密码可以是1个或多个位,且其使用的位数可对应于存取认证时的复杂程度。当预设密码设定为较多的位数时,发生错误存取动作的机率可被降低。在步骤S220中,主装置110通过串行传输接口130对从装置120发送用以存取数据储存单元122_1的存取请求,并在步骤S230中,从装置120依据预设密码及主装置110输入的密码进行认证,以决定是否允许主装置110对数据储存单元122_1进行存取。详言之,当从装置120接收到主装置所发送的存取请求之后,从装置120可依据存取请求所对应的数据地址,从而判断是否为受保护的数据。进一步地说,在一实施例中,主装置110可藉由存取请求的传输格式,例如通过存取请求中的字段信息,以将其欲存取的数据所对应的地址通知从装置120,使从装置120可依据存取请求中的字段信息而获得主装置110欲进行存取的存取地址,并且依据上述的存取地址以决定是否需以主装置110所输入的密码进行认证。上述的存取地址例如是主装置110欲存取的数据储存单元的地址。在本实施例中,存取地址指的是被预设密码保护的数据储存单元122_1,而在其他实施例中,存取地址则可以是未被保护的数据储存单元122_2。在此对存取请求的传输格式进行说明。以串行传输接口130是内部集成电路总线为例,主装置110所发送的存取请求包括开始位(StartBit)、主装置110欲存取的装置地址(Address,在本实施例中即从装置120的地址)、读/写位、地址位移量(AddressOffset)、欲传输的数据正文以及结束位(StopBit)等多个字段信息。其中,所述装置地址即为从装置120的地址,且地址位移量用以进一步决定此存取请求欲存取的是从装置120中的哪一个寄存器。因此,从装置120例如可从存取请求中的装置地址以及地址位移量来获得所述的存取地址。接着,从装置120可通过存取地址以判断此存取地址所对应的数据储存单元(例如数据储存单元122_1)是否被保护,并当判断数据储存单元122_1被保护时,进一步地要求主装置110提供输入密码以进行认证。具体而言,在一实施例中,主装置110可在至少一个密码储存单元(例如密码储存单元124_1、124_2的至少其中之一)中分别写入对应存取地址的至少一个输入值以提供输入密码。需说明的是,从装置120例如是在依据预设密码及输入密码进行认证之前,便获得主装置110所提供的输入密码。进一步来说,在一实施例中,从装置120可在接收主装置110所发送的存取请求之前,即获得主装置110的输入密码。在另一实施例中,主装置110所发送的存取请求中可包括输入密码,使从装置120在接收主装置110的存取请求的同时也获得输入密码。此外,在其他实施例中,从装置120则可在判定主装置110欲存取的数据储存单元122_1被保护之后,进一步地取得主装置110的输入密码。换句话说,只要从装置120可在使用预设密码对主装置110的存取请求进行认证之前获得主装置110的输入密码,本发明实施例对于从装置120获得主装置110的输入密码的详细时间点及其实施方式并不加以限制。另外,值得一提的是,预设密码的位数可决定主装置110写入输入值所需的密码储存单元的数量。详言之,在一实施例中,若预设密码是1位,则从装置120可要求主装置110在密码储存单元124_1中写入一个输入值以作为输入密码。在其他实施例中,输入密码也可通过运算或组合多个输入值来产生。例如,若预设密码是2位,从装置120可要求主装置110在密码储存单元124_1、124_2中分别写入一个输入值,并对上述两个输入值进行运算以产生输入密码。至于从装置120认证预设密码与输入密码的详细流程,从装置120可比对预设密码与输入密码以进行认证,并当预设密码与输入密码相同时,从装置120解密数据储存单元122_1以允许主装置110对数据储存单元122_1进行存取,而当预设密码与输入密码不同时,从装置120禁止主装置110对数据储存单元122_1进行存取。藉此,从装置120可对数据储存单元122_1进行保护,并当主装置110欲对数据储存单元122_1进行存取时,从装置120会要求主装置110提供与数据储存单元122_1相对应的输入密码以进行认证。一旦认证通过,从装置120可将数据储存单元122_1解密,主装置110才可对其进行存取。换言之,本实施例的从装置120具有对于主装置110的存取认证机制,可避免存取错误的情况发生。需说明的是,在一实施例中,当认证完成且主装置110执行存取动作之后,从装置120还可对至少一个密码储存单元(例如密码储存单元124_1、124_2的至少其中之一)进行重置,以使预设密码重新保护数据储存单元122_1,并再次启动存取认证机制。藉此,可提供主装置110对数据储存单元122_1进行一次性的存取,使从装置120对于数据储存单元122_1的保护能够更为周全。以下以图3的范例,并搭配图1的电子系统100中的各组件,详细说明本发明实施例的电子系统100的存取认证方法。应用本实施例者可依实施情形而适应性地调整图3中的各步骤。本实施例针对从装置120使用预设密码B保护寄存器X,且主装置110欲将数据VALUE(数据值)写入寄存器X而发送写入请求的情况来进行说明。请同时参照图1及图3,在步骤S310中,主装置110对从装置120发送写入请求,其中此写入请求用以将数据VALUE写入寄存器X。当从装置120接收到写入请求时,在步骤S320中,从装置120会判断寄存器X是否被保护。其中,当从装置120判定寄存器X未被保护时,从装置120可允许主装置110直接对寄存器X进行存取,故在步骤S370中,主装置110可直接将数据VALUE写入寄存器X。而当判定寄存器X被保护时,主装置110必须将其输入密码写入至指定的寄存器Y中,从装置藉此对主装置110的写入请求进行验证。需说明的是,从装置120在判定寄存器X被保护时,还可获得用以保护寄存器X的预设密码。以下以预设密码B对应于寄存器X为例进行说明。请继续图3的流程,在步骤S330中,主装置110将输入值A写入寄存器Y。接着,在步骤S340中,从装置120比对用来保护寄存器X的预设密码B与主装置写入寄存器Y的输入值A是否相同。换言之,在本实施例中,上述的输入值A可相当于主装置110提供的输入密码。当预设密码B与输入值A相同时,从装置120可允许主装置110对寄存器X进行存取,故进入步骤S350,主装置110可将数据VALUE写入寄存器X。之后,在步骤S360中,从装置120还重置寄存器Y以将空数据(Null)写入寄存器Y,故从装置120可重新使用预设密码B保护寄存器X。至于预设密码B与输入值A不相同时,则进入步骤S380,从装置120禁止主装置110将数据VALUE写入寄存器X,并且结束本实施例的流程。对于复杂度较高的预设密码,以下再以图4的范例,并搭配图1的电子系统100中的各组件以说明存取认证的详细流程。类似地,应用本实施例者可依实施情形而适应性地调整图4中的各步骤。本实施例针对从装置120使用预设密码C保护寄存器X,且主装置110欲将数据VALUE写入寄存器X而发送写入请求的情况来进行说明。请同时参照图1及图4,在步骤S410中,主装置110对从装置120发送写入请求。当从装置120接收到写入请求时,在步骤S420中,从装置120会判断寄存器X是否被保护。当从装置120判定寄存器X未被保护时,从装置120可允许主装置110直接对寄存器X进行存取,故在步骤S470中,主装置110可直接将数据VALUE写入寄存器X。上述的步骤与前述实施例类似。而不同之处在于,在本实施例中,当判定寄存器X被保护时,主装置110必须将其输入密码写入至指定的寄存器Y、Z中,使从装置120可藉由寄存器Y、Z中所写入的值的组合以对主装置110的写入请求进行验证。因此,在步骤S430中,主装置110将输入值A、B分别写入寄存器Y、Z。接着,从装置120可对输入值A、B进行运算,并且在步骤S440中,从装置120比对用来保护寄存器X的预设密码C与输入值A、B的和是否相同。当两者相同时,从装置120可允许主装置110对寄存器X进行存取,故在步骤S450中,主装置110可将数据VALUE写入寄存器X。之后,在步骤S460中,从装置120还重置寄存器Y以清空寄存器Y、Z中所写入的值,以使预设密码C重新保护寄存器X。至于预设密码C与输入值A、B的和不相同时,则进入步骤S480,从装置120禁止主装置110将数据VALUE写入寄存器X,并且结束本实施例的流程。承上述,在本实施例中,输入值A、B的和可视为是主装置110所提供的输入密码。需说明的是,在一实施例中,从装置120还可限定主装置110必须将输入值A、B分别且对应的写入寄存器Y、Z中,且在此种组合下从装置120才会将寄存器X解密。在其他实施例中,从装置120也可对输入值A、B进行其他运算(例如,差值、乘积或比值等),本发明对于如何通过输入值A、B的运算或组合以获得与预设密码相符的输入密码并不加以限制。值得一提的是,本发明实施例的存取认证方法还可暂态性地解除前述的存取认证机制,以暂时地关闭认证功能,使位于电子系统100附近的机房人员能够无须输入密码即可进行存取动作,藉此提升操作上的便利性。详细而言,若以一插入事件发生来作为判断机房人员在电子系统100附近的依据,则在一实施例中,从装置120可检测电子系统100的外部连接接口是否连接一外部装置,并当外部连接接口连接外部装置时,从装置120解密数据储存单元122,以在一段设定时间T内允许主装置110对数据储存单元122进行存取。上述的外部连接接口例如是交换端口(SwitchPort),且外部装置例如是用以进行光电信号转换的小型可插拔式(SmallForm-factorPluggable,SFP)模块等光纤模块。以下以图5的范例,并搭配图1的电子系统100中的各组件以说明当插入事件发生时,本实施例进行存取认证的详细流程。应用本实施例者可依实施情形而适应性地调整图5中的各步骤。本实施例中针对从装置120使用预设密码B保护寄存器X,且当主装置110发送对于寄存器X的写入请求时,从装置120可指定主装置110在寄存器Y中写入输入值以进行认证的情况来进行说明。请同时参照图1及图5,从装置120检测外部连接接口是否连接一外部装置,并在步骤S510中,判定从装置120连接外部装置。接着,在步骤S520中,从装置120可例如通过计时单元以计时一段设定时间T,并且解密寄存器X,以在设定时间T内允许主装置110对寄存器X进行存取。其中,从装置120可例如在寄存器Y中写入与预设密码B相同的输入值A,以对寄存器X进行解密。之后,从装置120可在设定时间T内检测是否接收到主装置110发送写入寄存器X的写入请求。因此,在步骤S530中,从装置120可判断主装置110是否对从装置120发送用以将数据VALUE写入寄存器X的写入请求。当从装置120接收到主装置110的上述写入请求时,由于寄存器X已被解密,故在步骤S540中,主装置110可直接将数据VALUE写入寄存器X。当写入动作结束之后,在步骤S550中,从装置120可进一步判断是否须对寄存器X进行保护。在本实施例中,由于寄存器X原是以预设密码B进行保护,故在步骤S560中,从装置120可重置寄存器Y,以使预设密码B重新保护寄存器X。另外,在步骤S570中,当设定时间T结束而从装置120未接收到主装置110对于寄存器X的写入请求时,从装置120亦会执行步骤S560以重置寄存器Y,使从装置120对于寄存器X的认证机制再次开启。至于寄存器X原来即未被预设密码保护的情况,则可略过步骤S560,并且结束本实施例的流程。藉此,本实施例的从装置120可在检测到一插入事件发生之后,在设定时间内允许主装置110无须经过认证即可对从装置120中特定的寄存器X进行一次性存取以便于操作。此外,对于被保护的寄存器X而言,在主装置110完成存取动作之后,本实施例可再次保护寄存器X,以继续执行对于寄存器X的保护。值得一提的是,在其他实施例中,从装置120并不限制主装置110仅能对寄存器X进行一次性存取。例如,从装置120可在步骤S560中将与预设密码B相同的输入值A写入寄存器Y。此时,在设定时间T内,主装置110即可无需认证而能够对寄存器X进行多次存取。综上所述,本发明的实施例所提出的电子系统、电子装置及其存取认证方法利用预设密码保护从装置的数据储存单元,并在主装置欲存取被保护的数据储存单元而发送对应的存取请求时,由从装置依据主装置提供输入的密码以进行认证,从而决定是否允许主装置对数据储存单元进行存取。如此一来,从装置能够有效地利用串行传输接口的传输格式,以对主装置的存取请求执行认证机制。此外,藉由对于预设密码的不同设定方式,可增加认证机制的复杂度,从而提升从装置的自我保护能力。另一方面,本发明的实施例还提供可暂态性解除认证的功能,提供机房人员更为便利的操作方式。虽然本发明已以实施例公开如上,然而其并非用以限定本发明,任何所属技术领域中的普通技术人员,在不脱离本发明的精神和范围的情况下,应当可作些许的更动与润饰,故本发明的保护范围应当视所附的权利要求书的范围所界定者为准。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1