首页 / 专利库 / 资料储存系统 / 大容量存储 / 只读存储器 / 安全地执行加密操作

安全地执行加密操作

阅读:507发布:2020-05-08

专利汇可以提供安全地执行加密操作专利检索,专利查询,专利分析的服务。并且这里公开了用于安全地执行加密操作的方法、系统和装置,包括编码在计算机存储介质上的 计算机程序 。方法之一包括:接收与用户相关联的 生物 特征信息和用以基于存储在身份加密芯片(ICC)的 存储器 中的一个或多个加密密钥执行一个或多个加密操作的 请求 ;将与用户相关联的生物特征信息和作为预先存储的生物特征信息预先存储在ICC的存储器中的生物特征信息比较;以及响应于确定生物特征信息与预先存储的生物特征信息匹配,授权执行一个或多个加密操作。,下面是安全地执行加密操作专利的具体信息内容。

1.一种计算机实施的用于安全地执行加密操作的方法,所述方法包括:
接收与用户相关联的生物特征信息以及用以基于存储在身份加密芯片ICC的存储器中的一个或多个加密密钥执行一个或多个加密操作的请求
将所述与用户相关联的生物特征信息和作为预先存储的生物特征信息预先存储在所述ICC的所述存储器中的生物特征信息比较;以及
响应于确定所述生物特征信息与所述预先存储的生物特征信息匹配,授权执行所述一个或多个加密操作。
2.如权利要求1所述的计算机实施的方法,还包括:
执行所述一个或多个加密操作以产生操作结果;以及
将所述操作结果发送到能够通信地耦接到所述ICC的计算设备以呈现给所述用户。
3.如权利要求1或2所述的计算机实施的方法,其中,所述请求用于以预定次数执行所述一个或多个加密操作和/或在预定时间段中执行所述一个或多个加密操作,所述一个或多个加密操作被授权执行预定次数和/或在预定时间段中执行,并且所述计算机实施的方法还包括:
生成记录所述预定次数和/或所述预定时间段的令牌;
临时存储所述令牌直到所述令牌到期,其中,所述令牌响应于执行所述一个或多个加密操作达到所述预定次数或者经过了所述预定时间段而到期;以及
将所述令牌发送到所述计算设备。
4.如权利要求2或3所述的计算机实施的方法,其中,所述请求是第一请求,所述操作结果是第一操作结果,并且所述方法还包括:
接收用以执行加密操作的第二请求;
确定所述令牌未到期;以及
执行所述加密操作以产生第二操作结果。
5.如权利要求4所述的计算机实施的方法,其中,所述第一请求用于对第一数据进行解密,所述第二操作结果是所述第一数据的明文,所述生物特征信息是第一生物特征信息,并且所述计算机实施的方法还包括:
接收第二生物特征信息和用以对与所述第一数据的明文相关联的第二数据进行加密的第三请求;
响应于确定所述第二生物特征信息与所述预先存储的生物特征信息匹配,对所述第二数据进行加密以提供加密的第二数据;以及
将所述加密的第二数据发送到所述计算设备。
6.如前述权利要求中任一项所述的计算机实施的方法,其中:
基于生物特征识别,执行所述生物特征信息与所述预先存储的生物特征信息的比较;
以及
所述生物特征识别包括指纹识别、声纹识别、虹膜扫描、面部识别和心跳识别中的一个或多个。
7.如前述权利要求中任一项所述的计算机实施的方法,其中,
基于与所述用户相关联的非对称密钥对来执行所述一个或多个加密操作,并且所述加密操作包括进行加密的操作、进行解密的操作和数字签名生成操作中的一个或多个。
8.如前述权利要求中任一项所述的计算机实施的方法,其中,
所述存储器是可编程只读存储器PROM、电可擦除PROM即EEPROM或闪存,并且所述生物特征信息和所述非对称密钥对存储在所述存储器的分开的存储单元中。
9.一种用于安全地执行加密操作的系统,包括:
一个或多个处理器;以及
一个或多个计算机可读存储器,所述计算机可读存储器耦接到所述一个或多个处理器并且其上存储有指令,所述指令能够由所述一个或多个处理器执行以执行权利要求1-8中任一项所述的方法。
10.一种用于安全地执行加密操作的装置,所述装置包括用于执行权利要求1-8中任一项所述的方法的多个模

说明书全文

安全地执行加密操作

技术领域

[0001] 本文涉及身份认证技术和数据安全性。

背景技术

