CN111125731A - 一种基于可验证声明的业务处理方法、装置及设备 - Google Patents

一种基于可验证声明的业务处理方法、装置及设备 Download PDF

Info

Publication number
CN111125731A
CN111125731A CN201911277737.7A CN201911277737A CN111125731A CN 111125731 A CN111125731 A CN 111125731A CN 201911277737 A CN201911277737 A CN 201911277737A CN 111125731 A CN111125731 A CN 111125731A
Authority
CN
China
Prior art keywords
verifiable
declaration
statement
field
service
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.)
Pending
Application number
CN201911277737.7A
Other languages
English (en)
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.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou Information Technology 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 Alipay Hangzhou Information Technology Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN201911277737.7A priority Critical patent/CN111125731A/zh
Publication of CN111125731A publication Critical patent/CN111125731A/zh
Priority to TW109115728A priority patent/TW202123040A/zh
Priority to PCT/CN2020/121874 priority patent/WO2021114872A1/zh
Pending legal-status Critical Current

Links

Images

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/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Storage Device Security (AREA)

Abstract

本说明书实施例公开了一种基于可验证声明的业务处理方法、装置及设备,所述方法包括:接收目标业务的业务处理请求,其中,所述目标业务基于可验证声明进行处理,所述业务处理请求包括经第一数据处理规则处理的所述可验证声明;经第一数据处理规则处理的所述可验证声明中,所述目标业务所需的声明字段的字段值为明文,其余声明字段中的至少一个声明字段的字段值为经过基于指定散列算法加密处理的密文;然后,可以对所述可验证声明的有效性进行验证;若验证结果为有效,则基于所述可验证声明中所述目标业务所需的声明字段的字段值,执行所述目标业务对应的业务处理。

Description

