CN110771120A - 用于基于区块链的认证的系统和方法 - Google Patents

用于基于区块链的认证的系统和方法 Download PDF

Info

Publication number
CN110771120A
CN110771120A CN201980002971.0A CN201980002971A CN110771120A CN 110771120 A CN110771120 A CN 110771120A CN 201980002971 A CN201980002971 A CN 201980002971A CN 110771120 A CN110771120 A CN 110771120A
Authority
CN
China
Prior art keywords
blockchain
transaction
information
digital
audit data
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.)
Granted
Application number
CN201980002971.0A
Other languages
English (en)
Other versions
CN110771120B (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.)
Advanced New Technologies Co Ltd
Advantageous New Technologies Co Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Publication of CN110771120A publication Critical patent/CN110771120A/zh
Application granted granted Critical
Publication of CN110771120B publication Critical patent/CN110771120B/zh
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/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • 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
    • 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/3827Use of message hashing
    • 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/23Updating
    • G06F16/2308Concurrency control
    • 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
    • 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
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • 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
    • G06Q2220/00Business processing using cryptography

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Business, Economics & Management (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Accounting & Taxation (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Storage Device Security (AREA)

Abstract

用于执行认证的方法、系统和装置,包括编码在计算机存储介质上的计算机程序。其中,所述方法之一包括:获得用于针对与执行的交易相关联的操作信息进行认证的审计数据;生成审计数据的数字摘要;从区块链检索操作信息的数字摘要;以及通过对照检索到的操作信息的数字摘要来验证所生成的审计数据的数字摘要,以确定审计数据的真实性。

Description

用于基于区块链的认证的系统和方法
技术领域
本申请一般涉及用于基于区块链的认证的方法和设备。
背景技术
在当前技术中,大多数实体管理它们自己的账户和操作。为审计而收集的数据(例如,账户活动日志、诸如用户标识和授权级别的账户用户信息)通常来自实体维护的系统。例如,金融实体通常部署并操作他们自己的系统,这些系统定期地向用户授权对金融系统和处理交易的访问。示例性要求可以是从银行方发起交易的用户不能是审阅和批准交易的同一人。另一个示例性要求可以是,仅实体中某些位置的用户可以在某些时间窗口期间授权交易。审计组织可以审计金融实体以确认金融实体是否符合这样的要求。出于隐私和商业秘密的原因,金融实体在内部存储和管理操作数据,而不是将数据委托给第三方。为了进一步的自身利益或出于其它原因,为审计而收集的数据可能易受不准确、不真实的操纵或甚至欺诈的影响,这会对审计的可信度产生不利影响。因此,期望一种能够减少数据不准确性、操纵或欺诈的系统。
发明内容
本文的各种实施例包括但不限于用于基于区块链的认证的系统、方法和非暂时性计算机可读介质。
根据一个方面,计算机实现的认证方法包括:获得用于针对与执行的交易相关联的操作信息进行认证的审计数据;生成所述审计数据的数字摘要;从区块链检索所述操作信息的数字摘要;以及通过对照检索到的操作信息的数字摘要来验证所生成的审计数据的数字摘要,以确定审计数据的真实性。在获得审计数据之前,所述方法还可以包括:将操作信息的数字摘要发送至区块链的一个或多个节点,以存储在区块链中。
在一些实施例中,通过对照检索到的操作信息的数字摘要来验证所生成的审计数据的数字摘要,以确定审计数据的真实性,包括:响应于确定所生成的审计数据的数字摘要与检索到的所述操作信息的数字摘要一致,确定所述审计数据是真实的;以及响应于确定所生成的所述审计数据的数字摘要与所检索到的操作信息的数字摘要不一致,确定审计数据是不真实的。
在其他实施例中,从所述区块链检索所述操作信息的所述数字摘要包括根据与所述操作信息的所述数字摘要相关联的所述区块链交易标识从所述区块链检索所述操作信息的所述数字摘要。
在其他实施例中,在获得审计数据之前,所述方法还包括:响应于登录,生成用于登录的身份信息的数字摘要;将所述身份信息的数字摘要发送至所述区块链的一个或多个节点,以存储在所述区块链中;获得与所述身份信息的数字摘要相关联的区块链交易标识;执行所述交易;生成操作信息的数字摘要,其中,所述操作信息包括所述交易的交易信息以及以下中的一个或多个:所述身份信息的数字摘要、所述身份信息、以及与所述身份信息的数字摘要相关联的所述区块链交易标识;将所述操作信息的数字摘要发送至所述区块链的一个或多个节点,以存储在所述区块链中;以及获得与所述操作信息的数字摘要相关联的区块链交易标识。
在其他实施例中,所述交易的交易信息包括用于执行交易的一个或多个统一资源定位符URL。
在一些实施例中,所述交易的所述交易信息包括用于调用一个或多个URL的一个或多个参数以及从调用一个或多个URL返回的一个或多个结果。
在其他实施例中,所述身份信息包括授权执行所述交易的用户的授权级别。
在其他实施例中,所述身份信息包括请求执行所述交易的用户的授权级别。
在其他实施例中,将操作信息的数字摘要发送至区块链的一个或多个节点,以存储在区块链中,包括:将所述操作信息的数字摘要和用于生成所述操作信息的数字摘要的加密处理写入区块链合约;以及使一个或多个节点发起区块链交易以部署区块链合约。
在一些实施例中,生成所述审计数据的数字摘要包括基于用于生成所述操作信息的数字摘要的加密处理,生成所述审计数据的数字摘要。
在其他实施方案中,所述区块链是联盟区块链。
在其他实施例中,所述操作信息的数字摘要包括操作信息的哈希值。所述区块链交易标识包括区块链交易的交易哈希值。
在一些其他实施例中,所述操作信息包括所述交易的交易信息。
在其他实施例中,认证系统包括一个或多个处理器和一个或多个计算机可读存储器,所述一个或多个计算机可读存储器耦接到所述一个或多个处理器并且其上存储有指令,所述指令可由所述一个或多个处理器执行以执行前述实施例中的任一项的方法。
在其他实施例中,认证装置包括用于执行前述实施例中的任一项的方法的多个模块。
根据另一方面,认证系统包括一个或多个处理器以及一个或多个非暂时性计算机可读存储器,所述一个或多个非暂时性计算机可读存储器耦接到所述一个或多个处理器并且被配置成具有可由所述一个或多个处理器执行以促使所述系统执行操作的指令,所述操作包括:获得用于针对与执行的交易相关联的操作信息进行认证的审计数据;生成所述审计数据的数字摘要;从区块链检索所述操作信息的数字摘要;以及通过对照所检索到的操作信息的数字摘要来验证所生成的审计数据的数字摘要,以确定审计数据的真实性。
根据另一方面,非暂时性计算机可读存储介质被配置有指令,所述指令可由一个或多个处理器执行以促使所述一个或多个处理器执行操作,所述操作包括:获得用于针对与执行的交易相关联的操作信息进行认证的审计数据;生成所述审计数据的数字摘要;从区块链检索所述操作信息的数字摘要;以及通过对照所检索到的操作信息的数字摘要来验证所生成的审计数据的数字摘要,以确定审计数据的真实性。
根据另一方面,所述认证装置可以包括:获得模块,用于获得用于针对与执行的交易相关联的操作信息进行认证的审计数据;生成模块,用于生成所述审计数据的数字摘要;检索模块,用于从区块链中检索操作信息的数字摘要;以及确定模块,用于通过对照所检索到的操作信息的数字摘要来验证所述生成的审计数据的数字摘要,以确定审计数据的真实性。
本文中公开的实施例具有一个或多个技术效果。在一些实施例中,所述方法和系统可以提供原始数据(例如,与所执行的交易相关联的操作信息)的存储,以用于针对应该与原始数据相同的审计数据进行认证。区块链中的存储允许精确保留原始数据的记录。在其他实施例中,当执行交易时,所述交易的表示被打包到区块链中,变得不可变。在其他实施例中,所述方法和系统提供通过与所述区块链存储的原始数据进行比较来检查所述审计数据的真实性的能力。在其他实施例中,可以将审计数据的数字摘要与区块链存储的原始数据的数字摘要进行比较,以确保审计数据未被篡改。这防止了在提供审计数据时的不准确性、缺陷、操纵和欺诈。在一些实施例中,区块链将原始数据作为数字摘要存储实现了在真实记录信息的同时确保了隐私的保护。在其他实施例中,数字摘要由各种区块链节点共识验证,但不显露原始数据的内容。因此,原始数据保持私有。在其他实施例中,所述方法和系统提供了在数字摘要中包括审计所需的信息的能力。在其他实施例中,执行原始交易的用户的身份和授权级别可以与原始数据(例如,原始交易)相关联,并且可以被包括在数字摘要中。这为认证将由审计机构审计的审计数据提供了可检索的足够信息。因此,提高了审计的真实性和质量。
在参考附图考虑以下描述和所附权利要求书之后,本文所公开的系统、方法和非暂时性计算机可读介质的这些特征和其他特征,以及结构的相关元件的操作方法和功能、部件的组合和制造的经济性将变得更清楚,所有这些形成本文的一部分,其中,在各个附图中,相同的附图标记表示对应的部件。然而,应明确理解,附图仅用于说明和描述的目的,且不旨在作为限制。
附图说明
图1示出了根据各种实施例的基于区块链的认证系统的示例。
图2示出了根据各种实施例的区块链网络的示例。
图3示出了根据各个实施例的用于将数据存储至区块链的方法的示例。
图4示出了根据各种实施例的用于数据锚定和验证的方法的示例。
图5示出了根据各种实施例的用于基于区块链的认证的方法的示例的流程图。
图6示出了根据各种实施例的基于区块链的认证计算机系统的示例的框图。
图7示出了其中可以实现本文所描述的任何实施例的计算机系统的示例的框图。
具体实施方式
本文所公开的实施例包括但不限于基于区块链的认证系统、方法和非暂时性计算机可读介质。在各种实施例中,操作信息(例如,金融交易数据)的数字摘要通过锚定被存储至区块链。所存储的数字摘要可以从区块链中检索到,并且用于针对所提供的用于审计的数据进行验证。基于区块链的不变性、一致性和准确性,确保了存储的数字摘要的真实性和原始性。在一些实施例中,可以防止数据篡改的尝试。在其他实施例中,存储摘要可以防止在存储明文信息时过度公开密钥信息。在其他实施例中,降低了信息泄漏的风险,减少了隐藏信息的机会,和/或提高了审计数据的安全性。
在各种实施例中,所公开的认证系统、方法和非暂时性计算机可读介质可以基于各种类型的区块链,区块链的类型取决于谁被允许参与网络、执行共识协议、以及维护共享的区块链账本。各种类型的区块链可以包括,例如,公有区块链、联盟区块链、私有区块链等。下文的描述涉及联盟区块链。尽管如此,所公开的认证系统、方法和非暂时性计算机可读介质也可应用于其他类型的区块链。
因为操作是由网络中的各种节点(例如,计算设备)执行的,区块链可以被认为是去中心化的或部分中心化的数据库,其通常被称为分布式账本。任何信息都可以被写入并被保存在区块链中或从区块链读取。节点是例如支持区块链网络并保持其平稳运行的计算设备或大型计算机系统。每个节点可以提供区块链的部分或全部功能。例如,提供共识验证的节点可被称为共识参与节点(或共识节点)。共识可以是用于区块链节点的网络的用于实现通常接受的处理结果的规则算法。通过共识,数据不断被添加到区块的链中。如果对区块进行改变,则该区块至链中的前一区块的链接变得无效,并且它对于所有网络参与者变得可见,这些网络参与者通过共识规则可以防止任何进一步的未经授权的动作。
联盟区块链指的是由预置节点控制共识处理的区块链。区块链可以允许每个人或仅被许可的参与者访问或采用混合访问方法。例如,根哈希及其API(应用程序接口)可以对公众开放;允许外部方使用API进行一定数量的查询并获得与区块链状态有关的信息。
联盟区块链当被与与之类似的更普遍的公有区块链相比时可以被最好地理解。公有区块链不具备访问限制,意味着具有因特网连接的任何人都绝对可以成为公有区块链的参与者。更具体地说,世界上的任何人都能够读取可被包括在区块链上的数据,并且世界上的任何人被允许在公有区块链上执行区块链交易。此外,对于谁可以参与到区块链的共识处理中没有限制,所述共识处理是确定可以向区块链添加区块的个体或实体的处理。公有区块链被认为是完全去中心化的,对区块链的控制不在任何单个个体或实体之下。
联盟区块链与其公有的相似区块链的不同之处在于它们是许可的,因此,不是任何具有因特网连接的人都可以获得对联盟区块链的访问。这些类型的区块链也可以被描述为半去中心化的。对联盟区块链的控制不是授权给单个实体而是授权给一组被许可的个体。对于联盟区块链,其共识处理可能不同于公有区块链的共识处理。不是任何人都能够参与该处理,联盟区块链的共识参与者可能是网络上预先许可的节点组。节点可以对应于各个国家、企业或其他实体。因此,联盟区块链拥有公有区块链中固有的安全特征,同时还允许对网络的更大程度的控制。
图1示出了根据各种实施例的用于执行各种公开的步骤和方法的系统110的示例。如图所示,系统110可以包括实体系统111、区块链系统112、锚系统113和审计系统114,它们中的每一个可以对应于通过由网络119表示的各种类型的通信耦接在一起的一个或多个物理硬件设备或虚拟设备。
实体系统111、区块链系统112、锚系统113和审计系统114中的每一个可以在诸如服务器、计算机、移动电话等的一个或多个计算设备中实现。例如,每个系统可以在服务器集群中实现。服务器集群可以采用负载平衡。
尽管在该图中实体系统111、区块链系统112、锚系统113和审计系统114被示出为单个组件,但是应当理解,这些系统可以被实现为单个设备或耦接在一起的多个设备。也就是说,图1中的两个或多个系统可以被集成到单个系统中或被实现为独立的系统。例如,实体系统111和锚系统113可以被集成到包括一个或多个计算设备的认证系统118中。认证系统118可以被称为基于区块链的认证系统。如果被集成,则实体系统111和锚系统113可以被实现为所集成的系统的各种模块或类似组件。
实体系统111、区块链系统112、锚系统113和审计系统114中的每一个可以安装有适当的软件(例如,认证应用程序接口)和/或硬件(例如,有线、无线连接)以访问系统110的其他设备。实体系统111、区块链系统112、锚系统113和审计系统114中的每一个可以包括一个或多个处理器和耦接到所述一个或多个处理器的一个或多个存储器。所述存储器可以是非暂时性的且计算机可读的,并且可以配置有可由所述一个或多个处理器执行的指令,以促使所述一个或多个处理器执行本文描述的操作。
通常,实体系统111、区块链系统112、锚系统113和审计系统114能够通过网络119彼此通信。例如,实体系统111、区块链系统112、锚系统113和审计系统114可能能够通过一个或多个有线或无线网络(例如,因特网)彼此通信,通过所述网络可以通信数据。下面参考图2至图7进一步详细描述系统组件的各个方面。
图2示出了根据各种实施例的区块链网络120的示例。如图所示,区块链网络120可以包括上述区块链系统112。区块链系统112可以包括多个区块链节点(例如,节点1、节点2、节点3、节点4、节点i等)。区块链节点可以形成网络(例如点对点(peer to peer)网络),在所述网络中一个区块链节点与另一个区块链节点通信。所示的区块链节点的顺序和数量仅仅是示例,并且是为了说明的简单。区块链节点可以在服务器、计算机等中实现。每个区块链节点可以对应于经由诸如TCP/IP的各种类型的通信方法耦接在一起的一个或多个物理硬件设备或虚拟设备。取决于分类,区块链节点可以包括全量节点、Geth节点、共识节点等。
在各种实施例中,区块链系统112的一个或多个节点可以与诸如上述实体系统111、锚系统113和审计系统114的其他系统和设备交互。交互可以涉及发送和/或接收出于例如交易、认证、签订合约等目的的数据。在一个示例中,节点A(例如,移动电话、计算机等)可以对应于认证系统118的设备,并且可以向节点1(或区块链系统112的多个节点)发送信息以将信息存储在区块链中。存储过程可通过区块链交易完成。例如,信息可被写入到区块链合约(例如,智能合约),并且可由节点1(或基于区块链的共识规则具有这种特权的一个或多个其他节点)发起区块链交易,以将合约部署到区块链。类似于其他区块链交易,本文的区块链交易可以对应于交易哈希。哈希代表哈希值,并且可以是使数据(例如,身份信息、与所执行的交易相关联的交易信息)经过哈希函数或算法的数字输出。区块链可以存储区块链交易的哈希值。稍后,当需要检索信息时(例如,用于验证),节点A/节点B(例如,移动电话、计算机等)可以指示节点1/节点2(或区块链系统112的多个节点)发起另一区块链交易以从区块链获得信息。另一区块链交易可查询地址以获得信息。节点B可以从属于耦接到区块链系统112的认证系统118、审计系统114或另一系统(未示出)。
在与区块链系统112交互时,节点A和节点B可以安装有适当的区块链软件,以发起、转发或访问区块链交易。节点A可以通过与节点1或区块链的一个或多个其他节点的通信来访问区块链,而节点B可以通过与节点2或区块链的一个或多个其他节点通信来访问区块链。节点A可以通过节点1或类似节点向区块链提交区块链交易,以请求将区块链交易添加到区块链。
所述区块链可以由多个区块链节点维护,每个所述区块链节点包括存储器或与存储器耦接。在一些实施例中,存储器可以存储池数据库。池数据库可以被分布式方式的多个区块链节点访问。例如,池数据库可以分别被存储在区块链节点的存储器中。池数据库可以存储由类似于节点A的一个或多个用户设备提交的多个区块链交易。
在一些实施例中,在接收到未确认的区块链交易的区块链交易请求之后,接收方区块链节点可以执行对区块链交易的一些初步验证。例如,参照图2,节点1可以在从节点A接收到区块链交易之后执行初步验证。一旦被验证,则可以将区块链交易存储在接收方区块链节点(例如,节点1)的池数据库中,所述接收方区块链节点还可以将区块链交易转发至一个或多个其他区块链节点(例如,节点3、节点4)。一个或多个其他区块链节点可重复由接收方节点完成的处理。一旦相应池数据库中的区块链交易达到某一水平(例如,阈值量),则区块链节点可以根据共识规则或其他规则各自验证相应池数据库中的该批区块链交易。如果区块链交易涉及区块链合约(例如,智能合约),则区块链节点可以在本地执行区块链合约。区块链合约是一种计算机协议,其旨在数字地促进、验证或强制协商或执行合约。区块链合约允许在没有第三方的情况下执行可信区块链交易。区块链交易处理的一个示例可以在合约代码中编码数据以用于数据存储(通过合约部署)和检索(通过访问或执行合约)。区块链合约可包括用户编写的合约代码,诸如身份信息的哈希值、与所执行的区块链交易相关联的区块链交易信息等。根据共识规则成功验证该批区块链交易的特定区块链节点可以打包所述区块链交易以将其添加至其区块链的本地副本中,并将结果扩散至其他区块链节点。该特定区块链节点可以是首先成功完成验证的区块链节点、已经获得验证特权的区块链节点、或者已经基于另一共识规则确定的区块链节点等。然后,其他区块链节点可以在本地执行区块链交易,相互验证执行结果(例如,通过执行哈希计算),并且将它们的区块链副本与该特定区块链节点的区块链同步。通过更新它们的本地区块链副本,其他区块链节点可以类似地将区块链交易中的这种信息写入到对应的本地存储器中。因此,区块链合约得以部署。稍后所部署的合约可通过其在区块链上的相应地址被访问以用于执行。例如,可以检索存储在合约中的数据。如果验证在某一点失败,则所述区块链交易被拒绝。虽然如上所述,但是其他类型的区块链系统和相关联的共识规则可应用于所公开的区块链系统。
图3示出了根据各个实施例的用于将数据存储至区块链的方法300的示例。方法300可由图1的系统110的一个或多个组件(例如,实体系统111、区块链系统112)实现。如前所述,实体系统111可以是包括一个或多个计算设备的认证系统118的一部分。实体系统111可以是金融系统,例如银行系统。下面给出的操作旨在说明。取决于实施例,方法300可以包括以各种顺序或并行执行的附加的、更少的或替代的步骤。
在一些实施例中,在步骤311处,实体可以通过实体系统111发起身份验证请求(例如,登录)。实体可以与个人、公司或企业、组织等相关联。例如,一个人可能通过输入登录用户的某一身份信息(例如,诸如账号和密码、登录用户的授权级别等的证书信息)以进行验证,从而试图登录实体系统111或登录耦接到实体系统111的类似系统(例如,由银行操作的并在节点A上实现的在线银行系统)。
在步骤312处,实体系统111可以验证身份信息,并获得针对身份验证请求的身份信息的第一数字摘要。针对身份验证请求的身份信息可包括与例如但不限于以下各项中的一个或多个相关的任何信息:登录用户的生物记录信息(例如,姓名、性别、地址、身份、联系号码等)、登录时间戳和位置、登录设备、登录成功还是失败等。身份信息的第一数字摘要可以是身份信息的哈希值(例如,SHA-256哈希值)。实体系统111可以对身份信息执行哈希处理以获得第一数字摘要。例如,第一数字摘要可以包括通过使身份信息经过哈希算法而获得的哈希值。实体系统111可以将第一数字摘要发送至区块链系统112,以将其存储在由区块链系统112维护的区块链中。通过第一区块链交易,第一数字摘要被存储至区块链系统112。区块链可以存储第一数字摘要(例如,身份信息的哈希值),但不存储身份信息的细节(例如,明文)以确保隐私,因为区块链存储的数据对各个区块链节点是可见的。
在一些实施例中,实体系统111可以包括一个或多个轻量节点(例如,节点A、节点B)。实体系统111可以通过区块链系统112中与所述(一个或多个)轻量节点耦接的节点(例如,节点1)发起第一区块链交易。例如,第一数字摘要可以被写入到区块链合约(例如,智能合约),并且可以发起第一区块链交易以将合约部署到区块链。通过所述部署,可从区块链访问该合约以执行或进行其他操作。在这种情况下,第一区块链交易可以对应于第一区块链交易标识(例如,第一交易哈希值)。例如,第一区块链交易标识可以是第一区块链交易的哈希值。区块链系统112还可以存储第一区块链交易标识。因此,第一区块链交易标识和第一数字摘要被锚定。锚定关系可以存储在锚系统113中。通过查询第一区块链交易标识,可以检索区块链存储的第一数字摘要。例如,当第一区块链交易标识被发送到区块链系统112时,区块链系统112可以执行区块链合约以检索第一数字摘要。存在许多其他合适的方式用于在区块链系统112上存储和检索数字摘要。本领域的普通技术人员应当理解,本文的实施例不限于上述示例。
在步骤313处,如果成功地执行了上述步骤,则区块链系统112可以返回指示成功存储第一数字摘要至区块链的结果。例如,实体系统111可以获得登录成功的通知。区块链系统112还可以返回与将身份信息的第一数字摘要存储至区块链相关联的第一区块链交易标识。
在步骤321处,实体可以通过实体系统111发起交易请求(例如,金融交易或另一活动)。
在步骤322中,响应于登录成功,实体系统111可根据交易请求执行交易以获得交易结果。这里,交易可以是任何类型的活动,例如转移资金、提取资金、更改账号信息、请求信息、请求资金、批准或拒绝交易等。交易不受本文描述的示例限制。在本文中,交易信息用于指代与交易相关的信息。例如,交易信息可以包括以下各项中的一个或多个:交易请求、交易结果、诸如用户标识和授权级别的账户用户信息、用户或实体系统111在执行交易时访问的URL(统一资源定位符)、与执行交易有关的变量或系数、交易之前和/或交易之后的账户余额、账户活动日志等。本领域的普通技术人员应当理解,交易信息不限于上面列出的示例。
在以下示例中使用了术语“操作信息”。在一些实施例中,操作信息可以包括交易信息。在一些其他实施例中,操作信息可以包括交易信息加上与登录步骤311和313相关联的信息。在一些实施例中,与登录步骤311和313相关联的信息可以包括以下中的一个或多个:第一数字摘要、实体(用户)的身份信息、或第一区块链交易标识。例如,在一种情况下,操作信息包括交易信息加上第一数字摘要。在操作信息中所包括的可以由实现所公开实施例的人设计选择。
实体系统111还可以获得(例如,生成)操作信息的第二数字摘要。操作信息的第二数字摘要可以是操作信息的哈希值(例如,SHA-256哈希值)。实体系统111可以对操作信息执行哈希处理以获得第二数字摘要。例如,第二数字摘要可以包括通过对操作信息进行哈希算法而获得的哈希值。实体系统111可以将第二数字摘要发送至区块链系统112,以将第二数字摘要存储在由区块链系统112维护的区块链中。
在各种实施例中,实体系统111可以发起第二区块链交易,以通过区块链系统112的节点将第二数字摘要存储在区块链中。例如,第二数字摘要可以被写入到区块链合约(例如,智能合约)中,并且可以由该节点或另一节点发起第二区块链交易以将合约部署到区块链。在这种情况下,第二区块链交易可以对应于第二区块链交易标识(例如,第二交易哈希值),所述第二区块链交易标识也与第二数字摘要相关联。区块链可以存储第二数字摘要(例如,操作信息的哈希值),但不存储交易信息的细节(例如,明文)以确保隐私,因为区块链存储的数据对于各种区块链节点是可见的。区块链还可以存储第二区块链交易标识。因此,锚定第二区块链交易标识和第二数字摘要。锚定关系可以存储在锚系统113中。通过查询第二区块链交易标识,可以检索区块链存储的第二数字摘要。可以采用智能合约的其他替代方法实现在区块链中存储操作信息的第二数字摘要。
在步骤323处,如果成功执行了上述步骤,则区块链系统112可以向实体系统111返回指示第二数字摘要被成功存储至区块链的结果。区块链系统112还可以将与存储操作信息的第二数字摘要相关联的第二区块链交易标识返回给区块链。第二区块链交易标识或类似的交易标识可被存储在实体系统111和/或另一系统(例如,锚系统113)中。因此,实体系统111可以获得与将操作信息的数字摘要存储至区块链相关联的交易标识。
可选地,步骤311可以与步骤321组合。也就是说,可以同时请求身份验证和交易。因此,步骤312可以与步骤322组合,并且步骤313可以与步骤323组合。
图4示出了根据各种实施例的用于数据锚定和验证的方法400的示例。方法400可以由图1的系统110的一个或多个组件(例如,实体系统111、区块链系统112、锚系统113、审计系统114)实现。如前所述,尽管被示为独立的系统,但是实体系统111和锚系统113可以被集成到包括一个或多个计算设备的认证系统118中。下面呈现的操作旨在说明。取决于实施例,方法400可以包括以各种顺序或并行执行的附加的、更少的或替代的步骤。
在一些实施例中,在步骤411处,审计系统114可以发起与实体系统111的审计请求。例如,审计机构的系统可以发起与实体系统111的通信,以请求实体提供用于审计的数据。本文一般将实体系统111提供的用于审计的数据称为审计数据。所请求的审计数据可以是用于一个或多个交易的操作信息的一个或多个完整集合,或者可以是操作信息的一部分,例如,账户活动日志、诸如用户标识和授权级别的账户用户信息等。如果由实体系统111提供的审计数据是真实的,则假定审计数据与操作信息相同。
在步骤412处,实体系统111可以将所请求的审计数据发送至审计系统114。因此,审计系统114可以获得用于针对操作信息进行认证的审计数据。例如,审计数据可以包括一个或多个交易的日志,所述日志声称对应于一个或多个执行的交易。可执行以下步骤以验证审计数据是否真正对应于历史交易。因此,可以防止操纵审计数据。
在步骤421处,审计系统114可以通过锚系统113发起对审计数据的验证。审计系统114可以将审计数据转发至锚系统113。在本文中,锚或锚定可以意味着关联或以其他方式建立关联。锚系统113存储关联关系。例如,锚系统113存储区块链交易标识和数字摘要的关联关系。锚系统113可能已经从实体系统111获得关联关系。
在步骤422处,作为响应,锚系统113可以基于审计数据获得区块链交易标识。例如,审计数据可以包括待审计的所执行的交易的标识。所执行的交易可以与区块链交易标识相关联。区块链交易可以是结合以上图3描述的区块链交易。如上所述,锚系统113可能已经存储了与区块链交易相对应的区块链交易标识,所述区块链交易将所执行的交易的对应数字摘要存储至区块链。锚系统113可以直接从审计系统114或从实体系统111获得区块链交易标识。在步骤422中获得的区块链交易标识可被称为第三区块链交易标识(例如,第三交易哈希值)。类似于以上结合图3描述的区块链交易标识,第三区块链交易标识与区块链系统112上的数字摘要相关联。数字摘要是先前存储在区块链系统112中的待审计的操作信息的数字摘要。第三区块链交易标识可用于从区块链系统112中识别并获得数字摘要。在该步骤中,锚系统113可以将第三区块链交易标识发送到区块链系统112,以识别和获得相应的数字摘要。
锚系统113还可以生成审计数据的数字摘要。所述数字摘要可以被称为第三数字摘要。
在步骤423处,区块链系统112可以将与第三区块链交易标识相关联的数字摘要的区块链存储副本发送到锚系统113。
在步骤424处,锚系统113可以验证与第三区块链交易标识相关联的数字摘要的区块链存储副本是否与所生成的第三数字摘要一致。
在步骤431处,锚系统113可以将验证结果返回给审计系统114。如果与第三区块链交易标识相关联的数字摘要的区块链存储副本与所生成的第三数字摘要一致,则验证结果可以指示审计数据是真实的。否则,验证结果可以指示审计数据是不真实的。
如上所述,在一些实施例中,锚系统113可以与审计系统114集成。在一些其他实施例中,一些步骤或所有步骤可以由审计系统114而不是锚系统113执行。例如,审计系统114可以从实体系统111或锚系统113获得第三区块链交易标识。可选地,审计系统114可从其自身的数据库获得第三区块链交易标识,所述数据库可存储所执行的交易与区块链交易标识之间的对应关系。审计系统114可基于区块链交易标识检索与所执行的交易相关联的操作信息的数字摘要。审计系统114还可以生成审计数据的第三数字摘要。然后,审计系统114可以将第三数字摘要与从区块链检索的数字摘要进行比较,以验证审计数据。
图5示出了根据各个实施例的用于实现基于区块链的认证的方法510的示例的流程图。方法510可以由图1的系统110的一个或多个组件(例如,认证系统118)实现。例如,步骤514至步骤517可以由认证系统118的锚系统113执行。例如,步骤501至步骤504和步骤511至步骤513可以由认证系统118的实体系统111和锚系统113的组合执行。方法510可以由包括各种硬件机器和/或软件的系统实现。例如,认证系统118可以由一个或多个系统或设备(例如计算机、服务器)实现。实现方法510的系统可包括一个或多个处理器以及一个或多个非暂时性计算机可读存储介质(例如,一个或多个存储器),所述一个或多个非暂时性计算机可读存储介质耦接到一个或多个处理器并被配置成具有可由所述一个或多个处理器执行的指令以促使系统(例如,处理器)执行方法510。下面给出的操作旨在说明。取决于实施例,方法510可以包括以各种顺序或并行执行的附加的、更少的或替代的步骤。方法510的实施例的示例在上面参考图3至图4描述。
在一些实施例中,一些可选步骤可以在步骤514之前执行。可选步骤501包括:响应于来自用户的登录,生成用于所述登录的身份信息的数字摘要(例如,第一数字摘要)。可选步骤502包括:将所述身份信息的数字摘要(例如,第一数字摘要)发送到区块链的一个或多个节点,以存储在区块链中。可选步骤503包括:获得与所述身份信息的第一数字摘要相关联的区块链交易标识(例如,第一区块链交易标识)。
可选步骤504包括:执行用户请求的交易(例如,金融交易)。可选步骤511包括:生成与所执行的交易相关联的操作信息的数字摘要(例如,第二数字摘要)。在一些实施例中,所述操作信息的第二数字摘要包括操作信息的哈希值。某一数据的哈希或哈希值可以是指哈希数值(例如,使数据经过哈希算法的数值结果)。例如,生成某一数据(例如,操作信息)的数字摘要可以包括使数据经过哈希算法以获得数值结果。可以根据审计要求来配置操作信息的内容。操作信息可以包括交易的交易信息以及以下各项中的一个或多个:身份信息的数字摘要、身份信息、以及与身份信息的数字摘要相关联的区块链交易标识(例如,第一区块链交易标识)。
在一些实施例中,所述交易的交易信息可以包括用于执行交易的一个或多个URL。所述交易的交易信息可以包括用于调用一个或多个URL的一个或多个参数(例如,账户ID)以及来自调用一个或多个URL的一个或多个返回结果(例如,最终账户余额)。例如,操作信息可以包括与所执行的交易相关联的交易信息和第一数字摘要。在特定示例中,操作信息中的交易信息可以包括执行交易的请求,所述请求包括被调用以执行交易的URL。又例如,操作信息还可以包括请求或授权交易的用户的标识信息。又例如,操作信息还可以包括执行操作(例如,转移金额或余额)的结果。在一些实施例中,标识信息包括请求或授权执行交易的用户的授权级别,可以用于验证用户是否具有足够高的授权级别以进行或批准交易。
可选步骤512包括:将操作信息的数字摘要(例如,第二数字摘要)发送至区块链的一个或多个节点以存储在区块链中。在一些实施例中,将操作信息的数字摘要发送至区块链的一个或多个节点以存储在区块链中包括:将所述操作信息的第二数字摘要和用于生成所述操作信息的数字摘要的加密处理(例如,SHA-256哈希处理)写入区块链合约;以及使一个或多个节点发起区块链交易以部署该区块链合约。进一步的细节可以参考上述步骤322。
可选步骤513包括:获得与操作信息的第二数字摘要相关联的区块链交易标识(例如,第二区块链交易标识)。在一些实施例中,交易标识包括部署区块链合约的区块链交易的交易哈希值。交易哈希值的示例可被称为上述的第一区块链交易标识和第二区块链交易标识。
步骤514包括:获得用于针对与所执行的交易相关联的操作信息(例如,与步骤504至步骤513中所执行的交易相关联的操作信息)进行认证的审计数据。在这里,本文指的是“一个所执行的交易”。本领域普通技术人员应当理解,在本文中,它可以包括多个所执行的交易或所执行的交易的一部分。审计数据可以由实体提供或者从别处获得以用于审计。审计数据可以包括需要审计或以其他方式验证的任何类型的记录数据。通过以下步骤,可以基于与操作信息的一致性验证审计数据的真实性。进一步的细节可以参考上述步骤411、步骤412和步骤421。
步骤515包括:生成审计数据的数字摘要(例如,第三数字摘要)。在一些实施例中,生成审计数据的第三数字摘要包括:基于用于生成所述操作信息的第二数字摘要的加密处理(例如,SHA-256哈希处理)生成所述审计数据的第三数字摘要。
步骤516包括:从区块链检索操作信息的数字摘要。这里,可以从区块链检索应该对应于审计数据的数字摘要。在一些实施例中,从区块链检索数字摘要包括:根据与待审计的交易相关联的区块链交易标识检索所述数字摘要。在一些实施例中,审计系统可以基于审计数据中关于待审计的交易的信息获得区块链交易标识。在审计数据是真实的情况下,所述区块链交易标识应当与步骤513中的第二区块链交易标识相同,所述第二区块链交易标识与所述第二数字摘要相关联。进一步的细节可以参考上述步骤422和步骤423。
步骤517包括:通过对照检索到的操作信息的数字摘要验证生成的审计数据的数字摘要(例如,第三数字摘要)以确定审计数据的真实性。进一步的细节可以参考上述步骤424。在一些实施例中,步骤517包括:响应于确定生成的审计数据的第三数字摘要与检索到的数字摘要一致,确定审计数据是真实的;以及响应于确定生成的审计数据的第三数字摘要与检索到的数字摘要不一致,确定审计数据是不真实的。
图6示出了根据各种实施例的用于实现基于区块链的认证的计算机系统610的示例的框图。系统610可以是图1的系统110的一个或多个组件(例如,认证系统118)的实施例的示例。方法510可以由计算机系统610实现。计算机系统610可以包括一个或多个处理器和一个或多个非暂时性计算机可读存储介质(例如,一个或多个存储器),所述一个或多个非暂时性计算机可读存储介质耦接到一个或多个处理器并且被配置成具有可由所述一个或多个处理器执行的指令以促使系统或设备(例如,处理器)执行方法510。计算机系统610可以包括与指令(例如,软件指令)相对应的各种单元/模块。在一些实施例中,计算机系统610可以被称为认证装置。该认证装置可以包括:获得模块611,用于获得用于针对与所执行的交易相关联的操作信息进行认证的审计数据;生成模块612,用于生成审计数据的数字摘要;检索模块613,用于从区块链中检索操作信息的数字摘要;以及确定模块614,用于通过对照所检索到的操作信息的数字摘要验证生成的审计数据的数字摘要,以确定所述审计数据的真实性。
如图所示,通过生成与所执行的交易相关联的操作信息的数字摘要并将该数字摘要存储于区块链,可以安全地维护所述操作信息的表示并可访问该表示以用于验证。数字摘要被存储于区块链记录数据,以用于将来的审计。可以基于包括哈希处理的区块链共识规则来防止对所存储的数据的篡改。操作信息的数字摘要表示也可隐藏明文信息以保护隐私。通过查询区块链交易标识,可以从区块链中检索区块链存储的数字摘要以进行验证。因此,可以确保审计数据的原始性和真实性,这减少了审计欺诈的机会。
本文描述的技术由一个或多个专用计算设备实现。专用计算设备可以是台式计算机系统、服务器计算机系统、便携式计算机系统、手持设备、联网设备或任何其他设备或包括硬连线和/或程序逻辑以实现该技术的设备的组合。专用计算设备可以实现为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或其组合。计算设备通常由操作系统软件控制和协调。传统的操作系统控制和调度用于执行的计算机进程,执行存储器管理,提供文件系统、联网、I/O服务,并且提供用户界面功能,例如图形用户界面(“GUI”)等等。本文描述的各种系统、装置、存储介质、模块和单元可以在专用计算设备中实现,或者在一个或多个专用计算设备的一个或多个计算芯片中实现。在一些实施例中,本文描述的指令可以在专用计算设备上的虚拟机中实现。所述指令当被执行时可以促使专用计算设备执行本文描述的各种方法。虚拟机可以包括软件、硬件或其组合。例如,虚拟机可以包括提供用于智能合约的运行时环境的以太坊虚拟机(EVM)软件。
图7是示出了可以在其上实现本文描述的任何实施例的计算机系统700的框图。系统700可以在本文描述的任何节点中实现,并且被配置成执行用于实现区块链合约的相应步骤。计算机系统700包括总线702或用于发送信息的其他通信机制、与总线702耦接的用于处理信息的一个或多个硬件处理器704。硬件处理器704可以是例如一个或多个通用微处理器。
计算机系统700还包括耦接到总线702用于存储信息和可由处理器704执行的指令的主存储器706,诸如随机存取存储器(RAM)、高速缓存和/或其他动态存储设备。主存储器706还可以用于在执行可由(一个或多个)处理器704执行的指令期间存储临时变量或其他中间信息。当这些指令被存储在处理器704可访问的存储介质中时,这些指令将计算机系统700呈现为为执行指令中所指定的操作而定制的专用机器。计算机系统700进一步包括耦接到总线702、用于存储用于处理器704的静态信息和指令的只读存储器(ROM)708或其他静态存储设备。诸如磁盘、光盘或USB拇指驱动器(闪存驱动器)等的存储设备710被提供,并且被耦接到总线702以用于存储信息和指令。
计算机系统700可以使用定制的硬连线逻辑、一个或多个ASIC或FPGA、固件和/或程序逻辑实现本文描述的技术,其中所述固件和/或程序逻辑与计算机系统相结合使得计算机系统700成为专用机器或将计算机系统700编程为专用机器。根据一个实施例,本文描述的操作、方法和处理由计算机系统700响应于处理器704执行包含在主存储器706中的一个或多个指令的一个或多个序列而执行。这些指令可以从诸如存储设备710的另一存储介质被读入主存储器706。包含在主存储器706中的指令的序列的执行促使处理器704执行本文描述的处理步骤。在可选实施例中,可以使用硬连线电路代替软件指令或与软件指令组合。
主存储器706、ROM708和/或存储设备710可以包括非暂时性存储介质。如本文所使用的术语“非暂时性介质”和类似术语指的是存储使机器以特定方式操作的数据和/或指令的介质,所述介质不包括瞬态信号。这种非暂时性介质可包括非易失性介质和/或易失性介质。非易失性介质包括例如光盘或磁盘,诸如存储设备710。易失性介质包括动态存储器,例如主存储器706。非暂时性介质的常见形式包括例如软盘、柔性盘、硬盘、固态驱动器、磁带或任何其他磁性数据存储介质、CD-ROM、任何其他光学数据存储介质、具有孔图案的任何物理介质、RAM、PROM和EPROM、FLASH-EPROM,NVRAM、任何其他存储器芯片或盒式磁带、以及它们的联网版本。
计算机系统700还包括耦接到总线702的网络接口718。网络接口718提供耦接到一个或多个网络链路的双向数据通信,所述网络链路连接到一个或多个本地网络。例如,网络接口718可以是综合业务数字网(ISDN)卡、电缆调制解调器、卫星调制解调器或调制解调器,用于提供到相应类型的电话线路的数据通信连接。作为另一示例,网络接口718可以是局域网(LAN)卡,用于提供到兼容LAN(或与WAN通信的WAN组件)的数据通信连接。也可以实现无线链路。在任何这样的实施例中,网络接口718发送和接收承载表示各种类型的信息的数字数据流的电信号、电磁信号或光信号。
计算机系统700可以通过网络、网络链路和网络接口718发送消息和接收数据,其中包括程序代码。在因特网示例中,服务器可以通过因特网、ISP、本地网络和网络接口718发送应用程序的请求代码。
所接收的代码可以在其被接收时由处理器704执行,和/或存储在存储设备710或其他非易失性存储设备中以供稍后执行。
在前述部分中描述的每个处理、方法和算法可以在由一个或多个计算机系统或包括计算机硬件的计算机处理器执行的代码模块中实现,并且完全或部分地由所述代码模块自动实现。所述处理和算法可以部分地或全部地在专用电路中实现。
上述各种特征和处理可彼此独立地使用,或者可以各种方式组合。所有可能的组合和子组合都将落入本文范围内。另外,在一些实施例中可以省略某些方法或处理框图。本文所述的方法和处理也不限于任何特定序列,且与其相关的框图或状态可以以其他适当序列执行。例如,所描述的框图或状态可以以不同于具体公开的顺序执行,或者多个框图或状态可以被组合在单个框图或状态中。框图或状态的示例可以串行、并行或以某种其他方式执行。可以向所公开的实施例添加框图或状态或从所公开的实施例中移除框图或状态。本文所述的系统和组件的示例可被配置成与所述的不同。举例来说,与所显露的实施例相比,元件可以被添加到所显露的实施例、被从所显露的实施例移除或被重新布置。
本文所述方法的各种操作可至少部分地由临时配置(例如,通过软件)或永久配置为执行相关操作的一个或多个处理器执行。无论是临时配置还是永久配置,这样的处理器可以构成处理器实现的引擎,运行该引擎以执行这里描述的一个或多个操作或功能。
类似地,本文描述的方法可以至少部分地由处理器实现,其中一个特定处理器或多个处理器是硬件的示例。例如,方法的至少一些操作可以由一个或多个处理器或处理器实现的引擎执行。此外,一个或多个处理器还可操作以支持“云计算”环境中的相关操作的性能或作为“软件即服务”(SaaS)。例如,至少一些操作可以由一组计算机(作为包括处理器的机器的示例)执行,这些操作可以经由网络(例如,因特网)和经由一个或多个适当的接口(例如,应用程序接口(API))访问。
某些操作的性能可以分布在处理器之间,不仅是驻留在单个机器内,而是跨多个机器部署。在一些实施例中,处理器或处理器实现的引擎可以位于单个地理位置(例如,在家庭环境、办公室环境或服务器群内)。在其他实施例中,处理器或处理器实现的引擎可以分布在多个地理位置上。
在本文中,多个实例可以实现作为单个实例描述的组件、操作或结构。尽管一个或多个方法的各个操作被示出并描述为独立的操作,这些独立的操作中的一个或多个可以同时执行,并且不要求这些操作以所示的顺序执行。在配置中作为独立组件呈现的结构和功能可以被实现为组合结构或组件。类似地,作为单个组件呈现的结构和功能可以被实现为独立的组件。这些和其他变化、修改、添加和改进都落入本文的主题的范围内。
尽管已经参考具体实施例描述了主题的概述,但是在不脱离本文的实施例的更广范围的情况下,可以对这些实施例进行各种修改和改变。具体实施方式不应被理解为限制性的,并且各实施例的范围仅由所附权利要求以及这些权利要求所享有的等效物的全部范围定义。此外,本文所用的相关术语(例如“第一”、“第二”、“第三”等)不表示任何顺序、高度或重要性,而是用来将一个元件与另一个元件区分开。此外,术语“一”、“一个”和“多个”不表示对本文中量的限制,而是表示存在至少一个所提及的物品。

Claims (15)

1.一种计算机实现的认证方法,包括:
获得用于针对与执行的交易相关联的操作信息进行认证的审计数据;
生成所述审计数据的数字摘要;
从区块链检索所述操作信息的数字摘要;以及
通过对照检索到的所述操作信息的数字摘要来验证所生成的所述审计数据的数字摘要,以确定所述审计数据的真实性。
2.如权利要求1所述的方法,其中,通过对照检索到的所述操作信息的数字摘要来验证所生成的所述审计数据的数字摘要,以确定所述审计数据的真实性,包括:
响应于确定所生成的所述审计数据的数字摘要与检索到的所述操作信息的数字摘要一致,确定所述审计数据是真实的;以及
响应于确定所生成的所述审计数据的数字摘要与检索到的所述操作信息的数字摘要不一致,确定所述审计数据是不真实的。
3.如前述任一权利要求所述的方法,在获得所述审计数据之前,还包括:
响应于登录,生成用于所述登录的身份信息的数字摘要;
将所述身份信息的数字摘要发送至所述区块链的一个或多个节点,以存储在所述区块链中;
获得与所述身份信息的数字摘要相关联的区块链交易标识;
执行所述交易;
生成所述操作信息的数字摘要,其中,所述操作信息包括所述交易的交易信息以及以下中的一个或多个:所述身份信息的数字摘要、所述身份信息、以及与所述身份信息的数字摘要相关联的区块链交易标识;
将所述操作信息的数字摘要发送至所述区块链的一个或多个节点,以存储在所述区块链中;以及
获得与所述操作信息的数字摘要相关联的区块链交易标识。
4.如权利要求3所述的方法,其中,从所述区块链检索所述操作信息的数字摘要,包括:
根据与所述操作信息的数字摘要相关联的区块链交易标识,从所述区块链检索所述操作信息的数字摘要。
5.如权利要求3-4中任一项所述的方法,其中,将所述操作信息的数字摘要发送至所述区块链的一个或多个节点,以存储在所述区块链中,包括:
将所述操作信息的数字摘要和用于生成所述操作信息的数字摘要的加密处理写入区块链合约;以及
促使所述一个或多个节点发起区块链交易以部署所述区块链合约。
6.如权利要求5所述的方法,其中,生成所述审计数据的数字摘要,包括:
基于用于生成所述操作信息的数字摘要的加密处理,生成所述审计数据的数字摘要。
7.如权利要求3-6中任一项所述的方法,其中,所述交易的交易信息包括:用于执行所述交易的一个或多个统一资源定位符URL。
8.如权利要求7所述的方法,其中,所述交易的交易信息包括:
用于调用所述一个或多个URL的一个或多个参数;和
从调用所述一个或多个URL返回的一个或多个结果。
9.如权利要求3-8中任一项所述的方法,其中,所述身份信息包括授权执行所述交易的用户的授权级别。
10.如权利要求3-9中任一项所述的方法,其中,所述身份信息包括请求执行所述交易的用户的授权级别。
11.如前述任一权利要求所述的方法,其中,所述操作信息的数字摘要包括所述操作信息的哈希值。
12.如前述任一权利要求所述的方法,其中,所述操作信息包括所述交易的交易信息。
13.如前述任一权利要求所述的方法,其中,所述区块链是联盟区块链。
14.一种认证系统,包括:
一个或多个处理器;和
耦接到所述一个或多个处理器并且其上存储有指令的一个或多个计算机可读存储器,所述指令能够由所述一个或多个处理器执行以执行权利要求1至13中任一项所述的方法。
15.一种认证装置,包括用于执行权利要求1至13中任一项所述方法的多个模块。
CN201980002971.0A 2019-02-28 2019-02-28 用于基于区块链的认证的系统和方法 Active CN110771120B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/076463 WO2019101224A2 (en) 2019-02-28 2019-02-28 System and method for blockchain-based authentication

Publications (2)

Publication Number Publication Date
CN110771120A true CN110771120A (zh) 2020-02-07
CN110771120B CN110771120B (zh) 2022-03-01

Family

ID=66631216

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980002971.0A Active CN110771120B (zh) 2019-02-28 2019-02-28 用于基于区块链的认证的系统和方法

Country Status (7)

Country Link
US (2) US20190325436A1 (zh)
EP (2) EP3596906B1 (zh)
JP (1) JP6871386B2 (zh)
KR (1) KR102237014B1 (zh)
CN (1) CN110771120B (zh)
PH (1) PH12019501430A1 (zh)
WO (1) WO2019101224A2 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111368003A (zh) * 2020-03-06 2020-07-03 安徽中科智链信息科技有限公司 一种多链锚定数据的管理方法
CN111914270A (zh) * 2020-07-08 2020-11-10 广西佳壹大数据科技股份有限公司 基于区块链技术的可编程认证服务方法和系统
CN112800487A (zh) * 2021-04-07 2021-05-14 杭州链城数字科技有限公司 基于区块链的审计方法和系统

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11063745B1 (en) * 2018-02-13 2021-07-13 EMC IP Holding Company LLC Distributed ledger for multi-cloud service automation
EP3602457B1 (en) 2019-02-28 2021-04-07 Advanced New Technologies Co., Ltd. System and method for blockchain-based data management
US11669772B2 (en) 2019-11-05 2023-06-06 Vmware, Inc. 3D printer device management using machine learning
US11328080B2 (en) 2019-11-18 2022-05-10 Frostbyte, Llc Cryptographic key management
CN111177272B (zh) * 2019-12-31 2023-09-08 杭州趣链科技有限公司 一种基于区块链的大数据可信审计方法
KR102160379B1 (ko) * 2020-04-20 2020-09-25 이화여자대학교 산학협력단 블록체인 기반 분산 애플리케이션 테스트 방법 및 테스트 장치
US20220011743A1 (en) * 2020-07-08 2022-01-13 Vmware, Inc. Malicious object detection in 3d printer device management
CN113010409B (zh) * 2020-09-16 2023-09-15 腾讯科技(深圳)有限公司 智能合约测试方法及装置、电子设备、存储介质
US11265169B1 (en) 2020-10-30 2022-03-01 Cch Incorporated Methods and systems for exchanging confidential information via a blockchain

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170257358A1 (en) * 2016-03-04 2017-09-07 ShoCard, Inc. Method and System for Authenticated Login Using Static or Dynamic Codes
CN107257340A (zh) * 2017-06-19 2017-10-17 阿里巴巴集团控股有限公司 一种认证方法、基于区块链的认证数据处理方法及设备
CN108492105A (zh) * 2018-03-07 2018-09-04 物数(上海)信息科技有限公司 基于区块链的资产交易监管方法、系统、设备及存储介质
US20180308098A1 (en) * 2015-05-05 2018-10-25 ShoCard, Inc. Identity Management Service Using A Block Chain Providing Identity Transactions Between Devices
CN108964905A (zh) * 2018-07-18 2018-12-07 胡祥义 一种安全高效的区块链实现方法
CN109005036A (zh) * 2017-06-06 2018-12-14 北京握奇智能科技有限公司 一种基于标识密码算法的区块链成员管理方法和系统

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI296216B (en) 2006-05-08 2008-05-01 Inventec Corp Method for fabricating heat sink
KR101727134B1 (ko) * 2015-12-29 2017-04-26 주식회사 코인플러그 파일에 대한 공증, 검증 및 파기를 수행하는 방법 및 서버
EP3405862B1 (en) * 2016-01-19 2020-11-18 Priv8Pay, Inc. Network node authentication
KR101637868B1 (ko) 2016-02-22 2016-07-08 주식회사 코인플러그 블록체인을 기반으로 하는 금융기관 제증명서류 위변조 검증시스템 및 방법
WO2017175338A1 (ja) * 2016-04-06 2017-10-12 ブレイニー株式会社 電子決済システム
US10212145B2 (en) * 2016-04-06 2019-02-19 Avaya Inc. Methods and systems for creating and exchanging a device specific blockchain for device authentication
JP6729334B2 (ja) * 2016-12-06 2020-07-22 富士通株式会社 トランザクション管理方法、トランザクション管理プログラム及びトランザクション管理装置
US10102526B1 (en) * 2017-03-31 2018-10-16 Vijay K. Madisetti Method and system for blockchain-based combined identity, ownership, integrity and custody management
US11107048B2 (en) * 2017-04-17 2021-08-31 International Business Machines Corporation Providing out-of-band verification for blockchain transactions
JP7017224B2 (ja) * 2017-08-16 2022-02-08 株式会社 エヌティーアイ 決済装置、決済方法、コンピュータプログラム、仮想貨幣データ生成装置、方法
CN108696511A (zh) 2018-04-24 2018-10-23 深圳市元征科技股份有限公司 一种基于区块链的信息公示方法、装置及相关设备
CN108805571B (zh) * 2018-06-11 2021-02-26 北京京东尚科信息技术有限公司 数据保护方法、平台、区块链节点、系统和存储介质
CN108881262A (zh) 2018-07-02 2018-11-23 北京市天元网络技术股份有限公司 基于区块链的文件流转方法、装置和系统
CN109325746B (zh) * 2018-08-29 2020-07-14 华中科技大学 一种基于存储的区块链激励方法、区块链网络及存储网络

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180308098A1 (en) * 2015-05-05 2018-10-25 ShoCard, Inc. Identity Management Service Using A Block Chain Providing Identity Transactions Between Devices
US20170257358A1 (en) * 2016-03-04 2017-09-07 ShoCard, Inc. Method and System for Authenticated Login Using Static or Dynamic Codes
CN109005036A (zh) * 2017-06-06 2018-12-14 北京握奇智能科技有限公司 一种基于标识密码算法的区块链成员管理方法和系统
CN107257340A (zh) * 2017-06-19 2017-10-17 阿里巴巴集团控股有限公司 一种认证方法、基于区块链的认证数据处理方法及设备
CN108492105A (zh) * 2018-03-07 2018-09-04 物数(上海)信息科技有限公司 基于区块链的资产交易监管方法、系统、设备及存储介质
CN108964905A (zh) * 2018-07-18 2018-12-07 胡祥义 一种安全高效的区块链实现方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111368003A (zh) * 2020-03-06 2020-07-03 安徽中科智链信息科技有限公司 一种多链锚定数据的管理方法
CN111368003B (zh) * 2020-03-06 2020-10-16 安徽中科智链信息科技有限公司 一种多链锚定数据的管理方法
CN111914270A (zh) * 2020-07-08 2020-11-10 广西佳壹大数据科技股份有限公司 基于区块链技术的可编程认证服务方法和系统
CN112800487A (zh) * 2021-04-07 2021-05-14 杭州链城数字科技有限公司 基于区块链的审计方法和系统

Also Published As

Publication number Publication date
US20200134614A1 (en) 2020-04-30
EP3596906A2 (en) 2020-01-22
EP3596906A4 (en) 2020-05-06
US20190325436A1 (en) 2019-10-24
EP3596906B1 (en) 2021-10-20
KR20200105997A (ko) 2020-09-10
WO2019101224A3 (en) 2020-01-02
JP6871386B2 (ja) 2021-05-12
WO2019101224A2 (en) 2019-05-31
PH12019501430A1 (en) 2020-02-10
KR102237014B1 (ko) 2021-04-07
EP3913890B1 (en) 2023-04-12
JP2020511702A (ja) 2020-04-16
EP3913890A1 (en) 2021-11-24
CN110771120B (zh) 2022-03-01

Similar Documents

Publication Publication Date Title
CN110771120B (zh) 用于基于区块链的认证的系统和方法
US10735207B2 (en) System and method for implementing blockchain-based digital certificates
US11496310B2 (en) Methods and systems for universal storage and access to user-owned credentials for trans-institutional digital authentication
US11238543B2 (en) Payroll based blockchain identity
US11888992B2 (en) System and method for generating digital marks
US11170092B1 (en) Document authentication certification with blockchain and distributed ledger techniques
CN110753944B (zh) 用于基于区块链的数据管理的系统和方法
US10735204B2 (en) System and method for generating digital marks

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
TA01 Transfer of patent application right

Effective date of registration: 20200925

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant after: Innovative advanced technology Co.,Ltd.

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant before: Advanced innovation technology Co.,Ltd.

Effective date of registration: 20200925

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant after: Advanced innovation technology Co.,Ltd.

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Applicant before: Alibaba Group Holding Ltd.

TA01 Transfer of patent application right
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40027492

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant