CN112560120B - 安全内存条及安全内存条的启动方法 - Google Patents

安全内存条及安全内存条的启动方法 Download PDF

Info

Publication number
CN112560120B
CN112560120B CN202011340261.XA CN202011340261A CN112560120B CN 112560120 B CN112560120 B CN 112560120B CN 202011340261 A CN202011340261 A CN 202011340261A CN 112560120 B CN112560120 B CN 112560120B
Authority
CN
China
Prior art keywords
storage unit
memory bank
address
bios
memory
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
CN202011340261.XA
Other languages
English (en)
Other versions
CN112560120A (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.)
Shenzhen Tigo Semiconductor Co ltd
Original Assignee
Shenzhen Tigo Semiconductor Co ltd
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 Shenzhen Tigo Semiconductor Co ltd filed Critical Shenzhen Tigo Semiconductor Co ltd
Priority to CN202011340261.XA priority Critical patent/CN112560120B/zh
Publication of CN112560120A publication Critical patent/CN112560120A/zh
Application granted granted Critical
Publication of CN112560120B publication Critical patent/CN112560120B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本申请涉及一种安全内存条及安全内存条的启动方法,该安全内存条包括:第一存储单元和第二存储单元;在安全内存条插接在主板上时,第一存储单元和第二存储单元分别通过数据总线与BIOS进行数据传输;第一存储单元用于存储安全内存条对应的密钥;第一存储单元还用于若接收到BIOS的第一数据读取请求,则将密钥通过数据总线发送给BIOS进行解密;第二存储单元用于存储安全内存条对应的SPD颗粒参数信息;第二存储单元还用于在开启状态下,若接收到BIOS的第二数据读取请求,则将SPD颗粒参数信息发送给BIOS,使BIOS根据SPD颗粒参数信息开启计算机设备。通过本申请能够对内存条中的SPD相关数据进行保护防止被篡改,进而防止计算机发生死机和无法启动的问题,简单有效。

Description