一种基于可验证声明的业务处理方法、装置及设备
技术领域
本说明书涉及计算机技术领域,尤其涉及一种基于可验证声明的业务处理方法、装置及设备。
背景技术
随着数字化的发展,个人、组织或实体在网络环境中如何定义其身份,以及如何有效地保护其隐私数据,成为人们面对的一个重要问题。通常,使用互联网服务产生的用户数据几乎不由用户个人掌控,用户身份信息泄露或被售卖的情况时有发生。为此,需要在进行数据交互的过程中进行身份验证。
通常,可以采用数字身份唯一性的身份验证方式,但是该身份验证方式下,只能在相同场景或指定的场景中进行,而在不同场景中往往无法共识互认,为身份验证的应用和管理都带来了很大的不便,为此,需要提供一种能够有效保障用户信息被安全存储、用户可以管理其用户信息,并可以将用户信息可控的出示给相关第三方的技术方案。
发明内容
本说明书实施例的目的是提供一种基于可验证声明的业务处理方法、装置及设备,以提供一种能够有效保障用户信息被安全存储、用户可以管理其用户信息,并可以将用户信息可控的出示给相关第三方的技术方案。
为了实现上述技术方案,本说明书实施例是这样实现的:
本说明书实施例提供的一种基于可验证声明的业务处理方法,所述方法包括:接收目标业务的业务处理请求,其中,所述目标业务基于可验证声明进行处理,所述业务处理请求包括经第一数据处理规则处理的所述可验证声明;经第一数据处理规则处理的所述可验证声明中,所述目标业务所需的声明字段的字段值为明文,其余声明字段中的至少一个声明字段的字段值为经过基于指定散列算法加密处理的密文。对所述可验证声明的有效性进行验证。若验证结果为有效,则基于所述可验证声明中所述目标业务所需的声明字段的字段值,执行所述目标业务对应的业务处理。
本说明书实施例提供的一种基于可验证声明的业务处理方法,所述方法包括:根据可验证声明的持有用户的待处理的目标业务,确定所述目标业务所需的目标声明字段;所述目标声明字段为所述可验证声明中的至少一个声明字段。基于第一数据处理规则对所述可验证声明进行数据处理;所述第一数据处理规则包括:将所述目标声明字段的字段值保持为明文,对所述可验证声明中除所述目标声明字段外的其他声明字段中的至少一个声明字段的字段值进行加密处理,所述加密处理为基于指定散列算法的加密处理。基于数据处理后的可验证声明,进行所述目标业务对应的业务处理。
本说明书实施例提供的一种基于可验证声明的业务处理装置,所述装置包括:请求接收模块,接收目标业务的业务处理请求,其中,所述目标业务基于可验证声明进行处理,所述业务处理请求包括经第一数据处理规则处理的所述可验证声明;经第一数据处理规则处理的所述可验证声明中,所述目标业务所需的声明字段的字段值为明文,其余声明字段中的至少一个声明字段的字段值为经过基于指定散列算法加密处理的密文。验证模块,对所述可验证声明的有效性进行验证。业务处理模块,若验证结果为有效,则基于所述可验证声明中所述目标业务所需的声明字段的字段值,执行所述目标业务对应的业务处理。
本说明书实施例提供的一种基于可验证声明的业务处理装置,所述装置包括:字段确定模块,根据可验证声明的持有用户的待处理的目标业务,确定所述目标业务所需的目标声明字段;所述目标声明字段为所述可验证声明中的至少一个声明字段。数据处理模块,基于第一数据处理规则对所述可验证声明进行数据处理;所述第一数据处理规则包括:将所述目标声明字段的字段值保持为明文,对所述可验证声明中除所述目标声明字段外的其他声明字段中的至少一个声明字段的字段值进行加密处理,所述加密处理为基于指定散列算法的加密处理。业务处理模块,基于数据处理后的可验证声明,进行所述目标业务对应的业务处理。
本说明书实施例提供的一种基于可验证声明的业务处理设备,所述基于可验证声明的业务处理设备包括:处理器;以及被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:接收目标业务的业务处理请求,其中,所述目标业务基于可验证声明进行处理,所述业务处理请求包括经第一数据处理规则处理的所述可验证声明;经第一数据处理规则处理的所述可验证声明中,所述目标业务所需的声明字段的字段值为明文,其余声明字段中的至少一个声明字段的字段值为经过基于指定散列算法加密处理的密文。对所述可验证声明的有效性进行验证。若验证结果为有效,则基于所述可验证声明中所述目标业务所需的声明字段的字段值,执行所述目标业务对应的业务处理。
本说明书实施例提供的一种基于可验证声明的业务处理设备,所述基于可验证声明的业务处理设备包括:处理器;以及被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:根据可验证声明的持有用户的待处理的目标业务,确定所述目标业务所需的目标声明字段;所述目标声明字段为所述可验证声明中的至少一个声明字段。基于第一数据处理规则对所述可验证声明进行数据处理;所述第一数据处理规则包括:将所述目标声明字段的字段值保持为明文,对所述可验证声明中除所述目标声明字段外的其他声明字段中的至少一个声明字段的字段值进行加密处理,所述加密处理为基于指定散列算法的加密处理。基于数据处理后的可验证声明,进行所述目标业务对应的业务处理。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书一种基于可验证声明的业务处理方法实施例;
图2为本说明书另一种基于可验证声明的业务处理方法实施例;
图3为本说明书又一种基于可验证声明的业务处理方法实施例;
图4为本说明书一种基于可验证声明的业务处理装置实施例;
图5为本说明书另一种基于可验证声明的业务处理装置实施例;
图6为本说明书一种基于可验证声明的业务处理设备实施例;
图7为本说明书另一种基于可验证声明的业务处理设备实施例。
具体实施方式
本说明书实施例提供一种基于可验证声明的业务处理方法、装置及设备。
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
实施例一
如图1所示,本说明书实施例提供一种基于可验证声明的业务处理方法,该方法的执行主体可以为服务器,其中,该服务器可以是一个独立的服务器,还可以是由多个服务器构成的服务器集群等。该服务器可以是声明持有用户一侧的服务器或者为声明持有用户的声明进行加密处理的代理方的服务器等。该方法具体可以包括以下步骤:
在步骤S102中,根据可验证声明的持有用户的待处理的目标业务,确定该目标业务所需的目标声明字段,目标声明字段为可验证声明中的至少一个声明字段。
其中,可验证声明可以是用于描述个人、组织等实体所具有的某些属性的一种规范性的信息,可验证声明可以实现基于证据的信任,可以通过可验证声明,向其他实体证明当前实体的某些属性的信息是可信的。目标业务所需可以是目标业务的业务需求等,业务需求可以是执行某项业务所需要具备的要求,业务需求可以如学历为本科或本科以上,或者,年龄在18周岁以上等。不同的业务,可以具有不同的业务需求,具体可以根据实际情况设定。目标声明字段可以是可验证声明中包含的一个或多个声明字段,如可验证声明中包含姓名、身份证号码、出生日期和学历信息等声明字段,目标声明字段可以是上述声明字段中的任一声明字段,具体如出生日期的声明字段等,目标声明字段也可以是上述声明字段中的多个声明字段,具体如出生日期和学历信息两个声明字段等。
在实施中,随着数字化的发展,个人、组织或实体在网络环境中如何定义其身份,以及如何有效地保护其隐私数据,成为人们面对的一个重要问题。通常,使用互联网服务产生的用户数据几乎不由用户个人掌控,用户身份信息泄露或被售卖的情况时有发生。为此,需要在进行数据交互的过程中进行身份验证。
通常,可以采用数字身份唯一性的身份验证方式,但是该身份验证方式下,只能在相同场景或指定的场景中进行,而在不同场景中往往无法共识互认,为身份验证的应用和管理都带来了很大的不便,为此,需要提供一种能够有效保障用户信息被安全存储、用户可以管理其用户信息,并可以将用户信息可控的出示给相关第三方的技术方案。本说明书实施例提供一种可行的技术方案,具体可以包括以下内容:
在日常生活中,很多场景都需要验证用户的属性,审核用户提供的信息是否符合相应的业务的预定标准,本说明书实施例中可以通过签发可验证声明来实现,可验证声明中可以包括与用户的属性相关的信息。具体地,对于某一项或多项业务,业务处理方(或业务提供方)可以根据该一项或多项业务的实际需求设置上述业务的处理机制,即业务处理方可以设定基于可验证声明执行业务处理,业务处理请求方(可以是请求某业务服务的用户)可以向业务处理方发送业务处理请求,其中,业务处理请求方可以包括多种,如可以是可验证声明的持有用户,也可以是声明持有用户或者为声明持有用户的可验证声明进行加密处理的代理方等。本实施例中以业务处理请求方为用户为例进行说明,在业务处理请求方需要进行某项业务处理之前,可验证声明的持有用户可以通过终端设备启动相应的应用程序,该应用程序中可以设置有不同业务的相关信息,当用户选择某业务(即目标业务)后,终端设备可以获取该业务的相关信息(如该业务的标识等),发送给服务器,服务器可以根据该业务的相关信息确定目标业务及目标业务的业务需求等。
针对不同的业务,可以具有不同的业务需求,而不同的业务需求可能会对应不同的属性的信息(即对应不同的声明字段),服务器中可以预先设置有不同业务(或业务需求)与声明字段的对应关系,服务器可以基于用户所需执行的目标业务,从上述对应关系中查找该目标业务对应的声明字段,并可以将查找到的声明字段确定为执行该目标业务所需的目标声明字段,或者,也可以将用户执行的目标业务的相关信息输入到预定模型(如分类模型等)中进行分析,以输出相应的结果(即目标声明字段),例如,用户所需执行的目标业务需要满足学历为本科或本科以上,则可以基于预定的分类模型确定上述目标业务对应的目标声明字段为学历信息字段,再例如,用户所需执行的目标业务需要满足的业务需求包括学历为本科或本科以上,以及年龄在18周岁以上,则基于预定的分类模型确定上述目标业务所需的目标声明字段为学历信息和出生日期等两个声明字段。
在步骤S104中,基于第一数据处理规则对可验证声明进行数据处理,第一规则包括:将目标声明字段的字段值保持为明文,对可验证声明中除目标声明字段外的其他声明字段中的至少一个声明字段的字段值进行加密处理,该加密处理为基于指定散列算法的加密处理。
其中,可验证声明中可以包括声明字段和相应的字段值,声明字段可以是表示相应的字段值具有的共同特性的信息,如姓名、出生日期、学历信息等,字段值可以是声明字段对应的具体内容,如声明字段为姓名,字段值可以为张三等。指定散列算法可以是任意的一种散列算法,例如SHA-1算法、SHA-224算法、SHA-256算法等,具体选用哪种散列算法作为指定散列算法,可以根据实际情况设定,本说明书实施例对此不做限定。
在实施中,不同的业务需求可能会对应不同的声明字段,在实际应用中,除了业务需求对应的目标声明字段之外的其它声明字段,在该业务需求对应的业务处理过程中并不是必需的,而通常可验证声明中会包含有全部声明字段及其字段值,这样就会使得某些声明字段的字段值被泄露,为此,本说明书实施例中,可以预先设定对可验证声明的处理规则(即第一数据处理规则),基于该第一数据处理规则可以将可验证声明中的指定字段值进行加密处理,并使得某些字段值保持明文等,具体地,在根据用户所需执行的目标业务确定执行该目标业务所需的目标声明字段后,由于目标声明字段的字段值需要在目标业务对应的业务处理中使用,因此,可以保持可验证声明中目标声明字段的字段值为明文而不做变化,同时可以获取可验证声明中除目标声明字段外的其它声明字段,并可以对其它声明字段中的至少一个声明字段的字段值通过指定散列算法进行加密处理。基于第一数据处理规则处理后的可验证声明可以存储在服务器中,以便后续执行目标业务的业务处理。
需要说明的是,对其它声明字段中的多个声明字段的字段值通过指定散列算法进行加密处理的过程中,对多个不同的声明字段的字段值所使用的指定散列算法应为同一种散列算法,例如,使用SHA-256算法对上述每个声明字段的字段值进行加密处理或使用MD5(Message-Digest Algorithm 5,第5信息摘要算法)对上述每个声明字段的字段值进行加密处理等。
在步骤S106中,基于数据处理后的可验证声明,进行目标业务对应的业务处理。
在实施中,可以通过多种方式实现基于数据处理后的可验证声明,进行目标业务对应的业务处理,例如由(声明持有用户一侧的)该服务器直接向业务处理方的服务器发送目标业务的业务处理请求,从而触发业务处理方的服务器根据该业务处理请求,对目标业务进行业务处理,或者,(声明持有用户一侧的)该服务器在接收到由用户向业务处理方的服务器发送目标业务的业务处理请求的通知消息或提示信息后,可以将该通知消息或提示信息发送给可验证声明的用户,则用户可以通过终端设备向业务处理方的服务器发送目标业务的业务处理请求,从而触发业务处理方的服务器根据该业务处理请求,对目标业务进行业务处理,或者,还可以由用户主动发起目标业务的业务处理请求,(声明持有用户一侧的)该服务器接收到该业务处理请求后,可以将相应的数据处理后的可验证声明和该业务处理请求发送给业务处理方的服务器,以触发业务处理方的服务器根据该业务处理请求,对目标业务进行业务处理等。具体需要通过何种方式进行目标业务对应的业务处理可以根据实际情况设定,本说明书实施例对此不做限定。
本说明书实施例提供一种基于可验证声明的业务处理方法,在执行基于可验证声明的目标业务的业务处理的过程中,对可验证声明进行数据处理,即目标业务所需的声明字段的字段值为明文,其余声明字段中的至少一个声明字段的字段值为经过基于指定散列算法加密处理的密文,然后对可验证声明的有效性进行验证,并在验证结果为有效时,基于目标业务所需的声明字段的字段值,执行目标业务对应的业务处理,这样通过对可验证声明进行有效性验证,然后再使用可验证声明中的字段值,有效保证用户信息的安全存储。
实施例二
如图2所示,本说明书实施例提供一种基于可验证声明的业务处理方法,该方法的执行主体可以为服务器,其中,该服务器可以是一个独立的服务器,还可以是由多个服务器构成的服务器集群等。该服务器可以是基于可验证声明,对某一项或多项业务进行处理的一方的服务器等。该方法具体可以包括以下步骤:
在步骤S202中,接收目标业务的业务处理请求,其中,目标业务基于可验证声明进行处理,该业务处理请求包括经第一数据处理规则处理的该可验证声明;经第一数据处理规则处理的该可验证声明中,目标业务所需的声明字段的字段值为明文,其余声明字段中的至少一个声明字段的字段值为经过基于指定散列算法加密处理的密文。
其中,业务处理请求可以是请求执行某项业务处理的消息,业务处理请求中还可以包括如业务的标识(如业务名称或编码等)、业务处理请求方的标识(如业务处理请求方的账号、名称或业务处理请求方所使用的终端设备的IMSI码、IP地址、MAC地址、通讯号码等)等。其中的业务可以是任意业务,具体可以根据实际情况设定。目标业务可以是上述实施例一中可验证声明的持有用户所需执行的目标业务。如上述实施例一所述,对其余声明字段中的多个声明字段的字段值经过指定散列算法加密处理的过程中,对多个不同的声明字段的字段值所使用的指定散列算法应为同一种散列算法。
在实施中,业务处理请求方可以通过终端设备启动相应的应用程序,该应用程序中可以设置有不同业务处理的触发机制,当业务处理请求方触发某业务处理后,终端设备可以获取如业务的标识、业务处理请求方的标识等相关信息,并获取执行目标业务对应的业务处理所需的可验证声明,其中,获取的可验证声明可以是已经经过第一数据处理规则处理后的可验证声明,即该可验证声明中目标业务所需的声明字段的字段值为明文,其余声明字段中的至少一个声明字段的字段值为经过基于指定散列算法加密处理的密文。可以通过获取的上述信息生成业务处理请求,终端设备可以向服务器发送该业务处理请求,从而服务器可以接收该业务处理请求。
需要说明的是,针对不同的业务,在业务处理的过程中的需求可能不同,相应的,所需的声明字段和字段值也会不同,例如,保险业务中,某项保险只针对工作于指定城市中的用户办理,则在该业务处理中需要确定用户是否工作于指定城市中,为此需要用户的“工作所在地”声明字段的字段值;再例如,信息推荐业务中,某待推荐的信息需要推荐给本科学历及本科学历以上学历的用户,则在该业务处理中需要确定用户是否是本科学历或本科学历以上的学历,为此需要用户的“学历信息”声明字段的字段值。为了避免某些声明字段的字段值被泄露,可以对上述声明字段的字段值进行加密处理,而上述目标业务所需的声明字段的字段值则需要保持明文,以便后续业务处理的过程中使用。
在步骤S204中,对可验证声明的有效性进行验证。
在实施中,服务器接收到基于可验证声明的业务处理请求后,可以先对可验证声明进行验证,以判断该可验证声明是否有效,在确定可验证声明有效的情况下,再基于可验证声明进行业务处理,从而进一步保证业务处理的安全性。具体地,服务器接收到业务处理请求后,可以从业务处理请求中提取其中包含的经第一数据处理规则处理后的可验证声明,然后,可以对经第一数据处理规则处理后的可验证声明进行验证。其中,对可验证声明进行验证可以包括多种方式,例如,可以获取对可验证声明中密文所采用的加密方式或指定散列算法的相关信息,之后可以通过获取的加密方式或指定散列算法的相关信息,对可验证声明中包括的明文的字段值进行加密处理,从而可以使得可验证声明中包含的声明字段的字段值成为密文。基于可验证声明中包含的声明字段对应的密文,通过预定的算法进行计算,得到最终的计算结果。可验证声明中还包括上述计算结果的基准值,可以将得到的计算结果与可验证声明中的基准值进行比较,如果两者相同,则验证通过,即可验证声明有效,如果两者不相同,则验证失败,即可验证声明无效。
除了上述方式外,还可以包括多种方式,再例如,可验证声明中可以包括该经第一数据处理后的可验证声明的校验值,服务器获取到经第一数据处理规则处理后的可验证声明后,可以通过预定的校验算法确定该可验证声明的校验值,然后,可以将计算的校验值与可验证声明中的校验值进行比较,如果两者相同,则验证通过,即可验证声明有效,如果两者不相同,则验证失败,即可验证声明无效等。在实际应用中,对可验证声明的有效性进行验证的方式不仅仅只包含上述两种方式,还可以包括其它多种可实现方式,具体可以根据实际情况设定,本说明书实施例对此不做限定。
在步骤S206中,若验证结果为有效,则基于可验证声明中与上述业务需求相对应的声明字段的字段值,执行上述业务处理请求相对应的业务处理。
在实施中,如果对可验证声明的有效性进行验证的验证结果为有效,则表明该可验证声明准确,由于目标业务对应的业务处理的过程中,只需要使用到可验证声明中目标业务所需的声明字段的字段值,且该字段值为明文,因此,可以直接基于可验证声明中目标业务所需的声明字段的字段值,执行上述业务处理请求对应的业务处理。例如,信息推荐业务中,某待推荐的信息对应的业务需求为推荐给本科学历及本科学历以上学历的用户,可验证声明中信息推荐业务所需的声明字段为学历信息,若相应的字段值为本科,则基于该字段值,可以确定能够执行上述信息推荐业务对应的业务处理,此时,服务器可以将待推荐的信息发送给该用户等。
本说明书实施例提供一种基于可验证声明的业务处理方法,用户待处理的目标业务,确定所需的目标声明字段,将目标声明字段的字段值保持为明文,对可验证声明中除目标声明字段外的其他声明字段中的至少一个声明字段的字段值进行加密处理,使得用户的可验证信息中,在目标业务中不需要使用的声明字段进行加密处理,防止目标声明字段外的声明字段的字段值被泄露,从而可以有效保障用户信息被安全存储,而且,用户可以管理其用户信息(即可以被加密的信息),并可以将用户信息可控的出示给相关第三方,而不需要担心某些数据泄露。
实施例三
如图3所示,本说明书实施例提供一种基于可验证声明的业务处理方法,该方法的执行主体可以为第一服务器和第二服务器,其中,第一服务器可以是声明持有用户或者为声明持有用户的声明进行加密处理的代理方的服务器,第二服务器可以是基于可验证声明,对某一项或多项业务进行处理的一方的服务器。第一服务器可以是一个独立的服务器,还可以是由多个服务器构成的服务器集群等。第二服务器也可以是一个独立的服务器,还可以是由多个服务器构成的服务器集群等。该方法具体可以包括以下步骤:
在步骤S302中,第一服务器根据可验证声明的持有用户的待处理的目标业务,确定目标业务所需的目标声明字段,目标声明字段为可验证声明中的至少一个声明字段。
在实施中,用户的可验证声明在数据处理之前可以如下:
{
"content":{
"verion":"0.7.0",
"issuer":
"did:mychain:cb84ac09120827b41e01de5494cd25bb06fd7b709879a34f72b8e44b0e6b276f",
"subject":
"did:mychain:cb84ac09120827b41e01de5494cd25bb06fd7b709879a34f72b8e44b0eeeeeee",
"expire":1530735444,
"issuanceDate":1530735000,
"id":"4d9546fdf2eb94a364208fa65a9996b03ba0ca4ab2f56d106dac92e891b6f7fc",
"@context":["https://www.w3.org/2018/credentials/v1"],
"type":["VerifiableCredential","UniversityDegreeCredential"],
"claim":{
"基本信息":{
"姓名":"张三",
"身份证号":"100000000000003321",
"性别":"男",
"出生日期":"1973.9.12",
"电话号码":"15612568654"
},
"学历信息":[
{
"学历":"硕士",
"毕业院校":"上海交通大学",
"专业":"土木工程",
"毕业日期":"1997.7.1",
},
{
"学历":"学士",
"毕业院校":"上海交通大学",
"专业":"土木工程",
"毕业日期":"1994.7.1",
}
],
"紧急联系人":{
"姓名":"张三爹",
"关系":"父亲",
"电话":"18604566543"
}
},
"status":{
"type":"BlockChainStatusList",
"id":"4d9546fdf2eb94a364208fa65a9996b03ba0ca4ab2f56d106dac92e891b6f7fc"
}
},
"proof":{
"type":"ecdsa",
"created":"2018-06-18T21:19:10Z",
"verificationMethod":
"did:mychain:cb84ac09120827b41e01de5494cd25bb06fd7b709879a34f72b8e44b0e6b276f#keys-1",
"signatureValue":
"BavEll0/I1zpYw8XNi1bgVg/sCneO4Jugez8RwDg/+MCRVpjOboDoe4SxxKjkC OvKiCHGDvc4krqi6Z1n0UfqzxGfmatCuFibcC1wpsPRdW+gGsutPTLzvueMWm FhwYmfIFpbBu95t501+rSLHIEuujM/+PXr9Cky6Ed+W3JT24="
}
}
其中的声明字段可以如上述的“姓名”、“身份证号”、“性别”、“出生日期”、“电话号码”、“学历”等,目标业务所需的目标声明字段可以是上述声明字段中的一个或多个。
在步骤S304中,第一服务器基于第一数据处理规则对可验证声明进行数据处理;第一数据处理规则包括:将目标声明字段的字段值保持为明文,对可验证声明中除目标声明字段外的其他声明字段中的至少一个声明字段的字段值进行加密处理,该加密处理为基于指定散列算法的加密处理。
在实施中,基于第一数据处理规则对可验证声明进行数据处理后得到的可验证声明可以如下:
{
"content":{
"verion":"0.7.0",
"issuer":
"did:mychain:cb84ac09120827b41e01de5494cd25bb06fd7b709879a34f72b8e44b0e6b276f",
"subject":
"did:mychain:cb84ac09120827b41e01de5494cd25bb06fd7b709879a34f72b8e44b0eeeeeee",
"expire":1530735444,
"issuanceDate":1530735000,
"id":"4d9546fdf2eb94a364208fa65a9996b03ba0ca4ab2f56d106dac92e891b6f7fc",
"@context":["https://www.w3.org/2018/credentials/v1"],
"type":
["VerifiableCredential","MerkleTreeCredential","PersonalInfoCredential"],
"claim":{
"Item1":"hash值",
"学历信息":[
{
"学历":"硕士",
"毕业院校":"上海交通大学",
"专业":"土木工程",
"Item2":"hash值",
},
"hash值"
],
"Item3":"hash值"
},
"status":{
"type":"BlockChainStatusList",
"id":"4d9546fdf2eb94a364208fa65a9996b03ba0ca4ab2f56d106dac92e891b6f7fc"
}
},
"proof":{
"type":"ecdsa",
"created":"2018-06-18T21:19:10Z",
"verificationMethod":
"did:mychain:cb84ac09120827b41e01de5494cd25bb06fd7b709879a34f72b8e44b0e6b276f#keys-1",
"signatureValue":
"BavEll0/I1zpYw8XNi1bgVg/sCneO4Jugez8RwDg/+MCRVpjOboDoe4SxxKjkCOvKiCHGDvc4krqi6Z1n0UfqzxGfmatCuFibcC1wpsPRdW+gGsutPTLzvueMWmFhwYmfIFpbBu95t501+rSLHIEuujM/+PXr9Cky6Ed+W3JT24="
}
}
基于上述数据处理后的可验证声明,目标业务所需的目标声明字段位于“学历信息”项目中,其中包括“学历”、“毕业院校”和“专业”的声明字段,其中“Item1”内的声明字段对应的字段值为密文(即hash值),“Item2”和“Item3”内的声明字段对应的字段值也分别为密文(即hash值),其中,“Item1”为上述步骤S302的示例中的“基本信息”项目,“Item2”为上述步骤S302的示例中的“学历”、“毕业院校”、“专业”和“毕业日期”等对应的项目,“Item3”为上述步骤S302的示例中的“紧急联系人”项目等。
需要说明的是,用户的可验证声明或上述经第一数据处理规则处理后的可验证声明可以存储于区块链中,从而保证可验证声明的准确性。其中,指定散列算法与指定区块链中哈希处理中采用的算法相同,该指定区块链上存储有可验证声明的哈希值。为了方便区块链中的各个区块链节点能够对存储的可验证声明进行验证,并且考虑到散列算法是不可逆的,因此,指定区块链中哈希处理中采用的算法应该与指定散列算法相同。
在实际应用中,第一服务器基于上述步骤S302和步骤S304的处理,对用户的可验证声明进行第一数据处理后,业务处理方可以基于该用户的可验证声明进行相应的业务处理,具体可以参见下述步骤S306~步骤S314的处理。
在步骤S306中,第一服务器向第二服务器(即目标业务的业务处理方的服务器)发送目标业务的业务处理请求,该业务处理请求中包括数据处理后的可验证声明;以使第二服务器基于数据处理后的可验证声明对目标业务进行业务处理。
在实施中,当业务处理请求方需要进行某项业务处理之前,可以通知相应的用户准备可验证声明,此时,用户可以通过终端设备向第一服务器发送用户所需执行的目标业务,第一服务器可以执行上述步骤S302和步骤S304的处理,以对可验证声明进行处理得到基于第一数据处理规则处理后的可验证声明。需要说明的是,不同的业务需求,处理后的可验证声明可能不同,第一服务器中可以存储有同一用户的相同原始内容的可验证声明经过不同数据处理规则处理后的可验证声明。
当业务处理方需要执行目标业务的业务处理时,由于进行该业务处理,需要使用用户的可验证声明,因此,第一服务器可以获取数据处理后的可验证声明等信息生成目标业务的业务处理请求,并向第二服务器发送该业务处理请求,第二服务器可以接收基于可验证声明的目标业务的业务处理请求。
目标业务的业务处理请求的触发方式可以多种多样,除了可以通过上述方式触发外,还可以通过下述方式实现,具体可以包括以下内容:第一服务器接收业务处理方的指示信息;该指示信息用于指示可验证声明的持有用户向业务处理方发送目标业务的业务处理请求。
在实施中,第一服务器可以接收业务处理方(第二服务器)的指示信息,以指示可验证声明的持有用户向业务处理方(第二服务器)发送目标业务的业务处理请求,此时,用户可以通过终端设备从第一服务器中获取向上述可验证声明,并可以以此生成目标业务的业务处理请求,终端设备向第二服务器发送目标业务的业务处理请求,或者,第一服务器将该指示信息和上述可验证声明发送给用户的终端设备,用户的终端设备可以生成目标业务的业务处理请求,并向第二服务器发送该业务处理请求。
第二服务器接收到业务处理请求后,可以先对该业务处理请求中的可验证声明的有效性进行验证,以保证业务处理的安全性,具体可以参见下述步骤S308~步骤S312的处理。
在步骤S308中,第二服务器基于指定散列算法对可验证声明中包含的明文的字段值进行加密处理。
在实施中,由于可验证声明中包含明文和密文,而且密文是经过指定散列算法进行加密,通常很难得到该密文对应的可验证声明中的实际内容,因此,可以通过密文的方式对可验证声明进行验证,具体地,可以对可验证声明中的密文保持不变,对可验证声明中的明文进行处理,即可以对可验证声明中每个声明字段的显示为明文的字段值进行加密处理,由于进行上述加密处理的目的是验证可验证声明的有效性,因此,该加密处理与上述基于第一数据处理规则对可验证声明进行处理的过程中使用的加密算法应该相同,即该加密算法为指定散列算法。基于上述内容,第二服务器可以基于指定散列算法对可验证声明中包含的明文的字段值进行加密处理,这样,可验证声明中的全部字段值都已调整成为密文。
在实际应用中,上述步骤S308的具体处理可以多种多样,除了上述处理方式外,还可以包括其它多种方式,以下再提供一种可选的处理方式,即在实际应用中,可验证声明中的字段值无法确定是明文还是密文,此时,可以包括以下步骤A2~步骤A6的处理。
步骤A2,第二服务器获取可验证声明中包含的声明字段的字段值。
在实施中,第二服务器可以对可验证声明中的内容进行分析,确定可验证声明中包含的声明字段,其中确定的声明字段可以是可验证声明中包含的全部的声明字段,也可以是可验证声明中某些指定的声明字段,如可验证声明中用户信息相关的声明字段(如姓名、出生日期、身份证号等声明字段)等。本说明书实施例中可以以可验证声明中的全部声明字段为例进行说明。
步骤A4,如果上述字段值中包括满足预定的构成规则的字段值,则第二服务器获取可验证声明对应的声明索引信息,该声明索引信息中记录有字段值为明文或字段值为密文。
其中,预定的构成规则可以是基于指定散列算法对原字段值进行加密后得到的密文的构成规则等,预定的构成规则可以根据实际情况确定,本说明书实施例对此不做限定。声明索引信息可以是用于记录某字段值为明文还是密文的信息,声明索引信息可以有多种展现形式,例如声明索引信息可以以Claimindex字段的形式呈现,并且其中可以通过“0”或“1”的方式记录各个字段值为明文还是密文,或者,也可以通过标记“hash”的方式(如上述步骤S304中的示例)记录密文的字段值,剩余的字段值为明文等。
在实施中,在可验证声明中,可能无法准确区分出哪个字段值为明文,哪个字段值为密文,例如,某用户的身份证号为一串数字,而用户的身份证号经过加密处理后还是一串数字,这样可能无法确定该身份证号是密文还是明文,为此,第一服务器可以在生成上述可验证声明的同时,生成该可验证声明对应的声明索引信息。第二服务器得到可验证声明中包含的声明字段的字段值后,可以对每个字段值进行分析,判断每个字段值是否满足预定的构成规则,如果其中的某一个或多个字段值满足预定的构成规则,则可以确定可验证声明中包含明文和密文,为了确定哪些字段值为明文,哪些字段值为密文,以便后续对相应的字段值进行处理,可以从第一服务器中获取可验证声明对应的声明索引信息,通过声明索引信息中记录的信息可以确定可验证声明中哪些字段值为明文,哪些字段值为密文。
步骤A6,第二服务器根据声明索引信息,基于指定散列算法对可验证声明中包含的明文的字段值进行加密处理。
在实施中,由于声明索引信息中记录有哪些字段值为明文,哪些字段值为密文,因此,可以基于声明索引信息中记录的内容,从可验证声明中查找到明文的字段值,并可以基于指定散列算法对可验证声明中包含的明文的字段值进行加密处理,得到该字段值的密文。例如,指定散列算法可以MD5算法,可以使用MD5算法分别计算每个明文的字段值,得到每个字段值对应的MD5值,由于可验证声明中包含的密文的字段值也是经过该指定散列算法(即MD5算法)得到,因此,可验证声明中包含的密文的字段值也为相应的MD5值,这样,可验证声明中包含的声明字段的字段值均为MD5值。
在步骤S310中,第二服务器基于可验证声明中的密文,确定可验证声明中的密文对应的默克尔根。
在实施中,由于可验证声明中包含的声明字段通常较多,如果逐一验证每个声明字段的字段值,则会消耗较多时间,为了简单快速的验证可验证声明的有效性,可以采用默克尔树的方式对可验证声明的有效性进行验证,具体地,可以基于可验证声明中的密文构建默克尔树(即Merkle树),构建一棵完整的Merkle树需要递归的对各节点对进行哈希,并将新生成的哈希节点插入到Merkle树中,直到只剩一个节点(该节点就是Merkle树的根节点)为止。基于构建的Merkle树,计算该Merkle树的根节点对应的值,该根节点对应的值即可以为默克尔根。例如,基于上述步骤A6中的示例,可验证声明中包含的声明字段的字段值均为MD5值,可以通过上述MD5值构建相应的默克尔树,得到有MD5值构成的默克尔树,该默克尔树中会包含有一个根节点,可以基于上述MD5值计算根节点的MD5值,得到的根节点的MD5值可以作为可验证声明中的密文对应的默克尔根。
上述步骤S310的具体处理方式可以多种多样,除了可以通过上述方式实现外,还可以通过其它多种方式实现,以下提供一种可选的处理方式没具体可以包括以下步骤B2~步骤B6的处理。
步骤B2,第二服务器按照可验证声明中声明字段的顺序,基于可验证声明中包含的声明字段对应的密文构建二叉树。
其中,二叉树可以具备每个节点最多有两个子树的树结构。
在实施中,第二服务器可以确定可验证声明中各个声明字段出现在可验证声明中前后顺序,例如,可验证声明中从前到后记录有:“姓名”:“张三”,“性别”:“男”,“出生日期”:“19880102”,则可验证声明中各声明字段出现在可验证声明中的前后顺序为:姓名-性别-出生日期,或者,也可以是可验证声明中各声明字段由后向前的顺序等,在实际应用中,还可以是其它顺序,本说明书实施例对此不做限定。通过上述方式,第二服务器可以获取到可验证声明中声明字段的顺序,然后,第二服务器可以按照可验证声明中声明字段的顺序,基于可验证声明中包含的声明字段对应的密文构建二叉树。例如,可以按照可验证声明中各声明字段出现在可验证声明中的前后顺序姓名-性别-出生日期,基于姓名对应的密文、性别对应的密文和出生日期对应的密文构建二叉树,具体地,可以基于姓名对应的密文构建一个节点,并可以基于性别对应的密文构建一个节点,之后通过上述两个节点生成一个新的节点。可以基于出生日期对应的密文构建一个节点,再通过生成的新的节点与基于出生日期对应的密文构建一个节点生成第二个新的节点,从而构成一个完整的二叉树。
步骤B4,第二服务器根据默克尔算法,确定上述二叉树中根节点的校验值。
在实施中,通过上述步骤B2中的方式可以构建一个二叉树,该二叉树中包括多个节点(包括叶子节点和根节点等),可以根据默克尔算法对二叉树中的节点逐步进行计算,得到每个节点的校验值,从而得到二叉树中根节点的校验值。具体地,可以使用姓名对应的密文和性别对应的密文组合成一条信息,通过指定散列算法计算该条信息的散列值,之后,再由计算的该散列值与出生日期对应的密文组合成一条信息,再次通过指定散列算法计算该条信息的散列值,可以将最终计算的散列值作为二叉树中根节点的校验值。
步骤B6,第二服务器将上述二叉树中根节点的校验值确定为可验证声明中的密文对应的默克尔根。
在步骤S312中,第二服务器基于上述默克尔根和可验证声明中的验证信息,对可验证声明的有效性进行验证。
在实施中,可验证声明中的验证信息中可以包括可验证声明中的密文对应的默克尔根,此时,可以将计算得到的默克尔根与可验证声明中的验证信息中的默克尔根进行比较,如果两者相同,则表明该可验证声明有效,如果两者不同,则表明该可验证声明无效,此时,可以向业务处理请求方发送相同的通知消息。
在实际应用中,上述步骤S312的处理可以多种多样,除了可以通过上述方式处理外,还可以通过其它多种方式实现,以下提供一种可选的处理方式,具体可以包括以下步骤C2~C6的处理。
步骤C2,第二服务器获取可验证声明中的验证信息和可验证声明对应的密钥。
其中,可验证声明中的验证信息可以是对可验证声明中的密文对应的默克尔根进行签名处理后得到的签名信息,其中的对可验证声明中的密文对应的默克尔根进行签名处理可以是使用密钥对可验证声明中的密文对应的默克尔根进行加密的处理,在实际应用中,对可验证声明中的密文对应的默克尔根进行签名处理还可以是其它方式的处理,本说明书实施例对此不做限定。本实施例中以使用密钥对可验证声明中的密文对应的默克尔根进行加密的处理为例进行说明。密钥可以是可验证声明的提供者的公钥等。
在实施中,第二服务器可以从可验证声明中查找到验证信息,并可以从中提取该可验证信息。此外,还可以从可验证声明的提供者出获取该可验证声明的密钥(如公钥等)。其中,签名信息可以由可验证声明的提供者通过其私钥进行加密处理得到,则可以通过可验证声明的提供者的公钥来获取签名信息对应的默克尔根。
步骤C4,第二服务器基于该密钥对可验证声明中的验证信息进行验签处理,得到可验证声明中的验证信息对应的基准默克尔根。
在实施中,可以使用可验证声明对应的密钥(如可验证声明的提供者的公钥)对可验证声明中的验证信息进行验签处理(即验证签名信息的处理),如果验签成功,则可以得到可验证声明中的验证信息对应的基准默克尔根,如果验签失败,则表明可验证声明可能存在风险。
步骤C6,第二服务器如果上述默克尔根与基准默克尔根相匹配,则确定可验证声明有效。
需要说明的是,对可验证声明的有效性进行验证的方式还可以包括多种,以下再提供一种可选的处理方式,具体可以包括以下内容:基于上述指定散列算法对上述可验证声明中包含的明文的字段值进行加密处理,其中,该指定散列算法与指定区块链中哈希处理中采用的算法相同,该指定区块链上存储有可验证声明的哈希值。可以基于可验证声明的声明标识(如该可验证声明的名称或编码等),从上述指定区块链中获取该声明标识对应的可验证声明的哈希值,然后,可以基于从指定区块链中获取的哈希值,以及上述明文的字段值进行加密处理的结果和上述可验证声明中包含的密文,确定可验证声明是否有效,具体如,上述指定区块链中存储有上述可验证声明中包含的各字段的字段值对应的哈希值,可以将获取的每个字段的字段值对应的哈希值与上述明文的哈希值或密文进行匹配,如果双方的每个字段的字段值对应的哈希值均匹配,则可验证声明有效,否则,可验证声明无效。
在步骤S314中,若验证结果为有效,则第二服务器基于可验证声明中与上述业务需求相对应的声明字段的字段值,执行上述业务处理请求相对应的业务处理。
在实施中,如果基于上述默克尔根和可验证声明中的验证信息确定可验证声明有效,则可以确定验证结果为有效,此时,第二服务器基于可验证声明中与上述业务需求相对应的声明字段的字段值,执行上述业务处理请求相对应的业务处理。例如,信息推荐业务中,某待推荐的信息需要推荐给本科学历及本科学历以上学历的用户,则在该业务处理中需要确定用户是否是本科学历或本科学历以上的学历,为此需要用户的“学历信息”声明字段的字段值,基于上述内容,第一服务器可以将用户的“学历信息”声明字段的字段值保持明文,其它声明字段的字段值进行加密处理,然后,第二服务器在执行上述信息推荐业务的处理中,可以基于上述处理过程对处理后的可验证声明进行有效性验证,在验证结果为有效时,第二服务器可以使用“学历信息”声明字段的字段值确定该用户是否满足信息推荐的要求,如果满足,则可以向该用户推送相应的信息,如果不满足,则可以获取下一个用户继续执行上述处理过程,以向相应的用户推送相应的信息。
本说明书实施例提供一种基于可验证声明的业务处理方法,基于待处理的目标业务,确定所需的目标声明字段,将目标声明字段的字段值保持为明文,对可验证声明中除目标声明字段外的其他声明字段中的至少一个声明字段的字段值进行加密处理,使得用户的可验证信息中,在目标业务中不需要使用的声明字段进行加密处理,防止目标声明字段外的声明字段的字段值被泄露,从而可以有效保障用户信息被安全存储,而且,用户可以管理其用户信息(即可以被加密的信息),并可以将用户信息可控的出示给相关第三方,而不需要担心某些数据泄露。而且,在执行基于可验证声明的目标业务的业务处理的过程中,对可验证声明进行数据处理,即目标业务所需的声明字段的字段值为明文,其余声明字段中的至少一个声明字段的字段值为经过基于指定散列算法加密处理的密文,然后对可验证声明的有效性进行验证,并在验证结果为有效时,基于目标业务所需的声明字段的字段值,执行目标业务对应的业务处理,这样通过对可验证声明进行有效性验证,然后再使用可验证声明中的字段值,从而进一步保证用户信息的安全存储。
实施例四
以上为本说明书实施例提供的基于可验证声明的业务处理方法,基于同样的思路,本说明书实施例还提供一种基于可验证声明的业务处理装置,如图4所示。
该基于可验证声明的业务处理装置包括:请求接收模块401、验证模块402和业务处理模块403,其中:
请求接收模块401,接收目标业务的业务处理请求,其中,所述目标业务基于可验证声明进行处理,所述业务处理请求包括经第一数据处理规则处理的所述可验证声明;经第一数据处理规则处理的所述可验证声明中,所述目标业务所需的声明字段的字段值为明文,其余声明字段中的至少一个声明字段的字段值为经过基于指定散列算法加密处理的密文;
验证模块402,对所述可验证声明的有效性进行验证;
业务处理模块403,若验证结果为有效,则基于所述可验证声明中所述目标业务所需的声明字段的字段值,执行所述目标业务对应的业务处理。
本说明书实施例中,所述验证模块402,包括:
加密单元,基于所述指定散列算法对所述可验证声明中包含的明文的字段值进行加密处理;
默克尔根确定单元,基于所述可验证声明中的密文,确定所述可验证声明中的密文对应的默克尔根;
验证单元,基于所述默克尔根和所述可验证声明中的验证信息,对所述可验证声明的有效性进行验证。
本说明书实施例中,所述加密单元,获取所述可验证声明中包含的声明字段的字段值;如果所述字段值中包括满足预定的构成规则的字段值,则获取所述可验证声明对应的声明索引信息,所述声明索引信息中记录有所述字段值为明文或所述字段值为密文;根据所述声明索引信息,基于所述指定散列算法对所述可验证声明中包含的明文的字段值进行加密处理。
本说明书实施例中,所述默克尔根确定单元,按照所述可验证声明中声明字段的顺序,基于所述可验证声明中包含的声明字段对应的密文构建二叉树;根据默克尔算法,确定所述二叉树中根节点的校验值;将所述二叉树中根节点的校验值确定为所述可验证声明中的密文对应的默克尔根。
本说明书实施例中,所述可验证声明中的验证信息为签名信息,所述验证单元,获取所述可验证声明中的验证信息和所述可验证声明对应的密钥;基于所述密钥对所述可验证声明中的验证信息进行验签处理,得到所述可验证声明中的验证信息对应的基准默克尔根;如果所述默克尔根与所述基准默克尔根相匹配,则确定所述可验证声明有效。
本说明书实施例提供一种基于可验证声明的业务处理装置,在执行基于可验证声明的目标业务的业务处理的过程中,对可验证声明进行数据处理,即目标业务所需的声明字段的字段值为明文,其余声明字段中的至少一个声明字段的字段值为经过基于指定散列算法加密处理的密文,然后对可验证声明的有效性进行验证,并在验证结果为有效时,基于目标业务所需的声明字段的字段值,执行目标业务对应的业务处理,这样通过对可验证声明进行有效性验证,然后再使用可验证声明中的字段值,从而可以有效保证用户信息的安全存储。
实施例五
基于同样的思路,本说明书实施例还提供一种基于可验证声明的业务处理装置,如图5所示。
该基于可验证声明的业务处理装置包括:字段确定模块501、数据处理模块502和业务处理模块503,其中:
字段确定模块501,根据可验证声明的持有用户的待处理的目标业务,确定所述目标业务所需的目标声明字段;所述目标声明字段为所述可验证声明中的至少一个声明字段;
数据处理模块502,基于第一数据处理规则对所述可验证声明进行数据处理;所述第一数据处理规则包括:将所述目标声明字段的字段值保持为明文,对所述可验证声明中除所述目标声明字段外的其他声明字段中的至少一个声明字段的字段值进行加密处理,所述加密处理为基于指定散列算法的加密处理;
业务处理模块503,基于数据处理后的可验证声明,进行所述目标业务对应的业务处理。
本说明书实施例中,所述业务处理模块503,向所述目标业务的业务处理方发送所述目标业务的业务处理请求,所述业务处理请求中包括所述数据处理后的可验证声明;以使所述业务处理方基于所述数据处理后的可验证声明对所述目标业务进行业务处理。
本说明书实施例中,所述指定散列算法与指定区块链中哈希处理中采用的算法相同;所述指定区块链上存储有所述可验证声明的哈希值。
本说明书实施例中,还包括:
指示信息接收模块,接收业务处理方的指示信息;所述指示信息用于指示所述可验证声明的持有用户向所述业务处理方发送所述目标业务的业务处理请求。
本说明书实施例提供一种基于可验证声明的业务处理装置,用户待处理的目标业务,确定所需的目标声明字段,将目标声明字段的字段值保持为明文,对可验证声明中除目标声明字段外的其他声明字段中的至少一个声明字段的字段值进行加密处理,使得用户的可验证信息中,在目标业务中不需要使用的声明字段进行加密处理,防止目标声明字段外的声明字段的字段值被泄露,从而可以有效保障用户信息被安全存储。
实施例六
以上为本说明书实施例提供的基于可验证声明的业务处理装置,基于同样的思路,本说明书实施例还提供一种基于可验证声明的业务处理设备,如图6所示。
所述基于可验证声明的业务处理设备可以为上述实施例提供的第二服务器,第二服务器可以是基于可验证声明,对某一项或多项业务进行处理的一方的服务器。
基于可验证声明的业务处理设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器601和存储器602,存储器602中可以存储有一个或一个以上存储应用程序或数据。其中,存储器602可以是短暂存储或持久存储。存储在存储器602的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对基于可验证声明的业务处理设备中的一系列计算机可执行指令。更进一步地,处理器601可以设置为与存储器602通信,在基于可验证声明的业务处理设备上执行存储器602中的一系列计算机可执行指令。基于可验证声明的业务处理设备还可以包括一个或一个以上电源603,一个或一个以上有线或无线网络接口604,一个或一个以上输入输出接口605,一个或一个以上键盘606。
具体在本实施例中,基于可验证声明的业务处理设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对基于可验证声明的业务处理设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
接收目标业务的业务处理请求,其中,所述目标业务基于可验证声明进行处理,所述业务处理请求包括经第一数据处理规则处理的所述可验证声明;经第一数据处理规则处理的所述可验证声明中,所述目标业务所需的声明字段的字段值为明文,其余声明字段中的至少一个声明字段的字段值为经过基于指定散列算法加密处理的密文;
对所述可验证声明的有效性进行验证;
若验证结果为有效,则基于所述可验证声明中所述目标业务所需的声明字段的字段值,执行所述目标业务对应的业务处理。
本说明书实施例中,所述对所述可验证声明的有效性进行验证,包括:
基于所述指定散列算法对所述可验证声明中包含的明文的字段值进行加密处理;
基于所述可验证声明中的密文,确定所述可验证声明中的密文对应的默克尔根;
基于所述默克尔根和所述可验证声明中的验证信息,对所述可验证声明的有效性进行验证。
本说明书实施例中,所述基于所述指定散列算法对所述可验证声明中包含的明文的字段值进行加密处理,包括:
获取所述可验证声明中包含的声明字段的字段值;
如果所述字段值中包括满足预定的构成规则的字段值,则获取所述可验证声明对应的声明索引信息,所述声明索引信息中记录有所述字段值为明文或所述字段值为密文;
根据所述声明索引信息,基于所述指定散列算法对所述可验证声明中包含的明文的字段值进行加密处理。
本说明书实施例中,所述基于所述可验证声明中的密文,确定所述可验证声明中的密文对应的默克尔根,包括:
按照所述可验证声明中声明字段的顺序,基于所述可验证声明中包含的声明字段对应的密文构建二叉树;
根据默克尔算法,确定所述二叉树中根节点的校验值;
将所述二叉树中根节点的校验值确定为所述可验证声明中的密文对应的默克尔根。
本说明书实施例中,所述可验证声明中的验证信息为签名信息,所述基于所述默克尔根和所述可验证声明中的验证信息,对所述可验证声明的有效性进行验证,包括:
获取所述可验证声明中的验证信息和所述可验证声明对应的密钥;
基于所述密钥对所述可验证声明中的验证信息进行验签处理,得到所述可验证声明中的验证信息对应的基准默克尔根;
如果所述默克尔根与所述基准默克尔根相匹配,则确定所述可验证声明有效。
本说明书实施例提供一种基于可验证声明的业务处理设备,在执行基于可验证声明的目标业务的业务处理的过程中,对可验证声明进行数据处理,即目标业务所需的声明字段的字段值为明文,其余声明字段中的至少一个声明字段的字段值为经过基于指定散列算法加密处理的密文,然后对可验证声明的有效性进行验证,并在验证结果为有效时,基于目标业务所需的声明字段的字段值,执行目标业务对应的业务处理,这样通过对可验证声明进行有效性验证,然后再使用可验证声明中的字段值,从而可以有效保证用户信息的安全存储。
实施例七
基于同样的思路,本说明书实施例还提供一种基于可验证声明的业务处理设备,如图7所示。
所述基于可验证声明的业务处理设备可以为上述实施例提供的第一服务器,第一服务器可以是声明持有用户一侧的服务器或者为声明持有用户的声明进行加密处理的代理方的服务器。
基于可验证声明的业务处理设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器701和存储器702,存储器702中可以存储有一个或一个以上存储应用程序或数据。其中,存储器702可以是短暂存储或持久存储。存储在存储器702的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对基于可验证声明的业务处理设备中的一系列计算机可执行指令。更进一步地,处理器701可以设置为与存储器702通信,在基于可验证声明的业务处理设备上执行存储器702中的一系列计算机可执行指令。基于可验证声明的业务处理设备还可以包括一个或一个以上电源703,一个或一个以上有线或无线网络接口704,一个或一个以上输入输出接口705,一个或一个以上键盘706。
具体在本实施例中,基于可验证声明的业务处理设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对基于可验证声明的业务处理设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
根据可验证声明的持有用户的待处理的目标业务,确定所述目标业务所需的目标声明字段;所述目标声明字段为所述可验证声明中的至少一个声明字段;
基于第一数据处理规则对所述可验证声明进行数据处理;所述第一数据处理规则包括:将所述目标声明字段的字段值保持为明文,对所述可验证声明中除所述目标声明字段外的其他声明字段中的至少一个声明字段的字段值进行加密处理,所述加密处理为基于指定散列算法的加密处理;
基于数据处理后的可验证声明,进行所述目标业务对应的业务处理。
本说明书实施例中,所述基于数据处理后的可验证声明,进行所述目标业务对应的业务处理,包括:
向所述目标业务的业务处理方发送所述目标业务的业务处理请求,所述业务处理请求中包括所述数据处理后的可验证声明;以使所述业务处理方基于所述数据处理后的可验证声明对所述目标业务进行业务处理。
本说明书实施例中,所述指定散列算法与指定区块链中哈希处理中采用的算法相同;所述指定区块链上存储有所述可验证声明的哈希值。
本说明书实施例中,所述基于数据处理后的可验证声明,进行所述目标业务对应的业务处理之前,还包括:
接收业务处理方的指示信息;所述指示信息用于指示所述可验证声明的持有用户向所述业务处理方发送所述目标业务的业务处理请求。
本说明书实施例提供一种基于可验证声明的业务处理设备,用户待处理的目标业务,确定所需的目标声明字段,将目标声明字段的字段值保持为明文,对可验证声明中除目标声明字段外的其他声明字段中的至少一个声明字段的字段值进行加密处理,使得用户的可验证信息中,在目标业务中不需要使用的声明字段进行加密处理,防止目标声明字段外的声明字段的字段值被泄露,从而可以有效保障用户信息被安全存储,而且,用户可以管理其用户信息(即可以被加密的信息),并可以将用户信息可控的出示给相关第三方,而不需要担心某些数据泄露。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书一个或多个实施例时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本说明书的实施例可提供为方法、系统、或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书的实施例是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程基于可验证声明的业务处理设备的处理器以产生一个机器,使得通过计算机或其他可编程基于可验证声明的业务处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程基于可验证声明的业务处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程基于可验证声明的业务处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书一个或多个实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书一个或多个实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。

