CN111737764B - 生成描述信息的方法及装置 - Google Patents

生成描述信息的方法及装置 Download PDF

Info

Publication number
CN111737764B
CN111737764B CN202010759161.4A CN202010759161A CN111737764B CN 111737764 B CN111737764 B CN 111737764B CN 202010759161 A CN202010759161 A CN 202010759161A CN 111737764 B CN111737764 B CN 111737764B
Authority
CN
China
Prior art keywords
local
external
blockchain
block chain
owner
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
CN202010759161.4A
Other languages
English (en)
Other versions
CN111737764A (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.)
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 CN202110245504.XA priority Critical patent/CN112906064B/zh
Priority to CN202010759161.4A priority patent/CN111737764B/zh
Publication of CN111737764A publication Critical patent/CN111737764A/zh
Application granted granted Critical
Publication of CN111737764B publication Critical patent/CN111737764B/zh
Priority to US17/358,539 priority patent/US11387990B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0847Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving identity based encryption [IBE] schemes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/288Entity relationship models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3825Use of electronic signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3297Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Data Mining & Analysis (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本说明书一个或多个实施例提供一种生成描述信息的方法及装置,该生成描述信息的方法包括:确定注册于第一区块链的本地DID,并根据第一区块链对应的第一区块链节点所维护的与各个本地DID相关的数据,生成各个本地DID之间的关系图谱;根据目标对象对应的目标本地DID,从所述关系图谱中确定出与所述目标本地DID相关的关联本地DID;根据所述目标本地DID与所述关联本地DID之间的关联关系,以及与所述关联本地DID相关的数据,生成针对所述目标对象的描述信息。

Description

生成描述信息的方法及装置
技术领域
本说明书一个或多个实施例涉及终端技术领域,尤其涉及一种生成描述信息的方法及装置。
背景技术
随着信息时代的到来,快速获取用户、组织、机构等对象的描述信息,能够极大地便利人们的生活、工作。例如,在商业场景下,平台能够通过用户的历史浏览记录生成相应的用户画像,进行能够更加精准地向用户推送商品。
发明内容
有鉴于此,本说明书一个或多个实施例提供一种生成描述信息的方法及装置。
本说明书一个或多个实施例提供技术方案如下:
根据本说明书一个或多个实施例的第一方面,提出了一种生成描述信息的方法,包括:
确定注册于第一区块链的本地DID,并根据第一区块链对应的第一区块链节点所维护的与各个本地DID相关的数据,生成各个本地DID之间的关系图谱;
根据目标对象对应的目标本地DID,从所述关系图谱中确定出与所述目标本地DID相关的关联本地DID;
根据所述目标本地DID与所述关联本地DID之间的关联关系,以及与所述关联本地DID相关的数据,生成针对所述目标对象的描述信息。
根据本说明书一个或多个实施例的第二方面,提出了一种生成描述信息的装置,包括:
第一确定单元,确定注册于第一区块链的本地DID,并根据第一区块链对应的第一区块链节点所维护的与各个本地DID相关的数据,生成各个本地DID之间的关系图谱;
第二确定单元,根据目标对象对应的目标本地DID,从所述关系图谱中确定出与所述目标本地DID相关的关联本地DID;
生成单元,根据所述目标本地DID与所述关联本地DID之间的关联关系,以及与所述关联本地DID相关的数据,生成针对所述目标对象的描述信息。
根据本说明书一个或多个实施例的第三方面,提出了一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器通过运行所述可执行指令以实现如第一方面所述的方法。
根据本说明书一个或多个实施例的第四方面,提出了一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如第一方面所述方法的步骤。
附图说明
图1A是本说明书一示例性实施例示出的一种生成描述信息的方法的流程图。
图1B是本说明书一示例性实施例示出的一种关系图谱示意图。
图2是本说明书一示例性实施例示出的一种DID对应关系生成方法的交互图。
图3是本说明书一示例性实施例示出的另一种DID对应关系生成方法的交互图。
图4是本说明书一示例性实施例示出的又一种DID对应关系生成方法的交互图。
图5是本说明书一示例性实施例示出的一种电子设备的结构示意图。
图6是本说明书一示例性实施例示出的一种生成描述信息的装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书一个或多个实施例相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书一个或多个实施例的一些方面相一致的装置和方法的例子。
需要说明的是:在其他实施例中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施例中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其他实施例中可能被分解为多个步骤进行描述;而本说明书中所描述的多个步骤,在其他实施例中也可能被合并为单个步骤进行描述。
DID(Decentralized Identifiers,分布式数字身份标识符)是一种由字符串组成的标识符,用来代表一个数字身份。相较于传统的身份标识符,DID不需要中央注册机构,且同一实体通常可以拥有多个身份(即本说明书中的对象),每一个身份均被分配有唯一的DID。不同身份之间通常没有关联,能够有效避免所有者身份的信息归集。实际上,DID利用了区块链技术去中心化、不可篡改等特性实现了数字身份真正为用户拥有和支配,无需担心中央注册机构对信息进行泄露。
任一对象对应的DID通常由用户到相应的区块链中注册得到,在注册该DID的同时还需提供与该DID对应的身份公钥以生成相应的DID文档(即DID document),而与该DID对应的身份私钥被该DID所有方持有,在该基础上,DID文档中保存的身份公钥可以与该DID所有方持有的身份私钥配合,完成对该所有方的身份验证。除身份公钥以外,DID文档中还可以包含与该DID相关的其他信息,例如,该DID与其他DID之间的关系,以及该DID对应的身份所参与的事件等。
基于上述DID的特性,本说明书提出了一种生成描述信息的方法,能够基于不同对象注册于区块链中的DID以及与其相关的数据生成任一对象的描述信息。
图1A为本说明书一示例性实施例示出的一种生成描述信息的方法的流程图。如图1A所示,该方法可以包括以下步骤:
步骤102A,确定注册于第一区块链的本地DID,并根据第一区块链对应的第一区块链节点所维护的与各个本地DID相关的数据,生成各个本地DID之间的关系图谱。
本说明书的技术方案可以应用于区块链节点,也可以应用于区块链节点以外的其他设备。举例而言,在该技术方案被应用于区块链节点的情况下,区块链节点既负责各个本地DID及其相关数据的维护,又负责关系图谱和描述信息的生成,实现了信息的集中管理,且无需在多个设备之间进行频繁的交互,降低了对带宽的占用。在该技术方案被应用于区块链节点以外的其他设备的情况下,该设备可以通过与区块链节点进行交互,实现关系图谱和描述信息的生成,相较于应用于区块链节点,该方法可以减少对区块链节点处理资源的占用。具体是否由区块链节点执行本说明书的技术方案可由本领域技术人员根据实际需求确定,本说明书对此不作限制。
无论本说明书的技术方案是否应用于区块链节点,该技术方案的执行主体可以为任何具备处理功能的电子设备,例如,执行主体可以为手机、平板、掌上电脑(PDAs,Personal Digital Assistants)、可穿戴设备(如智能眼镜、智能手表等)等移动终端,也可以为PC、智能电视等固定终端。具体应用于何种类型的电子设备可以由本领域技术人员根据实际情况确定,本说明书对此不作限定。
本说明书中针对某一对象的描述信息,可以包括任何与该对象相关的信息。具体的,某一对象的描述信息通常与该对象所属的类型相关,例如,在该对象的类型为人的情况下,该对象可以为这个人在某一购物平台上的用户身份,那么该对象的描述信息可以为该用户在购物场景下的用户画像。当然,该举例仅是示意性的,本说明书对此不作具体限制。
在相关技术中,生成任一对象的描述信息通常需要对该对象的相关数据进行搜集,再对收集到的数据进行分析处理。例如,在该任一对象为用户的情况下,通常需要遍历该用户在购物平台上的历史浏览记录,再对得到的浏览记录进行分析处理,才能得到该用户的用户画像。再例如,在该任一对象为公司的情况下,通常要从多个渠道分别获取与该公司相关的数据,并进行分析处理才能得到该公司的相关信息。可见,在相关技术中生成任一对象的描述信息通常较为繁琐,且内容较为单一,通常为该对象在某一方面的描述信息,不够全面。
在本说明书中,用户在第一区块链上注册任一对象的本地DID时,需要上传与该任一对象相关的数据,以作为与该本地DID相关的数据。在此基础上,第一区块链对应的第一区块链节点即可根据所维护的与各个本地DID相关的数据,生成各个本地DID之间的关系图谱。应当理解的是,随着第一区块链上注册的本地DID数量的增加,第一区块链上所维护的与本地DID相关的数据量会十分庞大,基于此生成的关系图谱包含的内容也必然也是十分丰富,因此,在用户需要获取与某一对象的描述信息时,只需提供与该对象对应的本地DID,即可从该关系图谱中获取该对象的描述信息。通过该方式,大幅提高了获取描述信息的效率,且提高了获取的描述信息的丰富程度。在本说明书中,与本地DID相关的数据可以包括与相应对象相关的静态属性信息。本说明书的中的静态属性信息指的是对于相应对象而言较为固定的信息,例如,在该对象的类型为人的情况下,静态属性信息可以包括家人、职位、住址、公司地址、同事、所属部门等;再例如,在该对象为设备的情况下,静态属性信息可以包括:外观、厂商、所有方、参数、地理位置等。当然,该举例仅是示意性的。静态属性信息的具体含义可由本领域技术人员根据实际需求确定,本说明书对此不作限定。应当理解的是,与各个本地DID相关的数据之间通常存在一定的联系,本说明书可以基于该联系生成上述关系图谱。例如,在与某一本地DID相关的数据中记录了与该本地DID所有方为同事关系的另一对象,即可在该本地DID与另一对象所对应本地DID之间建立关联关系,以生成上述关系图谱,或记录于已生成的关系图谱中。
在实际应用中,各个本地DID所代表的多个对象之间的关系通常不是一尘不变的。因此,还可以获取业务系统上传的动态业务数据,以根据该动态业务数据对生成的关系图谱进行调整;其中,该动态业务数据与第一区块链中的至少一个本地DID相关。通过动态业务数据对关系图谱进行调整的方式,本说明书可以根据实际情况的变化对关系图谱进行调整,使得关系图谱所代表的信息始终与现实情况相符,提高了基于关系图谱生成的描述信息的准确性。需要强调的是,上述业务系统指能够提供与各个对象相关的动态业务数据的系统。其中,该动态业务数据可以与业务相关;也可以与业务无关,如该动态业务数据可以仅用于描述各个对象之间发生的与业务无关的事件。
在本说明书中,可以采用多种方式通过动态业务数据对关系图谱进行调整。
在一实施例中,可以基于业务系统上传的动态业务数据直接调整关系图谱中已存在的本地DID之间的关系数据。在该实施例中,动态业务数据本身并不被记录,能够在对关系图谱调整的前提下,不增加关系图谱所占用的存储空间。
在另一实施例中,在接收到业务系统上传的动态业务数据后,可以在第一区块链中注册对应于该动态业务数据的本地DID,并在关系图谱中添加与对应于动态业务数据的本地DID相关的关系数据。在该实施例中,在第一区块链中为动态业务数据注册了相应的本地DID,使得与动态业务数据相关的关系数据也被记录于第一区块链中。换言之,该方式能够在对关系图谱进行调整的同时,使得对关系图谱的调整可追溯。
在本说明书中,区块链节点所维护的与任一本地DID相关的数据可以通过多种方式得到。
在一实施例中,与任一本地DID相关的数据可以被记录于客户端上传至第一区块链节点的区块链交易中。在该实施例中,用户可以通过客户端向第一区块链节点上传记录有与任一本地DID相关的数据的区块链交易,以使第一区块链节点对其进行维护。
在另一实施例中,第一区块链节点在接收到用户通过客户端上传的区块链交易后,可以执行该区块链交易,并将执行产生的状态数据作为与任一本地DID相关的数据。
在又一实施例中,由于用户可能在不同的区块链中注册了对应于同一对象的DID,因此,在区别于第一区块链的第二区块链中,很可能已经维护了与上述任一本地DID所代表的对象的相关数据,在本说明书中可以将其称为与外部DID相关的数据,其中,该外部DID在第二区块链中代表上述任一本地DID在第一区块链中所代表的对象,且第一区块链节点记录有该任一本地DID与该外部DID之间的对应关系。在此基础上,与该任一本地DID相关的数据可以不由客户端上传的区块链交易得到,而是根据该任一本地DID与该外部DID之间的对应关系直接从维护有与上述外部DID相关的数据的第二区块链中跨链获取。通过该方式,用户无需再次上传与上述任一本地DID所代表对象相关的数据,而是由设备直接获取其他区块链中维护的与同一对象相关的数据,大幅简化了用户操作,提高了获取数据的效率。
在实际应用中,可以仅通过上述方法中的一种获取与任一本地DID相关的数据,也可以同时采用上述方法中的至少两种方式获取与任一本地DID相关的数据。具体的,可由本领域技术人员根据实际需求确定,本说明书对此不作限制。
在上述第三种获取与上述任一本地DID相关的数据的方法中,第一区块链节点需要记录有上述任一本地DID与相应外部DID之间的对应关系。在本说明书中,第一区块链节点可以采用多种方式获取并记录该对应关系。
在一实施例中,第一区块链节点可以从第二区块链对应的第二区块链节点处获取上述外部DID,以建立上述任一本地DID与该外部DID之间的关系。具体的,第一区块链节点可以向第二区块链节点发送对应关系请求,以向第二区块链节点索要该外部DID。其中,该对应关系建立请求中包含上述任一本地DID所有方所颁发的可验证授权信息,该可验证授权信息用于证明该任一本地DID所有方允许建立该对应关系。第二区块链节点在接收到该对应关系建立请求后,可以对其包含的可验证授权信息进行验证,并在通过验证的情况下,向第一区块链节点返回上述外部DID;第一区块链节点可以根据接收到的外部DID,建立并记录上述任一本地DID与该外部DID之间的对应关系。在该实施例中,上述可验证授权信息可以为相关技术中的VC(Verifiable Claim,可验证声明),其具体验证方式与相关技术中的验证方式类似,在此不作赘述。在上述对应关系建立请求中,还可以包含对应于上述任一本地DID所代表的对象的唯一标识符,以便第二区块链节点根据该唯一标识符确定对应于该对象的外部DID。在该实施例中,除了需要通过对可验证授权信息进行验证,进而确定上述任一本地DID所有方允许建立上述对应关系以外,还需要验证该任一本地DID在第一区块链中代表的对象是否与上述外部DID在第二区块链中所代表的对象为同一对象。具体的,第二区块链节点可以在接收到上述对应关系建立请求之后,生成用于验证上述任一本地DID所有方身份的随机字符,并将该随机字符发送至第一区块链节点;第一区块链节点可以将该随机字符交由上述任一本地DID所有方,以由其通过身份私钥对接收到的随机字符进行签名,该签名后随机字符由第一区块链节点返回至第二区块链节点;第二区块链节点在接收到签名后随机字符之后,即可通过上述外部DID所有方的身份公钥对签名后随机字符进行验签,并在验签成功后向第一区块链节点返回上述外部DID。其中,该身份公钥被记录于第二区块链中对应于该外部DID的DID文档中。
在另一实施例中,上述外部DID可以由上述任一本地DID所有方直接向第一区块链节点提供。在该实施例中,第一区块链节点需要验证该外部DID在第二区块链中所代表的对象是否与上述任一本地DID在第一区块链中所代表的对象为同一对象。
在一种情况下,该验证过程可以由第一区块链执行。具体的,第一区块链节点在接收到上述任一本地DID所有方发送的上述外部DID后,一方面可以生成用于验证该任一本地DID所有方身份的随机字符,并将该随机字符交由上述任一本地DID所有方,以由其通过身份私钥对该随机字符进行签名;另一方面,第一区块链节点可以将接收到的外部DID发送至第二区块链节点,并接收第二区块链节点返回的对应于该外部DID的身份公钥。在此基础上,即可基于接收到的身份公钥对上述完成签名后的随机字符进行验签;若验签成功,则可以生成并记录上述任一本地DID与该外部DID之间的对应关系。
在另一种情况下,该验证的过程可以由第二区块链节点执行。具体的,第一区块链节点可以在接收到任一本地DID所有方发送的外部DID的情况下,将该外部DID发送至第二区块链节点,以由第二区块链节点生成用于验证任一本地DID所有方身份的随机字符,并返回至第一区块链节点;第一区块链节点在接收到第二区块链节点返回的随机字符后,可以将随机字符交由上述任一本地DID所有方,以由其通过身份私钥对该随机字符进行签名,第一区块链节点即可将签名后随机字符发送至第二区块链节点;第二区块链节点在接收到签名后随机字符的情况下,可以获取保存在上述外部DID所对应的DID文档中的身份公钥,并通过该身份公钥对签名后随机字符进行验签;第一区块链节点在接收到的第二区块链节点返回的验签成功信息的情况下,即可生成并记录该任一本地DID与该外部DID之间的对应关系。
在该情况下,随机字符还可以由第一区块链节点生成。具体的,第一区块链节点在接收到上述任一本地DID所有方发送的外部DID后,可以生成用于身份验证的随机字符,并在将该随机字符交由上述任一本地DID所有方,以由其通过身份私钥对该随机字符进行签名,在此基础上,第一区块链节点即可将签名后随机字符和上述外部DID发送至第二区块链节点;第二区块链节点在接收到该外部DID后,即可基于该外部DID查找与其对应的DID文档,并获取保存于其中的身份公钥,进而通过该身份公钥对签名后随机字符进行验签;第一区块链节点在接收到返回的表征验证成功的结果后即可生成并记录上述任一本地DID与上述外部DID之间的对应关系。
需要声明的是,正如上文所说的一样,在注册DID的过程中,需要生成对应的DID文档,并至少需要在该DID文档中保存该DID所有方的身份公钥。在此基础上,区块链节点会对DID及其对应的DID文档进行维护。因此,上述在验证任一本地DID所有方身份的过程中所用到的身份公钥被记录于第二区块链中对应于上述外部DID的DID文档中。需要声明的是,对于任一所有方而言,其在不同区块链上为所持有对象(或说身份)注册的DID可以共用一套非对称密钥,也可以为每一区块链上注册的DID单独配置一套非对称密钥。例如,上述任一本地DID和上述外部DID为同一对象分别注册于第一区块链和第二区块链的DID,两者可以共用一套非对称密钥,也可以两者各配置一套单独的非对称密钥。其中,在为上述任一本地DID和上述外部DID分别配置一套非对称密钥的情况下,上述签名的过程中应当采用与上述外部DID对应的身份私钥进行签名,以使第二区块链节点可以基于保存的外部DID对应的DID文档中的身份公钥进行验签。
在相关技术中,为某一对象生成得到的DID通常包含前缀部分和后缀ID部分。其中,后缀ID部分通常位数较多,大幅占用了存储空间。为此,在本说明书中,在第一区块链中注册的各个本地DID虽仍由前缀部分和后缀ID组成,但后缀ID部分符合Base64编码规则,使得本说明书中的本地DID的后缀ID相较于相关技术中DID的后缀ID位数更少,进而使得各个本地DID对第一区块链节点的存储空间占用更少。在实际应用中,可以在为某一对象生成常规DID的基础上,进一步通过Base64算法对该常规DID进行精简,以得到后缀ID符合Base64编码规则的本地DID。
在相关技术中通常仅为人、组织这两类对象注册DID,例如,为某人注册在一购物平台上的用户DID;为某一公司注册一公司DID,所涉及维度较为单一。在本说明书中,可以为更多类型的对象生成DID,具体的,除人和组织以外,还可以为设备、资产、空间等对象生成本地DID。换言之,第一区块链中维护的各个本地DID分别代表的对象的类型可以包括人、组织、设备、资产、空间中的至少一个。当然,该举例仅是示意性的,应当理解的是,除上述类型外还可以为其他类型,具体为何种类型的对象生成本地DID可以由本领域技术人员根据实际需求确定,本说明书对此不作限制。
需要指出的是,本说明中所说的组织可以包括公司、政务机构、民间组织等;资产可以包括资金、房产、车产等;设备可以为手机、平板等移动终端,也可以为PC、智能电视等固定终端;而空间,则可以为磁盘、内存等虚拟空间,也可以为仓库等实体空间。当然,该举例仅是示意性的,本说明书所指出的各个类型所包含的对象可以由本领域技术人员根据实际情况确定,本说明书对此不作限制。
具体的,基于本说明书得到的关系图谱可以如图1B所示。图1B展示的为一货运场景下的关系图谱,由图1B可知,在该关系图谱中既包括充装员、司机、观察者等属于人这一类型的对象,又包括摄像头、手持机等属于设备这一类型的对象,还包括运输单、充装记录等属于动态业务数据的对象。在此基础上,当需要生成对应于其中任一对象的描述信息时,可以直接从该关系图谱中获取与该任一对象相关的其他对象,并结合其他对象的相关数据即可生成该任一对象的描述信息。
需要声明的是,图1B所示的仅为基于保存的本地DID及其相关数据生成的一种关系图谱的可视化示意图。在设备中,该关系图谱通常以各个对象对应的DID以及描述各个DID之间关系的数据的形式保存。
步骤104A,根据目标对象对应的目标本地DID,从所述关系图谱中确定出与所述目标本地DID相关的关联本地DID。
在本说明书中,在用户需要生成对应于目标对象的描述信息时,即可发送对应于该目标对象的目标本地DID。应当理解的是,通过上述方法生成的关系图谱中记录有各个本地DID之间的关联关系,而在第一区块链中记录有与各个本地DID相关的数据。只需找出与该目标本地DID相关的关联本地DID,以及与确定出的关联本地DID的相关信息,即可生成对应于该目标对象的描述信息。
步骤106A,根据所述目标本地DID与所述关联本地DID之间的关联关系,以及与所述关联本地DID相关的数据,生成针对所述目标对象的描述信息。
由上述技术方案可知,通过本说明书的技术方案,能够基于第一区块链中所维护的与各个本地DID相关的数据生成用于表征各个本地DID之间的关联关系的关系图谱。在此基础上,在接收到目标对象对应的目标本地DID的情况下,即可在关系图谱中查找与该目标本地DID相关的关联本地DID,并从第一区块链中获取与关联本地DID相关的数据,进而生成该目标对象的描述信息。换言之,本说明书通过预先建立用于表征各个本地DID之间的关联关系的关系图谱的方式,使得在需要为关系图谱中的任一本地DID所代表的对象生成描述信息时,可以快速建立该对象的描述信息,避免了相关技术中在生成任一对象的描述信息时,需要实时收集并分析处理与对象相关的数据而造成的描述信息生成效率低下的问题。
进一步的,与任一本地DID相关的数据可以由第一区块链节点从已存储有与该任一本地DID所代表对象相关的数据的第二区块链节点中获取,使得用户无需在不同的区块链中重复上传与同一对象相关的数据,减少用户操作的同时,实现了区块链之间的跨链兼容。
本说明书可以通过跨链的方式获取与任一本地DID相关的数据,在该过程中需要借助同一对象在第一区块链中注册的本地DID与在第二区块链中注册的外部DID的对应关系。下面,对生成该对应关系的过程进行介绍。需要声明的是,下述实施例中的第一区块链节点对应于上述第一区块链,而第二区块链节点对应于上述第二区块链,即第一区块链节点与第二区块链节点分属不同的区块链。除此之外,下述客户端与第一区块链节点可以为同一电子设备,也可以为不同设备,其中,在为同一设备的情况下,不存在下述在客户端与第一区块链节点之间进行交互的过程。
图2为本说明书一示例性实施例示出的一种DID对应关系生成方法的交互图。如图2所示,该方法可以包括以下步骤:
步骤201,第一区块链节点向第二区块链节点发送针对任一本地DID的对应关系建立请求,该对应关系建立请求中包含该任一本地DID所代表对象的唯一标识符和可验证授权信息。
在本实施例中,与上述任一本地DID对应的外部DID由第二区块链中的第二区块链节点提供。在本步骤中,第一区块链节点通过向第二区块链节点发送对应关系建立请求的方式,向第二区块链节点索要该外部DID。
步骤202,第二区块链节点对可验证授权信息进行验证。
在本实施例中,对应关系建立请求中可以包括用于证明上述任一本地DID所有方允许建立该对应关系的可验证授权信息,该可验证授权信息可以为相关技术中的VC,其验证方式与相关技术中类似,在此不做赘述。
步骤203,第二区块链节点在确定可验证授权信息通过验证后,基于该任一本地DID所代表对象的唯一标识符确定该对象在第二区块链中注册的外部DID。
在对应关系建立请求中还可以包括该任一本地DID所代表对象的唯一标识符,第二区块链节点在确定可验证授权信息通过验证的情况下,即可通过该唯一标识符确定该对象在第二区块链中注册的外部DID。该唯一标识符通常与该对象的类型相关,例如,在该对象的类型为人的情况下,该唯一标识符可以为该对象的身份证号、手机号等信息;再例如,在该对象的类型为设备的情况下,该唯一标识符可以为该设备的出厂序列号、型号编码。当然该举例仅是示意性的,该唯一标识符的具体形式可由本领域技术人员根据实际情况确定,本说明书对此不作限定。
步骤204,第二区块链节点将生成的随机字符发送至第一区块链节点,以由第一区块链节点将接收到的随机字符转发至客户端。
在可验证授权信息通过验证后,需要进一步验证该任一本地DID所代表对象与该外部DID所代表对象为同一对象。因此,第二区块链节点可以生成一随机字符以进行验证。
步骤205,客户端在用户的操作下通过该任一本地DID所有方的身份私钥对该随机字符进行签名。
在实际应用中,第一区块链节点可以将该随机字符发送给用户所使用的客户端,以由用户通过该客户端对随机字符进行签名,例如,客户端可以向用户展示该随机字符,并由用户记住的身份私钥对该随机字符进行签名;再例如,用户可以通过操作调用保存在该客户端本地的身份私钥对该随机字符进行签名。
步骤206,客户端将签名后随机字符发送至第一区块链节点,以由第一区块链节点将签名后随机字符转发至第二区块链节点。
步骤207,第二区块链节点基于维护的与确定的外部DID对应的身份公钥对接收到的签名后随机字符进行验签。
如上文所述,在为任一对象在区块链中注册DID的过程中,需要生成相应的DID文档,且该DID文档中至少记录该任一对象的身份公钥。因此,在第二区块链节点接收到签名后随机字符的情况下,可以通过保存在DID文档中的身份公钥对该签名后随机字符进行验签。
步骤208,第二区块链节点在确定验签成功的情况下,向第一区块链节点返回确定的外部DID。
在确定验签成功的情况下,即可确定上述任一本地DID与外部DID为同一对象在不同区块链上注册的DID。因此,第二区块链节点可以将该外部DID发送至第一区块链节点,以生成两DID之间的对应关系。
步骤209,第一区块链节点基于接收到的外部DID与该任一本地DID生成对应关系。
由上述技术方案可知,通过本说明书的技术方案,可以通过向第二区块链节点发送对应关系建立请求的方式,建立上述任一本地DID与该任一本地DID所代表对象注册于第二区块链中的外部DID之间的对应关系。在此基础上即可从第二区块链中跨链获取与该任一本地DID相关的数据。换言之,本说明书可以通过建立同一对象在不同区块链中注册的DID之间的对应关系,从已存储有与该对象相关的数据的区块链中直接获取该数据,避免了相关技术中用户需要在不同区块链中重复上传数据的情况,减少了用户的操作。
进一步的,本实施例中的第一区块链节点从第二区块链节点处获取外部DID,即由客观机构提供外部DID,而非由用户直接提供,得到的外部DID较为可靠。
除上述由第二区块链节点提供外部DID以外,还可以由用户直接提供,下面,通过图3和图4对该情况进行介绍。
图3为本说明书一示例性实施例示出的另一种DID对应关系生成方法的交互图。如图3所示,该方法可以包括以下步骤:
步骤301,第一区块链节点接收到客户端发送的对应于任一本地DID的外部DID。
在本实施例中,外部DID由用户经由客户端直接提供,例如,用户可以将记忆中的与上述任一本地DID所对应的外部DID输入客户端中。在本实施例中,需要确定该外部DID是否为上述任一本地DID所代表对象在第二区块链中注册的DID。
步骤302A,第一区块链节点生成用于验证该外部DID是否与上述任一本地DID对应的随机字符。
步骤303A,第一区块链节点将该随机字符发送至客户端。
步骤304A,客户端在用户的操作下通过该任一本地DID所有方的身份私钥对接收到的随机字符进行签名,并将签名后随机字符返回至第一区块链节点。
步骤302B,第一区块链节点将接收到的外部DID转发至第二区块链节点。
步骤303B,第二区块链节点在接收到外部DID后,根据该外部DID查找相应的DID文档。
步骤304B,第二区块链节点将查找到的DID文档或该DID文档中的身份公钥返回至第一区块链节点。
在本实施例中,第一区块链节点一方面需要生成随机字符,并通过与客户端交互以使用户通过上述任一本地DID所有方的身份私钥对生成的随机字符进行签名,以得到签名后随机字符;另一方面,第一区块链节点需要与第二区块链节点交互,以获取上述任一本地DID所有方的身份公钥,以用于对签名后随机字符进行验签,进而证明该外部DID确实为上述任一本地DID所代表对象注册于第二区块链中的DID。
步骤305,第一区块链节点提取接收到的DID文档中的身份公钥,并通过该身份公钥对客户端返回的签名后随机字符进行验签;或者第一区块链节点直接通过接收到的身份公钥对客户端返回的签名后随机字符进行验签。
在实际应用中,外部DID所有方的身份公钥保存于与该外部DID对应的DID文档中,因此,第二区块链节点可以向第一区块链节点返回与该外部DID对应的DID文档,并由第一区块链节点从中提取身份公钥后,对签名后随机字符进行验签。或者,第二区块链节点也可以直接从DID文档中提取身份公钥,并将该身份公钥发送至第一区块链节点。
步骤306,第一区块链节点在确定验签成功的情况下,生成该任一本地DID与该外部DID之间的对应关系。
由上述技术方案可知,本实施例在接收到用户提供的外部DID后,第一区块链节点可以通过生成随机字符的方式验证该外部DID所代表对象与上述任一本地DID所代表对象是否为同一对象,进而生成该任一本地DID与该外部DID之间的对应关系。相较于上一实施例,本实施例可以快速获取外部DID,且第一区块链节点可以并行执行获取签名后随机字符的过程和获取身份公钥的过程,可以快速建立上述对应关系。
图4为本说明书一示例性实施例示出的又一种DID对应关系生成方法的交互图。如图4所示,该方法可以包括以下步骤:
步骤401,第一区块链节点接收到客户端发送的对应于任一本地DID的外部DID。
在本实施例中,大多操作方式与上一实施例相类似,相似部分在下文中不再赘述。
与上一实施例的差别在于,本实施例由第二区块链节点生成随机字符,并对第一区块链节点返回的签名后随机字符进行验签。
步骤402,第一区块链节点将接收到的外部DID发送至第二区块链节点。
步骤403,第二区块链节点生成用于验证该任一本地DID所有方身份的随机字符。
步骤404,第二区块链节点将生成的随机字符返回至第一区块链节点,并由第一区块链节点将接收到的随机字符转发至客户端。
步骤405,客户端在用户操作下通过该本地DID所有方的身份私钥对接收到的随机字符进行签名。
步骤406,客户端向第一区块链节点发送签名后随机字符,并由第一区块链节点将接收到的签名后随机字符转发至第二区块链节点。
步骤407,第二区块链节点基于接收到的外部DID确定与其对应的DID文档。
本步骤也可以在步骤402-步骤406之间的任一时刻执行,具体在何时执行可由本领域技术人员确定,在此不作限定。
步骤408,第二区块链节点通过DID文档中的身份公钥对接收到的签名后随机字符进行验签。
步骤409,第二区块链节点将得到的针对签名后随机字符的验签结果返回至第一区块链节点。
步骤410,第一区块链节点在确定接收到的验签结果为验签成功的情况下,生成该任一本地DID与该外部DID之间的对应关系。
相较于上一实施例,本实施例由第二区块链负责生成随机字符,且由第二区块链执行验签的操作,使得第一区块链节点几乎只需执行转发信息以及生成对应关系的过程,大幅减少了对第一区块链节点处理资源的占用。
图5是一示例性实施例提供的一种电子设备的示意结构图。请参考图5,在硬件层面,该设备包括处理器502、内部总线504、网络接口506、内存508以及非易失性存储器510,当然还可能包括其他业务所需要的硬件。处理器502从非易失性存储器510中读取对应的计算机程序到内存508中然后运行,在逻辑层面上形成生成描述信息的装置。当然,除了软件实现方式之外,本说明书一个或多个实施例并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
请参考图6,在软件实施方式中,该生成描述信息的装置可以包括:
第一确定单元601,确定注册于第一区块链的本地DID,并根据第一区块链对应的第一区块链节点所维护的与各个本地DID相关的数据,生成各个本地DID之间的关系图谱;
第二确定单元602,根据目标对象对应的目标本地DID,从所述关系图谱中确定出与所述目标本地DID相关的关联本地DID;
生成单元603,根据所述目标本地DID与所述关联本地DID之间的关联关系,以及与所述关联本地DID相关的数据,生成针对所述目标对象的描述信息。
可选的,所述与各个本地DID相关的数据包括相应对象的静态属性信息。
可选的,还包括:
获取单元604,获取业务系统上传的动态业务数据,所述动态业务数据与至少一个本地DID相关;
调整单元605,基于所述动态业务数据对所述关系图谱进行调整。
可选的,调整单元605进一步用于:
调整所述关系图谱中已存在的本地DID之间的关系数据;和/或,
在第一区块链中注册对应于所述动态业务数据的本地DID,并在所述关系图谱中添加与对应于所述动态业务数据的本地DID相关的关系数据。
可选的,第一区块链节点所维护的与任一本地DID相关的数据被记录于客户端上传至第一区块链节点的区块链交易中;或者,
与所述任一本地DID相关的数据包括所述区块链交易被执行产生的状态数据;或者,
与所述任一本地DID相关的数据包括与外部DID相关的数据,所述与外部DID相关的数据由第一区块链节点基于所述任一本地DID与所述外部DID之间的对应关系从第二区块链中跨链获取;其中,在确定所述外部DID由所述任一本地DID所代表对象在第二区块链注册生成的情况下,所述任一本地DID与所述外部DID之间的对应关系被第一区块链节点所记录。
可选的,还包括:
记录单元606,第一区块链节点向第二区块链对应的第二区块链节点发送对应关系建立请求,所述对应关系建立请求中包含所述任一本地DID所有方颁发的可验证授权信息,所述可验证授权信息用于证明所述任一本地DID所有方允许建立所述对应关系;第一区块链节点接收第二区块链节点在确定所述可验证授权信息通过验证后返回的所述外部DID;第一区块链节点记录所述任一本地DID与所述外部DID之间的对应关系。
可选的,还包括:
接收单元607,第一区块链节点接收第二区块链节点返回的用于验证所述任一本地DID所有方身份的随机字符,并将经由所述任一本地DID所有方通过身份私钥签名后的随机字符返回至第二区块链节点;
记录单元606进一步用于:接收所述第二区块链节点在通过所述外部DID所有方的身份公钥对签名后的随机字符完成验签后返回的所述外部DID,所述身份公钥被记录于第二区块链中对应于所述外部DID的DID文档中。
可选的,记录单元606进一步用于:
第一区块链节点接收所述任一本地DID所有方发送的所述外部DID,并向所述任一本地DID所有方发送生成的随机字符,以使所述任一本地DID所有方基于身份私钥对所述随机字符进行签名;
第一区块链节点向第二区块链节点发送接收到的所述外部DID,并在接收到第二区块链节点返回的被记录于第二区块链中对应于所述外部DID的DID文档中的身份公钥的情况下,基于返回的身份公钥对所述任一本地DID所有方完成签名后的随机字符进行验签;
第一区块链节点在验签成功的情况下生成并记录所述任一本地DID与所述外部DID之间的对应关系。
可选的,记录单元606进一步用于:
第一区块链节点接收所述任一本地DID所有方发送的所述外部DID,并将所述外部DID发送至第二区块链节点,以由第二区块链节点生成用于验证所述任一本地DID所有方身份的随机字符;
第一区块链节点接收第二区块链节点返回的所述随机字符,并在将所述随机字符交由所述任一本地DID所有方通过身份私钥签名后,将签名后随机字符发送至第二区块链节点;
第一区块链节点基于接收到的第二区块链节点在通过身份公钥对所述签名后随机字符返回的验签成功信息,生成并记录所述任一本地DID与所述外部DID之间的对应关系;
其中,所述身份公钥被记录于第二区块链中对应于所述外部DID的DID文档中。
可选的,所述各个本地DID由前缀部分和后缀ID组成,其中所述后缀ID符合Base64编码规则。
可选的,所述各个本地DID分别代表的对象的类型包括以下至少之一:
人、组织、设备、资产、空间。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
在一个典型的配置中,计算机包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器 (RAM)和/或非易失性内存等形式,如只读存储器 (ROM) 或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存 (PRAM)、静态随机存取存储器 (SRAM)、动态随机存取存储器 (DRAM)、其他类型的随机存取存储器 (RAM)、只读存储器 (ROM)、电可擦除可编程只读存储器 (EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘 (DVD) 或其他光学存储、磁盒式磁带、磁盘存储、量子存储器、基于石墨烯的存储介质或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在本说明书一个或多个实施例使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
以上所述仅为本说明书一个或多个实施例的较佳实施例而已,并不用以限制本说明书一个或多个实施例,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例保护的范围之内。

Claims (14)

1.一种生成描述信息的方法,包括:
确定注册于第一区块链的本地DID,所述本地DID被注册时,在第一区块链中创建有与之对应的DID文档,以用于存储与所述本地DID相关的数据和所述本地DID所有方的身份公钥;并根据第一区块链对应的第一区块链节点所维护的与各个本地DID相关的数据,生成各个本地DID之间的关系图谱;
根据目标对象对应的目标本地DID,从所述关系图谱中确定出与所述目标本地DID相关的关联本地DID;
根据所述目标本地DID与所述关联本地DID之间的关联关系,以及与所述关联本地DID相关的数据,生成针对所述目标对象的描述信息;
其中,第一区块链所维护的与任一本地DID相关的数据包括与外部DID相关的数据,所述与外部DID相关的数据由第一区块链节点基于所述任一本地DID与所述外部DID之间的对应关系从第二区块链中跨链获取;其中,在通过所述任一本地DID所有方的身份公私钥对确定所述外部DID为所述任一本地DID所代表对象注册于第二区块链的DID的情况下,所述任一本地DID与所述外部DID之间的对应关系被第一区块链节点所记录。
2.根据权利要求1所述的方法,所述与各个本地DID相关的数据包括相应对象的静态属性信息。
3.根据权利要求2所述的方法,还包括:
获取业务系统上传的动态业务数据,所述动态业务数据与至少一个本地DID相关;
基于所述动态业务数据对所述关系图谱进行调整。
4.根据权利要求3所述的方法,基于所述动态业务数据对所述关系图谱进行调整,包括:
调整所述关系图谱中已存在的本地DID之间的关系数据;和/或,
在第一区块链中注册对应于所述动态业务数据的本地DID,并在所述关系图谱中添加与对应于所述动态业务数据的本地DID相关的关系数据。
5.根据权利要求1所述的方法,与所述任一本地DID相关的数据还包括:
被记录于客户端上传至第一区块链节点的区块链交易中的数据;或者,
所述区块链交易被执行产生的状态数据。
6.根据权利要求1所述的方法,第一区块链节点记录所述任一本地DID与所述外部DID之间的对应关系,包括:
第一区块链节点向第二区块链对应的第二区块链节点发送对应关系建立请求,所述对应关系建立请求中包含所述任一本地DID所有方颁发的可验证授权信息,所述可验证授权信息用于证明所述任一本地DID所有方允许建立所述对应关系;
第一区块链节点接收第二区块链节点在确定所述可验证授权信息通过验证后返回的所述外部DID;
第一区块链节点记录所述任一本地DID与所述外部DID之间的对应关系。
7.根据权利要求6所述的方法,
还包括:第一区块链节点接收第二区块链节点返回的用于验证所述任一本地DID所有方身份的随机字符,并将经由所述任一本地DID所有方通过身份私钥签名后的随机字符返回至第二区块链节点;
所述第一区块链节点接收第二区块链节点在确定所述可验证授权信息通过验证后返回的所述外部DID,包括:接收所述第二区块链节点在通过所述外部DID所有方的身份公钥对签名后的随机字符完成验签后返回的所述外部DID,所述身份公钥被记录于第二区块链中对应于所述外部DID的DID文档中。
8.根据权利要求1所述的方法,第一区块链节点记录所述任一本地DID与所述外部DID之间的对应关系,包括:
第一区块链节点接收所述任一本地DID所有方发送的所述外部DID,并向所述任一本地DID所有方发送生成的随机字符,以使所述任一本地DID所有方基于身份私钥对所述随机字符进行签名;
第一区块链节点向第二区块链节点发送接收到的所述外部DID,并在接收到第二区块链节点返回的被记录于第二区块链中对应于所述外部DID的DID文档中的身份公钥的情况下,基于返回的身份公钥对所述任一本地DID所有方完成签名后的随机字符进行验签;
第一区块链节点在验签成功的情况下生成并记录所述任一本地DID与所述外部DID之间的对应关系。
9.根据权利要求1所述的方法,第一区块链节点记录所述任一本地DID与所述外部DID之间的对应关系,包括:
第一区块链节点接收所述任一本地DID所有方发送的所述外部DID,并将所述外部DID发送至第二区块链节点,以由第二区块链节点生成用于验证所述任一本地DID所有方身份的随机字符;
第一区块链节点接收第二区块链节点返回的所述随机字符,并在将所述随机字符交由所述任一本地DID所有方通过身份私钥签名后,将签名后随机字符发送至第二区块链节点;
第一区块链节点基于接收到的第二区块链节点在通过身份公钥对所述签名后随机字符返回的验签成功信息,生成并记录所述任一本地DID与所述外部DID之间的对应关系;
其中,所述身份公钥被记录于第二区块链中对应于所述外部DID的DID文档中。
10.根据权利要求1所述的方法,所述各个本地DID由前缀部分和后缀ID组成,其中所述后缀ID符合Base64编码规则。
11.根据权利要求1所述的方法,所述各个本地DID分别代表的对象的类型包括以下至少之一:
人、组织、设备、资产、空间。
12.一种生成描述信息的装置,包括:
第一确定单元,确定注册于第一区块链的本地DID,所述本地DID被注册时,在第一区块链中创建有与之对应的DID文档,以用于存储与所述本地DID相关的数据和所述本地DID所有方的身份公钥;并根据第一区块链对应的第一区块链节点所维护的与各个本地DID相关的数据,生成各个本地DID之间的关系图谱;
第二确定单元,根据目标对象对应的目标本地DID,从所述关系图谱中确定出与所述目标本地DID相关的关联本地DID;
生成单元,根据所述目标本地DID与所述关联本地DID之间的关联关系,以及与所述关联本地DID相关的数据,生成针对所述目标对象的描述信息;
其中,第一区块链所维护的与任一本地DID相关的数据包括与外部DID相关的数据,所述与外部DID相关的数据由第一区块链节点基于所述任一本地DID与所述外部DID之间的对应关系从第二区块链中跨链获取;其中,在通过所述任一本地DID所有方的身份公私钥对确定所述外部DID为所述任一本地DID所代表对象注册于第二区块链的DID的情况下,所述任一本地DID与所述外部DID之间的对应关系被第一区块链节点所记录。
13.一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器通过运行所述可执行指令以实现如权利要求1-11中任一项所述的方法。
14.一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如权利要求1-11中任一项所述方法的步骤。
CN202010759161.4A 2020-07-31 2020-07-31 生成描述信息的方法及装置 Active CN111737764B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202110245504.XA CN112906064B (zh) 2020-07-31 2020-07-31 生成描述信息的方法及装置
CN202010759161.4A CN111737764B (zh) 2020-07-31 2020-07-31 生成描述信息的方法及装置
US17/358,539 US11387990B2 (en) 2020-07-31 2021-06-25 Method and apparatus for generating description information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010759161.4A CN111737764B (zh) 2020-07-31 2020-07-31 生成描述信息的方法及装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202110245504.XA Division CN112906064B (zh) 2020-07-31 2020-07-31 生成描述信息的方法及装置

Publications (2)

Publication Number Publication Date
CN111737764A CN111737764A (zh) 2020-10-02
CN111737764B true CN111737764B (zh) 2021-02-09

Family

ID=72656776

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202010759161.4A Active CN111737764B (zh) 2020-07-31 2020-07-31 生成描述信息的方法及装置
CN202110245504.XA Active CN112906064B (zh) 2020-07-31 2020-07-31 生成描述信息的方法及装置

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202110245504.XA Active CN112906064B (zh) 2020-07-31 2020-07-31 生成描述信息的方法及装置

Country Status (2)

Country Link
US (1) US11387990B2 (zh)
CN (2) CN111737764B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210314293A1 (en) * 2020-04-02 2021-10-07 Hewlett Packard Enterprise Development Lp Method and system for using tunnel extensible authentication protocol (teap) for self-sovereign identity based authentication
WO2024062375A1 (en) * 2022-09-21 2024-03-28 Lenovo (Singapore) Pte. Ltd. Decentralized identity authentication and authorization

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200219150A1 (en) * 2018-02-13 2020-07-09 Dallas Johnston Method and system for a value based attestation of counterparty credibility
CN111316303B (zh) * 2019-07-02 2023-11-10 创新先进技术有限公司 用于基于区块链的交叉实体认证的系统和方法
WO2021006616A1 (en) * 2019-07-11 2021-01-14 Coinplug, Inc. Method for providing relational decentralized identifier service and blockchain node using the same
CN110598386B (zh) * 2019-09-27 2023-05-30 腾讯科技(深圳)有限公司 基于区块链的数据处理方法、装置、设备及存储介质
US11388010B2 (en) * 2019-10-18 2022-07-12 Arcblock, Inc. Blockchain account migration
CN110909176B (zh) * 2019-11-20 2021-03-02 腾讯科技(深圳)有限公司 数据推荐方法、装置、计算机设备以及存储介质
CN111046115B (zh) * 2019-12-24 2023-08-08 四川文轩教育科技有限公司 基于知识图谱的异构数据库互联管理方法
CN111181945B (zh) * 2019-12-24 2022-03-04 达闼机器人有限公司 数字身份管理方法、装置、存储介质及电子设备
CN111241301A (zh) * 2020-01-09 2020-06-05 天津大学 一种面向知识图谱表示学习的分布式框架构建方法
US11238170B2 (en) * 2020-02-27 2022-02-01 Microsoft Technology Licensing, Llc Delegation using pairwise decentralized identifier
CN111461742B (zh) * 2020-03-25 2023-04-25 广东省智能制造研究所 一种基于区块链的制造业数据图示管理系统
CN111342963A (zh) * 2020-05-15 2020-06-26 支付宝(杭州)信息技术有限公司 数据上链方法、数据存储方法及装置

Also Published As

Publication number Publication date
CN111737764A (zh) 2020-10-02
US11387990B2 (en) 2022-07-12
CN112906064A (zh) 2021-06-04
US20220038268A1 (en) 2022-02-03
CN112906064B (zh) 2022-05-17

Similar Documents

Publication Publication Date Title
US10938550B2 (en) Method, system and apparatus for data storage and data access
CN110336797B (zh) 基于区块链的企业认证、认证追溯方法、装置及设备
CN110060162B (zh) 基于区块链的数据授权、查询方法和装置
US10956903B2 (en) Obtaining a blockchain-based, real-name, electronic bill
CN110633963B (zh) 电子票据处理方法、装置、计算机可读存储介质和设备
CN112435030B (zh) 一种基于区块链的数据处理方法、装置及电子设备
CN110046156A (zh) 基于区块链的内容管理系统及方法、装置、电子设备
US11645412B2 (en) Computer-based methods and systems for building and managing privacy graph databases
CN113972986A (zh) 基于区块链的工业互联网标识信息解析方法以及相关装置
CN111815454B (zh) 数据上链方法及装置、电子设备、存储介质
CN111737764B (zh) 生成描述信息的方法及装置
CN111563098A (zh) 结构化与非结构化数据查询方法、设备、存储介质及装置
CN113691615A (zh) 一种服务请求的处理方法、系统及数据网关
CN114971827A (zh) 一种基于区块链的对账方法、装置、电子设备及存储介质
CN115080537A (zh) 多租户的数据分库方法、程序产品及电子设备
CN111556148B (zh) 一种数据共享方法、数据共享平台和装置
CN110033367A (zh) 基于区块链的合同记录方法及装置、电子设备
US20220337435A1 (en) Secure identity card using unclonable functions
CN113129008A (zh) 数据处理方法、装置、计算机可读介质及电子设备
CN110060151B (zh) 一种业务执行方法及装置
CN113836521B (zh) 一种基于去中心化身份的多重身份管理方法及装置
CN110324361A (zh) 信息认证的方法、装置、计算设备和介质
CN112883038B (zh) 一种基于区块链的数据管理方法、计算机及可读存储介质
CN111953773B (zh) 去中心化地址映射方法及装置
CN117093419A (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
GR01 Patent grant
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40038358

Country of ref document: HK