CN111314059A - 账户权限代理的处理方法、装置、设备及可读存储介质 - Google Patents

账户权限代理的处理方法、装置、设备及可读存储介质 Download PDF

Info

Publication number
CN111314059A
CN111314059A CN201811508680.2A CN201811508680A CN111314059A CN 111314059 A CN111314059 A CN 111314059A CN 201811508680 A CN201811508680 A CN 201811508680A CN 111314059 A CN111314059 A CN 111314059A
Authority
CN
China
Prior art keywords
proxy
private key
node
information
entrusting
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
CN201811508680.2A
Other languages
English (en)
Other versions
CN111314059B (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.)
Beijing Wodong Tianjun Information Technology Co Ltd
Original Assignee
Beijing Wodong Tianjun 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 Beijing Wodong Tianjun Information Technology Co Ltd filed Critical Beijing Wodong Tianjun Information Technology Co Ltd
Priority to CN201811508680.2A priority Critical patent/CN111314059B/zh
Publication of CN111314059A publication Critical patent/CN111314059A/zh
Application granted granted Critical
Publication of CN111314059B publication Critical patent/CN111314059B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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)
    • 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/321Cryptographic 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 a third party or a trusted authority
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

本公开提供一种账户权限代理的处理方法、装置、设备及可读存储介质。方法包括:委托节点确定随机值,并根据随机值确定承诺值;委托节点根据委托信息确定委托哈希值;委托节点根据随机值、委托用户私钥、随机值、承诺值、委托哈希值确定代理私钥确定代理私钥;委托节点向代理节点发送代理私钥、委托信息、承诺值,以使代理节点根据委托信息、委托用户公钥、承诺值对代理私钥进行校验。本公开提供的方案中,代理私钥包括委托用户的私钥以及委托信息,使得代理节点可以直接使用该代理私钥对代理信息进行签名,其他节点可以直接对签名信息进行校验,以确定代理消息是否合法,能够解决现有技术中在处理权限委托的签名信息时,校验过程过于繁琐的问题。

Description