安全内存条及安全内存条的启动方法
技术领域
本申请涉及内存条技术领域,尤其涉及一种安全内存条及安全内存条的启动方法。
背景技术
内存条插入电脑主板,读取SPD相关数据时几乎是无加密状态读取,由于I2C的特性为开放式读取,不受硬件控制影响,让黑客有乘之机。网络黑客通过网络盗取系统信息,利用代码篡改内存条的SPD参数,会使电脑无法启动或者死机。内存条的安全日益受到实际网络和黑客的攻击,破坏并严重威胁到计算机系统的安全。因此需要找到一种办法来解决内存条的安全问题。
发明内容
为了解决上述内存条易遭受网络黑客攻击严重威胁计算机系统安全的技术问题,本申请实施例提供了一种安全内存条及安全内存条的启动方法。
第一方面,本申请实施例提供了一种安全内存条,安全内存条包括:第一存储单元和第二存储单元;
在安全内存条插接在主板上时,第一存储单元和第二存储单元分别通过数据总线与BIOS进行数据传输;
第一存储单元用于存储安全内存条对应的密钥;
第一存储单元还用于若接收到BIOS的第一数据读取请求,则将密钥通过数据总线发送给BIOS进行解密;
第二存储单元用于存储安全内存条对应的SPD颗粒参数信息;
第二存储单元还用于在开启状态下,若接收到BIOS的第二数据读取请求,则将SPD颗粒参数信息发送给BIOS,使BIOS根据SPD颗粒参数信息开启计算机设备。
可选地,第一存储单元包括第一存储器芯片,第二存储单元包括第二存储器芯片;
第一存储器芯片和第二存储器芯片均为EEPROM存储器芯片。
可选地,第一存储单元的第一寻址地址为安全内存条所插接的插槽的插槽地址。
可选地,插槽地址由BIOS写入第一存储器芯片,插槽为主板上的插槽。
可选地,第一存储单元的第一寻址地址为第一存储器芯片的第一寻址地址。
可选地,第二存储单元还包括开关单元;
开关单元用于若接收到BIOS解密成功后发送的启动信号,开启第二存储器芯片。
可选地,开关单元包括开关管、第一电阻和第一电源;
第一电源通过第一电阻与第二存储器芯片的接地端引脚连接,开关管的第一端与BIOS连接、第二端与第二存储器芯片的接地端引脚连接、第三端接地。
可选地,开关管为三极管或MOS管。
可选地,第二存储单元还包括地址单元,地址单元包括上拉电阻和下拉电阻;
地址单元用于通过上拉电阻和/或下拉电阻设置第二存储单元的第二寻址地址。
可选地,第二存储单元的第二寻址地址为第二存储器芯片的第二寻址地址。
第二方面,本申请实施例提供了一种安全内存条的启动方法,应用于BIOS,安全内存条插接于主板的插槽上,该方法包括:
从第一存储单元读取安全内存条的密钥;
解密密钥得到安全内存条的产品信息,产品信息包括第二存储单元的第二寻址地址;
根据第二寻址地址从第二存储单元中读取安全内存条对应的SPD颗粒参数信息;
根据SPD颗粒参数信息启动安全内存条。
可选地,在从第一存储单元读取安全内存条的密钥之前,该方法还包括:
若第一存储单元未存储有第一寻址地址,则初次从第一存储单元读取安全内存条的密钥;
获取安全内存条所插接的插槽的插槽地址;
将密钥与插槽地址绑定后,回写入第一存储单元,使插槽地址作为第一存储单元的第一寻址地址。
可选地,该方法还包括:判断第一存储单元是否存储有第一寻址地址。
可选地,在根据第二寻址地址从第二存储单元中读取安全内存条对应的SPD颗粒参数信息之前,该方法还包括:
从产品信息中提取安全内存条的身份标识,
根据身份标识查找出对应的标准库,
根据标准库内的标准信息校验产品信息中的身份信息,
根据第二寻址地址从第二存储单元中读取安全内存条对应的SPD颗粒参数信息,包括:
若成功校验产品信息,则根据第二寻址地址从第二存储单元中读取安全内存条对应的SPD颗粒参数信息。
可选地,身份标识可以为品牌型号。
可选地,在根据第二寻址地址从第二存储单元中读取安全内存条对应的SPD颗粒参数信息之前,方法还包括:
若成功校验产品信息,向第二存储单元发送启动信号,以开启第二存储器芯片。
第三方面,本申请实施例提供了一种安全内存条的启动装置,该装置包括:
读取模块,用于从第一存储单元读取安全内存条的密钥;
解密模块,用于解密密钥得到安全内存条的产品信息,产品信息包括第二存储单元的第二寻址地址;
读取模块,还用于根据第二寻址地址从第二存储单元中读取安全内存条对应的SPD颗粒参数信息;
启动模块,用于根据SPD颗粒参数信息启动安全内存条。
第四方面,本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时,使得处理器执行如前面任一项的方法的步骤。
第五方面,本申请实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时执行如前面任一项的方法的步骤。
本申请实施例提供的上述技术方案与现有技术相比具有如下优点:
本申请实施例提供的安全内存条包括:第一存储单元和第二存储单元;在安全内存条插接在主板上时,第一存储单元和第二存储单元分别通过数据总线与BIOS进行数据传输;第一存储单元用于存储安全内存条对应的密钥;第一存储单元还用于若接收到BIOS的第一数据读取请求,则将密钥通过数据总线发送给BIOS进行解密;第二存储单元用于存储安全内存条对应的SPD颗粒参数信息;第二存储单元还用于在开启状态下,若接收到BIOS的第二数据读取请求,则将SPD颗粒参数信息发送给BIOS,使BIOS根据SPD颗粒参数信息开启计算机设备。通过本申请能够对内存条中的SPD相关数据进行保护,不被黑客篡改,确保计算机系统正常开机或启动,简单有效,实用性强,适用范围广泛,具有较高的推广使用价值。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一实施例提供的一安全内存条的应用原理框图;
图2为本申请一实施例提供的一第一存储单元的电路图;
图3为本申请一实施例提供的一第二存储单元的电路原理图;
图4本申请一实施例提供的一第二存储单元的电路图;
图5本申请另一实施例提供的一第二存储单元的电路图;
图6本申请另一实施例提供的一第二存储单元的电路图;
图7本申请一实施例提供的一安全内存条的部分接口图;
图8为本申请一实施例提供的一安全内存条的启动方法的流程示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为本申请一实施例提供的一安全内存条的应用原理框图。参考图1,该安全内存条100包括第一存储单元110和第二存储单元120。在安全内存条100插接在计算机或电脑主板上时,第一存储单元110和第二存储单元120分别通过数据总线300与BIOS(符号为200)进行数据传输。
第一存储单元110用于存储安全内存条100对应的密钥。
第二存储单元用于存储安全内存条100对应的SPD颗粒参数信息。
BIOS成功解密该密钥后才能从第二存储单元120中读取SPD颗粒参数信息。
BIOS通过寻址才能分别与第一存储单元110和第二存储单元120进行数据传输。
第一存储单元110还用于若接收到BIOS的第一数据读取请求,则将密钥通过数据总线300发送给BIOS进行解密。
第二存储单元120还用于在开启状态下,若接收到BIOS的第二数据读取请求,则将SPD颗粒参数信息发送给BIOS,BIOS根据SPD颗粒参数信息开启计算机设备。
BIOS是英文"Basic Input Output System"的缩略词,直译过来后中文名称就是"基本输入输出系统"。BIOS是个人电脑启动时加载的第一个软件。它是一组固化到计算机内主板上一个ROM芯片上的程序,它保存着计算机最重要的基本输入输出的程序、开机后自检程序和系统自启动程序,它可从CMOS中读写系统设置的具体信息。其主要功能是为计算机提供最底层的、最直接的硬件设置和控制。
在BIOS未成功解密密钥之前,第二存储单元120是处于未启动状态下的,此时,第二存储单元120不会与外界进行数据传输,外界不能读取第二存储单元120中的数据。从而保证了第二存储单元120中的SPD颗粒参数信息的安全。
第二存储单元120是在BIOS成功解密密钥,由BIOS控制开启的。
在一个具体实施例中,第一存储单元110包括第一存储器芯片,第二存储单元120包括第二存储器芯片;第一存储器芯片和第二存储器芯片均为EEPROM存储器芯片。
具体地,本申请的安全内存条中的第一存储器芯片和第二存储器芯片使安全内存条100构成双EEPROM串行结构。
EEPROM(Electrically Erasable Programmable read only memory)是指带电可擦可编程只读存储器。是一种掉电后数据不丢失的存储芯片。EEPROM可以在电脑上或专用设备上擦除已有信息,重新编程。一般用在即插即用。
在一个具体实施例中,第一存储单元110的第一寻址地址为安全内存条100所插接的插槽的插槽地址。
具体地,插槽为安全内存条100所插接的主板上的插槽,每个插槽都有插槽地址,用插槽地址作为对应安全内存条100的第一存储单元110的寻址地址。
第一存储单元110的第一寻址地址是通过BIOS将对应的插槽地址写入第一存储器芯片的。第一存储单元的第一寻址地址为第一存储器芯片的第一寻址地址。
图2为本申请一实施例提供的一第一存储单元的电路图。参考图2,芯片U1为第一存储器芯片,芯片U1的第一引脚、第二引脚、第三引脚为该芯片的地址引脚,BIOS通过芯片U1的第一引脚、第二引脚、第三引脚向芯片U1写入对应的插槽地址,实现握手。芯片U1的第四引脚接地、第八引脚接电源、第六引脚接数据总线的串行时钟线SCL、第五引脚接数据总线的串行数据线SDA。
数据总线为I2C总线。
在一个具体实施例中,第二存储单元还包括开关单元;开关单元用于若接收到BIOS解密成功后发送的启动信号,开启第二存储器芯片。
具体地,BIOS解密成功后会向开关单元发送启动信号,开关单元根据启动信号导通,进而控制第二存储器芯片开启。
在一个具体实施例中,第二存储单元120还包括地址单元,地址单元包括上拉电阻和下拉电阻;地址单元用于通过上拉电阻和/或下拉电阻设置第二存储单元的第二寻址地址。
具体地,地址单元的上拉电阻连接高电平,下拉电阻连接低电平,从而使得第二存储单元通过上拉电阻和/或下拉电阻能够获取到第二寻址地址。
具体地,第二存储单元120中第二存储器芯片有多个引脚构成地址引脚,每个引脚只能接一个上拉电阻或一个下拉电阻,每个上拉电阻接高电平,每个下拉电阻接低电平,使用这多个具有高低电平的引脚设置了第二存储单元120的第二寻址地址。
第二存储单元的第二寻址地址为第二存储器芯片的第二寻址地址。
图3为本申请一实施例提供的一第二存储单元的电路原理图。参考图3,芯片U2为第二存储器芯片,芯片U2的第一引脚、第二引脚、第三引脚为地址引脚,芯片U2的第一引脚、第二引脚、第三引脚均可以选择连接一个上拉电阻或一个下拉电阻。
具体地,芯片U2的第一引脚可以通过上拉电阻R1连接高电平VDD,或,芯片U2的第一引脚可以通过下拉电阻R2接地以连接低电平。芯片U2的第一引脚在上拉电阻R1和下拉电阻R2中只能择一连接,不能同时连接(图3只是为了说明该引脚可以连接上拉电阻或下拉电阻的示意图,并不是U2芯片地址单元的实际电路图)。芯片U2的第一引脚通过上拉电阻R1连接高电平VDD时,第一引脚为高电平,用1表示;芯片U2的第一引脚通过下拉电阻R2接地以连接低电平时,第一引脚为低电平,用0表示。
具体地,芯片U2的第二引脚可以通过上拉电阻R3连接高电平VDD,或,芯片U2的第二引脚可以通过下拉电阻R4接地以连接低电平。芯片U2的第二引脚在上拉电阻R3和下拉电阻R4中只能择一连接,不能同时连接(图3只是为了说明该引脚可以连接上拉电阻或下拉电阻的示意图,并不是U2芯片地址单元的实际电路图)。芯片U2的第二引脚通过上拉电阻R3连接高电平VDD时,第二引脚为高电平,用1表示;芯片U2的第二引脚通过下拉电阻R4接地以连接低电平时,第二引脚为低电平,用0表示。
具体地,芯片U2的第三引脚可以通过上拉电阻R5连接高电平VDD,或,芯片U2的第三引脚可以通过下拉电阻R6接地以连接低电平。芯片U2的第三引脚在上拉电阻R5和下拉电阻R6中只能择一连接,不能同时连接(图3只是为了说明该引脚可以连接上拉电阻或下拉电阻的示意图,并不是U2芯片地址单元的实际电路图)。芯片U2的第三引脚通过上拉电阻R5连接高电平VDD时,第三引脚为高电平,用1表示;芯片U2的第三引脚通过下拉电阻R6接地以连接低电平时,第三引脚为低电平,用0表示。
芯片U2的第一引脚、第二引脚、第三引脚组成芯片U2的地址单元,第一引脚、第二引脚、第三引脚都可能被设置为连接高电平或低电平,通过第一引脚、第二引脚、第三引脚共同用来确定芯片U2的地址。通过第一引脚、第二引脚、第三引脚可以确定8个地址。每个地址可以作为该安全内存条的标识。第一引脚为地址的低位,第三引脚为地址的高位。
例如:若第一引脚接低电平、第二引脚接低电平、第三引脚接低电平,则第二寻址地址为000。
若第一引脚接高电平、第二引脚接低电平、第三引脚接低电平,则第二寻址地址为001。
若第一引脚接低电平、第二引脚接高电平、第三引脚接低电平,则第二寻址地址为010。
如此类推,总共有8个地址可用,分别为:000、001、010、011、100、101、110、111。
这8个地址可以用来指代某个品牌生产的8种不同类型的内存条或行业公知的8种不同类型的内存条。例如:001代表DIMM,010代表SODIMM,100代表RDIMM,等不局限于此,以上仅仅是举例说明,具体如何定义,可以根据实际情况设置。且这8个地址,不一定全部使用,可以使用部分。
图4本申请一实施例提供的一第二存储单元的电路图、图5本申请另一实施例提供的一第二存储单元的电路图、图6本申请另一实施例提供的一第二存储单元的电路图。参考图4-6,芯片U2的第二寻址地址分别为000、001、010。
参考图4,芯片U2的第二寻址地址为000时,芯片U2的第一引脚通过下拉电阻R2接低电平、第二引脚通过下拉电阻R4接低电平、第三引脚通过下拉电阻R6接低电平。
参考图5,芯片U2的第二寻址地址为001时,芯片U2的第一引脚通过上拉电阻R1接高电平、第二引脚通过下拉电阻R4接低电平、第三引脚通过下拉电阻R6接低电平。
参考图6,芯片U2的第二寻址地址为010时,芯片U2的第一引脚通过下拉电阻R2接低电平、第二引脚通过上拉电阻R3接高电平、第三引脚通过下拉电阻R6接低电平。
芯片U2的第八引脚接电源VDD,第六引脚接数据总线的串行时钟线SCL,第五引脚接数据总线的串行数据线SDA。
在一个具体实施例中,开关单元包括开关管、第一电阻和第一电源;第一电源通过第一电阻与第二存储器芯片的接地端引脚连接,开关管的第一端与BIOS连接、第二端与第二存储器芯片的接地端引脚连接、第三端接地。
具体地,开关管为三极管或MOS管。若开关管为三极管,则三极管的基极与BIOS连接、发射极接地、集电极与第二存储器芯片的接地端引脚连接。BIOS具体依次通过安全内存条所插接的插槽接口、安全内存条的金手指将启动信号发送至三极管的基极,使三极管导通,进而使整个第二存储器芯片启动。
具体参考图3,三极管Q1为NPN型三极管,三极管Q1的基极接收BIOS发送的启动信号EPR,三极管Q1的发射极接地,三极管Q1的集电极通过电阻R7接电源VDD,三极管Q1的集电极还接芯片U2的第四引脚,第四引脚为芯片U2的接地端。
图7本申请一实施例提供的一安全内存条的部分接口图;参考图7,安全内存条的第139、140、238接口分别与芯片U1第一引脚、第二引脚、第三引脚连接;安全内存条的第139、140、238接口还分别与芯片U2第一引脚、第二引脚、第三引脚连接;安全内存条的第144接口与芯片U2的开关管的第一端(例如三极管的基极)连接,安全内存条的第141接口与数据总线的串行时钟线SCL连接,还与芯片U1的第六引脚、芯片U2的第六引脚连接,安全内存条的第285接口与数据总线的串行数据线SDA连接,还与芯片U1的第五引脚、芯片U2的第五引脚连接。
芯片U1和U2共用SCL、SDA信号,但是U1、U2寻址方式不同,寻址地址分离。EPR为芯片U2的使能信号。
本申请中芯片U2所在的第二存储单元的电路可空贴,芯片U1所在的第一存储单元的电路可以烧回SPD颗粒参数信息,使得安全内存条回归现有技术中的内存条,且仍能正常启动,以兼容常规主板。
图8为本申请一实施例提供的一安全内存条的启动方法的流程示意图。参考图8,该安全内存条的启动方法应用于BIOS,安全内存条插接于主板的插槽上,该方法包括以下步骤:
S100:从第一存储单元读取安全内存条的密钥;
S200:解密密钥得到安全内存条的产品信息,产品信息包括第二存储单元的第二寻址地址;
具体地,BIOS启动后,通过数据总线发送第一数据读取请求,该第一数据读取请求中包括了第一存储单元的第一寻址地址和第一读取指令,第一存储单元通过第一寻址地址匹配到该请求是发送给自己的,根据第一读取指令将存储的密钥通过数据总线返回给BIOS。BIOS从第一存储单元中读取到安全内存条的密钥后,解锁该密钥得到安全内存条的产品信息,产品信息包括第二存储单元的第二寻址地址,还可以包括该安全内存条的身份信息,例如:身份标识、品牌信息、产品型号、行业代号、生产日期、生产厂家、品牌型号等其中的一种或多种。
S300:根据第二寻址地址从第二存储单元中读取安全内存条对应的SPD颗粒参数信息;
S400:根据SPD颗粒参数信息启动安全内存条。
具体地,BIOS获取到第二存储单元的第二寻址地址后,通过数据总线发送第二数据读取请求,该第二数据读取请求包括了第二存储单元的第二寻址地址和第二读取指令,第二存储单元通过第二寻址地址匹配到该请求是发送给自己的,根据第二读取指令将存储的SPD颗粒参数信息通过数据总线返回给BIOS。
BIOS获取到该安全内存条的SPD颗粒参数信息后,控制主板生成日志(启动安全内存条的日志内容),并按照SPD颗粒参数信息启动安全内存条和计算机主机。
SPD颗粒参数信息包括安全内存条的一些配置信息和参数,是启动安全内存条不可随意篡改的重要数据,如果SPD颗粒参数信息被恶意篡改,则导致安全内存条无法正常启动,进而导致计算机死机或无法正常开机。
在一个实施例中,在步骤S100之前,该方法还包括以下步骤:
若第一存储单元未存储有第一寻址地址,则初次从第一存储单元读取安全内存条的密钥;
获取安全内存条所插接的插槽的插槽地址;
将密钥与插槽地址绑定后,回写入第一存储单元,使插槽地址作为第一存储单元的第一寻址地址。
具体地,安全内存条的第一存储单元的第一寻址地址在出厂时为空或者为初始地址,安全内存条的第一存储单元的实际第一寻址地址是通过与BIOS握手,由BIOS写入的插槽地址。
在安全内存条初次插接于主板上的插槽上时,安全内存条的第一存储单元是没有被写入实际的第一寻址地址(即插槽地址)的。因此,BIOS需要判断第一存储单元是否存储有实际的第一寻址地址或插槽地址。
如果没有,则BIOS读取安全内存条的密钥,同时,还会获取该安全内存条所插接的插槽的插槽地址,并将该安全内存条的密钥与插槽地址绑定,形成对应关系,然后回写入第一存储单元,这样BIOS通过该插槽地址就能读取到绑定的密钥,不会造成读取错误。
同时,BIOS还会根据上述事件生成对应的日志。
在一个实施例中,在步骤S300之前,该方法还包括:从产品信息中提取安全内存条的身份标识,根据身份标识查找出对应的标准库,根据标准库内的标准信息校验产品信息中的身份信息。
具体地,身份信息包括:身份标识,身份标识可以为产品型号或品牌型号,不局限于此。身份标识用于确定产品具体型号或为哪一类产品。
身份信息还包括:品牌信息、行业代号、生产日期、生产厂家等其中的一种或多种。
每个内存条生产厂家生产的每款内存条都有属于自己的产品信息或固有属性信息,计算机设备中存储有市面上各种正规内存条的标准信息,通过标准库中的标准信息校验产品信息中的身份信息是否正确,或检验身份信息是否都存在于对应的标准库中,进而验证安全内存条的真伪。此实施例用于校验安全内存条的身份,用于身份验证。
在一个实施例中,步骤S300,包括:若成功校验产品信息,则根据第二寻址地址从第二存储单元中读取安全内存条对应的SPD颗粒参数信息。
具体地,若成功校验产品信息中的身份信息,BIOS才会向第二存储单元发送启动信号EPR,以开启第二存储单元中的第二存储器芯片。
具体地,BIOS控制主板上对应的插槽向安全内存条的第144接口发送启动信号,安全内存条第144接口与第二存储单元的开关管的第一端连接,从而启动信号传输至开关管的第一端,进而启动第二存储单元。
在一个实施例中,在步骤S300之前,该方法还包括:获取安全内存条当前对应的实际插槽地址;
验证当前对应的实际插槽地址与回写入第一存储单元的插槽地址是否匹配;
若不匹配,则验证失败;
若匹配,则验证成功。
该实施例验证插槽地址是验证该安全内存条是否在位,即是否插接于主板对应的插槽上。
在一个实施例中,步骤S300,包括:
若成功校验产品信息中的身份信息,且,成功验证第一存储单元中的插槽地址,则根据第二寻址地址从第二存储单元中读取安全内存条对应的SPD颗粒参数信息。
若校验产品信息中的身份信息失败,或,验证第一存储单元中的插槽地址失败,则禁止根据第二寻址地址从第二存储单元中读取安全内存条对应的SPD颗粒参数信息,安全内存条启动失败或计算机设备启动失败。
在一个实施例中,读取到安全内存条对应的SPD颗粒参数信息后,BIOS发送关闭信号,使第二存储单元重新进入关闭状态或未启动状态。保证计算机启动后第二存储单元中的SPD颗粒参数信息处于保密状态,不能被网络黑客获取到,再次保证了安全内存条信息安全,进而保证计算机设备的系统安全。
本申请通过软硬加密技术,电脑主板CPU控制U1芯片,读取金密钥匙解码,然后硬件控制U2,读取SPD颗粒参数信息来启动计算机,并且生成日志(即启动的记录的参数),解决了内存条容易被黑客攻击篡改的安全问题。
以DIMM内存条为例,本申请的第一寻址地址为对应的DIMM插槽,第二寻址地址为映射的表征产品类型的地址。
在一个实施例中,本申请提供了一种安全内存条的启动装置,该装置包括:
读取模块,用于从第一存储单元读取安全内存条的密钥;
解密模块,用于解密密钥得到安全内存条的产品信息,产品信息包括第二存储单元的第二寻址地址;
读取模块,还用于根据第二寻址地址从第二存储单元中读取安全内存条对应的SPD颗粒参数信息;
启动模块,用于根据SPD颗粒参数信息启动安全内存条。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:从第一存储单元读取安全内存条的密钥;解密密钥得到安全内存条的产品信息,产品信息包括第二存储单元的第二寻址地址;根据第二寻址地址从第二存储单元中读取安全内存条对应的SPD颗粒参数信息;根据SPD颗粒参数信息启动安全内存条。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:从第一存储单元读取安全内存条的密钥;解密密钥得到安全内存条的产品信息,产品信息包括第二存储单元的第二寻址地址;根据第二寻址地址从第二存储单元中读取安全内存条对应的SPD颗粒参数信息;根据SPD颗粒参数信息启动安全内存条。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。

