CN116961937A - 区块链程序的访问方法、相关设备及存储介质 - Google Patents

区块链程序的访问方法、相关设备及存储介质 Download PDF

Info

Publication number
CN116961937A
CN116961937A CN202210391021.5A CN202210391021A CN116961937A CN 116961937 A CN116961937 A CN 116961937A CN 202210391021 A CN202210391021 A CN 202210391021A CN 116961937 A CN116961937 A CN 116961937A
Authority
CN
China
Prior art keywords
authorization
information
identification information
management platform
authorization information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210391021.5A
Other languages
English (en)
Inventor
王宗友
蓝虎
廖志勇
时一防
朱耿良
刘区城
张劲松
刘汉卿
郭英杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202210391021.5A priority Critical patent/CN116961937A/zh
Publication of CN116961937A publication Critical patent/CN116961937A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • 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)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请实施例涉及计算机技术领域,公开了区块链程序的访问方法、相关设备及存储介质,该方法包括:在检测到对区块链程序的访问请求时,获取关于区块链程序的授权信息,以及终端设备的第一设备标识信息,其中授权信息是存储在终端设备中的,是授权管理平台发送至终端设备的,授权信息是授权管理平台在确定允许目标终端设备作为预设私有链网络中的网络节点时,基于授权管理平台的私钥和目标终端设备的第二设备标识信息生成的;然后对授权信息进行解析处理,得到目标终端设备的第二设备标识信息;若第一设备标识信息与第二设备标识信息相同,则访问区块链程序。采用本申请实施例,可提高区块链程序的运行安全。

Description

