CN112104705B - 标识生成方法、装置、存储介质及电子设备 - Google Patents

标识生成方法、装置、存储介质及电子设备 Download PDF

Info

Publication number
CN112104705B
CN112104705B CN202010851372.0A CN202010851372A CN112104705B CN 112104705 B CN112104705 B CN 112104705B CN 202010851372 A CN202010851372 A CN 202010851372A CN 112104705 B CN112104705 B CN 112104705B
Authority
CN
China
Prior art keywords
identification
generation
identifier
parameter
generating
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
CN202010851372.0A
Other languages
English (en)
Other versions
CN112104705A (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.)
Cloudminds Shanghai Robotics Co Ltd
Original Assignee
Cloudminds Shanghai Robotics 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 Cloudminds Shanghai Robotics Co Ltd filed Critical Cloudminds Shanghai Robotics Co Ltd
Priority to CN202010851372.0A priority Critical patent/CN112104705B/zh
Publication of CN112104705A publication Critical patent/CN112104705A/zh
Application granted granted Critical
Publication of CN112104705B publication Critical patent/CN112104705B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • 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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • 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
    • H04L67/104Peer-to-peer [P2P] networks
    • 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/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/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)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Computer Security & Cryptography (AREA)
  • Technology Law (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Power Engineering (AREA)
  • Development Economics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开涉及一种标识生成方法、装置、存储介质及电子设备,所述方法包括:响应于针对目标对象的标识生成请求,生成标识生成参数;根据所述标识生成参数向区块链网络中的其他节点广播标识生成指令,所述标识生成指令用于指示接收到所述标识生成指令的节点,调用区块链中的目标智能合约生成对应于所述目标对象的唯一标识;根据所述标识生成参数,调用区块链中的目标智能合约生成对应于所述目标对象的唯一标识。上述技术方案能够基于区块链智能合约实现唯一标识的生成。采用上述技术方案,即便区块链节点出现故障,区块链网络中的其他节点仍能够生成所述唯一标识,从而提升了标识生成过程的可靠性。

Description

标识生成方法、装置、存储介质及电子设备
技术领域
本公开涉及区块链技术领域,具体地,涉及一种标识生成方法、装置、存储介质及电子设备。
背景技术
在信息系统中,为了表示或处理某一类型的主体,需要为该类型主体生成并分配在系统范围内唯一的标识(identifier)。比如,对于教务管理系统而言,可以通过分配学号的方式将学号作为每一学生在教务管理系统中的唯一标识。
相关技术中,可以通过一个部署的服务来生成全局唯一标识,这些生成的标识可以是递增或递减的(即:下一个生成的标识一定大于或小于上一个生成的标识)。然而,在一些场景中,服务可能出现故障,在这种情况下可能面临标识无法生成的问题。
发明内容
本公开的目的是提供一种标识生成方法、装置、存储介质及电子设备,用以解决上述相关技术问题。
为了实现上述目的,根据本公开实施例的第一方面,提供一种标识生成方法,包括:
响应于针对目标对象的标识生成请求,生成标识生成参数;
根据所述标识生成参数向区块链网络中的其他节点广播标识生成指令,所述标识生成指令用于指示接收到所述标识生成指令的节点,调用区块链中的目标智能合约生成对应于所述目标对象的唯一标识;
根据所述标识生成参数,调用区块链中的目标智能合约生成对应于所述目标对象的唯一标识。
可选地,所述根据所述标识生成参数向区块链网络中的其他节点广播标识生成指令之前,所述方法还包括:
根据所述标识生成参数确定标识配置信息;
根据所述标识配置信息向区块链网络中的其他节点广播标识配置指令,所述标识配置指令用于指示接收到所述标识配置指令的节点,根据所述标识配置信息对所述目标智能合约所对应的标识生成模板进行配置;
根据所述标识配置信息对所述目标智能合约所对应的标识生成模板进行配置;
所述调用区块链中的目标智能合约生成对应于所述目标对象的唯一标识,包括:
根据配置得到的所述标识生成模板生成所述唯一标识。
可选地,所述方法还包括:
根据标识配置信息配置标识生成模板;
基于所述标识生成模板构造所述目标智能合约;
将构造得到的所述目标智能合约部署至区块链网络;
所述调用区块链中的目标智能合约生成对应于所述目标对象的唯一标识,包括:
根据所述标识生成模板生成所述唯一标识。
可选地,所述标识配置信息包括递增字段描述信息或递减字段描述信息,所述递增字段描述信息用于表征根据所述标识配置信息配置得到的标识生成模板中至少包括递增字段,所述递减字段描述信息用于表征根据所述标识配置信息配置得到的标识生成模板中至少包括递减字段。
可选地,所述标识配置信息包括随机字段描述信息,所述随机字段描述信息用于表征根据所述标识配置信息配置得到的标识生成模板中至少包括随机字段,所述根据所述标识生成模板生成所述唯一标识,包括:
根据当前区块高度、当前区块的哈希值、起始于目标值的递增参数或递减参数中的至少一者,以及所述标识生成参数中的随机数种子生成所述唯一标识。
可选地,还包括:
对已生成的标识进行记录;
所述根据当前区块高度、当前区块的哈希值、起始于目标值的递增参数或递减参数中的至少一者,以及所述标识生成参数中的随机数种子生成所述唯一标识,包括:
在剩余标识容量大于所述标识生成参数中的请求标识数量时,根据当前区块高度、当前区块的哈希值、起始于目标值的递增参数或递减参数中的至少一者,以及所述标识生成参数中的随机数种子生成所述唯一标识;
其中,所述剩余标识容量是根据记录得到的已生成的标识数量以及根据所述随机字段描述信息确定的标识总容量确定的。
根据本公开实施例的第二方面,提供一种标识生成装置,包括:
第一生成模块,用于响应针对目标对象的标识生成请求,生成标识生成参数;
第一广播模块,用于根据所述标识生成参数向区块链网络中的其他节点广播标识生成指令,所述标识生成指令用于指示接收到所述标识生成指令的节点,调用区块链中的目标智能合约生成对应于所述目标对象的唯一标识;
配置模块,用于根据所述标识配置信息对所述目标智能合约所对应的标识生成模板进行配置;
第二生成模块,用于根据所述标识生成参数,调用区块链中的目标智能合约生成对应于所述目标对象的唯一标识。
可选地,所述装置还包括:
确定模块,用于在所述广播模块根据所述标识生成参数向区块链网络中的其他节点广播标识生成指令之前,根据所述标识生成参数确定标识配置信息;
第二广播模块,用于根据所述标识配置信息向区块链网络中的其他节点广播标识配置指令,所述标识配置指令用于指示接收到所述标识配置指令的节点,根据所述标识配置信息对所述目标智能合约所对应的标识生成模板进行配置;
所述第二生成模块,包括:
第一生成子模块,用于根据配置得到的所述标识生成模板生成所述唯一标识。
可选地,所述装置还包括:
第三生成模块,用于根据标识配置信息配置标识生成模板;
构造模块,用于基于所述标识生成模板构造所述目标智能合约;
部署模块,用于将构造得到的所述目标智能合约部署至区块链网络;
所述第二生成模块,包括:
第二生成子模块,用于根据所述标识生成模板生成所述唯一标识。
可选地,所述标识配置信息包括递增字段描述信息或递减字段描述信息,所述递增字段描述信息用于表征根据所述标识配置信息配置得到的标识生成模板中至少包括递增字段,所述递减字段描述信息用于表征根据所述标识配置信息配置得到的标识生成模板中至少包括递减字段。
可选地,所述标识配置信息包括随机字段描述信息,所述随机字段描述信息用于表征根据所述标识配置信息配置得到的标识生成模板中至少包括随机字段,所述第二生成子模块,包括:
生成子单元,用于根据当前区块高度、当前区块的哈希值、起始于目标值的递增参数或递减参数中的至少一者,以及所述标识生成参数中的随机数种子生成所述唯一标识。
可选地,所述装置还包括:
记录模块,用于对已生成的标识进行记录;
所述生成子单元用于:
在剩余标识容量大于所述标识生成参数中的请求标识数量时,根据当前区块高度、当前区块的哈希值、起始于目标值的递增参数或递减参数中的至少一者,以及所述标识生成参数中的随机数种子生成所述唯一标识;
其中,所述剩余标识容量是根据记录得到的已生成的标识数量以及根据所述随机字段描述信息确定的标识总容量确定的。
根据本公开实施例的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一方面中任一项所述方法的步骤。
根据本公开实施例的第四方面,提供一种电子设备,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现上述第一方面中任一项所述方法的步骤。
采用上述技术方案,区块链节点在接收到针对目标对象的标识生成请求时,可以根据标识生成的需求确定标识生成参数,并通过所述标识生成参数调用区块链中的目标智能合约从而生成对应于目标对象的唯一标识。此外,所述区块链节点还可以根据所述标识生成参数向区块链网络中的其他节点广播标识生成指令。这样,接收到所述标识生成指令的节点,也可以通过所述标识生成参数调用区块链中的目标智能合约生成对应于所述目标对象的唯一标识。也就是说,即便所述区块链节点出现故障,所述区块链网络中的其他节点仍能够生成所述唯一标识,从而提升了标识生成过程的可靠性。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是本公开一示例性实施例所示出的一种标识生成方法的流程图。
图2是本公开一示例性实施例所示出的一种标识生成方法的流程图。
图3是本公开一示例性实施例所示出的一种标识生成方法的流程图。
图4是本公开一示例性实施例所示出的一种标识生成装置的框图。
图5是本公开一示例性实施例所示出的一种电子设备的框图。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
在介绍本公开所提供的标识生成方法、装置、存储介质及电子设备之前,首先对本公开所提供的各实施例的应用场景进行介绍。本公开的各实施例可以应用于标识生成场景,以根据应用需求实现标识的生成。一般来说,可以基于生成的所述标识,从而在信息系统中表示某一类型的主体。比如,对于教务管理系统而言,可以通过分配学号的方式将学号作为每一学生在教务管理系统中的唯一标识。
针对标识的生成方式,在一些场景中,可以通过一个中心部署的服务来生成全局唯一标识。例如,可以基于中心部署的服务来生成递增的标识(下一个标识大于上一个标识)或是递减的标识(下一个标识小于上一个标识)。然而,在一些场景中,服务可能出现故障,在这种情况下可能面临标识无法生成的问题。
为此,本公开提供一种标识生成方法,参照图1所示出的一种标识生成方法的流程图,所述方法包括:
S11,响应于针对目标对象的标识生成请求,生成标识生成参数;
S12,根据所述标识生成参数向区块链网络中的其他节点广播标识生成指令,所述标识生成指令用于指示接收到所述标识生成指令的节点,调用区块链中的目标智能合约生成对应于所述目标对象的唯一标识;
S13,根据所述标识生成参数,调用区块链中的目标智能合约生成对应于所述目标对象的唯一标识。
具体来讲,所述方法例如可以应用于保存有全部或部分区块数据的区块链节点。在具体实施时,其可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(如平板电脑、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机的静止计算设备、服务器等等。
在S11中,所述区块链节点可以响应于针对目标对象的标识生成请求,生成标识生成参数。其中,所述区块链节点可以是标识生成的请求方。例如,所述区块链节点可以响应于用户的表征请求生成标识的操作从而获取所述标识生成参数。在另一些实施例中,所述区块链节点也可以通过与标识生成的请求方建立有线或无线通信的方式来接收所述请求方发送的所述标识生成请求,从而确定标识生成参数。
针对所述标识生成参数,所述标识生成参数例如可以包括目标智能合约的地址信息、执行所述目标智能合约所需的参数(例如请求方请求生成的标识的数量、请求生成的标识的格式、随机数种子)等等。
在S12中,所述区块链节点还可以根据所述标识生成参数向区块链网络中的其他节点广播标识生成指令。其中,所述标识生成指令可以以交易信息的方式实现,通过交易信息的方式可以将目标智能合约的地址以及相关执行参数广播至区块链网络中。这样,接收到所述标识生成指令的节点,可以根据所述目标智能合约的地址以及相关执行参数调用所述目标智能合约,从而生成对应于所述目标对象的唯一标识。
当然,所述区块链节点自身也可以通过智能合约来获取所述唯一标识。比如,在S13中,所述区块链节点可以根据所述标识生成参数中的目标智能合约的地址信息、执行所述目标智能合约所需的参数,从而调用区块链中的目标智能合约生成对应于所述目标对象的唯一标识。
采用上述技术方案,区块链节点在接收到针对目标对象的标识生成请求时,可以根据标识生成的需求确定标识生成参数,并通过所述标识生成参数调用区块链中的目标智能合约从而生成对应于目标对象的唯一标识。此外,所述区块链节点还可以根据所述标识生成参数向区块链网络中的其他节点广播标识生成指令。这样,接收到所述标识生成指令的节点,也可以通过所述标识生成参数调用区块链中的目标智能合约生成对应于所述目标对象的唯一标识。也就是说,即便所述区块链节点出现故障,所述区块链网络中的其他节点仍能够生成所述唯一标识,从而提升了标识生成过程的可靠性。
在一种可能的实施方式中,在通过所述目标智能合约生成所述唯一标识之前,还可以对所述目标智能合约所对应的标识生成模板进行配置。参照图2所示出的一种标识生成方法的流程图,在这种情况下,所述方法包括:
S21,响应于针对目标对象的标识生成请求,生成标识生成参数。
S22,根据所述标识生成参数确定标识配置信息。
举例来讲,所述标识生成参数中可以包括标识格式参数,用于表征所述标识生成请求所请求生成的标识的格式信息。
字段名称 字段属性
前缀/后缀 前缀/后缀字段的值
时间戳 时间戳字段格式,长度和单位
递增字段 递增字段长度、步长、表示方式(16进制、10进制等)
递减字段 递减字段长度、步长、表示方式(16进制、10进制等)
常量字段 固定字段的值
随机字段 随机字段的长度、表示方式(16进制、10进制等)
字段分割符 用于对不同字段进行分割标识的分割符
表1
参照表1,这些格式信息例如可以包括请求生成的标识所包括的字段类型(如常量字段、分隔符、时间戳等)、字段顺序以及各字段的格式、长度、进制等等。在这种情况下,所述S22即是指,可以根据所述标识生成参数中的格式参数确定与需要生成的标识所对应的标识配置信息。
这样,在S23中,可以基于所述标识配置信息对目标智能合约所对应的标识生成模板进行配置。所述区块链节点可以根据所述标识配置信息向区块链网络中的其他节点广播标识配置指令,以使得接收到所述标识配置指令的节点可以根据所述标识配置信息对所述目标智能合约所对应的标识生成模板进行配置。
示例地,所述目标智能合约中可以包括每一类型的字段的初始化接口,当初始化接口被调用时,可以得到对应字段的字段描述符。其中,同一类型的字段也可以被多次设置,并得到不同的字段描述符。例如,在对分隔符“.”进行两次初始化的情况下,可以得到第一字段描述符separator1以及第二字段描述符separator2。所述智能合约还可以包括模板设置接口,通过将模板配置信息所对应的字段描述符输入至所述模板设置接口即可完成模板设置。在一些实施例中,模板设置接口还可以根据设定的模板,计算得到能够生成的唯一标识的总数,并在所述模板设置接口被调用时返回。
以所述标识配置信息包括“前缀1(abc),分隔符,前缀2(def),随机数(4字节)”为例进行说明。通过调用智能合约的对应字段的初始化接口,可以得到前缀“abc”的字段描述符为prefix1,另一前缀“def”的字段描述符为prefix2,长度为4字节的随机字段描述符为random,分隔符“.”的字段描述符为separator。这样,可以调用模板设置接口,将参数“prefix1,separator,prefix2,random”作为输入,从而完成模板设置。在这种情况下,能够生成的唯一标识的总数为232个,若生成唯一标识时产生的随机数为0x12345678,则该次生成的唯一标识为:abc.def.12345678。
当然,所述区块链节点自身也可以对所述目标智能合约进行设置。比如,在S24中,所述区块链节点可以根据所述标识配置信息对所述目标智能合约所对应的标识生成模板进行配置。
S25,根据所述标识生成参数向区块链网络中的其他节点广播标识生成指令,所述标识生成指令用于指示接收到所述标识生成指令的节点,调用区块链中的目标智能合约生成对应于所述目标对象的唯一标识。
S26,根据所述标识生成参数,根据配置得到的所述标识生成模板生成所述唯一标识。
上述技术方案中,在为目标对象生成唯一标识时,还可以根据应用需求对目标职能合约所对应的标识生成模板进行设置,从而提升了标识生成过程的灵活性,也能够满足更多的标识生成需求。
当然,在一些可能的实施方式中,所述智能合约也可以是预先设置完成之后再部署至区块链网络中的。参照图3所示出的一种标识生成方法的流程图,所述方法包括:
S31,根据标识配置信息配置标识生成模板。
其中,所述标识配置信息可以是预设的。例如,可以根据标识生成的需求(格式、位数、字段结构等)确定所述标识配置信息,并根据所述标识配置信息配置标识生成模板。
这样,在S32中,可以基于所述标识生成模板构造所述目标智能合约,并在S33,将构造得到的所述目标智能合约部署至区块链网络。
S34,响应于针对目标对象的标识生成请求,生成标识生成参数;
S35,根据所述标识生成参数向区块链网络中的其他节点广播标识生成指令,所述标识生成指令用于指示接收到所述标识生成指令的节点,调用区块链中的目标智能合约生成对应于所述目标对象的唯一标识;
S36,根据所述标识生成参数以及所述标识生成模板生成所述唯一标识。
关于上述实施例中的步骤S34至S36,请参照上述实施例中关于步骤S11至S13的说明,为了说明书的简洁,本公开在此不再赘述。
上述实施例中可以根据需求配置标识生成模板,并基于所述标识生成模板构造智能合约,最终将智能合约部署至区块链网络中。这样,可以基于所述智能合约,利用区块链分布式一致性的特性来生成所述唯一标识,从而提升标识生成过程的可靠性。
针对所述标识配置信息,在一种可能的实施方式中,所述标识配置信息可以包括递增字段描述信息或递减字段描述信息。其中,所述递增字段描述信息用于表征根据所述标识配置信息配置得到的标识生成模板中至少包括递增字段,所述递减字段描述信息用于表征根据所述标识配置信息配置得到的标识生成模板中至少包括递减字段。
以所述标识配置信息包括递增字段描述信息为例,所述递增字段描述信息例如可以包括长度8位、步长为1、进制为16进制。这样,在根据所述标识配置信息对标识生成模板进行配置后,所述标识生成模板中可以包括取值为00000000至FFFFFFFF的递增字段。进一步的,可以根据所述标识生成模板按照步长为1的方式生成唯一标识,例如,本次生成的唯一标识为00000000,则下一次生成的唯一标识为00000001。当然,上述标识是一种示例,在具体实施时,除所述递增字段之外,所述标识生成模板还可以包括如表1所示的其他字段,例如常量字段、分隔符等等。
这样,采用上述技术方案,能够基于智能合约生成连续递增或递减的唯一标识,解决了相关技术中难以利用分布式方法生成连续标识的问题。
在一种可能的实施方式中,所述标识配置信息可以包括随机字段描述信息,所述随机字段描述信息用于表征根据所述标识配置信息配置得到的标识生成模板中至少包括随机字段。在这种情况下,所述根据所述标识生成模板生成所述唯一标识,包括:
根据当前区块高度、当前区块的哈希值、起始于目标值的递增参数或递减参数中的至少一者,以及所述标识生成参数中的随机数种子生成所述唯一标识。
其中,所述随机数种子例如可以是区块链节点在发送所述标识生成指令之前,从区块链的链外获取得到的。应当理解,由于区块链需要保证数据的一致性,因此区块链网络中难以直接生成随机数。因此,在本实施例中,可以基于当前区块高度、当前区块的哈希值、起始于目标值的递增参数或递减参数中的至少一者,以及所述标识生成参数中的随机数种子生成所述唯一标识。
示例地,在请求生成的标识的随机字段的位数为N的情况下,可以通过如下方式生成随机字段A:
A=hash(输入的随机数种子||当前区块高度||当前区块hash||nonce),其中nonce为起始于目标值(例如100)的递增参数或递减参数。这样,可以通过对哈希函数的结果中选择一起始位,并从所述起始位开始截取N位的方式,从而生成所述随机字段A。在一些实施例子,截取的所述随机字段A可能和历史生成的某一随机字段相同,在这种情况下,可以通过选择不同的起始位,并从该新选取的起始位开始截取N位的方式,从而生成所述随机字段A。当然,在一些实施例中也可以通过调整参数nonce的取值,从而生成不同的随机字段A。例如,在截取的所述随机字段A可能和历史生成的某一随机字段相同的情况下,可以将参数nonce的取值设置为nonce=nonce+1。也就是说,采用上述技术方案,能够基于智能合约实现随机标识的生成。
此外,由于新生成的随机字段存在和历史生成的某随机字段相同的可能,因此在一种可能的实施方式中,所述方法还包括:
对已生成的标识进行记录。
例如,可以将所述智能合约生成的每一随机字段保存在区块链中。这样,针对新生成的随机字段,可以通过将该新生成的随机字段与历史保存的随机字段进行对比的方式确定所述新生成的随机字段是否存在重复。当新生成的随机字段与历史生成的某一随机字段重复时,可以重新生成所述随机字段,从而保证生成的标识的唯一性。
进一步的,由于随机字段的容量是有限的,如8位二进制的随机字段的容量为28,因此在生成唯一标识前还可以检查剩余标识的容量。在这种情况下,所述根据当前区块高度、当前区块的哈希值、起始于目标值的递增参数或递减参数中的至少一者,以及所述标识生成参数中的随机数种子生成所述唯一标识,包括:
在剩余标识容量大于所述标识生成参数中的请求标识数量时,根据当前区块高度、当前区块的哈希值、起始于目标值的递增参数或递减参数中的至少一者,以及所述标识生成参数中的随机数种子生成所述唯一标识。
其中,所述剩余标识容量是根据记录得到的已生成的标识数量以及根据所述随机字段描述信息确定的标识总容量确定的。沿用上述例子,8位2进制数的随机字段的容量为256个(标识总容量),记录得到的已生成的标识数量为250个。在请求的标识的数量为5个(即小于剩余标识容量6)的情况下,可以根据目标智能合约中的标识生成模板进行速记标识的生成。在请求的标识的数量为10个(即大于剩余标识容量6)的情况下,则随机标识生成失败。
此外值得说明的是,当标识生成模板中包括递增字段、递减字段、时间戳等变化字段时,也可以为每一变化字段分别记录已生成的字段标识的数量。这样,可以通过监控标识剩余容量的方式(具体方式请参照上述关于随机字段的实施例),避免请求生成的标识的数量大于对应字段的剩余容量进而导致的标识生成失败的情况。
本公开还提供一种标识生成装置,参照图4所示出的一种标识生成装置的框图,所述装置400包括:
第一生成模块401,用于响应针对目标对象的标识生成请求,生成标识生成参数;
第一广播模块402,用于根据所述标识生成参数向区块链网络中的其他节点广播标识生成指令,所述标识生成指令用于指示接收到所述标识生成指令的节点,调用区块链中的目标智能合约生成对应于所述目标对象的唯一标识;
第二生成模块403,用于根据所述标识生成参数,调用区块链中的目标智能合约生成对应于所述目标对象的唯一标识。
采用上述技术方案,区块链节点在接收到针对目标对象的标识生成请求时,可以根据标识生成的需求确定标识生成参数,并通过所述标识生成参数调用区块链中的目标智能合约从而生成对应于目标对象的唯一标识。此外,所述区块链节点还可以根据所述标识生成参数向区块链网络中的其他节点广播标识生成指令。这样,接收到所述标识生成指令的节点,也可以通过所述标识生成参数调用区块链中的目标智能合约生成对应于所述目标对象的唯一标识。也就是说,即便所述区块链节点出现故障,所述区块链网络中的其他节点仍能够生成所述唯一标识,从而提升了标识生成过程的可靠性。
可选地,所述装置400还包括:
确定模块,用于在所述广播模块根据所述标识生成参数向区块链网络中的其他节点广播标识生成指令之前,根据所述标识生成参数确定标识配置信息;
第二广播模块,用于根据所述标识配置信息向区块链网络中的其他节点广播标识配置指令,所述标识配置指令用于指示接收到所述标识配置指令的节点,根据所述标识配置信息对所述目标智能合约所对应的标识生成模板进行配置;
配置模块,用于根据所述标识配置信息对所述目标智能合约所对应的标识生成模板进行配置;
所述第二生成模块403,包括:
第一生成子模块,用于根据配置得到的所述标识生成模板生成所述唯一标识。
可选地,所述装置400还包括:
第三生成模块,用于根据标识配置信息配置标识生成模板;
构造模块,用于基于所述标识生成模板构造所述目标智能合约;
部署模块,用于将构造得到的所述目标智能合约部署至区块链网络;
所述第二生成模块403,包括:
第二生成子模块,用于根据所述标识生成模板生成所述唯一标识。
可选地,所述标识配置信息包括递增字段描述信息或递减字段描述信息,所述递增字段描述信息用于表征根据所述标识配置信息配置得到的标识生成模板中至少包括递增字段,所述递减字段描述信息用于表征根据所述标识配置信息配置得到的标识生成模板中至少包括递减字段。
可选地,所述标识配置信息包括随机字段描述信息,所述随机字段描述信息用于表征根据所述标识配置信息配置得到的标识生成模板中至少包括随机字段,所述第二生成子模块,包括:
生成子单元,用于根据当前区块高度、当前区块的哈希值、起始于目标值的递增参数或递减参数中的至少一者,以及所述标识生成参数中的随机数种子生成所述唯一标识。
可选地,所述装置400还包括:
记录模块,用于对已生成的标识进行记录;
所述生成子单元用于:
在剩余标识容量大于所述标识生成参数中的请求标识数量时,根据当前区块高度、当前区块的哈希值、起始于目标值的递增参数或递减参数中的至少一者,以及所述标识生成参数中的随机数种子生成所述唯一标识;
其中,所述剩余标识容量是根据记录得到的已生成的标识数量以及根据所述随机字段描述信息确定的标识总容量确定的。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
此外值得说明的是,为描述的方便和简洁,说明书中所描述的实施例均属于优选实施例,其所涉及的部分并不一定是本发明所必须的,例如,所述第一生成模块401和第二生成模块403,在具体实施时可以是相互独立的装置也可以是同一个装置。又例如,所述第一广播模块与第二广播模块在具体实施时可以是独立的装置也可以是同一个装置,本公开对此不作限定。
本公开还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一实施例中所述方法的步骤。
本公开还提供一种电子设备,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现上述任一实施例中所述方法的步骤。
图5是根据一示例性实施例示出的一种电子设备500的框图,所述电子设备例如可以是保存有全部或部分区块链数据的区块链节点。如图5所示,该电子设备500可以包括:处理器501,存储器502。该电子设备500还可以包括多媒体组件503,输入/输出(I/O)接口504,以及通信组件505中的一者或多者。
其中,处理器501用于控制该电子设备500的整体操作,以完成上述的标识生成方法中的全部或部分步骤。存储器502用于存储各种类型的数据以支持在该电子设备500的操作,这些数据例如可以包括用于在该电子设备500上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如区块数据、收发的消息、图片、音频、视频等等。该存储器502可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件503可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器502或通过通信组件505发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口504为处理器501和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件505用于该电子设备500与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near FieldCommunication,简称NFC),2G、3G、4G、NB-IOT、eMTC、或其他5G等等,或它们中的一种或几种的组合,在此不做限定。因此相应的该通信组件505可以包括:Wi-Fi模块,蓝牙模块,NFC模块等等。
在一示例性实施例中,电子设备500可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的标识生成方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的标识生成方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器502,上述程序指令可由电子设备500的处理器501执行以完成上述的标识生成方法。
在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的标识生成方法的代码部分。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。

Claims (8)

1.一种标识生成方法,其特征在于,包括:
响应于针对目标对象的标识生成请求,生成标识生成参数;
根据所述标识生成参数向区块链网络中的其他节点广播标识生成指令,所述标识生成指令用于指示接收到所述标识生成指令的节点,调用区块链中的目标智能合约生成对应于所述目标对象的唯一标识;
根据所述标识生成参数,调用区块链中的目标智能合约生成对应于所述目标对象的唯一标识;
根据标识配置信息配置标识生成模板;
基于所述标识生成模板构造所述目标智能合约;
将构造得到的所述目标智能合约部署至区块链网络;
所述调用区块链中的目标智能合约生成对应于所述目标对象的唯一标识,包括:
根据当前区块高度、当前区块的哈希值、起始于目标值的递增参数或递减参数中的至少一者,以及所述标识生成参数中的随机数种子生成所述唯一标识;
其中,所述标识配置信息包括随机字段描述信息,所述随机字段描述信息用于表征根据所述标识配置信息配置得到的标识生成模板中至少包括随机字段。
2.根据权利要求1所述的方法,其特征在于,所述根据所述标识生成参数向区块链网络中的其他节点广播标识生成指令之前,所述方法还包括:
根据所述标识生成参数确定标识配置信息;
根据所述标识配置信息向区块链网络中的其他节点广播标识配置指令,所述标识配置指令用于指示接收到所述标识配置指令的节点,根据所述标识配置信息对所述目标智能合约所对应的标识生成模板进行配置;
根据所述标识配置信息对所述目标智能合约所对应的标识生成模板进行配置;
所述调用区块链中的目标智能合约生成对应于所述目标对象的唯一标识,包括:
根据配置得到的所述标识生成模板生成所述唯一标识。
3.根据权利要求1或2所述的方法,其特征在于,所述标识配置信息包括递增字段描述信息或递减字段描述信息,所述递增字段描述信息用于表征根据所述标识配置信息配置得到的标识生成模板中至少包括递增字段,所述递减字段描述信息用于表征根据所述标识配置信息配置得到的标识生成模板中至少包括递减字段。
4.根据权利要求1所述的方法,其特征在于,还包括:
对已生成的标识进行记录;
所述根据当前区块高度、当前区块的哈希值、起始于目标值的递增参数或递减参数中的至少一者,以及所述标识生成参数中的随机数种子生成所述唯一标识,包括:
在剩余标识容量大于所述标识生成参数中的请求标识数量时,根据当前区块高度、当前区块的哈希值、起始于目标值的递增参数或递减参数中的至少一者,以及所述标识生成参数中的随机数种子生成所述唯一标识;
其中,所述剩余标识容量是根据记录得到的已生成的标识数量以及根据所述随机字段描述信息确定的标识总容量确定的。
5.一种标识生成装置,其特征在于,包括:
第一生成模块,用于响应针对目标对象的标识生成请求,生成标识生成参数;
第一广播模块,用于根据所述标识生成参数向区块链网络中的其他节点广播标识生成指令,所述标识生成指令用于指示接收到所述标识生成指令的节点,调用区块链中的目标智能合约生成对应于所述目标对象的唯一标识;
第二生成模块,用于根据所述标识生成参数,调用区块链中的目标智能合约生成对应于所述目标对象的唯一标识;
第三生成模块,用于根据标识配置信息配置标识生成模板;
构造模块,用于基于所述标识生成模板构造所述目标智能合约;
部署模块,用于将构造得到的所述目标智能合约部署至区块链网络;
所述第二生成模块,包括:
第二生成子模块,用于根据当前区块高度、当前区块的哈希值、起始于目标值的递增参数或递减参数中的至少一者,以及所述标识生成参数中的随机数种子生成所述唯一标识;
其中,所述标识配置信息包括随机字段描述信息,所述随机字段描述信息用于表征根据所述标识配置信息配置得到的标识生成模板中至少包括随机字段。
6.根据权利要求5所述的装置,其特征在于,还包括:
确定模块,用于在所述广播模块根据所述标识生成参数向区块链网络中的其他节点广播标识生成指令之前,根据所述标识生成参数确定标识配置信息;
第二广播模块,用于根据所述标识配置信息向区块链网络中的其他节点广播标识配置指令,所述标识配置指令用于指示接收到所述标识配置指令的节点,根据所述标识配置信息对所述目标智能合约所对应的标识生成模板进行配置;
配置模块,用于根据所述标识配置信息对所述目标智能合约所对应的标识生成模板进行配置;
所述第二生成模块,包括:
第一生成子模块,用于根据配置得到的所述标识生成模板生成所述唯一标识。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-4中任一项所述方法的步骤。
8.一种电子设备,其特征在于,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求1-4中任一项所述方法的步骤。
CN202010851372.0A 2020-08-21 2020-08-21 标识生成方法、装置、存储介质及电子设备 Active CN112104705B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010851372.0A CN112104705B (zh) 2020-08-21 2020-08-21 标识生成方法、装置、存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010851372.0A CN112104705B (zh) 2020-08-21 2020-08-21 标识生成方法、装置、存储介质及电子设备

Publications (2)

Publication Number Publication Date
CN112104705A CN112104705A (zh) 2020-12-18
CN112104705B true CN112104705B (zh) 2023-10-24

Family

ID=73754600

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010851372.0A Active CN112104705B (zh) 2020-08-21 2020-08-21 标识生成方法、装置、存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN112104705B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116501804A (zh) * 2023-06-26 2023-07-28 南京亚信软件有限公司 标识生成方法、装置、电子设备及存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106453415A (zh) * 2016-12-01 2017-02-22 江苏通付盾科技有限公司 基于区块链的设备认证方法、认证服务器及用户设备
US9584493B1 (en) * 2015-12-18 2017-02-28 Wickr Inc. Decentralized authoritative messaging
CN108550041A (zh) * 2018-03-20 2018-09-18 深圳市元征科技股份有限公司 保护原创作品的方法、装置和终端
CN108596771A (zh) * 2018-03-30 2018-09-28 深圳市元征科技股份有限公司 保险承保的方法、装置、用户终端及区块链节点设备
CN108647966A (zh) * 2018-05-09 2018-10-12 深圳市融讯科技有限公司 一种基于区块链的数据交互方法及装置
CN110597918A (zh) * 2019-09-23 2019-12-20 腾讯科技(深圳)有限公司 一种账户管理方法、装置及计算机可读存储介质
CN110910143A (zh) * 2019-11-21 2020-03-24 腾讯科技(深圳)有限公司 身份标识生成方法、装置、相关节点及介质
CN111461885A (zh) * 2020-03-31 2020-07-28 财付通支付科技有限公司 共识网络管理方法、装置、计算机以及可读存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9584493B1 (en) * 2015-12-18 2017-02-28 Wickr Inc. Decentralized authoritative messaging
CN106453415A (zh) * 2016-12-01 2017-02-22 江苏通付盾科技有限公司 基于区块链的设备认证方法、认证服务器及用户设备
CN108550041A (zh) * 2018-03-20 2018-09-18 深圳市元征科技股份有限公司 保护原创作品的方法、装置和终端
CN108596771A (zh) * 2018-03-30 2018-09-28 深圳市元征科技股份有限公司 保险承保的方法、装置、用户终端及区块链节点设备
CN108647966A (zh) * 2018-05-09 2018-10-12 深圳市融讯科技有限公司 一种基于区块链的数据交互方法及装置
CN110597918A (zh) * 2019-09-23 2019-12-20 腾讯科技(深圳)有限公司 一种账户管理方法、装置及计算机可读存储介质
CN110910143A (zh) * 2019-11-21 2020-03-24 腾讯科技(深圳)有限公司 身份标识生成方法、装置、相关节点及介质
CN111461885A (zh) * 2020-03-31 2020-07-28 财付通支付科技有限公司 共识网络管理方法、装置、计算机以及可读存储介质

Also Published As

Publication number Publication date
CN112104705A (zh) 2020-12-18

Similar Documents

Publication Publication Date Title
CN107800565B (zh) 巡检方法、装置、系统、计算机设备和存储介质
CN110543327B (zh) 业务组件复用方法、装置、计算机设备及存储介质
CN103765849A (zh) 使用哈希函数来分发网络标识
CN103414589A (zh) 一种管理资源信息的方法及装置
CN113453213A (zh) 一种鉴权数据同步方法及装置
CN112423281B (zh) 无线模组升级方法、装置、计算机设备和存储介质
CN105491081A (zh) 移动智能终端下转发应用内流量的方法
CN112104705B (zh) 标识生成方法、装置、存储介质及电子设备
CN113141405A (zh) 服务访问方法、中间件系统、电子设备和存储介质
CN111064786B (zh) 账户标识管理方法及设备
CN112235378B (zh) 数据更新方法、装置、存储介质及电子设备
CN111625511B (zh) 一种配置文件管理方法、装置及电子设备和存储介质
CN106293814B (zh) 升级方法及装置
CN103368907A (zh) 事件上报请求系统、方法、客户端装置及其上报请求方法
CN111404897A (zh) 消息分发方法、装置、存储介质及电子设备
CN110888892A (zh) 一种区块同步方法、装置及存储介质
CN111327691B (zh) 业务处理方法、装置及电子设备
CN102130786B (zh) 更新单板特性的方法和装置
CN114785800A (zh) 跨链通信方法及装置
CN114640595A (zh) 级联方法、装置、电子设备和存储介质
CN110935168A (zh) 用于全球同服架构的分布式id生成方法、装置及设备
CN115396916A (zh) 配置模板生成方法、网元配置方法及其系统、存储介质
CN110417904B (zh) 一种推送信息处理方法、装置及系统
CN110413935B (zh) 一种数据信息处理方法、装置及系统
CN117092935A (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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 201111 Building 8, No. 207, Zhongqing Road, Minhang District, Shanghai

Applicant after: Dayu robot Co.,Ltd.

Address before: 200245 2nd floor, building 2, no.1508, Kunyang Road, Minhang District, Shanghai

Applicant before: Dalu Robot Co.,Ltd.

GR01 Patent grant
GR01 Patent grant