账户权限代理的处理方法、装置、设备及可读存储介质
技术领域
本公开涉及区块链技术,尤其涉及一种用于区块链的账户权限代理的处理方法、装置、设备及可读存储介质。
背景技术
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式,能够为各参与节点提供了抗篡改、抗伪造、并且公开可见分布式账本系统。节点可以在系统中完成数字资产转移、数据信息上链等操作,同时系统本身具有防止中心节点恶意操作的特点。目前区块链技术在供应链、金融科技等领域有着广泛应用。
在一种应用场景中,用户可以将自己的账户委托给代理者进行管理,具体可以约定托管期限,在托管期限内由代理者处理用户的区块链账户。可以由用户直接将私钥交给代理者,从而使代理者管理该用户的账户。还可以由用户使用私钥对代理者的公钥签署代理凭证,在代理者对用户账户进行操作时,以该凭证作为身份证明。
但是,若直接将私钥交给代理者进行管理,存在用户私钥泄露的问题。若使用私钥为代理者生产代理凭证,则在代理者对用户账户进行操作时,区块链中的其他节点需要对该凭证进行校验,还需要对代理者生成的签名进行校验,过于繁琐。
发明内容
本公开提供一种用于区块链的账户权限代理的处理方法、装置、设备及可读存储介质,以解决现有技术中的账户权限委托过程中,私钥泄露或校验信息繁琐的问题。
本公开的第一个方面是提供一种用于区块链的账户权限代理的处理方法,包括:
委托节点确定随机值,并根据所述随机值确定承诺值;
所述委托节点根据委托信息确定委托哈希值;
所述委托节点根据所述随机值、所述委托用户私钥、所述随机值、所述承诺值、所述委托哈希值确定所述代理私钥确定代理私钥;
所述委托节点向代理节点发送所述代理私钥、所述委托信息、所述承诺值,以使所述代理节点根据所述委托信息、委托用户公钥、所述承诺值对所述代理私钥进行校验,若校验通过,则所述代理节点根据所述代理私钥对需要广播的代理信息进行签名。
本公开的第二个方面是提供一种用于区块链的账户权限代理的处理方法,包括:
代理节点接收委托节点发送的代理私钥、委托信息;所述代理私钥是所述委托节点根据委托用户私钥、所述委托信息确定的;
所述代理节点根据委托用户公钥、所述委托信息对所述代理私钥进行校验,若校验通过,则存储所述代理私钥。
本公开的第三个方面是提供一种用于区块链的账户权限代理的处理装置,包括:
确定模块,用于确定随机值,并根据所述随机值确定承诺值;
所述确定模块还用于根据委托信息确定委托哈希值;
所述确定模块还用于根据所述随机值、所述委托用户私钥、所述随机值、所述承诺值、所述委托哈希值确定所述代理私钥确定代理私钥;
发送模块,用于向代理节点发送所述代理私钥、所述委托信息、所述承诺值,以使所述代理节点根据所述委托信息、委托用户公钥、所述承诺值对所述代理私钥进行校验,若校验通过,则所述代理节点根据所述代理私钥对需要广播的代理信息进行签名。本公开的第四个方面是提供一种用于区块链的账户权限代理的处理装置,包括:
接收模块,用于接收委托节点发送的代理私钥、委托信息;所述代理私钥是所述委托节点根据委托用户私钥、所述委托信息确定的;
校验模块,用于所述代理节点根据委托用户公钥、所述委托信息对所述代理私钥进行校验,若校验通过,则存储所述代理私钥。
本公开的第五个方面是提供一种用于区块链的账户权限代理的处理设备,包括:
存储器;
处理器;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并配置为由所述处理器执行以实现如上述第一方面所述的用于区块链的账户权限代理的处理方法。
本公开的第六个方面是提供一种用于区块链的账户权限代理的处理设备,包括:
存储器;
处理器;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并配置为由所述处理器执行以实现如上述第二方面所述的用于区块链的账户权限代理的处理方法。
本公开的第七个方面是提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现如上述第一方面所述的用于区块链的账户权限代理的处理方法。
本公开的第八个方面是提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现如上述第二方面所述的用于区块链的账户权限代理的处理方法。
本公开提供的账户权限代理的处理方法、装置、设备及可读存储介质的技术效果是:
本公开提供的用于区块链的账户权限代理的处理方法、装置、设备及可读存储介质,包括:委托节点确定随机值,并根据所述随机值确定承诺值;所述委托节点根据委托信息确定委托哈希值;所述委托节点根据所述随机值、所述委托用户私钥、所述随机值、所述承诺值、所述委托哈希值确定所述代理私钥确定代理私钥;所述委托节点向代理节点发送所述代理私钥、所述委托信息、所述承诺值,以使所述代理节点根据所述委托信息、委托用户公钥、所述承诺值对所述代理私钥进行校验,若校验通过,则所述代理节点根据所述代理私钥对需要广播的代理信息进行签名。。本公开提供的方法、装置、设备及可读存储介质中,代理私钥包括委托用户的私钥以及委托信息,使得代理节点可以直接使用该代理私钥对代理信息进行签名,其他节点可以直接对签名信息进行校验,以确定代理消息是否合法,能够解决现有技术中在处理权限委托的签名信息时,校验过程过于繁琐的问题。
附图说明
图1为本发明一示例性实施例示出的用于区块链的账户权限代理的处理方法的流程图;
图2为本发明又一示例性实施例示出的用于区块链的账户权限代理的处理方法的流程图;
图3为本发明再一示例性实施例示出的用于区块链的账户权限代理的处理方法的流程图;
图4为本发明一示例性实施例示出的用于区块链的账户权限代理的处理方法的流程图;
图5为本发明一示例性实施例示出的用于区块链的账户权限代理的处理装置的结构图;
图6为本发明又一示例性实施例示出的用于区块链的账户权限代理的处理装置的结构图;
图7为本发明再一示例性实施例示出的用于区块链的账户权限代理的处理装置的结构图;
图8为本发明一示例性实施例示出的用于区块链的账户权限代理的处理设备的结构图;
图9为本发明另一示例性实施例示出的用于区块链的账户权限代理的处理设备的结构图。
具体实施方式
在一种应用场景中,区块链中的用户(委托者)希望区块链中的其他用户(代理者)来管理自己的账户,此时,委托者可以使用委托私钥对代理者的公钥以及委托信息进行签名,生产代理凭证。代理者向区块链网络中广播委托者账户相关消息时,需要用代理私钥对代理凭证以及消息内容进行签名,并将消息内容、代理凭证以及签名一同进行广播,验证节点需要先使用代理公钥对接收的签名进行校验,再使用委托公钥对代理凭证进行校验,因此,这一校验过程过于繁琐。
本实施例提供的方法中,应用到Schnorr签名算法,委托节点为代理节点生成代理私钥,代理私钥信息中包括委托信息。代理节点使用代理私钥进行签名,校验节点只需使用委托节点的委托公钥就可验证该签名。
图1为本发明一示例性实施例示出的用于区块链的账户权限代理的处理方法的流程图。
如图1所示,本实施例提供的账户权限代理的处理方法包括:
步骤101,委托节点确定随机值,并根据所述随机值确定承诺值。
本实施例提供的方案可以应用在区块链系统中,区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。所谓共识机制是区块链系统中实现不同节点之间建立信任、获取权益的数学算法。
其中,区块链网络中包括多个网络节点,这些网络节点间可以进行数据传输。这些节点既可以是委托节点,也可以是代理节点。委托节点将自己的账号权限交由代理节点进行管理。
具体的,委托节点中存储有对应的委托私钥,即委托用户的私钥,若自行处理账号事物时,可以用委托私钥对数据进行签名并广播至区块链网络,区块链网络中的其他节点使用委托用户的委托公钥对签名进行校验。公钥(Public Key)与私钥(Private Key)是通过一种算法得到的密钥对(即一个公钥和一个私钥),公钥是密钥对中公开的部分,私钥则是非公开的部分。公钥通常用于加密会话密钥、验证数字签名,或加密可以用相应的私钥解密的数据。通过这种算法得到的密钥对能保证在世界范围内是唯一的。使用这个密钥对的时候,如果用其中一个密钥加密一段数据,必须用另一个密钥解密。比如用公钥加密数据就必须用私钥解密,如果用私钥签名的数据,也必须用公钥解签,否则解密将不会成功。因此,当其他节点接收到委托节点广播的消息后,可以通过公钥对签名信息进行校验,从而确定这一广播消息是否由委托节点发出。
若委托节点将账户权限交由代理节点处理,则可以直接确定委托信息,并根据用户私钥、委托信息确定代理私钥。
其中,为了增加代理私钥的复杂程度,从而提高代理私钥的保密程度,可以在生成代理私钥时设置随机值以及承诺值。具体可以由委托节点选择一个随机值k,并根据随机值k确定承诺值。
具体的,还可以设置根据随机值确定承诺值的预设算法,可以是:
K=gk
步骤102,委托节点根据委托信息确定委托哈希值。
委托信息具体可以包括委托开始时间(TS)、委托截止时间(TE)、委托用户信息(IDD)、代理用户信息(IDP)等。为了保护用户隐私,本实施例提供的方法中,可以根据委托信息生成哈希值eD,再基于这一哈希值确定代理私钥xP
委托节点还可以根据委托信息生成委托哈希值eD,具体可以根据委托信息生成信息摘要,再对信息摘要计算哈希函数,确定出委托哈希值。哈希值,又称:散列函数(或散列算法,又称哈希函数,英语:Hash Function)是一种从任何一种数据中创建小的数字“指纹”的方法。散列函数把消息或数据压缩成摘要,使得数据量变小,将数据的格式固定下来。该函数将数据打乱混合,重新创建一个叫做散列值(hash values,hash codes,hash sums,或hashes)的指纹。
步骤101与步骤102的时序不进行限制。
步骤103,委托节点根据随机值、委托用户私钥、随机值、承诺值、委托哈希值确定代理私钥确定代理私钥。
委托节点可以根据委托用户私钥xD、随机值k、承诺值K、委托哈希值eD确定代理私钥,从而使得代理私钥中包括委托用户私钥的信息、委托信息、还包括随机值和承诺值的信息。
其中,委托节点可以根据下式确定最终的代理私钥:
xP=xD+eDkK
步骤104,委托节点向代理节点发送代理私钥、委托信息、承诺值,以使代理节点根据承诺值、委托信息、委托用户公钥对代理私钥进行校验,若校验通过,则代理节点根据代理私钥对需要广播的代理信息进行签名。
代理节点可以校验代理私钥是否合法,还可以校验委托信息是否合法。
本实施例提供的方法可以基于现有的签名算法,现有技术中的公钥、私钥对中,公钥与私钥具有一定的关系,例如可以是Schnorr签名算法。Schnorr签名算法中,私钥可以用x表示,公钥用y表示,其中,y=gx,g是群G的生成元。因此,代理节点可以根据公钥与私钥的关系,对代理私钥进行校验。
若委托节点基于Schnorr签名算法生成公钥和私钥,那么委托节点的公钥与私钥具有
Figure BDA0001900148870000071
的关系,代理节点无法确定其中xD的值,但是可以获取委托公钥yD的值,且代理私钥包括用户私钥以及委托信息的内容,因此,代理节点可以计算
Figure BDA0001900148870000072
再确定
Figure BDA0001900148870000073
并比对二者是否一致,若一致,则校验通过。
具体的,由于xP=xD+eDkK,因此
Figure BDA0001900148870000074
Figure BDA0001900148870000075
而对于代理节点来说,其存储有委托公钥yD,因此,代理节点可以根据接收的信息对代理私钥进行校验。
其中,委托节点和代理节点均预先存储有群G的生成元g,从而能够基于g进行相应的计算。
具体的,委托节点生成的代理私钥中包括委托私钥信息,在代理节点对代理私钥进行校验时,由于其只能够获取委托公钥,因此,需要代理节点将代理私钥转换为包括委托公钥的公式,再进行校验。
代理节点在收到委托节点发送的代理私钥后,可以对代理私钥进行校验,以确定该代理私钥的确是由委托节点发送的。
进一步的,可以由委托节点在生成秘钥对后,将委托用户公钥广播至区块链网络,使得区块链网络中的各个节点能够接收并存储委托用户公钥。
进一步的,代理节点可以使用校验通过的代理私钥对需要广播的代理信息进行签名,然后生成广播消息,并广播至区块链网络,以使区块链网络中的其他节点对广播消息进行校验。在这一过程中,其他节点只需要校验代理节点使用代理私钥进行签名的签名信息即可,无需多次校验。
本实施例提供的方法用于处理代理账户权限,该方法由设置有本实施例提供的方法的设备执行,该设备通常以硬件和/或软件的方式来实现。
本实施例提供的账户权限代理的处理方法,包括:委托节点根据委托用户私钥、委托信息确定代理私钥;委托节点向代理节点发送代理私钥、委托信息,以使代理节点根据委托信息、委托用户公钥对代理私钥进行校验。本实施例提供的方法中,代理私钥包括委托用户的私钥以及委托信息,使得代理节点可以直接使用该代理私钥对代理信息进行签名,其他节点可以直接对签名信息进行校验,以确定代理消息是否合法。并且,本实施例提供的方法中,代理节点还能够根据委托公钥对代理私钥进行校验,以确保代理私钥的准确性。
图2为本发明又一示例性实施例示出的用于区块链的账户权限代理的处理方法的流程图。
如图2所示,本实施例提供的账户权限代理的处理方法包括:
步骤201,代理节点接收委托节点发送的代理私钥、委托信息;代理私钥是委托节点根据委托用户私钥、委托信息确定的。
本实施例提供的方案可以应用在区块链系统中,区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。所谓共识机制是区块链系统中实现不同节点之间建立信任、获取权益的数学算法。
其中,区块链网络中包括多个网络节点,这些网络节点间可以进行数据传输。这些节点既可以是委托节点,也可以是代理节点。委托节点将自己的账号权限交由代理节点进行管理。
具体的,委托节点中存储有对应的委托私钥,即委托用户的私钥,若自行处理账号事物时,可以用委托私钥对数据进行签名并广播至区块链网络,区块链网络中的其他节点使用委托用户的委托公钥对签名进行校验。公钥(Public Key)与私钥(Private Key)是通过一种算法得到的密钥对(即一个公钥和一个私钥),公钥是密钥对中公开的部分,私钥则是非公开的部分。公钥通常用于加密会话密钥、验证数字签名,或加密可以用相应的私钥解密的数据。通过这种算法得到的密钥对能保证在世界范围内是唯一的。使用这个密钥对的时候,如果用其中一个密钥加密一段数据,必须用另一个密钥解密。比如用公钥加密数据就必须用私钥解密,如果用私钥签名的数据,也必须用公钥解签,否则解密将不会成功。因此,当其他节点接收到委托节点广播的消息后,可以通过公钥对签名信息进行校验,从而确定这一广播消息是否由委托节点发出。
若委托节点将账户权限交由代理节点处理,则可以直接确定委托信息,并根据用户私钥、委托信息确定代理私钥。委托信息具体可以包括委托开始时间(Ts)、委托截止时间(TE)、委托用户信息(IDD)、代理用户信息(IDP)等。为了保护用户隐私,还可以根据委托信息生成哈希值eD,再根据用户私钥以及哈希值确定代理私钥xP。可以直接将私钥xD与哈希值进行相加,得到代理私钥。
其中,为了增加代理私钥的保密性,委托节点还可以随机选择一个随机值,再根据随机值确定承诺值,然后根据该随机值、承诺值以及哈希值、委托私钥共同确定代理私钥。
具体的,委托可以通过区块链网络向代理节点发送代理私钥,以使代理节点接收到该代理私钥。
步骤202,代理节点根据委托用户公钥、委托信息对代理私钥进行校验,若校验通过,则存储代理私钥。
本实施例提供的方法可以基于现有的签名算法,现有技术中的公钥、私钥对中,公钥与私钥具有一定的关系,例如可以是Schnorr签名算法。Schnorr签名算法中,私钥可以用x表示,公钥用y表示,其中,y=gx,g是群G的生成元。因此,代理节点可以根据公钥与私钥的关系,对代理私钥进行校验。
若委托节点基于Schnorr签名算法生成公钥和私钥,那么委托节点的公钥与私钥具有
Figure BDA0001900148870000091
的关系,代理节点无法确定其中xD的值,但是可以获取委托公钥yD的值,且代理私钥包括用户私钥以及委托信息的内容,因此,代理节点可以计算
Figure BDA0001900148870000092
并计算委托信息的哈希值eD,然后计算
Figure BDA0001900148870000093
Figure BDA0001900148870000094
然后比对
Figure BDA0001900148870000095
Figure BDA0001900148870000096
是否相同,若相同,则校验通过。
若校验通过,则代理节点可以存储代理私钥,还可以对代理私钥进行加密,以免用户信息泄露。
其中,委托节点和代理节点均预先存储有群G的生成元g,从而能够基于g进行相应的计算。
具体的,委托节点生成的代理私钥中包括委托私钥信息,在代理节点对代理私钥进行校验时,由于其只能够获取委托公钥,因此,需要代理节点将代理私钥转换为包括委托公钥的公式,再进行校验。
进一步的,代理节点可以使用校验通过的代理私钥对代理信息进行签名,然后生成广播消息,并广播至区块链网络,以使区块链网络中的其他节点对广播消息进行校验。在这一过程中,其他节点只需要校验代理节点使用代理私钥进行签名的签名信息即可,无需多次校验。
本实施例提供的方法用于处理代理账户权限,该方法由设置有本实施例提供的方法的设备执行,该设备通常以硬件和/或软件的方式来实现。
本实施例提供的账户权限代理的处理方法,包括:代理节点接收委托节点发送的代理私钥、委托信息;代理私钥是委托节点根据委托用户私钥、委托信息确定的;代理节点根据委托用户公钥、委托信息对代理私钥进行校验,若校验通过,则存储代理私钥。本实施例提供的方法中,代理节点能够接收委托节点发送的代理私钥,该代理私钥包括委托用户的私钥信息,还包括委托信息,代理节点可以直接使用该代理私钥对需要广播的代理信息进行签名,从而使得其他节点只进行一次校验即可。
图3为本发明再一示例性实施例示出的用于区块链的账户权限代理的处理方法的流程图。
如图3所示,本实施例提供的账户权限代理的处理方法,包括:
步骤301,代理节点接收委托节点发送的代理私钥、委托信息、承诺值。
其中,代理私钥是委托节点根据委托用户私钥、承诺值、委托信息确定的;承诺值是委托节点根据随机数确定的。
具体的,委托节点可以确定随机值,并根据预设算法确定随机值对应的承诺值,例如,可以选择随机值k,然后根据预设算法确定k的承诺值K,预设算法可以是K=gk
进一步的,委托节点还可以根据委托信息确定委托哈希值eD,具体可以根据委托信息生成信息摘要,再对信息摘要计算哈希函数,确定出委托哈希值。
实际应用时,委托节点可以据委托用户私钥、随机值、承诺值、委托哈希值确定代理私钥。
其中,委托节点可以通过下式得到最终的代理私钥:
xpD+DkK
其中的xD是委托用户私钥,xp是代理私钥。
委托节点确定了代理私钥后,可以将确定代理私钥所用的数据中除委托用户私钥,以及代理私钥广播至代理节点,代理节点能够根据这些数据对代理私钥进行校验。
步骤302,代理节点根据承诺值、委托用户公钥、委托信息对代理私钥进行校验。
代理节点在收到委托节点发送的代理私钥后,可以对代理私钥进行校验,以确定该代理私钥的确是由委托节点发送的。
代理节点可以确定
Figure BDA0001900148870000111
再确定
Figure BDA0001900148870000112
并比对二者是否一致,若一致,则校验通过。其中,代理节点内可以存储有g,也可以由委托节点向代理节点发送g的值。
具体的,由于xpD+DkK,因此
Figure BDA0001900148870000113
Figure BDA0001900148870000114
而对于代理节点来说,其存储有委托公钥yD,因此,代理节点可以根据接收的信息对代理私钥进行校验。
进一步的,可以由委托节点在生成秘钥对后,将委托用户公钥广播至区块链网络,使得区块链网络中的各个节点能够接收并存储委托用户公钥。
若校验通过,则执行步骤303,否则执行步骤306
步骤303,存储代理私钥。
步骤303与与步骤202中的存储代理私钥的的具体原理和实现方式类似,此处不再赘述。
步骤304,代理节点根据代理私钥、承诺值、代理信息确定代理签名。
若代理私钥校验通过,则可以确定该代理私钥的确是由委托节点发送的,可以基于该代理私钥处理委托用户的相关事务。
其中,若代理节点需要处理委托用户账户的相关事务时,需要向区块链网络广播消息,此时,可以通过代理私钥对承诺值以及代理信息进行签名得到代理签名。
Schnorr算法在生成签名时,以私钥x和待签名的消息m作为输入,并选择随机值t,能够输出签名结果(s,e),其中e=H(r||m),s=t-ex,r=gt,t是签名者选择的随机值,H是哈希函数,||表示数据连接。
具体的,可以将代理私钥xP和承诺值K,以及代理信息mP作为输入,根据Schnorr算法生成代理签名结果(sP,eP),其中eP=H(rP||mP),sP=tP-ePxP
Figure BDA0001900148870000115
tp是代理节点选择的随机数。
步骤305,代理节点根据委托信息、代理信息、承诺值、代理签名确定代理消息,并向区块链网络广播代理消息,以使区块链网络中的节点根据代理信息、承诺值、委托用户公钥对代理签名进行校验。
代理节点将委托信息mD和代理信息mP以及代理签名结果(sP,eP)和承诺值K广播至区块链网络,从而使各个节点对这一消息进行校验。
进一步的,由于本实施例提供的方法中,生成的代理私钥没有与之对应的公钥,因此,需要将生成代理私钥的基础数据承诺值K、代理信息mP、委托信息mD均广播至区块链网络,才能够使其他节点对这一消息进行校验。
实际应用时,Schnorr算法中,其他节点对签名进行验证时,以签名结果(s,e)和签名用户的公钥y和消息m作为输入,验证是否满足e=H(gsye||m),来判断签名是否有效。
实际应用时,本实施例提供的方法中,其他节点以委托信息mD和代理信息mP以及代理签名(sP,eP)和承诺值K,以及委托用户公钥yD为输入,验证是否满足
Figure BDA0001900148870000121
若满足,则校验通过。
步骤306,代理节点向委托节点发送再次获取代理私钥的请求消息。
若代理节点校验代理私钥未通过,则可以继续向委托节点发送获取代理私钥的请求,从而继续接收委托节点发送的代理私钥。
图4为本发明一示例性实施例示出的用于区块链的账户权限代理的处理方法的流程图。
本实施例提供的方法包括委托节点、代理节点以及其他节点。委托节点将账号权限委托给代理节点,代理节点向区块链网络广播消息,由其他节点对消息进行校验。
如图4所示,本实施例提供的方法包括:
步骤401,确定随机值,并根据预设算法确定随机值对应的承诺值。
步骤402,根据委托信息确定委托哈希值。
步骤403,根据委托用户私钥、承诺值、委托哈希值确定代理私钥。
步骤404,向代理节点发送代理私钥、委托信息、承诺值。
步骤405,接收委托节点发送的代理私钥、委托信息、承诺值。
步骤406,根据承诺值、委托用户公钥、委托信息对代理私钥进行校验。
若校验通过,执行步骤407,否则,执行步骤410。
步骤407,存储代理私钥。
步骤408,根据代理私钥、承诺值、代理信息确定代理签名。
步骤409,根据代理信息、承诺值、代理签名、委托信息确定代理消息,并向区块链网络广播代理消息。
步骤410,发送再次获取代理私钥的请求消息
步骤411,接收代理节点广播的代理消息,并根据代理信息、承诺值、委托用户公钥对代理签名进行校验。
图5为本发明一示例性实施例示出的用于区块链的账户权限代理的处理装置的结构图。
如图5所示,本实施例提供的用于区块链的账户权限代理的处理装置,包括:
确定模块51,用于确定随机值,并根据所述随机值确定承诺值;
所述确定模块51还用于根据委托信息确定委托哈希值;
所述确定模块51还用于根据所述随机值、所述委托用户私钥、所述随机值、所述承诺值、所述委托哈希值确定所述代理私钥确定代理私钥;
发送模块52,用于向代理节点发送所述代理私钥、所述委托信息、所述承诺值,以使所述代理节点根据所述委托信息、委托用户公钥、所述承诺值对所述代理私钥进行校验,若校验通过,则所述代理节点根据所述代理私钥对需要广播的代理信息进行签名。本实施例提供的用于区块链的账户权限代理的处理装置,包括:确定模块,用于确定随机值,并根据随机值确定承诺值;确定模块还用于根据委托信息确定委托哈希值;确定模块还用于根据随机值、委托用户私钥、随机值、承诺值、委托哈希值确定代理私钥确定代理私钥;发送模块,用于向代理节点发送代理私钥、委托信息、承诺值,以使代理节点根据委托信息、委托用户公钥、承诺值对代理私钥进行校验,若校验通过,则代理节点根据代理私钥对需要广播的代理信息进行签名。。本实施例提供的装置中,代理私钥包括委托用户的私钥以及委托信息,使得代理节点可以直接使用该代理私钥对代理信息进行签名,其他节点可以直接对签名信息进行校验,以确定代理消息是否合法。
本实施例提供的用于区块链的账户权限代理的处理装置的具体原理和实现方式均与图1所示的实施例类似,此处不再赘述。
图6为本发明又一示例性实施例示出的用于区块链的账户权限代理的处理装置的结构图。
如图6所示,本实施例提供的用于区块链的账户权限代理的处理装置,包括:
接收模块61,用于接收委托节点发送的代理私钥、委托信息;所述代理私钥是所述委托节点根据委托用户私钥、所述委托信息确定的;
校验模块62,用于所述代理节点根据委托用户公钥、委托信息对代理私钥进行校验,若校验通过,则存储代理私钥。
本实施例提供的账户权限代理的处理装置,包括:接收模块,用于接收委托节点发送的代理私钥、委托信息;代理私钥是委托节点根据委托用户私钥、委托信息确定的;校验模块,用于代理节点根据委托用户公钥、委托信息对代理私钥进行校验,若校验通过,则存储代理私钥。本实施例提供的装置中,代理节点能够接收委托节点发送的代理私钥,该代理私钥包括委托用户的私钥信息,还包括委托信息,代理节点可以直接使用该代理私钥对需要广播的代理信息进行签名,从而使得其他节点只进行一次校验即可。
本实施例提供的用于区块链的账户权限代理的处理装置的具体原理和实现方式均与图2所示的实施例类似,此处不再赘述。
图7为本发明再一示例性实施例示出的用于区块链的账户权限代理的处理装置的结构图。
如图7所示,在图6所示述实施例的基础上,本实施例提供的装置,若所述校验模块62校验不通过,则所述装置还包括发送模块63,用于向所述委托节点发送再次获取代理私钥的请求消息。
所述接收模块61还用于接收所述委托节点发送的承诺值,其中,所述承诺值是所述委托节点根据随机数确定的;
所述校验模块62具体用于:
根据所述承诺值、所述委托用户公钥、所述委托信息对所述代理私钥进行校验。
所述装置还包括广播模块64,用于:
根据所述代理私钥、所述承诺值、代理信息确定代理签名;
根据所述代理信息、所述承诺值、所述代理签名确定代理消息,并向区块链网络广播所述代理消息,以使所述区块链网络中的节点根据所述代理信息、所述承诺值、所述委托用户公钥对所述代理签名进行校验。
本实施例提供的用于区块链的账户权限代理的处理装置的具体原理和实现方式均与图3所示的实施例类似,此处不再赘述。
图8为本发明一示例性实施例示出的用于区块链的账户权限代理的处理设备的结构图。
如图8所示,本实施例提供的用于区块链的账户权限代理的处理设备包括:
存储器801;
处理器802;以及
计算机程序;
其中,所述计算机程序存储在所述存储器801中,并配置为由所述处理器802执行以实现如图1所示的用于区块链的账户权限代理的处理方法。
图9为本发明另一示例性实施例示出的用于区块链的账户权限代理的处理设备的结构图。
如图9所示,本实施例提供的用于区块链的账户权限代理的处理设备包括:
存储器901;
处理器902;以及
计算机程序;
其中,所述计算机程序存储在所述存储器901中,并配置为由所述处理器902执行以实现如图2-3所示的任一种用于区块链的账户权限代理的处理方法。
本实施例还提供一种计算机可读存储介质,其上存储有计算机程序,
所述计算机程序被处理器执行以实现如图1所示的所述的用于区块链的账户权限代理的处理方法。
本实施例还提供一种计算机可读存储介质,其上存储有计算机程序,
所述计算机程序被处理器执行以实现如图2-3所示的任一种用于区块链的账户权限代理的处理方法。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (11)