Claims (9)

1.一种安全内存条,其特征在于,所述安全内存条包括:第一存储单元和第二存储单元;
在所述安全内存条插接在主板上时,所述第一存储单元和第二存储单元分别通过数据总线与BIOS进行数据传输;
所述第一存储单元用于存储所述安全内存条对应的密钥;
所述第一存储单元还用于若接收到BIOS的第一数据读取请求,则将所述密钥通过数据总线发送给所述BIOS进行解密,其中所述BIOS解密所述密钥后得到安全内存条的产品信息,对所述产品信息进行校验,成功校验后向第二存储单元发送启动信号,开启所述第二存储单元;
所述第二存储单元用于存储所述安全内存条对应的SPD颗粒参数信息;
所述第二存储单元还用于在开启状态下,若接收到所述BIOS的第二数据读取请求,则将所述SPD颗粒参数信息发送给所述BIOS,使所述BIOS根据所述SPD颗粒参数信息开启计算机设备。
2.根据权利要求1所述的内存条,其特征在于,所述第一存储单元包括第一存储器芯片,所述第二存储单元包括第二存储器芯片;
所述第一存储器芯片和第二存储器芯片均为EEPROM存储器芯片。
3.根据权利要求2所述的内存条,其特征在于,所述第一存储单元的第一寻址地址为所述安全内存条所插接的插槽的插槽地址。
4.根据权利要求2所述的内存条,其特征在于,所述第二存储单元还包括开关单元;
所述开关单元用于若接收到所述BIOS解密成功后发送的启动信号,开启所述第二存储器芯片。
5.根据权利要求4所述的内存条,其特征在于,所述开关单元包括开关管、第一电阻和第一电源;
所述第一电源通过所述第一电阻与所述第二存储器芯片的接地端引脚连接,所述开关管的第一端与所述BIOS连接、第二端与所述第二存储器芯片的接地端引脚连接、第三端接地。
6.根据权利要求2所述的内存条,其特征在于,所述第二存储单元还包括地址单元,所述地址单元包括上拉电阻和下拉电阻;
所述地址单元用于通过所述上拉电阻和/或下拉电阻设置所述第二存储单元的第二寻址地址。
7.一种安全内存条的启动方法,应用于BIOS,所述安全内存条插接于主板的插槽上,其特征在于,所述方法包括:
从第一存储单元读取所述安全内存条的密钥;
解密所述密钥得到所述安全内存条的产品信息,对所述产品信息进行校验,若成功校验所述产品信息,向第二存储单元发送启动信号,以开启所述第二存储单元,所述产品信息包括所述第二存储单元的第二寻址地址;
根据所述第二寻址地址从所述第二存储单元中读取所述安全内存条对应的SPD颗粒参数信息;
根据所述SPD颗粒参数信息启动所述安全内存条,进而开启计算机设备。
8.根据权利要求7所述的方法,其特征在于,在从第一存储单元读取所述安全内存条的密钥之前,所述方法还包括:
若第一存储单元未存储有第一寻址地址,则初次从第一存储单元读取所述安全内存条的密钥;
获取所述安全内存条所插接的插槽的插槽地址;
将所述密钥与所述插槽地址绑定后,回写入所述第一存储单元,使所述插槽地址作为所述第一存储单元的第一寻址地址。
9.根据权利要求7所述的方法,其特征在于,在根据所述第二寻址地址从所述第二存储单元中读取所述安全内存条对应的SPD颗粒参数信息之前,所述方法还包括:
从所述产品信息中提取所述安全内存条的身份标识,
根据所述身份标识查找出对应的标准库,
根据所述标准库内的标准信息校验所述产品信息中的身份信息,
所述根据所述第二寻址地址从所述第二存储单元中读取所述安全内存条对应的SPD颗粒参数信息,包括:
若成功校验所述产品信息,则根据所述第二寻址地址从所述第二存储单元中读取所述安全内存条对应的SPD颗粒参数信息。
CN202011340261.XA 2020-11-25 2020-11-25 安全内存条及安全内存条的启动方法 Active CN112560120B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011340261.XA CN112560120B (zh) 2020-11-25 2020-11-25 安全内存条及安全内存条的启动方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011340261.XA CN112560120B (zh) 2020-11-25 2020-11-25 安全内存条及安全内存条的启动方法