[0002] 身份认证技术通常用于计算机网络中以验证用户身份并确保数据安全性。如同在计算机网络中数字化存储或传送的其他信息一样,身份信息可以由数据集表示。计算机可以基于用户的数字身份来识别和认证用户。对于数据安全性,重要的是确保数字身份属于授权用户,或者换句话说,数字身份与实际身份相匹配。
[0003] 随着技术的发展,已经出现了诸如链网络和物联网(IoT)网络的去中心化系统。在去中心化系统下,个人可以安全地自行存储他们自己的身份信息。例如,用户可以持有数字钱包,该数字钱包存储用户可以用来添加数字签名以授权区块链网络或IoT设备上的交易的私钥。私钥通常作为具有加密语义的数据串存储在计算设备上,并且意图仅供用户访问。与其他数据串一样,私钥可潜在地被复制和共享。具有私钥的任何用户都可以控制与该私钥相关联的数字资产。此外,如果私钥丢失,则无法检索数字资产。因此,安全存储和有效使用加密密钥会是重要的。
[0004] 期望开发一种密钥管理技术,该密钥管理技术可以基于用户的真实身份安全地管理加密密钥并执行加密操作。发明内容
[0005] 本文描述了用于基于用户身份信息安全地管理加密密钥并执行加密操作的技术。这些技术通常涉及:接收与用户相关联的生物特征信息以及用以执行一个或多个加密操作的请求;响应于确定生物特征信息与预先存储的生物特征信息匹配,授权执行一个或多个加密操作。
[0006] 本文还提供了一个或多个非暂态计算机可读存储介质,其耦接到一个或多个处理器并且具有存储在其上的指令,当由一个或多个处理器执行时,该指令使得一个或多个处理器根据这里提供的方法的实施例执行操作。
[0007] 本文还提供了用于实施这里提供的方法的系统。该系统包括一个或多个处理器,以及耦接到一个或多个处理器的计算机可读存储介质,其上存储有指令,当由一个或多个处理器执行时,该指令使得一个或多个处理器根据这里提供的方法的实施例执行操作。
[0008] 应理解,根据本文的方法可包括这里描述的方面和特征的任何组合。也就是说,根据本文的方法不限于这里具体描述的方面和特征的组合,还包括所提供的方面和特征的任何组合。
[0009] 在附图和以下描述中阐述了本文的一个或多个实施例的细节。根据说明书和附图以及权利要求,本文的其他特征和优点将显而易见。

附图说明

[0010] 图1是示出用于执行可用于执行本文实施例的处理的身份加密芯片的示例的图。
[0011] 图2是示出根据本文实施例的用于使用身份加密芯片(ICC)执行加密操作的处理的示例的流程图
[0012] 图3是示出根据本文实施例的用于使用ICC生成用于执行一个或多个加密操作的令牌的处理的示例的流程图。
[0013] 图4是示出根据本文实施例的用于基于令牌使用ICC执行一个或多个加密操作的处理的示例的流程图。
[0014] 图5是示出根据本文实施例的密钥管理设备的示例的图。
[0015] 图6是示出根据本文实施例的使用身份信息卡(IIC)执行数据加密和解密的处理的示例的泳道图。
[0016] 图7描绘了根据本文实施例的IIC可以插入、集成或可通信地耦接到的计算设备的示例。
[0017] 图8是示出根据本文实施例的处理的示例的泳道图。
[0018] 图9描绘了可以根据本文实施例执行的方法的示例。
[0019] 图10描绘了根据本文实施例的装置的模块的示例。
[0020] 各附图中相同的附图标记和名称表示相同的元件。

具体实施方式