Claims (14)

1.一种基于可验证声明的业务处理方法,所述方法包括:
接收目标业务的业务处理请求,其中,所述目标业务基于可验证声明进行处理,所述业务处理请求包括经第一数据处理规则处理的所述可验证声明;经第一数据处理规则处理的所述可验证声明中,所述目标业务所需的声明字段的字段值为明文,其余声明字段中的至少一个声明字段的字段值为经过基于指定散列算法加密处理的密文;
对所述可验证声明的有效性进行验证;
若验证结果为有效,则基于所述可验证声明中所述目标业务所需的声明字段的字段值,执行所述目标业务对应的业务处理。
2.根据权利要求1所述的方法,所述对所述可验证声明的有效性进行验证,包括:
基于所述指定散列算法对所述可验证声明中包含的明文的字段值进行加密处理;
基于所述可验证声明中的密文,确定所述可验证声明中的密文对应的默克尔根;
基于所述默克尔根和所述可验证声明中的验证信息,对所述可验证声明的有效性进行验证。
3.根据权利要求2所述的方法,所述基于所述指定散列算法对所述可验证声明中包含的明文的字段值进行加密处理,包括:
获取所述可验证声明中包含的声明字段的字段值;
如果所述字段值中包括满足预定的构成规则的字段值,则获取所述可验证声明对应的声明索引信息,所述声明索引信息中记录有所述字段值为明文或所述字段值为密文;
根据所述声明索引信息,基于所述指定散列算法对所述可验证声明中包含的明文的字段值进行加密处理。
4.根据权利要求2所述的方法,所述基于所述可验证声明中的密文,确定所述可验证声明中的密文对应的默克尔根,包括:
按照所述可验证声明中声明字段的顺序,基于所述可验证声明中包含的声明字段对应的密文构建二叉树;
根据默克尔算法,确定所述二叉树中根节点的校验值;
将所述二叉树中根节点的校验值确定为所述可验证声明中的密文对应的默克尔根。
5.根据权利要求2所述的方法,所述可验证声明中的验证信息为签名信息,所述基于所述默克尔根和所述可验证声明中的验证信息,对所述可验证声明的有效性进行验证,包括:
获取所述可验证声明中的验证信息和所述可验证声明对应的密钥;
基于所述密钥对所述可验证声明中的验证信息进行验签处理,得到所述可验证声明中的验证信息对应的基准默克尔根;
如果所述默克尔根与所述基准默克尔根相匹配,则确定所述可验证声明有效。
6.一种基于可验证声明的业务处理方法,所述方法包括:
根据可验证声明的持有用户的待处理的目标业务,确定所述目标业务所需的目标声明字段;所述目标声明字段为所述可验证声明中的至少一个声明字段;
基于第一数据处理规则对所述可验证声明进行数据处理;所述第一数据处理规则包括:将所述目标声明字段的字段值保持为明文,对所述可验证声明中除所述目标声明字段外的其他声明字段中的至少一个声明字段的字段值进行加密处理,所述加密处理为基于指定散列算法的加密处理;
基于数据处理后的可验证声明,进行所述目标业务对应的业务处理。
7.根据权利要求6所述的方法,所述基于数据处理后的可验证声明,进行所述目标业务对应的业务处理,包括:
向所述目标业务的业务处理方发送所述目标业务的业务处理请求,所述业务处理请求中包括所述数据处理后的可验证声明;以使所述业务处理方基于所述数据处理后的可验证声明对所述目标业务进行业务处理。
8.根据权利要求6所述的方法,所述指定散列算法与指定区块链中哈希处理中采用的算法相同;所述指定区块链上存储有所述可验证声明的哈希值。
9.根据权利要求6所述的方法,所述基于数据处理后的可验证声明,进行所述目标业务对应的业务处理之前,还包括:
接收业务处理方的指示信息;所述指示信息用于指示所述可验证声明的持有用户向所述业务处理方发送所述目标业务的业务处理请求。
10.一种基于可验证声明的业务处理装置,所述装置包括:
请求接收模块,接收目标业务的业务处理请求,其中,所述目标业务基于可验证声明进行处理,所述业务处理请求包括经第一数据处理规则处理的所述可验证声明;经第一数据处理规则处理的所述可验证声明中,所述目标业务所需的声明字段的字段值为明文,其余声明字段中的至少一个声明字段的字段值为经过基于指定散列算法加密处理的密文;
验证模块,对所述可验证声明的有效性进行验证;
业务处理模块,若验证结果为有效,则基于所述可验证声明中所述目标业务所需的声明字段的字段值,执行所述目标业务对应的业务处理。
11.一种基于可验证声明的业务处理装置,所述装置包括:
字段确定模块,根据可验证声明的持有用户的待处理的目标业务,确定所述目标业务所需的目标声明字段;所述目标声明字段为所述可验证声明中的至少一个声明字段;
数据处理模块,基于第一数据处理规则对所述可验证声明进行数据处理;所述第一数据处理规则包括:将所述目标声明字段的字段值保持为明文,对所述可验证声明中除所述目标声明字段外的其他声明字段中的至少一个声明字段的字段值进行加密处理,所述加密处理为基于指定散列算法的加密处理;
业务处理模块,基于数据处理后的可验证声明,进行所述目标业务对应的业务处理。
12.根据权利要求11所述的装置,所述指定散列算法与指定区块链中哈希处理中采用的算法相同;所述指定区块链上存储有所述可验证声明的哈希值。
13.一种基于可验证声明的业务处理设备,所述基于可验证声明的业务处理设备包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:
接收目标业务的业务处理请求,其中,所述目标业务基于可验证声明进行处理,所述业务处理请求包括经第一数据处理规则处理的所述可验证声明;经第一数据处理规则处理的所述可验证声明中,所述目标业务所需的声明字段的字段值为明文,其余声明字段中的至少一个声明字段的字段值为经过基于指定散列算法加密处理的密文;
对所述可验证声明的有效性进行验证;
若验证结果为有效,则基于所述可验证声明中所述目标业务所需的声明字段的字段值,执行所述目标业务对应的业务处理。
14.一种基于可验证声明的业务处理设备,所述基于可验证声明的业务处理设备包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:
根据可验证声明的持有用户的待处理的目标业务,确定所述目标业务所需的目标声明字段;所述目标声明字段为所述可验证声明中的至少一个声明字段;
基于第一数据处理规则对所述可验证声明进行数据处理;所述第一数据处理规则包括:将所述目标声明字段的字段值保持为明文,对所述可验证声明中除所述目标声明字段外的其他声明字段中的至少一个声明字段的字段值进行加密处理,所述加密处理为基于指定散列算法的加密处理;
基于数据处理后的可验证声明,进行所述目标业务对应的业务处理。
CN201911277737.7A 2019-12-11 2019-12-11 一种基于可验证声明的业务处理方法、装置及设备 Pending CN111125731A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201911277737.7A CN111125731A (zh) 2019-12-11 2019-12-11 一种基于可验证声明的业务处理方法、装置及设备
TW109115728A TW202123040A (zh) 2019-12-11 2020-05-12 基於可驗證聲明的業務處理方法、裝置及設備
PCT/CN2020/121874 WO2021114872A1 (zh) 2019-12-11 2020-10-19 一种基于可验证声明的业务处理方法、装置及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911277737.7A CN111125731A (zh) 2019-12-11 2019-12-11 一种基于可验证声明的业务处理方法、装置及设备

