具体实施方式
请参考「图1」所示,其为本发明的电路方块示意图。本发明的个人计算机的开机认证系统100包括:至少一开机认证装置110与个人计算机120。开机认证装置110电连接于个人计算机120。开机认证装置110中包含连接接口130、控制芯片150与识别信息160。在本实施例中的连接接口130是通用序列总线为例。除此之外,开机认证装置110还可以是USB随身盘、USB蓝牙传输器、USB卡片阅读机、或具有USB控制芯片150的装置。开机认证装置110的控制芯片150于出厂时均会设置唯一的出厂编号,根据此一出厂编号产生相应的识别信息160(其产生方式产参考后文所述)。
个人计算机120包括处理单元131、至少一组相应于该连接接口130的连接端口132、BIOS133、验证程序134、验证信息生成程序135、验证信息136与多个周边装置140。连接端口132的种类对应于开机认证装置110的连接接口130。承接上文所述,因此个人计算机120的连接端口132为通用序列总线。
在本发明是将BIOS133的设定数据与BIOS133的程序代码分别储存在CMOS171中与另一快闪只读存储器172中(Flash ROM)。个人计算机120在开始运行时,首先会运行快闪只读存储器172中BIOS133的存储器初始的相关程序代码,并开始初始化存储器(未示出)的配置。在完成存储器的初始化后,再将快闪只读存储器172中的其它BIOS133程序代码解压缩至存储器中储存。个人计算机120开始运行存储器中的BIOS133。
接着,BIOS133会将CMOS171中所储存的设定数据读取出来,并根据所述设定数据来初始化其它硬件装置。例如:初始程序(bootstrap)、存储器分配、南/北桥芯片组的输入/输出等。请参考「图2」所示,其为存储器中BIOS的架构示意图。一般而言,BIOS133的执行方式是由「图2」上向下逐一执行相应的程序(是由高位存储器区段向低位存储器区段开始执行)。
本发明是在初始化各项设备后才开始运行本发明的验证信息136的设定与认证过程。以下就各种的验证信息136的设定与认证过程进行说明。
第一实施例:
在第一实施例中是以单一个开机认证装置110与单一个连接端口132为例,并为能清楚解说本发明整体的运作流程,还请参考「图3A」所示,其为本发明的验证信息设定流程示意图。本发明的验证信息136设定包括以下步骤:
步骤S311:将开机认证装置连接至个人计算机;
步骤S312:运行个人计算机的BIOS;
步骤S313:将BIOS的验证信息生成程序致能;以及
步骤S314:从开机认证装置中撷取识别信息,并将识别信息转换成验证信息后,储存至BIOS中。
首先,将开机认证装置110于个人计算机120未运行BIOS133前连接于个人计算机120。开启个人计算机120的电力供应,使得个人计算机120开始运行BIOS133(对应步骤311~步骤S312)。此时,使用者可以进入BIOS133中,并将验证信息136生成程序135致能的选项致能(对应步骤313)。个人计算机120会检测开机认证装置110是否有无连接至个人计算机120。若个人计算机120检测到开机认证装置110已连接时,则个人计算机120会从开机认证装置110中撷取一识别信息160,并将该识别信息160转存为验证信息136(对应步骤314)。这里所述的识别信息160为前文中的”控制芯片150于出厂时所设置唯一的出厂编号”,当然也可以对该出厂编号进行加密或拟乱处理后再储存为验证信息136。
在完成验证信息136的设定后,个人计算机120可于之后的开机时运行验证程序134。请参考「图3B」所示,其为本发明的认证运作流程示意图,其包括以下步骤:
步骤S321:将开机认证装置连接至个人计算机;
步骤S322:起始个人计算机并运行BIOS;
步骤S323:令BIOS通过验证程序撷取开机认证装置的识别信息,并判断识别信息是否与验证信息一致;
步骤S324:当识别信息与验证信息相异时,则个人计算机重新运行验证程序;以及
步骤S325:当识别信息与验证信息一致时,则个人计算机运行BIOS。
选择任一开机认证装置110,并将其连接于个人计算机120(对应步骤S321)。在个人计算机120未运作前将开机认证装置110连接至个人计算机120上,再开启个人计算机120的电力供应(对应步骤S322),使得个人计算机120开始运行BIOS133与验证程序134。验证程序134首先会检测是否有开机认证装置110被连接于个人计算机120。当确定有认证开机装置连接于个人计算机120时,验证程序134会从开机认证装置110中撷取一待测认证A信息(对应步骤S323)。
当识别信息160与验证信息136相异时,则处理单元131会持续的运行验证程序134,直至使用者将正确的开机认证装置110连接于个人计算机120(对应步骤S324)。当识别信息160与验证信息136一致时,则处理单元131继续运行BIOS133其余的初始动作,并开始运行相应的操作系统(对应步骤S325)。
第二实施例:
在第二实施例中是以单一个开机认证装置110与多个连接端口132为例。请参考「图4A」所示,其为本发明的验证信息设定流程示意图。本发明的验证信息136设定包括以下步骤:
步骤S411:选择任一连接端口并将开机认证装置连接至个人计算机;
步骤S412:运行个人计算机的BIOS;
步骤S413:将BIOS的验证信息生成程序致能;以及
步骤S414:从开机认证装置中撷取识别信息,并将识别信息转换成验证信息后,储存至BIOS中。
首先,从多个连接端口132中选取其中之一,并将开机认证装置110电连接至连接端口132(对应步骤S411)。再完成步骤S411后,随即令个人计算机120开始运作。处理单元131于开机的初期会运行BIOS133(对应步骤S412)。进入BIOS133后将验证信息136生成程序135开启,处理单元131会从开机认证装置110中撷取识别信息160,并将识别信息160储存至BIOS133中(对应步骤S413~对应步骤S414)。
在完成验证信息136的设定后,个人计算机120可于之后的开机时运行验证程序134。请参考「图4B」所示,其为本发明的第二实施例的认证运作流程示意图,其包括以下步骤:
步骤S421:选择任一连接端口并将开机认证装置连接至个人计算机;
步骤S422:起始个人计算机并运行BIOS;
步骤S423:扫描各连接端口;
步骤S424:令BIOS通过验证程序撷取开机认证装置的识别信息,并判断识别信息是否与验证信息一致;
步骤S425:当识别信息与验证信息相异时,则个人计算机重新运行验证程序;以及
步骤S426:当识别信息与验证信息一致时,则个人计算机运行BIOS。
与第一实施例不同的是,在第二实施例中个人计算机120具有多连接端口132,并从所述连接端口132中选取其中之一(对应步骤S421)。当使用者将开机认证装置110连接至个人计算机120后,将处理单元131开启并运行BIOS133(对应步骤S422)。BIOS133运行时会呼叫验证程序134,验证程序134会先逐一扫描各连接端口132是否有连接开机认证装置110。若连接端口132有连接开机认证装置110时,验证程序134会撷取开机认证装置110的识别信息160,并判断识别信息160是否与验证信息136一致(对应步骤S423)。当开机认证装置110的识别信息160与BIOS133中的验证信息136是相异时,则处理单元131会重新运行验证程序134,直至正确的开机认证装置110被连结至个人计算机120中(对应步骤S424)。当开机认证装置110的识别信息160与BIOS133中的验证信息136是一致时,则处理单元131会继续运行BIOS133中其它的程序(对应步骤S425)。
第三实施例:
相较于前述的实施例外,本发明还可以进一步的应用在具有多个开机认证装置110与多个连接端口132。并且假设开机认证装置110的数量最多等于连接端口132的数量。请参考「图5A」与「图5B」所示,其分别为本发明的第三实施例的认证信息设定流程示意图与验证程序134流程示意图。本发明的第三实施例的认证信息设定包括以下步骤:
步骤S511:将开机认证装置连接至个人计算机;
步骤S512:运行个人计算机的BIOS;
步骤S513:将BIOS的认证信息生成程序致能;并且
步骤S514:从开机认证装置中所撷取的识别信息与开机认证装置所连接的连接端口的编号记录为验证信息,再验证信息储存至BIOS。
在第三实施例中步骤S511~步骤S513,是与第二的步骤S411~步骤S413相同。本实施例中对于每一个开机认证装置110会记录其相应的连接端口132。
在个人计算机120开始运行时,处理单元131会检测开机认证装置110是否有无连接至个人计算机120。若处理单元131检测到开机认证装置110已连接时,则处理单元131会依序的读取每一个连接端口132所连接的开机认证装置110的编号与连接端口132所连接的开机认证装置110的一认证信息。
对于每一个连接端口132而言均具有相应的编号,BIOS133在初始时可以根据不同的连接端口132的编号来对连接的周边装置140进行识别。所以验证程序134会依序的纪录每一个有连接开机认证装置110的连接端口132的编号,并储存这些连接开机认证装置110的连接端口132的编号与相应的认证信息(对应步骤S513~步骤S514)。
在完成认证信息的设定后,个人计算机120于尔后的开机时即可进入验证程序134。请结合「图5B」所示,此一实施例的验证程序134包括以下步骤:
步骤S521:将开机认证装置连接至个人计算机;
步骤S522:起始个人计算机并运行BIOS;
步骤S523:令BIOS通过验证程序撷取具有开机认证装置的连接端口的编号与开机认证装置的识别信息,藉以判断开机认证装置所连接的连接端口的编号、识别信息是否与验证信息一致;
步骤S524:当识别信息与连接端口编号的组合与验证信息相异时,则个人计算机重新运行验证程序;以及
步骤S525:当识别信息与连接端口编号的组合与验证信息一致时,则个人计算机运行BIOS中其它的程序。
步骤S521与步骤S522所述的动作与前述步骤S411与步骤S412相同,故不重复赘述。在步骤S513中,验证程序134除了会撷取开机认证装置110中的识别信息160外,验证程序134还撷取开机认证装置110所连接的连接端口132的编号。
验证程序134判断连接端口132的编号、识别信息160与验证信息136所储存的连接端口132的编号、识别信息160是否一致。换句话说,验证程序134会比对当前所连接的开机认证装置110的连接端口132是否与最初设定时是同一个连接端口132。简单的说,就是开机认证装置110需要连接至相应的连接端口132时,才算是正确的连接。
当开机认证装置110所连接的连接端口132与设定时不一致或识别信息160与认证信息相异时,处理单元131会将重新的运行验证程序134,直至开机认证装置110与所设定的条件一致为止。反之,当开机认证装置110符合所设定的条件时,个人计算机120随之会将BIOS133中的其它程序运行。
第四实施例:
相较于第三实施例,本实施例是根据不同的开机认证装置110用以设定个人计算机120开机时决定可以被致能的周边装置140。换言之,当使用者安装不同的开机认证装置110时,个人计算机120在通过验证程序134后会将相应的周边装置140开启。
如此一来,可以根据不同的开机认证装置110来赋予不同使用者可以使用者周边装置140。请参考「图6A」与「图6B」所示,其分别为第四实施例的认证信息设定流程示意图与验证程序运作流程示意图。
第四实施例的认证信息设定包括以下步骤:
步骤S611:将开机认证装置与周边装置连接至个人计算机;
步骤S612:运行个人计算机的BIOS;
步骤S613:将BIOS的验证信息生成程序致能;
步骤S614:记录开机认证装置所连接的连接端口的编号与认证信息至该BIOS;
步骤S615:从所述周边装置中选择任一个;以及
步骤S616:将选出的周边装置与开机认证装置的设定一致能关系,并将开机认证装置对于周边装置的致能关系与认证信息储存为验证信息至BIOS中。
在本实施例中在个人计算机120开机前,是将开机认证装置110与周边装置140连接于个人计算机120。其中,开机认证装置110的数量至少为一个,而周边装置140的数量亦至少为一个(对应步骤S611)。
本实施例因使用多个开机认证装置110,因此对于每一个开机认证装置110需要记录其相应的连接端口132(对应步骤S612~步骤S613)。在运行验证信息136生成程序135时,验证信息136生成程序135会接收开机认证装置110的认证信息,并且记录开机认证装置110所连接的连接端口132的编号。
接着,针对每一开机认证装置110设定对应周边装置140的一致动关系。在本发明中所述的致动关系为是否决定致能周边装置140。每一个开机认证装置110可以设定在通过认证后可以启动相应的周边装置140。开机认证装置110可以设定对应至少一种以上的周边装置140的致动关系。
再完成上述的认证信息设定后,以下对验证程序134的运行作解说,并请结合「图6B」所示。第四实施例的验证程序134包括以下步骤:
步骤S621:将开机认证装置连接至个人计算机;
步骤S622:起始个人计算机并运行BIOS;
步骤S623:令BIOS通过验证程序撷取具有开机认证装置的连接端口的编号与开机认证装置的识别信息,藉以判断开机认证装置所连接的连接端口的编号、识别信息是否与验证信息一致;
步骤S624:当识别信息或连接端口的编号的任一与验证信息相异时,则个人计算机重新运行验证程序;以及
步骤S625:当识别信息或连接端口的编号的任一与验证信息一致时,则根据开机认证装置110的致动关系启动相应的周边装置,并运行操作系统。
首先是将开机认证装置110连接至个人计算机120,并运行个人计算机120(对应步骤S621~步骤S622)。接着,处理单元131会运行BIOS133。由于验证程序134是内嵌于BIOS133,所以处理单元131亦会运行验证程序134。验证程序134用以撷取具有开机认证装置110的连接端口132的编号与开机认证装置110的识别信息160。验证程序134会将上述所撷取到的信息与验证信息136进行比对(对应步骤S6230)。
由于每一种开机认证装置110是对应有不同的周边装置140,因此连接不同的开机认证装置110时,可以启动相应的周边装置140。因为BIOS133可以初始各项周边装置140的硬件资源。因此本发明是藉由致动关系来决定是否初始周边装置140。一旦周边装置140在BIOS133运作时未被初始,则操作系统就无法正确的驱动此项周边装置140。如此一来,即可令使用者使用相应的硬件。本实施例还可以将其变化为利用多个开机认证装置110的排列组合,藉以初始周边装置140的资源。
第三实施例的验证程序除了上述方式外,亦可以做出以下变化,请参考「图6C」所示,其包括以下步骤:
步骤S631:将开机认证装置连接至个人计算机;
步骤S632:起始个人计算机;
步骤S633:由个人计算机的验证程序撷取具有开机认证装置的连接端口的编号与开机认证装置的识别信息,藉以判断开机认证装置所连接的连接端口的编号、识别信息是否与验证信息一致;
步骤S634:当识别信息或连接端口的编号的任一与验证信息相异时,则个人计算机将周边装置禁能;以及
步骤S635:当识别信息或连接端口的编号的任一与验证信息一致时,则根据开机认证装置的致动关系启动相应的周边装置,并运行操作系统。
此一变化例与前述实施例不同处在于,当识别信息160与验证信息136相异时,处理单元131虽然会继续运行BIOS133与操作系统,但是会将各周边装置140禁能。
为能清楚说明本发明的运作精神,在此是以下例作为说明,但其中开机认证装置110的数量与相关周边装置140并非仅局限于此,在此仅先叙明。并请配合「图7A」~「图7C」所示,其为本发明的开机认证装置对应致能设备的示意图。
假设,第一开机认证装置111、第二开机认证装置112与第三开机认证装置113。第一开机认证装置111可致能个人计算机120所连接的储存设备、显示芯片组、网络芯片组、音效芯片组、与蓝牙装置。第二开机认证装置112可致能储存设备与音效芯片组;第三开机认证装置113可以致能储存设备、显示芯片组与网络芯片组。个人计算机120具有连接端口132-1、132-2、132-3、132-4、132-5。第一开机认证装置111对应于编号1的连接端口132-1;第二开机认证装置112对应于编号3的连接端口132-3;第三开机认证装置113是对应于编号5的连接端口132-5。
当使用者将第一开机认证装置111连接于编号5的连接端口132-5时(如「图7D」所示),验证程序134运行时会通过编号5的连接端口132-5撷取第一开机认证装置111的识别信息160。由于第一开机认证装置111并非连接于编号1的连接端口132-1,所以将会产生验证信息136与识别信息160不一致的问题。因此个人计算机120会重新的运行验证程序134直至使用者将第一开机认证装置111重新连接于编号1的连接端口132-1为止。而且,个人计算机120开机后仅会驱动储存设备、显示芯片组、网络芯片组、音效芯片组、与蓝牙装置。如此一来,当个人计算机120进入操作系统后,操作系统仅能使用被驱动的周边。由于操作系统并无法通过BIOS133取得其它未被驱动的周边装置140,因此可以达到将特定周边禁能的功效。
本发明提供一种个人计算机120的开机认证方法及其开机认证系统100,是将认证装置连接至个人计算机120,个人计算机120于开机阶段时是根据认证装置的认证信息,使用者除了可以不须自行输入密码,也可以确保BIOS133的安全,还可以决定每一位使用者可以使用的周边装置140。由于本发明是以保护BIOS133为主,因此恶意的使用者无法任意的更动个人计算机120中的任一装置。如此一来,即可杜绝现有技术仅保护操作系统的相关缺失。
虽然本发明以前述的较佳实施例揭示如上,然其并非用以限定本发明,本领域的技术人员在不脱离本发明的精神和范围的前提下可作若干的更动与润饰,因此本发明的专利保护范围是以本发明的权利要求为准。