区块链程序的访问方法、相关设备及存储介质
技术领域
本申请涉及计算机技术领域,尤其涉及区块链程序的访问方法、相关设备及存储介质。
背景技术
目前,私有链等有严格的准入机制的区块链,一般需要待加入私有链的对象向链管理委员会提交入链申请,并同时提交该对象的区块链地址和其他相关信息;在链管理委员会审核通过后,该对象就可以通过私钥在终端设备上去访问区块链程序。其中私钥可以用于证明访问区块链程序的对象的身份,如果私钥泄漏,就相当于身份被盗用,从而存在区块链程序被恶意攻击的问题。此外,区块链程序本身也存在可能被第三方恶意获取、运行、破解和攻击的问题。因此,如何提高区块链程序的运行安全,是目前亟需解决的问题。
发明内容
本申请实施例提供一种区块链程序的访问方法、相关设备及存储介质,可同时提高区块链程序的运行安全。
一方面,本申请实施例提供了一种区块链程序的访问方法,包括:
在检测到对区块链程序的访问请求时,获取关于所述区块链程序的授权信息,以及所述终端设备的第一设备标识信息,所述授权信息存储在所述终端设备中,所述授权信息是授权管理平台发送至所述终端设备的,所述授权信息是所述授权管理平台在确定允许目标终端设备作为预设私有链网络中的网络节点时,基于所述授权管理平台的私钥和所述目标终端设备的第二设备标识信息生成的;
对所述授权信息进行解析处理,得到所述目标终端设备的第二设备标识信息;
若所述第一设备标识信息与所述第二设备标识信息相同,则访问所述区块链程序。
一方面,本申请实施例提供了一种区块链程序的访问装置,所述区块链程序的访问装置包括获取单元和处理单元,其中:
所述获取单元,用于在检测到对区块链程序的访问请求时,获取关于所述区块链程序的授权信息,以及所述终端设备的第一设备标识信息,所述授权信息存储在所述终端设备中,所述授权信息是授权管理平台发送至所述终端设备的,所述授权信息是所述授权管理平台在确定允许目标终端设备作为预设私有链网络中的网络节点时,基于所述授权管理平台的私钥和所述目标终端设备的第二设备标识信息生成的;
所述处理单元,用于对所述授权信息进行解析处理,得到所述目标终端设备的第二设备标识信息;
所述处理单元,还用于若所述第一设备标识信息与所述第二设备标识信息相同,则访问所述区块链程序。
一方面,本申请实施例提供了一种电子设备,所述电子设备包括输入接口和输出接口,还包括:
处理器,适于实现一条或多条指令;以及,
计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行上述区块链程序的访问方法。
一方面,本申请实施例提供了一种计算机存储介质,所述计算机存储介质中存储有计算机程序指令,所述计算机程序指令被处理器执行时,用于执行上述区块链程序的访问方法。
一方面,本申请实施例提供了一种计算机程序产品或计算机程序,所述计算机程序产品或所述计算机程序包括计算机指令,所述计算机指令存储在计算机可读存储介质中;电子设备的处理器从所述计算机可读存储介质中读取所述计算机指令,所述处理器执行所述计算机指令,所述计算机指令被处理器执行时,用于执行上述区块链程序的访问方法。
在本申请实施例中,通过在检测到对区块链程序的访问请求时,从终端设备中获取区块链程序的授权信息,并对授权信息进行解析处理,得到第二设备标识信息;以及只有判断出终端设备的第一设备标识信息与第二设备标识信息相同,终端设备才能够访问区块链程序的方式,可以确定出终端设备想要访问区块链程序的必要条件是终端设备中存储有关于区块链程序的授权信息,以及对该授权信息进行解析处理后的第二设备标识信息需要与终端设备的第一设备标识信息相同。由于第二设备标识信息标识的是被确定允许作为预设私有链网络中的网络节点的目标终端设备,综上可知,不是所有终端设备有了授权信息就可以访问区块链程序,只有特定的预先已经被允许进入预设私有链网络的终端设备才能访问区块链程序。由于在实际应用中,被允许进入预设私有链网络的终端设备一般都是由申请该终端设备进入预设私有链网络的对象所拥有,且终端设备的标识信息具有唯一性,因此当授权信息通过拷贝、病毒等方式被第三方恶意获取时,第三方使用的终端设备的设备标识信息也很难与恶意获取到的授权信息中的设备标识信息相同,故而无法访问区块链程序,从而避免了由于私钥等信息泄漏所造成的区块链程序被第三方恶意获取、运行、破解和攻击的问题,进而提高了区块链程序的运行安全。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种区块链程序的访问系统的架构示意图;
图2是本申请实施例提供的一种区块链程序的访问方法的流程示意图;
图3是本申请实施例提供的一种访问区块链程序的示意图;
图4是本申请实施例提供的另一种区块链程序的访问方法的流程示意图;
图5是本申请实施例提供的一种生成授权码的过程示意图;
图6是本申请实施例提供的一种校验授权码的过程示意图;
图7是本申请实施例提供的一种申请和校验授权码的过程示意图;
图8是本申请实施例提供的一种区块链程序的访问装置的结构示意图;
图9是本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
区块链底层平台可以包括管理模块、基础服务模块、智能合约模块以及监测模块等。其中,管理模块负责管理所有区块链的使用者的身份信息,包括维护公私钥生成(账户管理)、密钥管理以及使用者真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,可以监管和审计某些真实身份的交易情况;基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;监测模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监测网络情况、监测节点设备健康状态等。
一般来说,区块链可以分为公有区块链(Public Block Chains,又称公有链)、联合(行业)区块链(Consortium Block Chains,又称联盟链)和私有区块链(Private BlockChains,又称私有链)。其中,公有链是指世界上任何个体或者团体都可以发送交易,且交易能够获得该区块链的有效确认,任何个体或者团体都可以加入其共识过程;联盟链是指由某个群体内部指定多个预选的网络节点为记账者,每个块的生成由所有的预选节点共同决定(预选节点加入共识过程),其他接入节点可以加入交易,但不过问记账过程(本质上还是托管记账,只是变成分布式记账,预选节点的多少,如何决定每个块的记账者成为该区块链的主要问题),其他任何个体或者团体可以通过该区块链开放的API进行限定查询,也就是说只有通过许可之后才可以访问联盟链;私有链是指使用区块链的总账技术进行记账,可以限定某个一个公司,或者个体,独享该区块链的写入权限。
由此可见,联盟链、私有链与公有链不同,并不是面向所有公众开放的,而是会筛选进入区块链的网络节点,有着严格的准入机制,会对要加入链的网络节点的身份进行审核和验证。其中,区块链的准入机制主要是通过证书管理机构(Certification Authority,CA)或者链管理委员会来审核和验证的,被准许加入区块链的对象可以通过自己的私钥在终端设备上去访问区块链程序。具体来说,在被准许作为区块链的网络节点之后,该网络节点可以由上述的区块链底层平台中的管理模块进行管理,通过该网络节点访问区块链以及在区块链上进行交易的行为可以通过上述的区块链底层平台中的基础服务模块和智能合约模块来实现,此外,上述的区块链底层平台中的监测模块会持续监测该网络节点。
基于此,本申请提出了一种区块链程序的访问方法,该方法应用于终端设备中,终端设备存储有授权管理平台发送给终端设备的关于区块链程序的授权信息,而授权信息是授权管理平台基于授权管理平台的私钥,以及被确定允许作为预设私有链网络中的网络节点的目标终端设备的第二设备标识信息生成的,因此通过校验授权信息的方式可以确定终端设备是否具备访问区块链程序的资格。所以在终端设备检测到对区块链程序的访问请求时,需要获取终端设备存储的授权信息,以及终端设备的第一设备标识信息;然后,通过对授权信息进行解析处理,得到授权信息中含有的具备访问区块链程序的资格的目标终端设备的第二设备标识信息;最后,终端设备需要比较第一设备标识信息与第二设备标识信息是否相同,若相同,则说明终端设备就是目标终端设备,具备访问区块链程序的资格,因此终端设备可以开始访问区块链程序;若不相同,则说明终端设备不是目标终端设备,不具备访问区块链程序的资格,因此终端设备不能访问区块链程序。其中,访问区块链程序也就是访问预设私有链网络,所述预设私有链网络可以是联盟链网络、私有链网络等。所述第一设备标识信息和第二设备标识信息等设备标识信息指的是能够标识终端设备的唯一性的信息,不同终端设备的设备标识信息不同。
不难看出,采用上述区块链程序的访问方法,终端设备在访问区块链程序之前,需要比较终端设备的第一设备标识信息,是否与终端设备对授权信息进行解析处理所得到的第二设备标识信息相同,只有第一设备标识信息和第二设备标识信息相同,终端设备才能够访问区块链程序。由于第二设备标识信息标识的是被确定允许作为预设私有链网络中的网络节点的目标终端设备,故而访问区块链程序的前提条件是终端设备已经被允许作为预设私有链网络中的网络节点之一。也就是说,只有特定的预先已经被允许进入预设私有链网络的终端设备才能访问区块链程序,而由于被允许进入预设私有链网络的终端设备一般都是由申请该终端设备进入预设私有链网络的对象所拥有的,因此当授权信息通过拷贝、病毒等方式被第三方恶意获取时,第三方使用的终端设备的设备标识信息也很难与恶意获取到的授权信息中的设备标识信息相同,因此第三方无法访问区块链程序,从而避免了由于私钥等信息泄漏所造成的区块链程序被第三方恶意获取、运行、破解和攻击的问题,进而提高了区块链程序的运行安全。
此外,所述授权管理平台指的是管理区块链的网络节点的平台。举例来说,授权管理平台可以是上述提及的CA机构或者链管理委员会等具有管理区块链的网络节点功能的权威机构。具体来说,授权管理平台可以运行在服务器中,可以是一个网页,也可以是一个应用程序、软件等,在此不限定。而授权信息是授权管理平台生成的,授权信息可以是一段代码、一段数字、一段字符等,在此不限定。可选的,当授权信息是一段字符时,也可以被称为授权码。此外,公钥和私钥一般成对出现,公钥和私钥都是密钥,公开的密钥叫公钥,只有自己知道的叫私钥。用公钥加密的数据只有对应的私钥可以解密,而用私钥加密的数据只有对应的公钥可以解密。由于授权管理平台的私钥是只有授权管理平台官方知道的,以及授权管理平台的私钥所加密的信息只有授权管理平台的公钥能解开,因此基于授权管理平台的私钥生成的授权信息是不能造假的,具有可信性。
基于上述区块链程序的访问方法,本申请实施例提供了一种区块链程序的访问系统,可参见图1,图1所示的区块链程序的访问系统可以包括多个终端设备101和多个服务器102,任一终端设备和任一服务器之间均建立有通信连接。其中,终端设备101可以包括智能手机、平板电脑、笔记本电脑、台式计算机、安装在车辆上的智能终端以及智能可穿戴设备中的任意一种或多种。终端设备内可运行各式各样的客户端(application,APP),如多媒体播放客户端、社交客户端、浏览器客户端、信息流客户端、教育客户端,等等。服务器102可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备101以及服务器102之间可以通过有线或无线通信方式进行直接或间接地通信连接,本申请在此不做限制。
在一个实施例中,上述区块链程序的访问方法可以仅由图1所示的区块链程序的访问系统中的终端设备来执行,具体执行过程为:当终端设备101检测到对区块链程序的访问请求时,获取关于区块链程序的授权信息,以及终端设备101的第一设备标识信息;然后,终端设备101对所述授权信息进行解析处理,得到所述目标终端设备的第二设备标识信息,若所述第一设备标识信息与所述第二设备标识信息相同,则终端设备101访问所述区块链程序。可选的,上述多媒体处理方法也可以仅由图1所示的区块链程序的访问系统中的服务器执行,其具体执行过程可参见终端设备的具体执行过程,在此不限定。
在另一个实施例中,上述区块链程序的访问方法可以运行在区块链程序的访问系统中,区块链程序的访问系统可以包括终端设备和服务器,其中,所述多媒体处理方法可由图1所示的区块链程序的访问系统中所包含的终端设备101和运行有授权管理平台的服务器102来共同完成,具体执行过程为:服务器102在确定允许目标终端设备作为预设私有链网络中的网络节点时,基于所述授权管理平台的私钥和所述目标终端设备的第二设备标识信息生成授权信息;然后,服务器102将授权信息发送至终端设备101,终端设备101在接收到所述授权信息之后,将授权信息进行存储。当终端设备101检测到对区块链程序的访问请求时,获取关于区块链程序的授权信息,以及终端设备101的第一设备标识信息;然后,终端设备101对所述授权信息进行解析处理,得到所述目标终端设备的第二设备标识信息,若所述第一设备标识信息与所述第二设备标识信息相同,则终端设备101访问所述区块链程序。
请参见图2,图2是本申请实施例提供的一种区块链程序的访问方法的示意流程图。该区块链程序的访问方法可以由上述提及的终端设备执行,如图2所示,该区块链程序的访问方法包括步骤S201-S203:
S201,在检测到对区块链程序的访问请求时,获取关于区块链程序的授权信息,以及终端设备的第一设备标识信息。
在本申请实施例中,所述访问请求指的是启动和运行区块链程序的请求。所述检测对区块链程序的访问请求的方式可以是:响应终端设备的使用对象对区块链程序的点击操作,生成对区块链程序的访问请求;也可以是通过预先设置的用于访问区块链程序的应用程序接口(Application Programming Interface,API)进行检测,在此不限定。
此外,所述授权信息存储在终端设备中,授权信息是授权管理平台发送至终端设备的,所述授权信息是授权管理平台在确定允许目标终端设备作为预设私有链网络中的网络节点时,基于授权管理平台的私钥和目标终端设备的第二设备标识信息生成的。可选的,所述授权信息可以存储在终端设备中的指定地址,示例性地,所述指定地址可以是类似“d:\Documents\HardWork”的文件路径。
需要说明的是,由于在区块链的准入机制中,会需要对申请授权信息进行审核,也相当于对目标对象的申请授权信息,以及如身份信息之类的其他授权相关信息的进行验证。因此,除了接收申请授权信息,以及发送授权信息的授权管理平台之外,也可能存在专门的审核机构,在授权管理平台接收了申请授权信息之后,会对申请授权信息,以及其他授权相关信息进行审核;在审核机构审核通过后,会向授权管理平台发送审核信息,然后授权管理平台就可以通过该审核信息确定允许终端设备作为预设私有链网络中的网络节点。可选的,授权管理平台也同时可以承担审核机构的功能,在此不赘述。
另外,所述获取第一设备标识信息的方式可以是通过设备标识读取程序或软件读取出终端设备的设备标识信息,也可以是直接通过“设备管理器”等终端设备中运行的系统所包含的系统功能进行查询得到。由于上述提及设备标识信息指的是能够标识终端设备的唯一性的信息,因此具体来说,所述第一设备标识信息可以是通用唯一识别码(Universally Unique Identifier,UUID)、终端设备的系统产品序列号(Serial Number,也称SN序列号)、终端设备的主板产品序列号、终端设备的硬盘产品序列号、CPU ID(即中央处理器的处理器身份标识码)等终端设备具有唯一性的硬件特征值。
S202,对授权信息进行解析处理,得到目标终端设备的第二设备标识信息。
在本申请实施例中,由于步骤S201提及授权信息是可以由授权管理平台发送至终端设备的,故而授权信息可以是按照预设传输协议进行数据封装后的数据包。因此,所述对授权信息进行解析处理的方式可以是按照预设传输对授权信息对应的数据包进行数据解封处理,从而得到所述第二设备标识信息。其中,所述预设传输协议可以是TCP/IP协议(TCP:传输控制协议;UDP:用户数据包协议)、文件传输协议(File Transfer Protocol,FTP)等,在此不限定。
此外,步骤S201中还提及了授权信息是基于授权管理平台的私钥和目标终端设备的第二设备标识信息生成的,而私钥一般是用于对信息进行加密处理的。因此当授权信息是通过授权管理平台的私钥,对第二设备标识信息进行加密处理后生成的时,所述对授权信息进行解析处理的方式可以是通过授权管理平台的公钥,对授权信息进行解密处理,得到所述第二设备标识信息。另外,所述第二设备标识信息与所述第一设备标识信息都是设备标识信息,因此第二设备标识信息的说明可以参见步骤S201中关于第一设备标识信息的说明,在此不赘述。
S203,若第一设备标识信息与第二设备标识信息相同,则访问区块链程序。
在本申请实施例中,由于步骤S201中提及设备标识信息可以是通用唯一识别码、终端设备的系统产品序列号等字符串,因此判断第一设备标识信息与第二设备标识信息是否相同的方式具体可以是:比较第一设备标识信息中的各个字符和各个字符对应的排列顺序,是否与第二设备标识信息中的各个字符和各个字符对应的排列顺序相同。若各个字符和各个字符对应的排列顺序均相同,那么就可以确定第一设备标识信息与第二设备标识信息相同,从而开始访问区块链程序;若存在任一字符,或者任一字符对应的排列顺序不同,则可以确定第一设备标识信息与第二设备标识信息不相同,从而不能访问区块链程序。
举例来说,请参见附图3,示出了一种访问区块链程序的示意图。区块链程序的链管理委员会301(即授权管理平台)将授权码A、B、C分别发送至终端设备302、终端设备303和终端设备304。当终端设备302检测到对区块链程序的访问请求时,终端设备302判断出对授权码A进行解析处理后得到的设备标识信息,与终端设备302的设备标识信息305不同,因此终端设备302不能访问区块链程序。当终端设备303检测到对区块链程序的访问请求时,终端设备303判断出对授权码B进行解析处理后得到的设备标识信息,与终端设备303的设备标识信息306相同,因此终端设备303可以访问区块链程序。当终端设备304检测到对区块链程序的访问请求时,终端设备304判断出对授权码C进行解析处理后得到的设备标识信息,与终端设备304的设备标识信息307相同,因此终端设备304可以访问区块链程序。
在本申请实施例中,通过在检测到对区块链程序的访问请求时,从终端设备中获取区块链程序的授权信息,并对授权信息进行解析处理,得到第二设备标识信息;以及只有判断出终端设备的第一设备标识信息与第二设备标识信息相同,终端设备才能够访问区块链程序的方式,可以确定出终端设备想要访问区块链程序的必要条件是终端设备中存储有关于区块链程序的授权信息,以及对该授权信息进行解析处理后的第二设备标识信息需要与终端设备的第一设备标识信息相同。由于第二设备标识信息标识的是被确定允许作为预设私有链网络中的网络节点的目标终端设备,综上可知,不是所有终端设备有了授权信息就可以访问区块链程序,只有特定的预先已经被允许进入预设私有链网络的终端设备才能访问区块链程序。由于在实际应用中,被允许进入预设私有链网络的终端设备一般都是由申请该终端设备进入预设私有链网络的对象所拥有,且终端设备的标识信息具有唯一性,因此当授权信息通过拷贝、病毒等方式被第三方恶意获取时,第三方使用的终端设备的设备标识信息也很难与恶意获取到的授权信息中的设备标识信息相同,故而无法访问区块链程序,从而避免了由于私钥等信息泄漏所造成的区块链程序被第三方恶意获取、运行、破解和攻击的问题,进而提高了区块链程序的运行安全。
请参见图4,图4是本申请实施例提供的另一种区块链程序的访问方法的示意流程图,该区块链程序的访问方法也可以由上述提及的区块链程序的访问系统中的终端设备和服务器来执行,其中服务器中运行有授权管理平台。如图4所示,该区块链程序的访问方法包括步骤S401-S407:
S401,终端设备将申请授权信息发送至授权管理平台。
S402,授权管理平台在确定允许终端设备作为预设私有链网络中的网络节点时,基于授权管理平台的私钥、申请授权信息和授权信息的待生成时间生成授权信息。
在步骤S401至步骤S402中,所述申请授权信息中可以包括终端设备的第一设备标识信息,以及申请授权时长。那么,所述授权信息可以是基于授权管理平台的私钥、终端设备的第一设备标识信息,申请授权时长以及授权信息的待生成时间生成的。可选的,授权信息的生成过程可以是:先将第一设备标识信息、申请授权时长以及待生成时间进行拼接处理,得到拼接信息;然后再通过授权管理平台的私钥对该拼接信息进行数字签名处理,得到一个签名信息;最后,将拼接信息和签名信息进行组合,得到授权信息。需要说明的是,后续所有授权管理平台的私钥的作用都是对信息进行数字签名处理,不再赘述。
可选的,为了避免授权信息中的设备标识信息被篡改,授权信息的生成过程也可以是:先通过预设加密算法对第一设备标识信息进行加密处理,得到加密处理后的第一设备标识信息,再将加密处理后的第一设备标识信息、申请授权时长以及待生成时间进行拼接处理,得到目标拼接信息;然后通过授权管理平台的私钥对目标拼接信息进行数字签名处理,得到一个目标签名信息;最后,将目标拼接信息和目标签名信息进行组合,得到授权信息。其中,所述预设加密算法可以是AES(Advanced Encryption Standard,高级加密标准)、PBE(Password Based Encryption,基于口令加密)等加密算法,在此不限定。
可选的,为了方便计算机等终端设备能够读取授权信息,适应如Windows(由美国微软公司(Microsoft)研发的操作系统)、Darwin(由苹果电脑于2000年开发的一个开放原始码操作系统)、Linux(GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统)等多平台的需求,可以将授权信息的数据格式转换为终端设备能够读取的数据格式。其中,数据格式转化的方式可以是对授权信息进行序列化处理,如Json(一种轻量级的数据交换格式)序列化、Protobuff(一种用于序列化结构数据的工具,实现数据的存储与交换)序列化等,在此不限定。举例来说,授权信息原本是一个字符字段,为了方便计算机设备的SMBIOS(System Management BIOS,主板或系统制造者以标准格式显示产品管理信息所需遵循的统一规范,具体定义了计算机BIOS管理信息的数据结构和访问方法)进行存储和读取,可以对授权信息进行Json序列化处理,使得授权信息从变成一个方便读取的字节序列。
其中,所述申请授权时长可以是终端设备响应目标对象(即待加入区块链的对象)的编辑操作生成的。具体来说,编辑操作可以是添加、删除、选择等操作,在此不限定。举例来说,终端设备可以输出一个申请授权页面,所述申请授权页面可以包括待填写的申请时长、申请设备标识等,然后目标对象会在申请授权页面编辑或者填写申请时长、申请设备标识等信息,最后终端设备根据目标对象填写的信息生成所述申请授权信息。此外,所述申请授权信息中的申请授权时长可以是具体的时间段,如2年、3个月等,申请授权时长也可以是具有时间含义的字符,如设定1的含义是1年,0的含义是无限期,b的含义是2个月等。另外,所述授权信息的待生成时间指的是授权管理平台预估的生成授权信息的时间。
具体实现中,请参见附图5,示出了一种生成授权码的过程示意图,授权码(即授权信息)由硬件ID、有效期和签名这三个字段进行Json序列化之后得到。其中,硬件ID字段指的是系统UUID、系统SN序列号等设备标识信息;有效期字段可以通过申请授权时长和待生成时间确定,例如申请授权时长为2年,待生成时间为2022年5月6日10:00,那么,可以确定有效期为2022年5月6日10:00~2023年5月6日10:00;签名字段是先将硬件ID和有效期进行拼接处理,得到一个拼接字段,然后通过授权管理平台的私钥,对该拼接字段进行数字签名,得到所述签名字段。
在另一个实施例中,所述申请授权信息中可以只包括终端设备的第一设备标识信息,但授权管理平台中存在预设授权时长。那么,所述授权信息可以是基于授权管理平台的私钥、终端设备的第一设备标识信息,预设授权时长以及授权信息的待生成时间生成的。其中,所述预设授权时长指的是授权管理平台预先设定的终端设备被允许作为预设私有链网络中的网络节点的最长时间。授权管理平台通过设定预设授权时长的方式,可以方便对预设私有链网络中的网络节点进行管理,由于各个网络节点每隔预设授权时长之后就不能再访问区块链程序,仍然需要访问区块链程序的终端设备会重新提交申请授权信息,不再需要访问区块链程序的终端设备则不会再重新申请,从而方便授权管理平台确认预设私有链网络中是否存在冗余的网络节点。此外,如果一些终端设备提交的申请授权信息中没有申请授权时长,预设授权时长也可以相当于申请授权时长,从而方便授权管理平台生成授权信息。
可选的,所述申请授权信息中可以包括终端设备的第一设备标识信息,以及申请授权时长,但同时授权管理平台中也存在预设授权时长。那么,只有在授权管理平台在确定允许终端设备作为预设私有链网络中的网络节点,以及申请授权时长小于或等于预设授权时长时,授权管理平台才可以基于授权管理平台的私钥、终端设备的第一设备标识信息,申请授权时长以及授权信息的待生成时间生成授权信息。
举例来说,如果授权管理平台中的预设授权时长为2年3个月,而申请授权信息中的申请授权时长为2年6个月,由于申请授权时长大于预设授权时长,因此即便授权管理平台确定终端设备可以作为预设私有链网络中的网络节点,授权管理平台也不能基于授权管理平台的私钥、终端设备的第一设备标识信息,申请授权时长以及授权信息的待生成时间生成授权信息。可选的,申请授权时长大于预设授权时长时,授权管理平台可以向终端设备发送申请授权时长不合格的提示信息,以提示终端设备的目标对象重新编辑申请授权时长。可选的,申请授权时长大于预设授权时长时,授权管理平台也可以直接基于授权管理平台的私钥、终端设备的第一设备标识信息,预设授权时长以及授权信息的待生成时间生成授权信息,在此不限定。
进一步的,授权管理平台可以针对不同授权权限的终端设备,设定不同的授权时长。举例来说,终端设备A在区块链中担任核心管理员的角色,则可以设定终端设备A的授权权限对应的授权时长为无限期,也就是一旦授权成功,终端设备A就可以永久访问区块链程序;终端设备B在区块链中担任记账员的角色,则可以设定终端设备B的授权权限对应的授权时长为3年;终端设备C在区块链中担任普通使用者的角色,则可以设定终端设备C的授权权限对应的授权时长为1年。
因此,当申请授权信息仅包括终端设备的第一设备标识信息时,授权管理平台可以获取该终端设备的授权权限对应的授权时长,然后基于授权管理平台的私钥、第一设备标识信息、授权权限对应的授权时长和授权信息的待生成时间生成授权信息。可选的,所述申请授权信息中可以包括终端设备的第一设备标识信息,以及申请授权时长,但同时授权管理平台中也针对不同授权权限的终端设备,设定了不同的授权时长。那么,只有在授权管理平台在确定允许终端设备作为预设私有链网络中的网络节点,以及申请授权时长小于或等于终端设备的授权权限对应的授权时长时,授权管理平台才可以基于授权管理平台的私钥、终端设备的第一设备标识信息,申请授权时长以及授权信息的待生成时间生成授权信息。
S403,授权管理平台将授权信息发送至终端设备。
S404,终端设备存储授权信息。
在本申请实施例中,所述终端设备可以将授权信息存储至本地数据库或者本地存储器或者远程存储器,在此不限定。此外,授权管理平台与终端设备之间传输授权信息的方式为本领域技术人员所惯用的技术手段,在此不赘述。
S405,终端设备在检测到对区块链程序的访问请求时,获取关于区块链程序的授权信息,以及终端设备的第一设备标识信息。
其中,步骤S405的具体实施方式可以参见步骤S201中的具体实施方式,本申请在此不作赘述。
S406,对授权信息进行解析处理,得到目标终端设备的第二设备标识信息。
S407,若第一设备标识信息与第二设备标识信息相同,则访问区块链程序。
需要说明的是,由于授权信息是基于终端设备发送至授权管理平台的申请授权信息生成的,而申请授权信息中的设备标识信息为终端设备的第一设备标识信息,故而此时的第一设备标识信息与第二设备标识信息相同,终端设备也就是所述目标终端设备。
在本申请实施例中,由于步骤S402中提及授权信息可以是基于授权管理平台的私钥、终端设备的第一设备标识信息,申请授权时长以及授权信息的待生成时间生成的;那么对授权信息进行解析处理,不仅能得到目标终端设备的第二设备标识信息,也能进一步得到申请授权时长以及授权信息的待生成时间。那么,在判断出第一设备标识信息与第二设备标识信息相同之后,还可以确定当前系统时间,并进一步对授权信息进行解析处理,得到申请授权时长以及授权信息的待生成时间;然后,获取当前系统时间与待生成时间之间的第三差值,若所述第三差值小于申请授权时长,则访问区块链程序。其中,所述当前系统时间可以是判断出第一设备标识信息与第二设备标识信息相同时的时间,也可以是预估的待访问区块链程序的时间,在此不限定。所述第三差值可以是一个时间段,也可以是一个具体的数值,如1年、2等,在此不限定。
另外,由步骤S402可知,可以通过申请授权时长和授权信息的待生成时间确定出授权信息的有效期。因此,可选的,在判断出第一设备标识信息与第二设备标识信息相同之后,还可以确定当前系统时间,并进一步对授权信息进行解析处理,得到授权信息的有效期;若当前系统时间在有效期内,则访问区块链程序。具体来说,在判断出终端设备具备访问区块链程序的资格之后,还需要进一步判断终端设备访问区块链程序的资格是否在有效期内。
具体实现中,请参见附图6,示出了一种校验授权码的过程示意图,从附图5可知,授权码是由硬件ID、有效期和签名这三个字段进行Json序列化之后所得到。之后,授权管理平台N将授权码发送至终端设备M,在终端设备M对授权码进行Json反序列化之后,可以得到硬件ID、有效期和签名。然后,开始校验授权码中的硬件ID是否与终端设备M的硬件ID相同,当前系统时间是否在有效期内,以及是否能通过授权管理平台N的公钥对签名进行解密。在确定授权码中的硬件ID与终端设备M的硬件ID相同、当前系统时间在有效期内,以及能通过授权管理平台N的公钥对签名进行解密后,可以确定授权码校验成功,从而可以通过终端设备M访问区块链程序。
需要说明的是,本申请实施例中对校验硬件ID(即设备标识信息)、校验有效期(或者预设授权时长)、校验签名的顺序不作限制,可以是先校验有效期,再校验硬件ID,最后校验签名,在此不限定。
在一个实施例中,由于步骤S402中提及授权信息可以是基于授权管理平台的私钥、终端设备的第一设备标识信息,预设授权时长以及授权信息的待生成时间生成的;那么对授权信息进行解析处理,不仅能得到目标终端设备的第二设备标识信息,也能进一步得到预设授权时长以及授权信息的待生成时间。那么,在判断出第一设备标识信息与第二设备标识信息相同之后,还可以确定当前系统时间,并进一步对授权信息进行解析处理,得到预设授权时长以及授权信息的待生成时间;然后,获取当前系统时间与待生成时间之间的第一差值,若所述第一差值小于预设授权时长,则访问区块链程序。其中,所述第一差值可以是一个时间段,也可以是一个具体的数值,如1年、2等,在此不限定。
在一种可能的实现方式中,确定出第一差值小于预设授权时长之后,终端设备还可以进一步确定第一差值和预设授权时长之间的第二差值;当第二差值小于第一预设差值时,终端设备可以自动获取第一设备标识信息,以生成申请授权信息;然后,终端设备重新向授权管理平台发送包括第一设备标识信息的申请授权信息,以使授权管理平台在确定允许终端设备作为预设私有链网络中的网络节点时,基于授权管理平台的私钥和第一设备标识信息生成新的授权信息(或者授权管理平台的私钥、第一设备标识信息和预设授权时长生成新的授权信息);最后,终端设备接收授权管理平台发送的新的授权信息,并将授权信息更新为新的授权信息。其中,所述第一预设差值可以是一个时间段,也可以是一个具体的数值,如3个月、2天、12等,在此不限定。
举例来说,当第一差值为2年3个月,预设授权时长为2年5个月,第一预设差值为3个月时;由于预设授权时长与第一差值之间的第二差值为2个月,小于3个月,那么终端设备可以自动获取终端设备的第一设备标识信息,以生成申请授权信息;并将申请授权信息发送至授权管理平台,以获得新的授权信息。具体来说,就是当终端设备发现授权信息快要过期的时候,可以自动生成申请授权信息,并将申请授权信息发送至授权管理平台,以获得新的授权信息。此外,除了可以在终端设备校验授权信息时,检查授权信息是否快要过期之外,也可以每隔预设时间段就检查授权信息是否快要过期,在此不限定。其中,预设时间段可以是2天、一个星期、3个月等,在此不限定。
在一种可能的实现方式中,确定出第一差值小于预设授权时长之后,终端设备还可以进一步确定第一差值和预设授权时长之间的第二差值;当第二差值小于第二预设差值时,终端设备可以输出提示信息,所述提示信息用于提示重新申请区块链程序的授权信息;然后,终端设备接收目标对象提交的授权信息申请请求,其中授权信息申请请求是目标对象响应提示信息所提交的;之后,终端设备响应授权信息申请请求,重新向授权管理平台发送申请授权信息,申请授权信息包括第一设备标识信息,以使授权管理平台在确定允许终端设备作为预设私有链网络中的网络节点时,基于授权管理平台的私钥和第一设备标识信息生成新的授权信息(或者授权管理平台的私钥、第一设备标识信息和预设授权时长生成新的授权信息);最后,终端设备接收授权管理平台发送的新的授权信息,并将授权信息更新为新的授权信息。具体来说,就是当终端设备发现授权信息快要过期的时候,可以生成提示信息,以提示目标对象重新去申请授权信息。所述提示信息可以是类似“您的授权码即将过期,请尽快重新申请授权码”或“距离授权码过期还有2天,请尽快重新申请授权码”的句子,在此不限定。此外,除了可以在终端设备校验授权信息时,检查授权信息是否快要过期之外,也可以每隔预设时间就检查授权信息是否快要过期,在此不限定。
具体实现中,请参见附图7,示出了一种申请和校验授权码的过程示意图。设定距离授权码过期还剩10天时,确定授权码即将过期。终端设备701向授权管理平台702发送申请授权信息,其中,申请授权信息包括终端设备701的硬件ID(即设备标识信息),以及申请授权时长;然后授权管理平台702基于授权管理平台702的秘钥,硬件ID(即设备标识信息),以及申请授权时长,生成授权码,并发送至终端设备701。终端设备701接收到授权码后,可以将授权码存储在“C:\Users\Administrator\shouquanma”这个文件路径中。
当终端设备701检测到关于区块链程序的访问请求时,终端设备701通过关于区块链程序的启动模块从“C:\Users\Administrator\shouquanma”中读取出授权码。然后,终端设备701通过启动模块对授权码进行校验,具体校验过程可以参见附图6中校验授权码的过程,在此不赘述。若终端设备701通过启动模块确定授权码校验失败,则终端设备701可以退出启动模块,并在终端设备701的显示屏幕中显示对授权码进行解析处理后所得到的硬件ID,以便使用终端设备701的对象换与授权码的硬件ID一致的终端设备去访问区块链程序。
若终端设备701通过启动模块确定授权码校验失败,则终端设备701可以通过启动模块继续判断授权码是否即将过期,判断的具体过程可以为:获取当前系统时间,确定当前系统时间,与对授权码进行解析处理后所得到有效期中的结束时间之间的差值是否小于10天,若小于10天,则确定授权码即将过期,进而由终端设备701输出提示信息,提示重新申请授权码,并在输出提示信息之后访问区块链程序;若大于10天,则确定授权码没有即将过期,进而正常访问区块链程序。此外,在启动模块还可以每个1天检查授权码是否即将过期,若启动模块确定授权码即将过期,则输出提示信息,以提示重新申请授权码。
在一种可能的实现方式中,步骤S401也可以由除终端设备之外的第三方终端设备执行,由该第三方终端设备向授权管理平台提交申请授权信息,所述申请授权信息中可以包括终端设备的第一设备标识信息、申请授权时长等。然后授权管理平台生成授权信息之后,可以将授权信息发送给所述第三方终端设备,再由该第三方终端设备发送至终端设备。可选的,也可以是授权管理平台直接发送至终端设备,在此不限定。
本申请实施例中,授权信息是基于授权管理平台的私钥、申请授权信息以及授权信息的待生成时间生成的,由于申请授权信息中可以包括设备标识信息和申请授权时长,或者授权管理平台中有预设授权时长,因此对生成的授权信息进行解析处理后,除了设备标识信息之外,还存在可以确定出授权信息的有效期的待生成时间、以及申请授权时长或者预设授权时长。而通过校验授权信息是否在有效期的方式,可以使得终端设备每隔一段时间就需要重新申请授权信息,以便于授权管理平台每隔一段时间就可以重新审核终端设备是否具备访问区块链程序的资格,是否能够被允许作为预设私有链网络中的网络节点,在方便授权管理平台对预设私有链网络中的网络节点进行管理的同时,也便于授权管理平台能够及时剔除存在潜在危险的网络节点。此外,本申请实施例中只有特定的预先已经被允许进入预设私有链网络的终端设备才能访问区块链程序。由于在实际应用中,被允许进入预设私有链网络的终端设备一般都是由申请该终端设备进入预设私有链网络的对象所拥有,且终端设备的标识信息具有唯一性,因此当授权信息通过拷贝、病毒等方式被第三方恶意获取时,第三方使用的终端设备的设备标识信息也很难与恶意获取到的授权信息中的设备标识信息相同,故而无法访问区块链程序,从而避免了由于私钥等信息泄漏所造成的区块链程序被第三方恶意获取、运行、破解和攻击的问题,进而提高了区块链程序的运行安全。
基于上述区块链的访问方法的相关描述,本申请还公开了一种区块链的访问装置。该区块链的访问装置可以是运行与上述所提及的计算机设备中的一个计算机程序(包括程序代码)。该区块链的访问装置可以执行如图2和图4所示的区块链的访问方法,请参见图8,该区块链的访问装置至少可以包括:获取单元801和处理单元802。
所述获取单元801,用于在检测到对区块链程序的访问请求时,获取关于区块链程序的授权信息,以及终端设备的第一设备标识信息,授权信息存储在终端设备中,授权信息是授权管理平台发送至终端设备的,授权信息是授权管理平台在确定允许目标终端设备作为预设私有链网络中的网络节点时,基于授权管理平台的私钥和目标终端设备的第二设备标识信息生成的;
所述处理单元802,用于对授权信息进行解析处理,得到目标终端设备的第二设备标识信息;
所述处理单元802,还用于若第一设备标识信息与第二设备标识信息相同,则访问区块链程序。
在一种实施方式中,所述授权信息是授权管理平台基于授权管理平台的私钥、目标终端设备的第二设备标识信息、预设授权时长和授权信息的待生成时间生成的;所述处理单元802在若第一设备标识信息与第二设备标识信息相同,则访问区块链程序时,具体还可以用于执行:
若第一设备标识信息与第二设备标识信息相同,则确定当前系统时间;
对授权信息进行解析处理,得到授权信息的有效期;
若当前系统时间在有效期内,则访问区块链程序。
在又一种实施方式中,所述授权信息是授权管理平台基于授权管理平台的私钥、目标终端设备的第二设备标识信息、预设授权时长和授权信息的待生成时间生成的;所述处理单元802在若第一设备标识信息与第二设备标识信息相同,则访问区块链程序时,可以具体用于执行:
若第一设备标识信息与第二设备标识信息相同,则确定当前系统时间;
对授权信息进行解析处理,得到预设授权时长和授权信息的待生成时间;
获取当前系统时间和待生成时间的第一差值;
若第一差值小于预设授权时长,则访问区块链程序。
在又一种实施方式中,所述处理单元802还可以用于执行:
确定第一差值和预设授权时长之间的第二差值;
当第二差值小于第一预设差值时,获取终端设备的第一设备标识信息;
重新向授权管理平台发送申请授权信息,申请授权信息包括第一设备标识信息,以使授权管理平台在确定允许终端设备作为预设私有链网络中的网络节点时,基于授权管理平台的私钥和第一设备标识信息生成新的授权信息;
接收授权管理平台发送的新的授权信息,并将授权信息更新为新的授权信息。
在又一种实施方式中,所述处理单元802还可以用于执行:
确定第一差值与预设授权时长之间的第二差值;
当第二差值小于第二预设差值时,输出提示信息,提示信息用于提示重新申请区块链程序的授权信息;
接收目标对象提交的授权信息申请请求,授权信息申请请求是目标对象响应提示信息所提交的;
响应授权信息申请请求,重新向授权管理平台发送申请授权信息,申请授权信息包括第一设备标识信息,以使授权管理平台在确定允许终端设备作为预设私有链网络中的网络节点时,基于授权管理平台的私钥和第一设备标识信息生成新的授权信息;
接收授权管理平台发送的新的授权信息,并将授权信息更新为新的授权信息。
在又一种实施方式中,申请授权信息还包括申请授权时长,授权信息是授权管理平台在确定允许终端设备作为预设私有链网络中的网络节点,且申请授权时长小于或等于预设授权时长时,基于授权管理平台的私钥、第一设备标识信息、申请授权时长和授权信息的待生成时间生成的。
在又一种实施方式中,授权信息是授权管理平台在确定允许终端设备作为预设私有链网络中的网络节点时,获取终端设备的授权权限对应的授权时长,并基于授权管理平台的私钥、第一设备标识信息、授权权限对应的授权时长和授权信息的待生成时间生成的。
在又一种实施方式中,申请授权信息还包括申请授权时长,授权信息是授权管理平台在确定允许终端设备作为预设私有链网络中的网络节点,且申请授权时长小于或等于终端设备的权限对应的授权时长时,基于授权管理平台的私钥、第一设备标识信息、申请授权时长和授权信息的待生成时间生成的。
根据本申请的一个实施例,图2和图4所示的方法所涉及各个步骤可以是由图8所示的区块链的访问装置中的各个单元来执行的。例如,图2所示的步骤S201可由图8所示的区块链的访问装置中的获取单元801来执行;步骤S202至步骤S203可由图8所示的区块链的访问装置中的处理单元802来执行。再如,图4所示的步骤S405可由图8所示的区块链的访问装置中的获取单元801来执行;步骤S401、步骤S404、步骤S406至步骤S407可由图8所示的区块链的访问装置中的处理单元802来执行。
根据本申请的另一个实施例,图8所示的区块链的访问装置中的各个单元是基于逻辑功能划分的,上述各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。在本申请的其它实施例中,上述基于区块链的访问装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
根据本申请的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机设备的通用计算设备上,运行能够执行如图2或图4所示的方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图8所示的区块链的访问装置,以及来实现本申请实施例的区块链的访问方法。计算机程序可以记载于例如计算机存储介质上,并通过计算机存储介质装载于上述计算机设备中,并在其中运行。
在本申请实施例中,通过在检测到对区块链程序的访问请求时,从终端设备中获取区块链程序的授权信息,并对授权信息进行解析处理,得到第二设备标识信息;以及只有判断出终端设备的第一设备标识信息与第二设备标识信息相同,终端设备才能够访问区块链程序的方式,可以确定出终端设备想要访问区块链程序的必要条件是终端设备中存储有关于区块链程序的授权信息,以及对该授权信息进行解析处理后的第二设备标识信息需要与终端设备的第一设备标识信息相同。由于第二设备标识信息标识的是被确定允许作为预设私有链网络中的网络节点的目标终端设备,综上可知,不是所有终端设备有了授权信息就可以访问区块链程序,只有特定的预先已经被允许进入预设私有链网络的终端设备才能访问区块链程序。由于在实际应用中,被允许进入预设私有链网络的终端设备一般都是由申请该终端设备进入预设私有链网络的对象所拥有,且终端设备的标识信息具有唯一性,因此当授权信息通过拷贝、病毒等方式被第三方恶意获取时,第三方使用的终端设备的设备标识信息也很难与恶意获取到的授权信息中的设备标识信息相同,故而无法访问区块链程序,从而避免了由于私钥等信息泄漏所造成的区块链程序被第三方恶意获取、运行、破解和攻击的问题,进而提高了区块链程序的运行安全。
基于上述的方法实施例以及装置实施例,本申请还提供了一种电子设备。参见图9,为本申请实施例提供的一种电子设备的结构示意图。图9所示的电子设备可至少包括处理器901、输入接口902、输出接口903以及计算机存储介质904。其中,处理器901、输入接口902、输出接口903以及计算机存储介质904可通过总线或其他方式连接。
计算机存储介质904可以存储在电子设备的存储器中,计算机存储介质904用于存储计算机程序,计算机程序包括程序指令,处理器901用于执行计算机存储介质904存储的程序指令。处理器901(或称CPU(Central Processing Unit,中央处理器))是电子设备的计算核心以及控制核心,其适于实现一条或多条指令,具体适于加载并执行一条或多条指令从而实现上述区块链的访问方法流程或相应功能。
本申请实施例还提供了一种计算机存储介质(Memory),计算机存储介质是电子设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机存储介质既可以包括终端中的内置存储介质,当然也可以包括终端所支持的扩展存储介质。计算机存储介质提供存储空间,该存储空间存储了终端的操作系统。并且,在该存储空间中还存放了适于被处理器901加载并执行的一条或多条的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的计算机存储介质可以是高速随机存取存储器(random access memory,RAM)存储器,也可以是非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器;可选的还可以是至少一个位于远离前述处理器的计算机存储介质。
在一个实施例中,可由处理器901加载并执行计算机存储介质中存放的一条或多条指令,以实现上述有关图2和图6的区块链的访问方法实施例中的方法的相应步骤,具体实现中,计算机存储介质中的一条或多条指令由处理器901加载并执行如下步骤:
处理器901在检测到对区块链程序的访问请求时,获取关于区块链程序的授权信息,以及终端设备的第一设备标识信息,授权信息存储在终端设备中,授权信息是授权管理平台发送至终端设备的,授权信息是授权管理平台在确定允许目标终端设备作为预设私有链网络中的网络节点时,基于授权管理平台的私钥和目标终端设备的第二设备标识信息生成的;
处理器901对授权信息进行解析处理,得到目标终端设备的第二设备标识信息;
处理器901若第一设备标识信息与第二设备标识信息相同,则访问区块链程序。
在一个实施例中,所述授权信息是授权管理平台基于授权管理平台的私钥、目标终端设备的第二设备标识信息、预设授权时长和授权信息的待生成时间生成的;所述处理器901在若第一设备标识信息与第二设备标识信息相同,则访问区块链程序时,具体还用于:若第一设备标识信息与第二设备标识信息相同,则确定当前系统时间;对授权信息进行解析处理,得到授权信息的有效期;若当前系统时间在有效期内,则访问区块链程序。
在一个实施例中,所述授权信息是所述授权管理平台基于所述授权管理平台的私钥、所述目标终端设备的第二设备标识信息、预设授权时长和所述授权信息的待生成时间生成的;处理器901在若第一设备标识信息与第二设备标识信息相同,则访问区块链程序时,具体用于执行:若第一设备标识信息与第二设备标识信息相同,则确定当前系统时间;对授权信息进行解析处理,得到预设授权时长和授权信息的待生成时间;获取当前系统时间和待生成时间的第一差值;若第一差值小于预设授权时长,则访问区块链程序。
在一个实施例中,处理器901还用于执行:确定第一差值和预设授权时长之间的第二差值;当第二差值小于第一预设差值时,获取终端设备的第一设备标识信息;重新向授权管理平台发送申请授权信息,申请授权信息包括第一设备标识信息,以使授权管理平台在确定允许终端设备作为预设私有链网络中的网络节点时,基于授权管理平台的私钥和第一设备标识信息生成新的授权信息;接收授权管理平台发送的新的授权信息,并将授权信息更新为新的授权信息。
在一个实施例中,处理器901还用于执行:确定第一差值和预设授权时长之间的第二差值;当第二差值小于第二预设差值时,输出提示信息,提示信息用于提示重新申请区块链程序的授权信息;接收目标对象提交的授权信息申请请求,授权信息申请请求是目标对象响应提示信息所提交的;响应授权信息申请请求,重新向授权管理平台发送申请授权信息,申请授权信息包括第一设备标识信息,以使授权管理平台在确定允许终端设备作为预设私有链网络中的网络节点时,基于授权管理平台的私钥和第一设备标识信息生成新的授权信息;接收授权管理平台发送的新的授权信息,并将授权信息更新为新的授权信息。
在一个实施例中,处理器901还用于执行:向授权管理平台发送申请授权信息,申请授权信息包括第一设备标识信息,以使授权管理平台在确定允许终端设备作为预设私有链网络中的网络节点时,基于授权管理平台的私钥和第一设备标识信息生成授权信息;接收授权管理平台发送的授权信息,并存储授权信息。
在一个实施例中,所述申请授权信息还包括申请授权时长,授权信息是授权管理平台在确定允许终端设备作为预设私有链网络中的网络节点,且申请授权时长小于或等于预设授权时长时,基于授权管理平台的私钥、第一设备标识信息、申请授权时长和授权信息的待生成时间生成的。
在一个实施例中,所述授权信息是授权管理平台在确定允许终端设备作为预设私有链网络中的网络节点时,获取终端设备的授权权限对应的授权时长,并基于授权管理平台的私钥、第一设备标识信息、授权权限对应的授权时长和授权信息的待生成时间生成的。
在一个实施例中,所述申请授权信息还包括申请授权时长,授权信息是授权管理平台在确定允许终端设备作为预设私有链网络中的网络节点,且申请授权时长小于或等于终端设备的权限对应的授权时长时,基于授权管理平台的私钥、第一设备标识信息、申请授权时长和授权信息的待生成时间生成的。
本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。电子设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该电子设备执行上述如图2和图4所示的方法实施例。其中,计算机可读存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
本发明实施例可应用于各种场景,包括但不限于区块链、云技术、人工智能、智慧交通、辅助驾驶等。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (13)