Publications (1)

Publication Number Publication Date
CN111125731A true CN111125731A (zh) 2020-05-08

Family

ID=70498529

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911277737.7A Pending CN111125731A (zh) 2019-12-11 2019-12-11 一种基于可验证声明的业务处理方法、装置及设备

Country Status (3)

Country Link
CN (1) CN111125731A (zh)
TW (1) TW202123040A (zh)
WO (1) WO2021114872A1 (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111726230A (zh) * 2020-05-22 2020-09-29 支付宝(杭州)信息技术有限公司 一种数据的存储方法、数据的恢复方法、装置及设备
CN112052244A (zh) * 2020-09-08 2020-12-08 浙江省交通规划设计研究院有限公司 建立模型属性的方法、装置、电子设备及存储介质
CN112182509A (zh) * 2020-09-16 2021-01-05 支付宝(杭州)信息技术有限公司 一种合规数据的异常检测方法、装置及设备
CN112200585A (zh) * 2020-11-10 2021-01-08 支付宝(杭州)信息技术有限公司 业务处理方法、装置、设备及系统
CN112579321A (zh) * 2020-12-23 2021-03-30 京东数字科技控股股份有限公司 业务数据的下载方法、装置及设备
WO2021114872A1 (zh) * 2019-12-11 2021-06-17 支付宝(杭州)信息技术有限公司 一种基于可验证声明的业务处理方法、装置及设备
CN113127516A (zh) * 2020-07-31 2021-07-16 支付宝(杭州)信息技术有限公司 一种区块链数据的处理方法、装置及设备
CN114896964A (zh) * 2022-05-24 2022-08-12 中国银行股份有限公司 数据有效性的验证方法及装置
CN114944937A (zh) * 2022-04-19 2022-08-26 网易(杭州)网络有限公司 分布式数字身份验证方法、系统、电子设备及存储介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116896440B (zh) * 2023-09-11 2023-11-10 中国信息通信研究院 基于区块链的声明数据的验证方法和装置、设备和介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110224837A (zh) * 2019-06-06 2019-09-10 西安纸贵互联网科技有限公司 基于分布式身份标识的零知识证明方法及终端
CN110493007A (zh) * 2019-09-06 2019-11-22 腾讯科技(深圳)有限公司 一种基于区块链的信息验证方法、装置、设备及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11831409B2 (en) * 2018-01-12 2023-11-28 Nok Nok Labs, Inc. System and method for binding verifiable claims
CN111125731A (zh) * 2019-12-11 2020-05-08 支付宝(杭州)信息技术有限公司 一种基于可验证声明的业务处理方法、装置及设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110224837A (zh) * 2019-06-06 2019-09-10 西安纸贵互联网科技有限公司 基于分布式身份标识的零知识证明方法及终端
CN110493007A (zh) * 2019-09-06 2019-11-22 腾讯科技(深圳)有限公司 一种基于区块链的信息验证方法、装置、设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
顾炳文: "《风口区块链》", 30 June 2018 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021114872A1 (zh) * 2019-12-11 2021-06-17 支付宝(杭州)信息技术有限公司 一种基于可验证声明的业务处理方法、装置及设备
CN111726230A (zh) * 2020-05-22 2020-09-29 支付宝(杭州)信息技术有限公司 一种数据的存储方法、数据的恢复方法、装置及设备
CN113127516A (zh) * 2020-07-31 2021-07-16 支付宝(杭州)信息技术有限公司 一种区块链数据的处理方法、装置及设备
CN113127516B (zh) * 2020-07-31 2023-12-12 支付宝(杭州)信息技术有限公司 一种区块链数据的处理方法、装置及设备
CN112052244A (zh) * 2020-09-08 2020-12-08 浙江省交通规划设计研究院有限公司 建立模型属性的方法、装置、电子设备及存储介质
CN112182509A (zh) * 2020-09-16 2021-01-05 支付宝(杭州)信息技术有限公司 一种合规数据的异常检测方法、装置及设备
CN112200585A (zh) * 2020-11-10 2021-01-08 支付宝(杭州)信息技术有限公司 业务处理方法、装置、设备及系统
CN112200585B (zh) * 2020-11-10 2021-08-20 支付宝(杭州)信息技术有限公司 业务处理方法、装置、设备及系统
CN112579321A (zh) * 2020-12-23 2021-03-30 京东数字科技控股股份有限公司 业务数据的下载方法、装置及设备
CN114944937A (zh) * 2022-04-19 2022-08-26 网易(杭州)网络有限公司 分布式数字身份验证方法、系统、电子设备及存储介质
CN114944937B (zh) * 2022-04-19 2024-04-09 网易(杭州)网络有限公司 分布式数字身份验证方法、系统、电子设备及存储介质
CN114896964A (zh) * 2022-05-24 2022-08-12 中国银行股份有限公司 数据有效性的验证方法及装置

Also Published As

Publication number Publication date
WO2021114872A1 (zh) 2021-06-17
TW202123040A (zh) 2021-06-16

Similar Documents

Publication Publication Date Title
CN111125731A (zh) 一种基于可验证声明的业务处理方法、装置及设备
CN112184222B (zh) 基于区块链的业务处理方法、业务处理方法、装置及设备
CN111431936B (zh) 基于可验证声明的授权处理方法、装置、设备、系统及存储介质
CN111539813B (zh) 业务行为的回溯处理方法、装置、设备及系统
US10129028B2 (en) Relational encryption for password verification
CN110795501A (zh) 基于区块链的可验证声明的创建方法、装置、设备及系统
CN111680274A (zh) 资源访问方法、装置及设备
US10075301B2 (en) Relational encryption for password verification
CN111130770B (zh) 基于区块链的信息存证方法、系统、用户终端、电子设备及存储介质
CN110020544B (zh) 区块链的区块中存储记录的哈希信息处理方法和系统
GB2471282A (en) Provision of Cryptographic Services via an API
CN110933117B (zh) 数字身份信息的派生、验证方法、装置及设备
CN106664308B (zh) 注册之前的设备验证
CN110474775B (zh) 一种块链式账本中的用户创建方法、装置及设备
CN111190974B (zh) 可验证声明的转发、获取方法、装置及设备
CN110708167A (zh) 一种公钥和私钥的生成方法、装置、设备以及介质
CN111342966B (zh) 一种数据的存储方法、数据的恢复方法、装置及设备
CN112734361B (zh) 一种分布式协同办公数据处理方法及系统
CN110995410A (zh) 一种公钥和私钥的生成方法、装置、设备以及介质
CN113922962A (zh) 一种数字身份属性的选择性披露方法和装置
CN112182509A (zh) 一种合规数据的异常检测方法、装置及设备
CN111737304A (zh) 一种区块链数据的处理方法、装置及设备
CN111526166A (zh) 一种信息验证方法、装置及设备
CN111949996A (zh) 安全私钥的生成方法、加密方法、系统、设备及介质
CN113761496B (zh) 一种基于区块链的身份校验方法及装置和电子设备

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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40029895

Country of ref document: HK