1.一种用于区块链的账户权限代理的处理方法,其特征在于,包括:
委托节点确定随机值,并根据所述随机值确定承诺值;
所述委托节点根据委托信息确定委托哈希值;
所述委托节点根据所述随机值、所述委托用户私钥、所述随机值、所述承诺值、所述委托哈希值确定所述代理私钥确定代理私钥;
所述委托节点向代理节点发送所述代理私钥、所述委托信息、所述承诺值,以使所述代理节点根据所述委托信息、委托用户公钥、所述承诺值对所述代理私钥进行校验,若校验通过,则所述代理节点根据所述代理私钥对需要广播的代理信息进行签名。
2.一种用于区块链的账户权限代理的处理方法,其特征在于,包括:
代理节点接收委托节点发送的代理私钥、委托信息;所述代理私钥是所述委托节点根据委托用户私钥、所述委托信息确定的;
所述代理节点根据委托用户公钥、所述委托信息对所述代理私钥进行校验,若校验通过,则存储所述代理私钥。
3.根据权利要求2所述的方法,其特征在于,若校验不通过,则所述代理节点向所述委托节点发送再次获取代理私钥的请求消息。
4.根据权利要求2所述的方法,其特征在于,所述代理节点还接收所述委托节点发送的承诺值,其中,所述承诺值是所述委托节点根据随机数确定的;
所述代理节点根据委托用户公钥、所述委托信息对所述代理私钥进行校验,包括:
所述代理节点根据所述承诺值、所述委托用户公钥、所述委托信息对所述代理私钥进行校验。
5.根据权利要求4所述的方法,其特征在于,还包括:
所述代理节点根据所述代理私钥、所述承诺值、代理信息确定代理签名;
所述代理节点根据所述代理信息、所述承诺值、所述代理签名确定代理消息,并向区块链网络广播所述代理消息,以使所述区块链网络中的节点根据所述所述代理信息、所述承诺值、所述委托用户公钥对所述代理签名进行校验。
6.一种用于区块链的账户权限代理的处理装置,其特征在于,包括:
确定模块,用于确定随机值,并根据所述随机值确定承诺值;
所述确定模块还用于根据委托信息确定委托哈希值;
所述确定模块还用于根据所述随机值、所述委托用户私钥、所述随机值、所述承诺值、所述委托哈希值确定所述代理私钥确定代理私钥;
发送模块,用于向代理节点发送所述代理私钥、所述委托信息、所述承诺值,以使所述代理节点根据所述委托信息、委托用户公钥、所述承诺值对所述代理私钥进行校验,若校验通过,则所述代理节点根据所述代理私钥对需要广播的代理信息进行签名。
7.一种用于区块链的账户权限代理的处理装置,其特征在于,包括:
接收模块,用于接收委托节点发送的代理私钥、委托信息;所述代理私钥是所述委托节点根据委托用户私钥、所述委托信息确定的;
校验模块,用于所述代理节点根据委托用户公钥、所述委托信息对所述代理私钥进行校验,若校验通过,则存储所述代理私钥。
8.一种用于区块链的账户权限代理的处理设备,其特征在于,包括:
存储器;
处理器;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并配置为由所述处理器执行以实现如权利要求1所述的方法。
9.一种用于区块链的账户权限代理的处理设备,其特征在于,包括:
存储器;
处理器;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并配置为由所述处理器执行以实现如权利要求2-5任一种所述的方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,
所述计算机程序被处理器执行以实现如权利要求1所述的方法。
11.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,
所述计算机程序被处理器执行以实现如权利要求2-5任一种所述的方法。
CN201811508680.2A 2018-12-11 2018-12-11 账户权限代理的处理方法、装置、设备及可读存储介质 Active CN111314059B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811508680.2A CN111314059B (zh) 2018-12-11 2018-12-11 账户权限代理的处理方法、装置、设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811508680.2A CN111314059B (zh) 2018-12-11 2018-12-11 账户权限代理的处理方法、装置、设备及可读存储介质