Publications (2)

Publication Number Publication Date
CN112560120A CN112560120A (zh) 2021-03-26
CN112560120B true CN112560120B (zh) 2024-04-05

Family

ID=75043654

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011340261.XA Active CN112560120B (zh) 2020-11-25 2020-11-25 安全内存条及安全内存条的启动方法

Country Status (1)

Country Link
CN (1) CN112560120B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114489852B (zh) * 2022-01-20 2024-03-01 飞腾信息技术有限公司 内存芯片的启动方法、装置、计算机设备及存储介质
CN114579198B (zh) * 2022-01-20 2024-02-20 飞腾信息技术有限公司 内存芯片的启动方法、装置、计算机设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030008517A (ko) * 2001-07-18 2003-01-29 삼성전자 주식회사 바이오스롬 및 그 바이오스롬이 장착된 컴퓨터 시스템 및바이오스롬의 저장방법
CN101078991A (zh) * 2006-05-23 2007-11-28 环达电脑(上海)有限公司 基于bios读写内存spd的计算机系统信息保存和读取方法
CN102289622A (zh) * 2011-09-01 2011-12-21 西安电子科技大学 基于认证策略文件和硬件信息收集的可信开机启动方法
CN103368916A (zh) * 2012-04-01 2013-10-23 百度在线网络技术(北京)有限公司 基于硬件信息的计算机终端可信证明生成技术
CN110309374A (zh) * 2019-05-22 2019-10-08 深圳市金泰克半导体有限公司 一种解析方法、系统、终端设备及计算机可读存储介质
CN110888679A (zh) * 2019-11-08 2020-03-17 苏州浪潮智能科技有限公司 一种内存兼容方法、装置、设备及介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070239996A1 (en) * 2006-03-20 2007-10-11 Cromer Daryl C Method and apparatus for binding computer memory to motherboard
CN102624699B (zh) * 2012-01-19 2015-07-08 歌尔声学股份有限公司 一种保护数据的方法和系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030008517A (ko) * 2001-07-18 2003-01-29 삼성전자 주식회사 바이오스롬 및 그 바이오스롬이 장착된 컴퓨터 시스템 및바이오스롬의 저장방법
CN101078991A (zh) * 2006-05-23 2007-11-28 环达电脑(上海)有限公司 基于bios读写内存spd的计算机系统信息保存和读取方法
CN102289622A (zh) * 2011-09-01 2011-12-21 西安电子科技大学 基于认证策略文件和硬件信息收集的可信开机启动方法
CN103368916A (zh) * 2012-04-01 2013-10-23 百度在线网络技术(北京)有限公司 基于硬件信息的计算机终端可信证明生成技术
CN110309374A (zh) * 2019-05-22 2019-10-08 深圳市金泰克半导体有限公司 一种解析方法、系统、终端设备及计算机可读存储介质
CN110888679A (zh) * 2019-11-08 2020-03-17 苏州浪潮智能科技有限公司 一种内存兼容方法、装置、设备及介质