[0021] 本文描述了用于基于用户身份信息安全地管理加密密钥并执行加密操作的技术。这些技术通常涉及:接收与用户相关联的生物特征信息以及用以执行一个或多个加密操作的请求;响应于确定生物特征信息与预先存储的生物特征信息匹配,授权执行一个或多个加密操作。
[0022] 图1是示出用于执行可用于执行本文的实施例的处理的ICC 100的示例的示图。在较高层面上,ICC 100可以是包括存储器102和逻辑计算组件104的计算机芯片。ICC 100可用于安全地执行加密操作。在一些实施例中,ICC 100可以是包括一个或多个芯片组件的芯片组。存储器102和逻辑计算组件104可以集成到不同的芯片组件中。在一些实施例中,存储器102可用于提供永久存储。在一些示例中,存储器102可以是可编程只读存储器(PROM),其允许数据被写入一次并且之后仅只读。在一些示例中,存储器102可以是电可擦除可编程只读存储器(EEPROM)或闪存,其可以被重新格式化并重新编程。在一些实施例中,逻辑计算组件104可以是专用集成电路(ASIC)或单片机(SCM)。
[0023] 在较高层面上,ICC 100可以是包括存储器102和逻辑计算组件104的计算机芯片。ICC 100可用于安全地执行加密操作。在一些实施例中,ICC100可以是包括一个或多个芯片组件的芯片组。存储器102和逻辑计算组件104可以集成到不同的芯片组件中。在一些实施例中,存储器102可用于提供永久存储。在一些示例中,存储器102可以是可编程只读存储器(PROM),其允许数据被写入一次并且之后仅只读。在一些示例中,存储器102可以是电可擦除可编程只读存储器(EEPROM)或闪存,其可以被重新格式化并重新编程。在一些实施例中,逻辑计算组件可以是专用集成电路(ASIC)或单片机(SCM)。
[0024] 在一些计算机网络中,实施密码术以维护数据或交易的隐私。例如,在区块链网络中,如果两个节点想要保持交易隐私,使得区块链网络中的其他节点不能辨别该交易的细节,则节点可以加密交易数据。示例性加密操作包括但不限于对称密钥加密和非对称密钥加密。对称加密是指使用单个密钥既进行加密(从明文生成密文)又进行解密(从密文生成明文)的加密处理。
[0025] 非对称加密使用密钥对,每个密钥对包括私钥和公钥,私钥仅对相应用户是已知的,并且公钥可以公开地传播。用户可以使用另一用户的公钥来加密数据,并且该加密的数据可以使用该另一用户的私钥来解密。
[0026] 可以使用非对称加密来提供数字签名,这使得交易中的参与者能够确认交易中的其他参与者以及交易的有效性。例如,用户可以对消息进行数字签名,而另一用户可以基于数字签名确认消息是由该用户发送的。数字签名还可用于确保消息在传输过程中不被篡改。例如,用户A将向用户B发送消息。用户A生成消息的哈希值,然后使用其私钥加密哈希值以提供为加密哈希值的数字签名。用户A将数字签名附加到消息,并将带有数字签名的消息发送给用户B。用户B使用用户A的公钥解密数字签名,并提取哈希值。用户B对消息进行哈希处理并比较哈希值。如果哈希值相同,则用户B可以确认该消息确实来自用户A,并且未被篡改。
[0027] ICC 100可以用于基于对用户的身份信息进行验证来安全地管理用户的加密密钥并执行加密操作。在一些实施例中,身份信息可以是用户的例如指纹、声纹、心跳信息以及虹膜信息的生物特征信息。存储器102可用于存储ICC 100的用户的身份信息和加密密钥。存储器102还可以存储身份认证算法(例如,作为计算机可执行代码)和加密操作算法(例如,作为计算机可执行代码)。在一些实施例中,存储在存储器102中的信息和算法被加密以即使在ICC 100被进行逆向工程的情况下也防止泄漏。当从用户接收到用以执行加密操作的请求时,逻辑计算组件104可以使用从用户收集的身份信息和存储在存储器102中的可信用户身份信息,以基于身份认证算法验证用户的身份。例如,如果身份信息是用户指纹的用户指纹图像。则身份认证算法可以是本地认证算法,其将从用户收集的指纹图像和存储的指纹图像进行比较。如果收集的指纹图像与存储的指纹图像匹配,则成功验证用户的身份,逻辑计算组件104随后可以允许存储加密密钥,或者允许使用存储在存储器102中的现有加密密钥来执行所请求的加密操作。在执行加密操作之后,可以由ICC 100输出操作结果。通过使用ICC 100,可以仅在验证或认证用户的身份可信之后存储或执行加密操作。这样,可以保证用户使用ICC 100的权限。此外,由于加密密钥作为密文存储在ICC100中,因此加密操作在ICC 100内部执行。只有操作结果从ICC 100输出。以这种方式,可以确保加密密钥的安全性。
[0028] 在108,将加密操作算法写入ICC 100。加密操作算法可用于执行例如数据加密、数据解密以及数字签名验证的加密操作。在110,可以将身份验证算法写入ICC 100。身份验证算法可以用于验证用户的身份以确定是否可以允许该用户使用ICC 100来执行加密操作。
[0029] 在112,将授权身份信息输入到ICC 100。可以在ICC 100的初始化期间将授权身份信息输入到ICC 100。在一些实施例中,授权身份信息可以是用户的例如指纹、声纹、心跳信息或虹膜信息的生物特征信息。在一些实施例中,授权身份信息可以由ICC 100的所有者输入。如将在本文的实施例中进一步讨论的,输入授权身份信息的用户可以使用该授权身份信息来控制输入到ICC100的加密密钥。除非可以基于授权身份信息验证用户身份,否则不能将加密密钥输入到ICC 100。
[0030] 授权身份信息可以用于执行身份验证以便提供对存储加密密钥或执行加密操作的授权。身份信息可以由与ICC 100可通信地耦接的计算设备收集。例如,计算设备可以是能够检测用户的生物特征信息的智能手表
[0031] 在一些实施例中,清除存储器102的内容并且将授权身份信息写入存储器102。在一些实施例中,存储器102是永久存储存储器。在一些实施例中,为了防止篡改,用户的身份信息只能被写入存储器102的存储单元一次。如果需要使用新的身份信息来替换现有的身份信息,则可以在写入新的身份信息之前擦除存储器102的内容。在一些实施例中,可以在将授权身份信息写入存储器102之前对授权身份信息进行加密以增强安全性。
[0032] 在114,将一个或多个加密密钥写入ICC 100的存储器102。在一些实施例中,在将一个或多个加密密钥写入存储器102之前接收用户的身份信息和用以将一个或多个加密密钥写入存储器102的请求。身份信息可以是例如指纹、声纹、心跳信息或虹膜信息的生物特征信息。身份信息可以由与ICC 100可通信地耦接的计算设备收集。在一些实施例中,从存储器102读取授权身份信息以验证用户的身份。可以基于将在114接收的用户的身份信息与授权身份信息匹配来执行验证。如果身份信息匹配,则验证成功。然后,确定用户为ICC 100的授权用户,并且允许将一个或多个加密密钥写入存储器102。否则,拒绝该请求。在一些实施例中,在将一个或多个加密密钥写入存储器102之前对一个或多个加密密钥进行加密以增强安全性。在一些实施例中,可以将一个或多个加密密钥写入存储器102的与存储授权信息的存储单元分开的存储单元中。
[0033] 在一些实施例中,ICC 100可以接收用户的身份信息和用以执行加密操作的请求。身份信息可以由与ICC 100可通信地耦接的计算设备收集。例如,计算设备可以是能够检测用户的生物特征信息的智能手表。在收集身份信息之后,可以将其发送到ICC 100。在一些实施例中,还将要执行加密操作的数据发送到ICC 100。例如,如果加密操作是加密,则相应的数据可以是要被加密的数据文件。然后,可以从存储器102读取在112写入存储器102中的授权身份信息以执行身份验证。可以基于将在114接收的身份信息与授权身份信息比较来执行身份验证。如果身份信息匹配,则验证成功,并且从存储器102读取相应的加密密钥信息以执行加密操作。如果身份信息不匹配,则验证不成功。然后,可以拒绝用以执行加密操作的请求。在一些实施例中,可以基于所接收的特定类型的身份信息,使用在110写入ICC 
100的身份验证算法来执行身份验证。在一些实施例中,可以基于在108写入ICC 100的加密操作算法来执行加密操作。如上所述,加密操作可以是加密、解密或向数据添加数字签名。
在执行加密操作之后,可以在116输出操作结果。
[0034] 图2是示出根据本文实施例的用于使用ICC执行加密操作的处理200的示例的流程图。在202,接收用以执行加密操作的请求。加密操作的示例可以包括数据加密、解密和添加数字签名。
[0035] 在204,接收用户的身份信息。如在图1的描述中所讨论的那样,身份信息可以由计算设备收集并发送到ICC。在206,可以验证身份信息。在一些实施例中,可以将身份信息与存储在ICC的存储器中的身份信息比较。如果身份信息与存储的身份信息匹配,则验证成功,然后可以在208使用存储在ICC的存储器中的用户的加密密钥执行所请求的加密操作。否则,处理200在212结束。在208之后,处理200进行到210,在此处返回操作结果。操作结果可以取决于在208执行的加密操作。例如,如果加密操作是文件加密,则可以返回使用用户的公钥加密的文件。类似地,如果加密操作是文件解密,则可以返回使用用户的私钥解密的文件。如果加密操作是添加数字签名,则可以返回具有由用户的私钥生成的用户的数字签名的文件。在210之后,处理在212结束。
[0036] 图3是示出根据本文实施例的用于使用ICC生成用于执行一个或多个加密操作的令牌的处理300的示例的流程图。在302,由ICC接收用以对执行一个或多个加密操作的授权的请求。所请求的授权可以是对多次或在预定时间段内执行加密操作的一个或多个授权。例如,在验证用户的身份之后,用户可以无需再次验证其身份而使用ICC以所请求的数量或者在请求的时间段内执行加密操作。示例性加密操作可以包括数据加密、解密或添加数字签名。
[0037] 在304,ICC接收用户的身份信息。身份信息可以由与ICC 100可通信地耦接的计算设备收集。例如,计算设备可以是能够检测用户的例如心跳或指纹信息的生物特征信息的智能手表。在收集身份信息之后,可以将其发送到ICC 100。
[0038] 在306,可以验证所接收的身份信息。可以基于将用户的身份信息与授权身份信息匹配来执行验证。如果身份信息匹配,则验证成功。然后,确定用户为ICC 100的授权用户,并且允许将一个或多个加密密钥写入存储器102。否则,验证不成功,并且处理300在312结束。如果成功验证了身份信息,则在308生成令牌并将其临时存储在ICC中。可以基于在302接收的请求生成令牌。在一些实施例中,令牌可以提供对无需验证用户身份而多次或在预定时间内执行加密操作的授权。例如,可以生成令牌以提供对以下操作的授权,该操作为将数字签名添加到接下来接收到的五个文件或在接下来的三个小时内接收到的文件中,而无论哪个条件首先被满足。在一些实施例中,可以在令牌到期或用完时清除令牌并将其从ICC中移除。
[0039] 在310,返回令牌信息。在一些实施例中,返回的令牌信息可以由用户通过ICC被插入或集成在其中或可通信地耦接到的计算设备来查看。例如,如果基于用以不验证用户身份来执行五次文件加密的请求生成令牌,则用户可以返回和查看这样的信息。在310之后,处理300在312结束。在生成令牌之后,可以基于由令牌指示的用户授权来执行加密操作。在图4的描述中讨论了这样的处理的示例。
[0040] 图4是示出根据本文实施例的用于基于令牌使用ICC执行一个或多个加密操作的处理400的示例的流程图。在402,接收用以执行加密操作的请求。在404,检索临时存储在ICC中的令牌。在406,基于令牌确定所请求的加密操作是否被授权。如果是,则处理400进行到408,在408执行加密操作。在处理400在412结束之前,可以在410返回加密操作结果。例如,如果令牌指示在要求用户身份验证之前可以执行三次进行加密的操作,并且该请求用以执行数据加密,则然后可以授权并执行该对数据进行加密的操作。可以在410返回解密的数据。如果令牌指示在接下来的30分钟内可以执行对文件进行解密的操作,则令牌将在30分钟后到期,并且随后接收的用以执行文件解密的请求是未授权的并且将被拒绝。如果在406确定所请求的操作是未授权的,则处理400在412结束。在一些实施例中,不是在412结束处理400,而是可以提示用户再次验证其身份信息以获得对执行所请求的加密操作的授权。
[0041] 图5是示出根据本文实施例的密钥管理设备500的示例的图。在一些实施例中,可以由密钥管理设备500管理由ICC使用来为用户执行加密操作的加密密钥。密钥管理设备500可以执行密钥管理504和算法管理514。密钥管理504可以包括加密密钥的存储506、写入
508、随机生成510以及删除512。加密密钥是与ICC的授权用户相关联以执行加密操作的密钥。
[0042] 由算法管理514管理的算法可以包括存储和管理身份验证算法516、数字签名验证算法518、加密和解密算法520以及令牌算法522。身份验证算法516可以用于执行如在图3的步骤306的描述中所讨论的身份验证。数字签名验证算法518可用于执行数字签名验证。加密和解密算法520可用于执行如图2的步骤208和图4的步骤408中所讨论的所请求的加密操作。令牌算法522可用于管理无需验证用户身份来执行所请求的加密操作的时间限制或数量限制,如图3和图4的描述中所讨论的。
[0043] 在一些实施例中,密钥管理设备500可以用作ICC的备份。即使ICC丢失或被破坏,也可以从密钥管理设备500检索用于执行加密操作的加密密钥和算法。
[0044] 在一些实施例中,密钥管理设备500还可以执行输入管理524。密钥管理设备500可以可通信地耦接到ICC以管理算法输入526、身份信息输入528、加密密钥输入530、数字签名生成532和身份验证534。
[0045] 图6是示出根据本文实施例的使用身份信息卡(IIC)604执行数据加密和解密的处理600的示例的泳道图。在较高层面上,在计算设备602和IIC 604之间执行处理600。计算设备602请求IIC 604对加密的文件进行解密,从而它可以更新文件。在更新文件之后,计算设备602可以请求由IIC604对更新的文件进行加密并存储加密的文件。
[0046] 计算设备602可以是诸如图7中描绘的计算设备的任何计算设备。图7描绘了根据本文实施例的、IIC可以被插入、集成或可通信地耦接到的计算设备的示例700。在一些实施例中,IIC 702可以是可以被方便地插入计算设备中的电子卡。在一些实施例中,IIC 702可以是容纳IIC 702的外壳硬件封装。在一些实施例中,ICC 704可以被集成或嵌入到IIC 702中。
[0047] IIC 702可以被集成或插入或可通信地耦接到的示例性计算设备可以包括但不限于物联网(IoT)设备706、智能手环708、智能手表710、笔记本电脑712(或台式计算机)或智能手机714。IIC 702可以通过有线或无线连接与计算设备通信。
[0048] 返回参考图6,在606,计算设备602发起或接收文件解密请求。在一些实施例中,计算设备602能够发起文件解密请求。计算设备602可以包括计算机、服务器或智能手机。在一些实施例中,计算设备602可以是例如智能手环或智能手表的可穿戴设备,其可以从能够发起请求的另一计算设备接收解密请求。在608,计算设备602检索要解密的文件。在610,计算设备602使用包括在IIC 604中的ICC收集用于身份验证的身份信息。在一些实施例中,身份信息可以是用户的例如指纹、声纹、心跳信息和虹膜信息的生物特征信息。计算设备602可以包括指纹传感器、麦克、心跳传感器或虹膜扫描仪以收集生物特征信息。然后可以将文件解密请求、文件和收集的身份信息发送到IIC 604。
[0049] 在612,IIC 604接收文件解密请求、文件和身份信息。在614,IIC 604验证所接收的身份信息是否与预先存储的授权身份信息匹配。在图1的描述中讨论了执行验证的细节。如果验证成功,则在616,文件可以由包括在IIC 604中的ICC解密。否则,处理在632结束。解密的文件可以返回到计算设备602。在接收到解密的文件之后,在618,文件可以显示在计算设备602上。在一些实施例中,文件可以被发送到计算机或单独的显示设备以进行显示。在
620,可以更新所显示的文件,并且可以将请求发送回IIC 640以进行加密。在622,计算设备可以收集要由IIC验证的用户的身份信息以进行文件加密。
[0050] 在624,IIC 604接收文件加密请求、更新的文件和身份信息。在626,IIC 604验证身份信息是否与预先存储的授权身份信息匹配。如果验证成功,则处理600进行到628,其中IIC 604对更新的文件进行加密并将加密的更新文件返回到计算设备602。否则,处理600在632结束。在630,计算设备602接收并且存储加密文件。在一些实施例中,计算设备602可以将加密文件转发到另一计算设备以进行存储。
[0051] 图8是示出了根据本文实施例的处理800的示例的泳道图。特别地,可以执行处理800以安全且方便地将数字签名添加到区块链交易中。在较高层面上,处理800可以由可穿戴设备802、智能终端804和区块链节点806执行。智能终端804可以是诸如计算机、智能手机或销售点终端的计算设备。可穿戴设备802可以是例如智能手表或智能手环的可穿戴计算设备。可穿戴设备802可以包括诸如在图1的描述中讨论的ICC的集成的、嵌入的或插入的ICC。区块链节点806可以被称为共识节点,共识节点可以由相应的实体(例如,区块链用户、金融机构、保险公司)操作。区块链中的共识节点可以执行共识协议以将交易添加到区块链并更新区块链网络的整体状态。
[0052] 在808,智能终端804接收交易请求。在810,智能终端收集交易数据以在区块链上执行交易。交易数据可以代表在两个或更多个参与者之间的交易。交易的示例可以包括但不限于交换有价值的东西(例如,资产、产品、服务、货币)。
[0053] 在812,智能终端804计算交易数据的哈希值。哈希处理是将交易数据(作为字符串数据提供)转换为固定长度的哈希值(也作为字符串数据提供)的处理。无法对哈希值进行去哈希处理以获取交易数据。哈希处理确保即使交易数据中的轻微更改也会导致完全不同的哈希值。此外,如上所述,哈希值具有固定长度。也就是说,无论交易数据的大小如何,哈希值的长度都是固定的。哈希处理包括通过哈希函数处理交易数据以生成哈希值。哈希函数的示例包括但不限于输出256位哈希值的安全哈希算法(SHA)-256。
[0054] 在814,智能终端请求可穿戴设备将数字签名添加到经哈希处理的交易数据上。可以使用非对称加密来生成数字签名,这使得交易中的参与者能够确认交易中的另一参与者以及交易的有效性。例如,智能终端804的用户可以使用私钥来对经哈希处理的交易数据进行数字签名,并且接收者可以基于数字签名确认经哈希处理的交易数据是由该用户发送的。数字签名还可用于确保消息在传输过程中不被篡改。
[0055] 在816,可穿戴设备802可以使用嵌入式ICC来验证用户的身份。智能终端804或可穿戴设备802可以收集用户的身份信息。可以将收集的身份信息与预先存储在可穿戴设备802上的授权身份信息比较。如果成功验证了所使用的身份,则可穿戴设备802的ICC可在
818处被用于将数字签名添加到经哈希处理的交易数据,并将经数字签名的经哈希处理的交易数据返回到智能终端804。
[0056] 在820,智能终端804完成交易准备。在822,智能终端804发起交易。在824,区块链节点执行交易。在826,区块链节点将交易结果返回到智能终端804。之后,处理800在828结束。
[0057] 图9描绘了可以根据本文实施例执行的方法900的示例。为了清楚地呈现,以下描述结合本文的其他附图的上下文一般地描述了方法900。然而,应当理解,方法900可以例如由适当的任何系统、环境、软件和硬件,或者系统、环境、软件和硬件的组合来执行。在一些实施例中,方法900的各个步骤可以并行、组合、循环或以任何顺序运行。在一些实施例中,方法900可以由根据本文的实施例描述的ICC执行。
[0058] 在902,接收与用户相关联的生物特征信息和用以基于存储在ICC的存储器中的一个或多个加密密钥来执行一个或多个加密操作的请求。在一些实施例中,基于与用户相关联的非对称密钥对来执行一个或多个加密操作,并且加密操作(cryptographic operation)包括进行加密的操作(encryption operation)、进行解密的操作(decryption operation)和数字签名生成操作中的一个或多个。在一些实施例中,存储器是可编程只读存储器(PROM)、电可擦除PROM(EEPROM)或闪存,并且生物特征信息和非对称密钥对存储在存储器的分开的存储单元中。
[0059] 在904,将与用户相关联的生物特征信息与作为预先存储的生物特征信息预先存储在ICC的存储器中的生物特征信息比较。
[0060] 在906,响应于确定生物特征信息与预先存储的生物特征信息匹配,授权执行一个或多个加密操作。在一些实施例中,执行一个或多个加密操作以产生操作结果。操作结果被发送到可通信地耦接到ICC的计算设备以呈现给用户。
[0061] 在一些实施例中,该请求用于以预定次数或在预定时间段中的至少一个执行一个或多个加密操作,该一个或多个加密操作被授权以预定次数和在预定时间段中的至少一个被执行,并且计算机实施的方法900还包括:生成记录预定次数和预定时间段中的至少一个的令牌;临时存储令牌直到令牌到期,其中,令牌响应于执行一个或多个加密操作达预定次数或经过预定时间段而到期;并将令牌发送给计算设备。
[0062] 在一些实施例中,该请求是第一请求,操作结果是第一操作结果,并且方法900还包括:接收用于执行加密操作的第二请求;确定令牌未到期;以及执行加密操作以产生第二操作结果。在一些实施例中,第一请求用于对第一数据进行解密,第二操作结果是第一数据的明文,生物特征信息是第一生物特征信息,并且计算机实施的方法还包括:接收第二生物特征信息和用于对与第一数据的明文相关联的第二数据进行加密的第三请求;响应于确定第二生物特征信息与预先存储的生物特征信息匹配,对第二数据进行加密以提供加密的第二数据;并将加密的第二数据发送到计算设备。
[0063] 在一些实施例中,基于生物特征识别来执行生物特征信息与预先存储的生物特征信息的比较;并且生物特征识别包括指纹识别、声纹识别、虹膜扫描、面部识别和心跳识别中的一个或多个。
[0064] 图10描绘了根据本文实施例的装置的模块的示例。装置1000可以是ICC的实施例的示例。装置1000可以对应于上述实施例,并且装置1000包括以下:
[0065] 接收模块1002,用于接收与用户相关联的生物特征信息和用以基于存储在ICC的存储器中的一个或多个加密密钥来执行一个或多个加密操作的请求。
[0066] 身份信息比较模块1004,用于将与用户相关联的生物特征信息和作为预先存储的生物特征信息预先存储在ICC的存储器中的生物特征信息比较。
[0067] 授权模块1006,响应于确定生物特征信息与预先存储的生物特征信息匹配,授权执行一个或多个加密操作。
[0068] 在可选实施例中,基于生物特征识别来执行生物特征信息与预先存储的生物特征信息的比较;生物特征识别包括指纹识别、声纹识别、虹膜扫描、面部识别和心跳识别中的一个或多个。
[0069] 在可选实施例中,基于与用户相关联的非对称密钥对来执行一个或多个加密操作,并且加密操作包括进行加密的操作、进行解密的操作和数字签名生成操作中的一个或多个。
[0070] 在可选实施例中,存储器是可编程只读存储器(PROM)、电可擦除PROM(EEPROM)或闪存,并且生物特征信息和非对称密钥对存储在存储器的分开的存储单元中。
[0071] 前述实施例中示出的系统、装置、模块或单元可以通过使用计算机芯片或实体来实施,或者可以通过使用具有特定功能的产品来实施。典型的实施设备是计算机,并且计算机可以是个人计算机、膝上型计算机、蜂窝电话、照相手机、智能手机、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板电脑、可穿戴设备或这些设备的任意组合。
[0072] 对于装置中每个模块的功能和色的实施过程,可以参考前一方法中相应步骤的实施过程。为简单起见,这里省略了细节。
[0073] 由于装置实施基本上对应于方法实施,对于相关部件,可以参考方法实施中的相关描述。先前描述的装置实施仅是示例。被描述为单独部分的模块可以或不是物理上分离的,并且显示为模块的部分可以是或不是物理模块,可以位于一个位置,或者可以分布在多个网络模块上。可以基于实际需求来选择一些或所有模块,以实现本文解决的目标。本领域普通技术人员无需创造性的努即可理解和实现本申请的实施例。
[0074] 本文中描述的技术产生若干技术效果。例如,主题的实施例允许ICC的用户存储多个加密密钥以安全地执行加密操作。可以基于对用户的身份信息进行验证将加密密钥存储到ICC。如果身份信息验证失败,则ICC将拒绝加密密钥信息输入。
[0075] 为了请求ICC执行加密操作,需要收集用户的身份信息,并且该收集的身份信息需要被先前认证并存储在ICC中的身份信息验证为可信。这样,可以确保请求加密操作的用户是加密密钥的所有者。
[0076] 此外,可以在存储到ICC的存储器之前加密身份信息和加密密钥。该信息仅在ICC中解密以执行相应的身份验证和加密操作。加密操作在ICC内部执行,并且仅操作结果从ICC输出。因此,ICC用户的身份信息和加密密钥是安全的,即使ICC被黑客攻击或进行逆向工程也不会被泄露。在一些实施例中,密钥管理设备可用于以密文存储身份信息和加密密钥以向ICC提供备份并进一步增强数据安全性。
[0077] 计算设备可用于收集用户身份信息并发起对加密操作的请求。ICC可以通过各种通信协议与计算设备无线地通信,或者它可以集成或插入到计算设备中以便容易地用于安全的加密操作。
[0078] 本文中描述的主题、动作和操作的实施可以在数字电子电路、有形体现的计算机软件或固件、计算机硬件中实施,包括本文中公开的结构及其结构等同物,或者它们中的一个或多个的组合。本文中描述的主题的实施可以实现为一个或多个计算机程序,例如,编码在计算机程序载体上的一个或多个计算机程序指令模块,用于由数据处理装置执行或控制数据处理装置的操作。例如,计算机程序载体可以包括一个或多个计算机可读存储介质,其具有编码或存储在其上的指令。载体可以是有形的非暂态计算机可读介质,例如磁盘、磁光盘或光盘、固态驱动器随机存取存储器(RAM)、只读存储器(ROM)或其他介质类型。替代地或另外地,载体可以是人工生成的传播信号,例如,机器生成的电、光或电磁信号,其被生成以编码信息以便传输到合适的接收器装置以供数据处理装置执行。计算机存储介质可以是或部分是机器可读存储设备、机器可读存储基板、随机或串行存取存储器设备或它们中的一个或多个的组合。计算机存储介质不是传播信号。
[0079] 计算机程序,也可以被称为或描述为程序、软件、软件应用程序、app、模块、软件模块、引擎、脚本或代码,可以以任何形式的编程语言编写,包括编译或解释性语言、或声明或程序性语言;它可以配置为任何形式,包括作为独立程序,或作为模块、组件、引擎、子程序或适合在计算环境中执行的其他单元,该环境可包括由数据通信网络互连的一个或多个位置上的一台或多台计算机。
[0080] 计算机程序可以但非必须对应于文件系统中的文件。计算机程序可以存储在:保存其他程序或数据的文件的一部分中,例如,存储在标记语言文档中的一个或多个脚本;专用于所讨论的程序的单个文件;或者多个协调文件,例如,存储一个或多个模块、子程序或代码部分的文件。
[0081] 作为示例,用于执行计算机程序的处理器包括通用和专用微处理器,以及任何类型的数字计算机的任何一个或多个处理器。通常,处理器将从耦接到处理器的非暂态计算机可读介质接收用于执行的计算机程序的指令以及数据。
[0082] 术语“数据处理装置”包括用于处理数据的所有类型的装置、设备和机器,包括例如可编程处理器、计算机或者多处理器或计算机。数据处理装置可以包括专用逻辑电路,例如FPGA(现场可编程阵列)、ASIC(专用集成电路)或GPU(图形处理单元)。除了硬件,该装置还可以包括为计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或者它们中的一个或多个的组合的代码。
[0083] 本文中描述的处理和逻辑流程可以由执行一个或多个计算机程序的一台或多台计算机或处理器执行,以通过对输入数据进行操作并生成输出来执行操作。处理和逻辑流程也可以由例如FPGA、ASIC或GPU的专用逻辑电路或专用逻辑电路与一个或多个编程计算机的组合来执行。
[0084] 适合于执行计算机程序的计算机可以基于通用和/或专用微处理器,或任何其他种类的中央处理单元。通常,中央处理单元将从只读存储器和/或随机存取存储器接收指令和数据。计算机的元件可包括用于执行指令的中央处理单元以及用于存储指令和数据的一个或多个存储器设备。中央处理单元和存储器可以补充有专用逻辑电路或结合在专用逻辑电路中。
[0085] 通常,计算机还将包括或可操作地耦接至一个或多个大容量存储设备,以从一个或多个大容量存储设备接收数据或将数据传输到一个或多个大容量存储设备。大容量存储设备可以是例如,磁盘、磁光盘或光盘、固态驱动器或任何其他类型的非暂态计算机可读介质。但是,计算机不需要具有这样的设备。因此,计算机可以耦接到例如一个或多个存储器的本地和/或远程的一个或多个大容量存储设备。例如,计算机可以包括作为计算机的组成部件的一个或多个本地存储器,或者计算机可以耦接到网络中的一个或多个远程存储器。此外,计算机可以嵌入在另一个设备中,例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制台、全球定位系统(GPS)接收器或例如通用串行总线(USB)闪存驱动器的便携式存储设备,仅举几例。
[0086] 组件可以通过直接或经由一个或多个中间件例如电连接或光连接地彼此连接通信而彼此“耦接”。如果其中一个组件集成到另一个组件中,组件也可以彼此“耦接”。例如,集成到处理器中的大容量存储组件(例如,L2高速缓存组件)被“耦接到”处理器。
[0087] 为了提供与用户的交互,本文中描述的主题的实施例可以在计算机上实现或配置为与该计算机通信,该计算机具有:显示设备,例如,LCD(液晶显示器)监视器,用于向用户显示信息;以及输入设备,用户可以通过该输入设备向计算机提供输入,例如键盘和例如鼠标轨迹球触摸板等的指针设备。其他类型的设备也可用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如视觉反馈、听觉反馈或触觉反馈;并且可以接收来自用户的任何形式的输入,包括声音、语音或触觉输入。另外,计算机可以通过向用户使用的设备发送文档和从用户使用的设备接收文档来与用户交互;例如,通过将网页发送到用户设备上的web浏览器以响应于从web浏览器接收的请求,或者通过与在例如智能手机或电子平板电脑等的用户设备上运行的应用程序(app)交互。此外,计算机可以通过向个人设备(例如,运行消息收发应用程序的智能手机)轮流发送文本消息或其他形式的消息来并且从用户接收响应消息来与用户交互。
[0088] 本文使用与系统、装置和计算机程序组件有关的术语“配置为”。对于被配置为执行特定操作或动作的一个或多个计算机的系统,意味着系统已经在其上安装了在操作中使得系统执行该操作或动作的软件、固件、硬件或它们的组合。对于被配置为执行特定操作或动作的一个或多个计算机程序,意味着一个或多个程序包括被数据处理装置执行时促使该装置执行该操作或动作的指令。对于被配置为执行特定操作或动作的专用逻辑电路,意味着该电路具有执行该操作或动作的电子逻辑。
[0089] 虽然本文包含许多具体实施细节,但是这些不应被解释为由权利要求本身限定的对要求保护的范围的限制,而是作为对特定实施例的具体特征的描述。在本文中单个实施例的上下文中描述的多个特征也可以在单个实施例中组合实现。相反,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合在多个实施例中实现。此外,尽管上面的特征可以描述为以某些组合起作用并且甚至最初如此要求保护,但是在一些情况下可以从要求保护的组合中删除该组合的一个或多个特征,并且可以要求保护指向子组合或子组合的变体。
[0090] 类似地,虽然以特定顺序在附图中描绘了操作并且在权利要求中叙述了操作,但是这不应该被理解为:为了达到理想的效果,要求以所示的特定顺序或依次执行这些操作,或者要求执行所有示出的操作。在一些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的划分不应被理解为在所有实施例中都要求如此划分,而应当理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中或打包成多个软件产品。
[0091] 已经描述了主题的特定实施例。其他实施例在以下权利要求的范围内。例如,权利要求中记载的动作可以以不同的顺序执行并且仍然实现期望的结果。作为一个示例,附图中描绘的处理无需要求所示的特定顺序或次序来实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