1.一种区块链程序的访问方法,其特征在于,所述方法应用于终端设备中,所述方法包括:
在检测到对区块链程序的访问请求时,获取关于所述区块链程序的授权信息,以及所述终端设备的第一设备标识信息,所述授权信息存储在所述终端设备中,所述授权信息是授权管理平台发送至所述终端设备的,所述授权信息是所述授权管理平台在确定允许目标终端设备作为预设私有链网络中的网络节点时,基于所述授权管理平台的私钥和所述目标终端设备的第二设备标识信息生成的;
对所述授权信息进行解析处理,得到所述目标终端设备的第二设备标识信息;
若所述第一设备标识信息与所述第二设备标识信息相同,则访问所述区块链程序。
2.根据权利要求1所述的方法,其特征在于,所述授权信息是所述授权管理平台基于所述授权管理平台的私钥、所述目标终端设备的第二设备标识信息、预设授权时长和所述授权信息的待生成时间生成的;
所述若所述第一设备标识信息与所述第二设备标识信息相同,则访问所述区块链程序,包括:
若所述第一设备标识信息与所述第二设备标识信息相同,则确定当前系统时间;
对所述授权信息进行解析处理,得到所述授权信息的有效期;
若所述当前系统时间在所述有效期内,则访问所述区块链程序。
3.根据权利要求1所述的方法,其特征在于,所述授权信息是所述授权管理平台基于所述授权管理平台的私钥、所述目标终端设备的第二设备标识信息、预设授权时长和所述授权信息的待生成时间生成的;
所述若所述第一设备标识信息与所述第二设备标识信息相同,则访问所述区块链程序,包括:
若所述第一设备标识信息与所述第二设备标识信息相同,则确定当前系统时间;
对所述授权信息进行解析处理,得到所述预设授权时长和所述授权信息的待生成时间;
获取所述当前系统时间和所述待生成时间的第一差值;
若所述第一差值小于所述预设授权时长,则访问所述区块链程序。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
确定所述第一差值和所述预设授权时长之间的第二差值;
当所述第二差值小于第一预设差值时,获取所述终端设备的第一设备标识信息;
重新向所述授权管理平台发送申请授权信息,所述申请授权信息包括所述第一设备标识信息,以使所述授权管理平台在确定允许所述终端设备作为所述预设私有链网络中的网络节点时,基于所述授权管理平台的私钥和所述第一设备标识信息生成新的授权信息;
接收所述授权管理平台发送的所述新的授权信息,并将所述授权信息更新为所述新的授权信息。
5.根据权利要求3所述的方法,其特征在于,所述方法还包括:
确定所述第一差值与所述预设授权时长之间的第二差值;
当所述第二差值小于第二预设差值时,输出提示信息,所述提示信息用于提示重新申请所述区块链程序的授权信息;
接收目标对象提交的授权信息申请请求,所述授权信息申请请求是所述目标对象响应所述提示信息所提交的;
响应所述授权信息申请请求,重新向所述授权管理平台发送申请授权信息,所述申请授权信息包括所述第一设备标识信息,以使所述授权管理平台在确定允许所述终端设备作为所述预设私有链网络中的网络节点时,基于所述授权管理平台的私钥和所述第一设备标识信息生成新的授权信息;
接收所述授权管理平台发送的所述新的授权信息,并将所述授权信息更新为所述新的授权信息。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
向所述授权管理平台发送申请授权信息,所述申请授权信息包括所述第一设备标识信息,以使所述授权管理平台在确定允许所述终端设备作为所述预设私有链网络中的网络节点时,基于所述授权管理平台的私钥和所述第一设备标识信息生成所述授权信息;
接收所述授权管理平台发送的所述授权信息,并存储所述授权信息。
7.根据权利要求6所述的方法,其特征在于,所述申请授权信息还包括申请授权时长,所述授权信息是所述授权管理平台在确定允许所述终端设备作为所述预设私有链网络中的网络节点,且所述申请授权时长小于或等于所述预设授权时长时,基于所述授权管理平台的私钥、所述第一设备标识信息、申请授权时长和所述授权信息的待生成时间生成的。
8.根据权利要求6所述的方法,其特征在于,所述授权信息是所述授权管理平台在确定允许所述终端设备作为预设私有链网络中的网络节点时,获取所述终端设备的授权权限对应的授权时长,并基于所述授权管理平台的私钥、所述第一设备标识信息、所述授权权限对应的授权时长和所述授权信息的待生成时间生成的。
9.根据权利要求8所述的方法,其特征在于,所述申请授权信息还包括申请授权时长,所述授权信息是所述授权管理平台在确定允许所述终端设备作为所述预设私有链网络中的网络节点,且所述申请授权时长小于或等于所述授权权限对应的授权时长时,基于所述授权管理平台的私钥、所述第一设备标识信息、所述申请授权时长和所述授权信息的待生成时间生成的。
10.一种区块链程序的访问装置,其特征在于,所述区块链程序的访问装置包括获取单元和处理单元,其中:
所述获取单元,用于在检测到对区块链程序的访问请求时,获取关于所述区块链程序的授权信息,以及所述终端设备的第一设备标识信息,所述授权信息存储在所述终端设备中,所述授权信息是授权管理平台发送至所述终端设备的,所述授权信息是所述授权管理平台在确定允许目标终端设备作为预设私有链网络中的网络节点时,基于所述授权管理平台的私钥和所述目标终端设备的第二设备标识信息生成的;
所述处理单元,用于对所述授权信息进行解析处理,得到所述目标终端设备的第二设备标识信息;
所述处理单元,还用于若所述第一设备标识信息与所述第二设备标识信息相同,则访问所述区块链程序。
11.一种计算机设备,其特征在于,包括:
处理器,所述处理器适于实现一条或多条计算机程序;
计算机存储介质,所述计算机存储介质存储有一条或多条计算机程序,所述一条或多条计算机程序适于由所述处理器加载并执行如权利要求1-9任一项所述的区块链程序的访问方法。
12.一种计算机存储介质,其特征在于,所述计算机存储介质存储有一条或多条计算机程序,所述一条或多条计算机程序适于由处理器加载并执行如权利要求1-9任一项所述的区块链程序的访问方法。
13.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,所述计算机程序适于由处理器加载并执行如权利要求1-9任一项所述的区块链程序的访问方法。
CN202210391021.5A 2022-04-14 2022-04-14 区块链程序的访问方法、相关设备及存储介质 Pending CN116961937A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210391021.5A CN116961937A (zh) 2022-04-14 2022-04-14 区块链程序的访问方法、相关设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210391021.5A CN116961937A (zh) 2022-04-14 2022-04-14 区块链程序的访问方法、相关设备及存储介质