Also Published As

Publication number Publication date
CN112560120A (zh) 2021-03-26

Similar Documents

Publication Publication Date Title
US9514063B2 (en) Secure compact flash
KR102453780B1 (ko) 액세스 보호 기법을 안전화하기 위한 장치 및 방법
US9229706B2 (en) Method and apparatus for field firmware updates in data storage systems
US8909900B2 (en) Storage device and method for updating data in a partition of the storage device
US20070006290A1 (en) USB-compliant personal key
TWI451248B (zh) 資料保護方法、記憶體控制器與記憶體儲存裝置
TW200832427A (en) Virtual secure on-chip one time programming
US20080163350A1 (en) Portable information security device
CN112560120B (zh) 安全内存条及安全内存条的启动方法
US8166561B2 (en) Security device, secure memory system and method using a security device
CN101968834A (zh) 电子产品的防抄板加密方法和装置
US20080263542A1 (en) Software-Firmware Transfer System
US20190196725A1 (en) Nvdimm with removable storage
JP2000112824A (ja) メモリシステム
US11533172B2 (en) Apparatus and method for securely managing keys
KR100661894B1 (ko) 서브시스템 장치를 마더보드에 바인딩하는 방법 및 구조물
JP5163522B2 (ja) Usbストレージデバイス、ホストコンピュータ、usbストレージシステム、およびプログラム
CN115688120A (zh) 安全芯片固件导入方法、安全芯片及计算机可读存储介质
CN111695164B (zh) 电子设备及其控制方法
JP5767657B2 (ja) 不揮発性メモリが記憶するデータを保護する方法およびコンピュータ
KR20240005406A (ko) 사용자 인증을 수행하는 보안 프로세서, 및 그것을 포함하는 사용자 장치
US20030149877A1 (en) Smart card with keypro function
CN118171262A (zh) 用于安全启动的镜像数据组织方法及装置、电子设备
CN114996773A (zh) 一种soc芯片启动方法、装置及可读存储介质

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