Publications (2)

Publication Number Publication Date
CN111314059A true CN111314059A (zh) 2020-06-19
CN111314059B CN111314059B (zh) 2023-01-31

Family

ID=71161341

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811508680.2A Active CN111314059B (zh) 2018-12-11 2018-12-11 账户权限代理的处理方法、装置、设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN111314059B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112100178A (zh) * 2020-09-08 2020-12-18 中国联合网络通信集团有限公司 委托授权验证方法和系统
WO2023206869A1 (zh) * 2022-04-26 2023-11-02 南方电网科学研究院有限责任公司 基于格的代理签名及验证方法、装置、设备和存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101051901A (zh) * 2006-06-15 2007-10-10 上海交通大学 一种代理签名的方法及系统
CN107612870A (zh) * 2016-07-11 2018-01-19 香港理工大学深圳研究院 物联网设备的委托授权方法、服务器、终端及物联网设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101051901A (zh) * 2006-06-15 2007-10-10 上海交通大学 一种代理签名的方法及系统
CN107612870A (zh) * 2016-07-11 2018-01-19 香港理工大学深圳研究院 物联网设备的委托授权方法、服务器、终端及物联网设备

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112100178A (zh) * 2020-09-08 2020-12-18 中国联合网络通信集团有限公司 委托授权验证方法和系统
CN112100178B (zh) * 2020-09-08 2023-05-12 中国联合网络通信集团有限公司 委托授权验证方法和系统
WO2023206869A1 (zh) * 2022-04-26 2023-11-02 南方电网科学研究院有限责任公司 基于格的代理签名及验证方法、装置、设备和存储介质