Publications (1)

Publication Number Publication Date
CN116961937A true CN116961937A (zh) 2023-10-27

Family

ID=88453466

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210391021.5A Pending CN116961937A (zh) 2022-04-14 2022-04-14 区块链程序的访问方法、相关设备及存储介质

Country Status (1)

Country Link
CN (1) CN116961937A (zh)

Similar Documents

Publication Publication Date Title
US11539685B2 (en) Federated identity management with decentralized computing platforms
CN110620810B (zh) 在区块链上的连续资产转移的非链接所有权
US11405395B2 (en) Accessing an internet of things device using blockchain metadata
US20190294817A1 (en) Method and system for managing access to personal data by means of a smart contract
US20200119904A1 (en) Tamper-proof privileged user access system logs
US20200145373A1 (en) System for blockchain based domain name and ip number register
US20190050598A1 (en) Secure data storage
US10164963B2 (en) Enforcing server authentication based on a hardware token
US8893242B2 (en) System and method for pool-based identity generation and use for service access
JP2021519531A (ja) ブロックチェーン・ネットワークに対するドキュメント・アクセス
Patel et al. DAuth: A decentralized web authentication system using Ethereum based blockchain
CN111753014B (zh) 基于区块链的身份认证方法及装置
CN110674531B (zh) 基于区块链的居住信息管理方法、装置、服务器及介质
CN109862024A (zh) 一种云管理系统的网络授权协议访问控制方法及系统
CN115510492A (zh) 一种基于智能合约的电子病历管理系统及方法
CN106529216B (zh) 一种基于公共存储平台的软件授权系统及软件授权方法
CN112702419A (zh) 基于区块链的数据处理方法、装置、设备和存储介质
CN113869901B (zh) 密钥生成方法、装置、计算机可读存储介质及计算机设备
CN114257436B (zh) 适用于堡垒机的访问安全管理方法、系统、电子设备和可读存储介质
Hanaoui et al. Security requirements and model for mobile agent authentication
CN111769956B (zh) 业务处理方法、装置、设备及介质
CN115396113A (zh) 基于区块链的医疗数据处理方法、装置、计算机设备
CN116961937A (zh) 区块链程序的访问方法、相关设备及存储介质
US20220301376A1 (en) Method and System for Deployment of Authentication Seal in Secure Digital Voting
Saldamli et al. Identity management via blockchain

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