1.一种基于区块链的设备认证方法,其特征在于,包括: 接收用户设备发送的设备绑定请求,生成与所述设备绑定请求对应的设备绑定信息,将所述设备绑定信息提供给所述用户设备; 获取区块链中预设的智能合约根据所述用户设备提供的所述设备绑定信息生成的第一程序运行结果,根据所述第一程序运行结果向所述智能合约发送绑定成功消息; 接收所述用户设备发送的设备认证请求,根据所述设备认证请求向所述用户设备返回设备认证信息; 获取所述智能合约根据所述用户设备提供的所述设备认证信息生成的第二程序运行结果,根据所述第二程序运行结果对所述用户设备进行认证。
2.根据权利要求1所述的方法,其特征在于,所述设备绑定信息中包括:与所述用户设备对应的设备标识,则所述第一程序运行结果具体包括:所述智能合约根据所述用户设备发送的所述设备绑定信息执行写入操作后的运行结果; 且所述根据所述第一程序运行结果向所述智能合约发送绑定成功消息的步骤具体包括:将第一程序运行结果包含的设备标识与提供给所述用户设备的设备绑定信息中包含的设备标识进行比对,当比对结果一致时,向所述智能合约发送绑定成功消息。
3.根据权利要求2所述的方法,其特征在于,所述设备绑定请求中包括:设备指纹,则所述设备绑定信息中包含的设备标识根据所述设备指纹生成。
4.根据权利要求1-3任一所述的方法,其特征在于,所述设备认证信息中包括随机标识,且所述第二程序运行结果具体包括:所述智能合约根据所述用户设备提供的所述设备认证信息执行写入操作后的运行结果; 则所述根据所述第二程序运行结果对所述用户设备进行认证的步骤具体包括:将第二程序运行结果包含的随机标识与提供给所述用户设备的设备认证信息中包含的随机标识进行比对,当比对结果一致时,认证成功;反之,认证失败。
5.根据权利要求1-4任一所述的方法,其特征在于,所述智能合约接收到所述绑定成功消息后,进一步将所述绑定成功消息对应的用户设备标记为已绑定状态,则所述智能合约根据所述用户设备提供的所述设备认证信息生成第二程序运行结果的步骤之前,进一步包括步骤:判断所述用户设备是否为已绑定状态,当判断结果为是时,执行后续步骤;当判断结果为否时,生成认证失败提示信息。
6.根据权利要求1-5任一所述的方法,其特征在于,所述接收用户设备发送的设备绑定请求的步骤之前,进一步包括步骤:设置智能合约,将所述智能合约广播到所述区块链中。
7.根据权利要求1-6任一所述的方法,其特征在于,所述设备绑定信息进一步包括:用户设备的区块链账户地址。
8.—种基于区块链的设备认证方法,其特征在于,包括: 向认证服务器发送设备绑定请求,接收所述认证服务器根据所述设备绑定请求返回的设备绑定信息; 将所述设备绑定信息提供给区块链中预设的智能合约,以供所述智能合约根据所述设备绑定信息生成第一程序运行结果,所述第一程序运行结果用于提供给所述认证服务器进行设备绑定; 向所述认证服务器发送设备认证请求,接收所述认证服务器返回的设备认证信息; 将所述设备认证信息提供给所述智能合约,以供所述智能合约根据所述设备认证信息生成第二程序运行结果,所述第二程序运行结果用于提供给所述认证服务器进行设备认证。
9.一种认证服务器,其特征在于,包括: 绑定信息生成模块,用于接收用户设备发送的设备绑定请求,生成与所述设备绑定请求对应的设备绑定信息,将所述设备绑定信息提供给所述用户设备; 绑定状态确认模块,用于获取区块链中预设的智能合约根据所述用户设备提供的所述设备绑定信息生成的第一程序运行结果,根据所述第一程序运行结果向所述智能合约发送绑定成功消息; 认证信息生成模块,用于接收所述用户设备发送的设备认证请求,根据所述设备认证请求向所述用户设备返回设备认证信息; 设备认证模块,用于获取所述智能合约根据所述用户设备提供的所述设备认证信息生成的第二程序运行结果,根据所述第二程序运行结果对所述用户设备进行认证。
10.—种用户设备,其特征在于,包括: 绑定请求模块,用于向认证服务器发送设备绑定请求,接收所述认证服务器根据所述设备绑定请求返回的设备绑定信息; 绑定信息传递模块,用于将所述设备绑定信息提供给区块链中预设的智能合约,以供所述智能合约根据所述设备绑定信息生成第一程序运行结果,所述第一程序运行结果用于提供给所述认证服务器进行设备绑定; 认证请求模块,用于向所述认证服务器发送设备认证请求,接收所述认证服务器返回的设备认证信息; 认证信息传递模块,用于将所述设备认证信息提供给所述智能合约,以供所述智能合约根据所述设备认证信息生成第二程序运行结果,所述第二程序运行结果用于提供给所述认证服务器进行设备认证。