Also Published As

Publication number Publication date
CN111314059B (zh) 2023-01-31

Similar Documents

Publication Publication Date Title
US10341121B2 (en) System, method, and computer program product for privacy-preserving transaction validation mechanisms for smart contracts that are included in a ledger
TWI725124B (zh) 決定用於資訊的安全交換的共同私密,及階層化的決定性加密金鑰
Wang et al. Privacy-preserving public auditing for data storage security in cloud computing
US9036818B2 (en) Private key generation apparatus and method, and storage media storing programs for executing the methods
Paquin et al. U-prove cryptographic specification v1. 1
CN110601816B (zh) 一种区块链系统中轻量级节点控制方法及装置
EP1376976A1 (en) Methods for authenticating potential members invited to join a group
Yasin et al. Cryptography based e-commerce security: a review
CN113162752B (zh) 基于混合同态加密的数据处理方法和装置
JP2008503966A (ja) 匿名証明書呈示に関する匿名証明書
CN114008968A (zh) 用于计算环境中的许可授权的系统、方法和存储介质
Skudnov Bitcoin clients
Xiao et al. An efficient privacy-preserving publish-subscribe service scheme for cloud computing
CN111314059B (zh) 账户权限代理的处理方法、装置、设备及可读存储介质
CN107360252B (zh) 一种异构云域授权的数据安全访问方法
CN111756722B (zh) 一种无密钥托管的多授权属性基加密方法和系统
WO2022024182A1 (ja) 知識証明方法、知識証明プログラム、および情報処理装置
KR20200016506A (ko) 익명 디지털 아이덴티티 수립 방법
CN112927026A (zh) 优惠券的处理方法、装置、电子设备及计算机存储介质
CN111245594A (zh) 一种基于同态运算的协同签名方法及系统
Lee et al. A secure e-auction scheme based on group signatures
JP3791169B2 (ja) 認証装置および方法
Persiano et al. A secure and private system for subscription-based remote services
CN115834067A (zh) 一种边云协同场景中密文数据共享方法
Akshay et al. Dynamic list based data integrity verification in cloud environment

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