CN112035897A - 区块链存证方法和相关装置 - Google Patents
区块链存证方法和相关装置 Download PDFInfo
- Publication number
- CN112035897A CN112035897A CN202011231164.7A CN202011231164A CN112035897A CN 112035897 A CN112035897 A CN 112035897A CN 202011231164 A CN202011231164 A CN 202011231164A CN 112035897 A CN112035897 A CN 112035897A
- Authority
- CN
- China
- Prior art keywords
- data
- certificate
- evidence
- stored
- block chain
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请实施例公开了一种区块链存证方法和相关装置,针对需要进行存证的待存证数据,不再仅仅将待存证数据的摘要在区块链上进行上链,而是将待存证数据的摘要和存储地址一同包括在存证信息中,将存证信息在区块链进行上链,进而得到在区块链中该待存证数据的数据存证。该数据存证中包括待存证数据的摘要和存储地址,从而不仅可以通过数据存证中的摘要验证待存证数据是否被篡改,还可以通过数据存证中的存储地址获得待存证数据。在区块链数据存证的场景中,增加了通过存储地址获得待存证数据的功能,提高了待存证数据的交互便利,使区块链数据存证的场景不再仅限于用于验证数据是否被篡改,扩展了区块链数据存证的应用场景。
Description
技术领域
本申请涉及数据处理领域,特别是涉及一种区块链存证方法和相关装置。
背景技术
区块链技术是一种防篡改、可追溯、共享的分布式账本技术,通过区块链进行存证是可信的。
相关技术中,区块链存证主要针对与非结构化数据(例如文本、图片、视频等),即通过将非结构化数据的摘要上链来对该非结构化数据进行存证。例如,用户可以将自己拍摄的摄影作品的哈希(hash)值(一种摘要的表达形式)在区块链网络中上链,上链的哈希值可以起到校验当前摄影作品之后有无篡改的作用。
然而,由于哈希值这类用于存证的摘要存在不可逆的特性,即用户无法基于摘要通过反向算法还原出该哈希值对应的数据(例如前述摄影作品),导致目前的区块链存证的应用场景非常有限,不利于区块链存证的发展。
发明内容
为了解决上述技术问题,本申请提供了一种区块链存证方法和相关装置,在利用区块链存证时,将待存证数据的摘要和存储地址一同上链,从而可以通过存储地址获得对应的待存证数据,进而提高了对待存证数据的交互便利,有助于区块链存证的场景扩展。
本申请实施例公开了如下技术方案:
一方面,本申请实施例提供了一种区块链存证方法,所述方法包括:
获取待存证数据;
根据所述待存证数据确定对应的存证信息;所述存证信息包括所述待存证数据的摘要和所述待存证数据的存储地址;
根据所述存证信息在区块链进行上链,得到在所述区块链中针对所述待存证数据的数据存证 ;所述数据存证包括所述摘要和所述存储地址。
另一方面,本申请实施例提供了一种区块链存证装置,所述装置包括获取单元、确定单元和上链单元:
所述获取单元,用于获取待存证数据;
所述确定单元,用于根据所述待存证数据确定对应的存证信息;所述存证信息包括所述待存证数据的摘要和所述待存证数据的存储地址;
所述上链单元,用于根据所述存证信息在区块链进行上链,得到在所述区块链中针对所述待存证数据的数据存证;所述数据存证包括所述摘要和所述存储地址。
另一方面,本申请实施例提供了一种区块链存证装置,所述装置包括获取单元、确定单元、写入单元和上链单元;
所述获取单元,用于获取待存证数据;
所述确定单元,用于根据所述待存证数据确定对应的存证信息,所述存证信息包括所述待存证数据的摘要;
所述写入单元,用于根据存证模板的写入规则,将所述存证信息写入所述存证模板,所述写入规则用于标识所述存证模板中不同信息条目所对应的信息定义;
所述上链单元,用于将所述存证模板在区块链进行上链,得到在所述区块链中针对所述待存证数据的数据存证,所述数据存证为可追加信息的数据结构。
另一方面,本申请实施例提供了一种区块链存证设备,所述设备包括处理器以及存储器:
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器用于根据所述程序代码中的指令执行上述方面所述的方法。
另一方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行上述方面所述的方法。
另一方面,本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述方面所述的方法。
由上述技术方案可以看出,针对需要进行存证的待存证数据,不再仅仅将待存证数据的摘要在区块链上进行上链,而是将待存证数据的摘要和存储地址一同包括在存证信息中,将存证信息在区块链进行上链,进而得到在区块链中该待存证数据的数据存证。该数据存证中包括待存证数据的摘要和存储地址,从而不仅可以通过数据存证中的摘要验证待存证数据是否被篡改,还可以通过数据存证中的存储地址获得待存证数据。在区块链数据存证的场景中,增加了通过存储地址获得待存证数据的功能,提高了待存证数据的交互便利,使区块链数据存证的场景不再仅限于用于验证数据是否被篡改,扩展了区块链数据存证的应用场景。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种区块链存证方法的场景示意图;
图2为本申请实施例提供的一种区块链存证方法的流程图;
图3为一种数据存证的场景示意图;
图4为本申请实施例提供的一种后台编写智能合约代码的界面图;
图5为本申请实施例提供的一种合约的模板的示意图;
图6为本申请实施例提供的一种智能合约上链的示意图;
图7为本申请实施例提供的一种数据存证方法的流程图;
图8为本申请实施例提供的一种区块链存证方法的流程图;
图9为本申请实施例提供的一种数据存证装置的示意图;
图10为本申请实施例提供的一种数据存证装置的示意图;
图11为本申请实施例提供的服务器的结构示意图;
图12为本申请实施例提供的终端设备的结构示意图。
具体实施方式
下面结合附图,对本申请的实施例进行描述。
由于非结构化数据共享一般是局部或点对点的进行广播,而不是广播给所有用户,让区块链保存海量数据,会造成资源的浪费。所以,在利用区块链对非结构化数据进行存证时,将待存证数据的摘要上链,待存证数据本身则保存在其他服务器中。例如,用户A采用哈希算法将自己拍摄的照片a生成哈希值,将哈希值上链作为数据存证。由于哈希值是固定长度的唯一值,若照片a有任何修改,会导致对应的哈希值也发生变化,从而可以根据哈希值是否改变验证照片a是否被篡改。但是,由于哈希值等形式的摘要具有不可逆的特性,用户无法通过区块链上的摘要获得该摘要对应的待存证数据,使得区块链存证仅能用于验证待存证数据是否被篡改,应用场景非常有限,不利于区块链存证的发展。
为了解决上述技术问题,本申请提供了一种区块链存证方法,在利用区块链存证时,不仅将待存证数据的摘要上链,还将待存证数据的存储地址与摘要一同上链。从而可以通过存储地址获得对应的待存证数据,进而提高了对待存证数据的交互便利,有助于区块链存证的场景扩展。
本申请实施例提供的区块链存证可以应用于区块链存证能力的处理设备上,该处理设备可以是终端设备,也可以是服务器。该方法可以通过服务器独立运行,也可以应用于终端设备和服务器通信的网络场景,通过终端设备和服务器配合运行。其中,终端设备可以为计算机、个人数字助理(Personal Digital Assistant,简称PDA)、平板电脑等设备。服务器可以理解为是应用服务器,也可以为Web服务器,在实际部署时,该服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。同时,在硬件环境上,本技术已经实现的环境有:ARM架构处理器、X86架构处理器;在软件环境上,本技术已经实现的环境有:Android平台、Windows xp及以上操作系统或Linux操作系统。
本申请实施例提供的区块链存证方法利用区块链技术实现,区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
区块链底层平台可以包括用户管理、基础服务以及智能合约等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等;基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能。
平台产品服务层提供典型应用的基本能力和实现框架,开发人员可以基于这些基本能力,叠加业务的特性,完成业务逻辑的区块链实现。应用服务层提供基于区块链方案的应用服务给业务参与方进行使用。
在本申请实施例中,可以通过调用区块链底层平台中的用户管理模块实现区块链上的用户身份信息管理,通过调用基础服务模块实现将待存证数据上链,通过调用智能合约实现待存证数据的追加等;通过调用平台产品服务层完成用于存证的区块链的搭建等;通过调用应用服务层为用户提供存证服务等。
为了便于理解本申请的技术方案,下面将结合实际应用场景,对本申请实施例提供的区块链存证方法进行说明。
参见图1,该图为本申请实施例提供的一种区块链存证方法的场景示意图。该应用场景以该区块链存证方法应用于终端设备为例进行说明。该应用场景中包括区块链网络100和服务器200。区块链网络100中包括多个区块链节点,每个区块链节点可以是一个电子设备,该电子设备可以是智能手机、平板电脑、笔记本电脑、台式电脑、MP4播放器或服务器等处理设备。示例地,在本申请实施例中区块链网络100包括区块链节点110和区块链节点120,区块链节点110为智能手机110,区块链节点120为智能手机120,区块链节点110和区块链节点120通信连接。图1中以数据存证的上传方(用户A)利用智能手机110在区块链网络中上传待存证数据,数据存证的读取方(用户B)利用智能手机120在区块链网络中读取数据存证为例进行说明。
智能手机110可以获取上传的待存证数据。例如,待存证数据可以是图1中所示的用户A的摄影作品a、用户A的文字作品b等需要进行存证的非结构化数据。下面以将摄影作品a上链为例进行说明。可以理解的是,为了节省区块链的资源,摄影作品a本身并不上链,而是将摄影作品a的摘要进行上链,摄影作品a的原文件存储在链下的服务器200中,存储地址为www.X.com。
用户A上传摄影作品a的过程为:智能手机110获取用户A的摄影作品a后,生成摄影作品a的摘要,例如采用哈希算法生成摄影作品a的哈希值Y。将该哈希值Y与该摄影作品a在服务器200中的存储地址www.X.com包括在对应的存证信息中,将该存证信息在区块链进行上链,得到在区块链中该摄影作品a的数据存证。该数据存证包括该摄影作品a对应的哈希值Y和存储地址www.X.com。
当用户B得知用户A将摄影作品a上传到区块链存证后,无需采用与用户A多次进行链下沟通的方式获得摄影作品a的存储地址,而是能够在区块链中直接获得摄影作品a的存储地址。因为区块链节点120与区块链节点110通过相互通信实现资源共享,用户B可以通过智能手机120在区块链中获得摄影作品a的数据存证,从而根据数据存证中摄影作品a的存储地址www.X.com在服务器200中获得摄影作品a。用户B直接在区块链中获得摄影作品a的存储地址,并基于该存储地址下载待存证数据,从而无需为了查看待存证数据与用户A进行额外的沟通,提高了待存证数据的交互便利,节约了用户A与用户B的时间,提升了用户A与用户B的体验感。
本申请提供的区块链存证方法,不仅将待存证数据的摘要上链,还将待存证数据的存储地址与摘要一同上链。从而不仅可以通过数据存证中的哈希值验证待存证数据是否被篡改,还可以通过数据存证中的存储地址获得待存证数据。无需数据存证的上传方与数据存证的读取方进行链下的多次沟通,提高了数据存证的上传方与数据存证的读取方的体验感。在区块链数据存证的场景中,增加了通过存储地址获得待存证数据的功能,提高了待存证数据的交互便利,使区块链数据存证的场景不再仅限于用于验证数据是否被篡改,扩展了区块链数据存证的应用场景。
下面结合图1所示的应用场景对本申请实施例提供的区块链存证方法进行介绍。在图2所示的方法中,包括以下步骤:
S201:获取待存证数据。
在传统的电子证据存储方式中,通常是将待存证数据存储在服务器、硬盘等存储介质中,中心化存储方式无法保证待存证数据在保存的过程中是否被篡改,从而导致司法采信率较低。
去中心化是区块链的典型特征之一,将需要存证的待存证数据存储到区块链上,可以达到防篡改、可追溯、数据来源可信的目的。产生待存证数据后将其上链,上链固化不可篡改,公信力机构多中心存储,司法机构采信率较高。
其中,待存证数据可以是任何文件形式,本申请实施例不具体进行限制。例如,待存证数据为图片、文字、视频等非结构化数据。
S202:根据所述待存证数据确定对应的存证信息;所述存证信息包括所述待存证数据的摘要和所述待存证数据的存储地址。
相关技术中,采用链上链下协同工作,即将待存证数据的摘要,如哈希值上链,原文件保存在链下。但是,由于区块链上仅有哈希值,哈希值具有不可逆性,用户无法通过区块链上的哈希值获得该哈希值对应的待存证数据,使得区块链存证仅能用于验证待存证数据是否被篡改,应用场景非常有限,不利于区块链存证的发展。
基于此,本申请实施例不再仅将待存证数据的摘要上链,而是将待存证数据的摘要和在链下其他服务器的存储地址一同上链,以便于其他用户可以直接在区块链上获取待存证数据的存储地址,并通过该存储地址在链下其他服务器中获取到待存证数据的原文件,从而无需数据存证的上传方与数据存证的读取方采用其他方式就待存证数据的存储地址进行额外的沟通,节约了用户A与用户B的时间,提高了待存证数据的交互便利,提升了用户A与用户B的体验感,有助于区块链存证的场景扩展。下面对将待存证数据的摘要和存储地址一同上链进行说明。
本申请实施例不具体限定存证信息的具体内容,存证信息至少包括待存证数据的摘要和存储地址,在另外实施例中,存证信息还可以包括待存证数据的作者、持有人签名等信息。
本申请也不具体限定根据待存证数据确定对应的存证信息的方式。例如,待存证数据的摘要可以通过信息-摘要算法(message-digest algorithm 5,MD5)或哈希算法等方式获得,获得摘要后,将待存证数据的摘要与待存证数据原文件的存储地址共同包括在合约模板中,从而获得存证信息。
S203:根据所述存证信息在区块链进行上链,得到在所述区块链中针对所述待存证数据的数据存证;所述数据存证包括所述摘要和所述存储地址。
将存证信息在区块链进行上链,该存证信息不仅包括待存证数据的摘要,还包括待存证数据的存储地址,即通过存证信息将待存证数据的摘要和存储地址一同上链。存证信息上链后,可以在区块链中获得数据存证,该数据存证是针对于待存证数据的,是待存证数据在区块链中的存储证明。数据存证中包括待存证数据的摘要和存储地址,以便于用户可以在区块链中不仅能够获得待存证数据的摘要,还能够获得待存证数据的存储地址,并通过该存储地址获得待存证数据,提高用户与待存证数据交互的便利性。
参见图3,该图为一种数据存证的场景示意图。图3中,以待存证信息是电子证据为例。在相关技术中,当电子证据产生时,对电子证据做一次哈希运算,将该哈希值上链作为数据存证。当发生诉讼时,当事人向司法机构提交电子证据的原文件,司法机构可通过相关工具,例如对当事人提交的电子证据进行哈希运算,比较当事人提交的电子证据得到的哈希值与区块链上该电子证据的哈希值,可以验证当事人提交的电子证据是否被篡改。
但是,上述方式需要当事人向司法机构提交电子证据,而本申请的技术方案应用于图3的场景中时,电子证据产生后,将电子证据的摘要和电子证据的存储地址包括在存证信息中上链。由于区块链中存在该电子证据的存储地址,所以无需当事人再次向司法机构提交电子证据的原文件,司法机构可以通过区块链中电子证据的存储地址获得该电子证据,提高了司法机构与电子证据交互的便利性,同时司法机构还能够通过数据存证中的摘要验证电子证据是否被篡改,提高电子证据的可信度。
由上述技术方案可以看出,针对需要进行存证的待存证数据,不再仅仅将待存证数据的摘要在区块链上进行上链,而是将待存证数据的摘要和存储地址一同包括在存证信息中,将存证信息在区块链进行上链,进而得到在区块链中该待存证数据的数据存证。该数据存证中包括待存证数据的摘要和存储地址,从而不仅可以通过数据存证中的摘要验证待存证数据是否被篡改,还可以通过数据存证中的存储地址获得待存证数据。在区块链数据存证的场景中,增加了通过存储地址获得待存证数据的功能,提高了待存证数据的交互便利,使区块链数据存证的场景不再仅限于用于验证数据是否被篡改,扩展了区块链数据存证的应用场景。
由于部分用于存证的待存证数据的特殊性,数据存证的上传方在上传待存证数据时,不希望区块链上所有用户均能查看该待存证数据的内容。因此,数据存证的上传方可以选择在上链之前对存证信息进行加密,将加密后的存证信息在区块链上进行上链,从而得到相应的数据存证。该数据存证是在区块链中针对待存证数据的,包括待存证数据的摘要和存储地址。该待存证数据的摘要和存储地址包括在存证信息中,该存证信息在上链前被加密,因此,在该区块链中,数据存证中包括的待存证数据的摘要和存储地址也是加密的。通过在上链前对存证信息进行加密,数据存证的上传方可以通过向指定的用户分享解密方式,从而避免数据存证的上传方并未授权的用户查看该待存证数据,提高授权分享的针对性。
为了增加加密方式的灵活性,本申请实施例不具体限定存证信息的加密方式。下面以三种方式为例进行说明,第一种:利用数据存证的上传方公钥对存证信息进行加密后上链,然后数据存证的读取方采用对应的私钥对数据存证进行解密。第二种:利用数据存证的上传方私钥对存证信息进行加密后上链,然后数据存证的读取方采用对应的公钥对数据存证进行解密。第三种:利用数据存证的读取方公钥对存证信息进行加密后上链,然后数据存证的读取方使用其私钥对存证信息进行定向读取查看。采用对存证信息进行加密后上传的技术手段,可以使被数据存证的上传方授权的用户有针对性的查看被加密的待存证数据,从而提高授权分享的针对性,也提高了待存证数据的安全性。
区块链数据存证的场景不再仅限于用于验证待存证数据是否被篡改,也不仅限于在区块链上获得待存证数据的存储地址,还可以在数据存证中写入追加存证信息。当数据存证为可追加信息的数据结构时,将需要追加的信息添加到数据存证中,记录待存证数据的变化情况。例如,用户A将自己的文字作品a作为待存证数据上链后,获得了数据存证。然后,用户A将该文字作品a授权给用户B进行改编,用户B在将文字作品改编为a1后,将文字作品a被改编的信息写入数据存证中,将文字作品a1的作者署名为用户B。需要说明的是,当文字作品a1的作者署名为用户B写入到数据存证中后,对应的摘要也会相应的变化后再进行上链。同理,文字作品a1的持有者发生变化后,也可以通过将对应的信息写入数据存证中,对应的摘要也会相应变化后再进行上链。
本申请实施例不具体限定数据存证为可追加信息的数据结构。例如,数据存证为令牌(token)、智能合约等。其中,令牌为访问资源接口时所需要的资源凭证。智能合约是区块链上公开透明不可篡改的可执行代码逻辑,参见图4,该图为本申请实施例提供的一种后台编写智能合约代码的界面。如图4所示,后台正在为账户名称为XC3400273851535814@xuper的用户编写智能合约,通过合约名称区分不同的智能合约。还可以为智能合约加上简单的描述,以便快速区分不同的智能合约。本申请实施例不具体限定编写智能合约的代码语言,例如可以如图4所示的C语言。下面以数据存证为智能合约为例进行说明。
在获得存证信息后,可以根据合约模板的内容将存证信息写入到合约模板中,得到写入后的合约模板。本申请实施例不具体限定合约模板的内容。例如,在合约模板中根据需求定义字段,将智能合约变为结构化数据的存证模板。参见图5,该图为本申请实施例提供的一种模板的示意图。如图5所示,根据待存证数据的属性定义具体字段,具体字段可以是姓名、年龄等属性,还可以对具体字段进备注,以方便查看。按照具体字段的内容填写存证信息后,将写入后的合约模板在区块链进行上链,得到在区块链中针对待存证数据的智能合约。参见图6,该图为本申请实施例提供的一种智能合约上链的示意图。首先,在客户端中编写合约模板源码,通过编译将合约模板源码变为虚拟机字节码。本申请实施例不具体限定客户端的种类,例如可以是软件开发工具包(Software Development Kit,SDK)客户端。然后,以借助一种交易类型部署智能合约为例,可以将交易哈希值、钱包地址、合约地址、金额、智能合约函数和相关赋值等内容写入到合约模板中。最后,客户端将合约模板码通过远程过程调用(Remote Procedure Call,RPC)上传到区块链网络中,完成将智能合约的部署,用于区块链中数据的管理。
智能合约属于一种计算机化的协议,可以执行某个合约的条款,通过部署在共享账本上的用于在满足一定条件时而执行的代码实现,根据实际的业务需求代码用于完成自动化的交易, 例如查询买家所购买商品的物流状态,在买家签收货物后将买家的电子货币转移到商户的地址;当然,智能合约不仅限于执行用于交易的合约, 还可以执行对接收的信息进行处理的合约。智能合约部署在区块链中,根据实际业务需求而实现特定业务,记录实现功能相关的数据形成记录数据,在记录数据中携带数字签名以表示任务数据的来源,将记录数据发送到区块链系统中的其他节点,供其他节点在验证记录数据来源以及完整性成功时,将记录数据添加到临时区块中。
在区块链中部署智能合约后,若待存证数据发生了变化,例如,电子合同的内容发生变化、文字作品的版权发生变更等,均可以在智能合约中追加相关的内容。通过将待存证数据的追加存证信息写入到智能合约中,可以使智能合约成为记录待存证数据变化的记录文档,从而实现可追溯的功能。以一个待存证数据对应一个智能合约为例进行说明。在智能合约中记载文字作品a的版权属于用户A,当用户A将该文字作品a的版权转让给用户B时,可以将该转让信息记录在智能合约中,即智能合约中会写入文字作品a的版权从用户A变成了用户B。若用户B将文字作品a的版权再一次转让用户C时,继续在智能合约中写入文字作品a的版权从用户B变成了用户C。进一步,在智能合约写入追加存证信息时,可以记录该追加存证信息写入的时间,随时更新留证,从而智能合约像简历中的个人经历一样记录着文字作品a的版权变化。
由于智能合约是待存证数据的数据存证,在得到智能合约之前应该使写入合约模板中的内容符合数据规范。如图5所示,数据规范可以是定义字段的类型。例如,姓名字段的基本数据类型是char,char型数据是计算机编程语言中只可容纳单个字符。年龄字段的基本数据类型是int,int型数据是计算机编程语言中表示整数的数据类型,例如年龄不能是小数。为了使写入的内容符合数据规范,可以在合约模板中添加校验规则。若用户想要将存证信息写入智能合约,可以先判断写入的存证信息是否符合合约模板的校验规则,如果符合校验规则,则允许写入后的合约模板在区块链进行上链,得到在区块链中针对待存证数据的智能合约。如果不符合校验规则,则拒绝将存证信息写入合约模板中。从而保证写入的存证信息具有统一的数据规范,方便用户查看内容。
采用本申请的技术方案,数据存证的上传方可以在合约模板中定义相关的数据权限规则后,例如,数据存证的上传方可以通过数据权限规则授权数据存证的读取方查看待存证数据、在待存证数据中写入数据、进一步允许数据存证的读取方授权其他用户查看待存证数据等权限,不仅可以实现验证待存证数据是否被篡改的功能,还可以实现读取待存证数据的功能、在数据存证中写入追加信息的功能、使存证数据的读取方进一步授权其它用户相关权限的功能等,扩展了数据存证的应用场景。
接下来,将结合具体场景对本申请实施例提供的区块链存证方法进行介绍,该场景为针对证件照片作为待存证数据的场景。假设用户去数字身份颁发机构拍摄电子证件照片以作为自己的数字身份证明,可以将该拍摄的电子证件照片进行数据存证。其中,智能合约的上传方是数据身份颁发机构,智能合约的读取方式用户。参见图7,该图为本申请实施例提供的一种数据存证方法的流程图,该方法包括:
S701:获取用户的证件照片。
S702:根据用户的证件照片获取该证件的摘要和存储地址,将该证件照片的摘要和存储地址作为存证信息。
S703:在数据身份颁发机构规定的合约模板中写入存证信息。
S704:判断写入的存证信息是否符合合约模板的校验规则,若否,则执行S705;若是,则执行S706。
S705:拒绝将存证信息写入合约模板。
S706:采用用户的公钥A对写入后的合约模板进行加密。
S707:将加密后的写入后的合约模板在区块链进行上链,得到在区块链中针对该证件照片的智能合约。
S708:用户可以采用私钥A1对证件照片进行查看。
S709:若用户想要在授权该证件照片被第三方核验数字身份的机构查看,将授权该证件照片给第三方核验数字身份的机构查看的信息作为追加存证信息,将该追加存证信息写入智能合约中。
S710:判断写入的追加存证信息是否符合智能合约的校验规则,若否,则执行S711;若是,则执行S712。
S711:拒绝将追加存证信息写入智能合约。
S712:采用用户的公钥B对写入后的智能合约进行加密。
S713:将加密后的写入后的智能合约在区块链进行上链,得到在区块链中针对该证件照片的智能合约,并在区块链上向第三方核验数字身份的机构分发对应的私钥B1。
S714:第三方核验数字身份的机构可以采用该私钥B1对证件照片进行查看。
需要说明的是,数据存证的上传方可以在合约模板中定义多种数据操作逻辑,例如授权数据存证的读取方查看待存证数据、授权数据存证的读取方在数据存证中写入数据,授权数据存证的读取方继续授权第三方查看待存证数据或在数据存证中写入数据等操作,从而实现数据的交换、流转甚至是交易。
数字身份颁发机构可以将用户的证件照片的摘要和存储地址一同包括在存证信息中,将存证信息在区块链进行上链,进而得到在区块链中该证件照片的智能合约。该智能合约中包括证件照片的摘要和存储地址,从而用户或第三方核验机构不仅可以通过数据存证中的摘要验证待存证数据是否被篡改,还可以通过智能合约中的存储地址获得证件照片。在区块链数据存证的场景中,增加了通过存储地址获得待存证数据的功能,提高了待存证数据的交互便利,使区块链数据存证的场景不再仅限于用于验证数据是否被篡改,还可以用于数据的读取、写入等操作,扩展了区块链数据存证的应用场景。
本申请还提供一种区块链存证方法,下面结合附图具体进行介绍。
参见图8,该图为本申请实施例提供的一种区块链存证方法的示意图。
S801:获取待存证数据。
待存证数据可以是任何文件形式,本申请实施例不具体进行限制。例如,待存证数据为图片、文字、视频等非结构化数据。
S802:根据所述待存证数据确定对应的存证信息,所述存证信息包括所述待存证数据的摘要。
待存证数据一般为非结构化数据,为了节省区块链的资源,在利用区块链对待存证数据进行存证时,不会将待存证数据直接上链,而是获得待存证数据的摘要,将摘要包括在存证信息中,以便将存证信息进行上链。比如待存证数据为文档数据,通过处理后将非结构化文档数据变成结构化表格数据。将处理后的表格数据,整体打包进行内容哈希计算,将得到的哈希值包括到存证信息中,以便后续上链,文档本身则保存在私有的文件服务器、云文件存储等存储空间中,从而维护海量文件和大尺寸文件,使成本更低。
S803:根据存证模板的写入规则,将所述存证信息写入所述存证模板,所述写入规则用于标识所述存证模板中不同信息条目所对应的信息定义。
在获得存证信息后,可以根据存证模板的写入规则将存证信息写入到存证模板中,得到存证模板。写入规则用于标识存证模板中不同信息条目所对应的信息定义,例如不同信息条目所对应的信息定义可以以具体字段的形式列出待存证数据的不同属性信息,如姓名、年龄等属性,还可以对具体字段进备注,以方便查看。
参见图5,该图为本申请实施例提供的一种模板的示意图。如图5所示,将字段名称、类型、字段备注和字段校验规则作为信息定义。将每一个信息条目按照行的方式写入到表格中,如图5中第1条信息条目为“name、Char(100)、姓名、正则表达式或脚本代码”作为一行数据写入到存证模板中,第2条信息条目为“age、int、年龄、正则表达式或脚本代码”作为一行数据写入到存证模板中。
S804:将所述存证模板在区块链进行上链,得到在所述区块链中针对所述待存证数据的数据存证,所述数据存证为可追加信息的数据结构。
将存证模板在区块链进行上链,存证信息上链后,可以在区块链中获得数据存证,该数据存证是针对于待存证数据的,是待存证数据在区块链中的存储证明。数据存证中不仅具有待存证数据的摘要,根据摘要验证待存证数据是否被篡改,还具有信息定义后的不同信息条目,根据需求随时通过添加信息条目随时追加信息。若待存证数据发生了变化,例如,电子合同的内容发生变化、文字作品的版权发生变更等,均可以在存证模板中追加相关的内容。通过将待存证数据的追加存证信息以信息条目的方式写入到存证模板中,上链后得到对应的数据存证,可以使数据存证成为记录待存证数据变化的记录文档,从而实现可追溯的功能。
存证信息不仅可以包括待存证数据的摘要,还可以包括待存证数据的存储地址,将存证信息上链后,可以根据存证信息中的存储地址获得待存证数据。从而不仅可以通过数据存证中的摘要验证待存证数据是否被篡改,还可以通过数据存证中的存储地址获得待存证数据。在区块链数据存证的场景中,增加了通过存储地址获得待存证数据的功能,提高了待存证数据的交互便利,使区块链数据存证的场景不再仅限于用于验证数据是否被篡改,扩展了区块链数据存证的应用场景。
由于存证模板是待存证数据上链后的数据存证,在得到存证模板之前应该使写入存证模板中的内容符合校验规则。校验规则是用于标识存证目标中不同信息条目所对应的数据结构要求,数据结构要求可以是字符长度、可填入值的范围等。例如,姓名字段的基本数据类型是char,char型数据是计算机编程语言中只可容纳单个字符。年龄字段的基本数据类型是int,int型数据是计算机编程语言中表示整数的数据类型,例如年龄不能是小数。若用户想要将存证信息写入存证模板,可以先判断写入的存证信息是否符合存证模板的校验规则,如果符合校验规则,则允许所述写入后的存证模板在区块链进行上链,得到在区块链中针对待存证数据的数据存证。如果不符合校验规则,则拒绝将存证信息写入所述存证模板。从而保证写入的存证信息具有统一的数据规范,方便用户等查看内容。基于前述实施例提供的区块链存证方法,对本申请实施例提供的相关装置进行介绍。本实施例提供一种区块链存证装置900,参见图9,所述装置900包括获取单元901、确定单元902和上链单元903:
所述获取单元901,用于获取待存证数据;
所述确定单元902,用于根据所述待存证数据确定对应的存证信息;所述存证信息包括所述待存证数据的摘要和所述待存证数据的存储地址;
所述上链单元903,用于根据所述存证信息在区块链进行上链,得到在所述区块链中针对所述待存证数据的数据存证;所述数据存证包括所述摘要和所述存储地址。
在一种可能的实现方式中,所述上链单元903还用于对所述存证信息进行加密;将加密后的存证信息在所述区块链进行上链,得到在所述区块链中针对所述待存证数据的数据存证。
在一种可能的实现方式中,所述上链单元903还用于根据所述数据存证的上传方公钥、所述数据存证的上传方私钥或所述数据存证的读取方公钥对所述存证信息进行加密。
在一种可能的实现方式中,所述数据存证为可追加信息的数据结构。
在一种可能的实现方式中,所述数据存证为智能合约时,所述上链单元903还用于根据合约模板写入所述存证信息,得到写入后的合约模板;将所述写入后的合约模板在区块链进行上链,得到在所述区块链中针对所述待存证数据的智能合约。
在一种可能的实现方式中,所述装置还包括写入单元,用于获取所述待存证数据的追加存证信息;在所述智能合约中写入所述追加存证信息。
在一种可能的实现方式中,所述装置还包括判断单元,用于判断写入的所述存证信息是否符合所述合约模板的校验规则;若符合,允许所述写入后的合约模板在区块链进行上链;若不符合,拒绝将所述存证信息写入所述合约模板。
在一种可能的实现方式中,所述待存证数据为非结构化数据。
上述实施例提供的区块链存证装置,针对需要进行存证的待存证数据,不再仅仅将待存证数据的摘要在区块链上进行上链,而是将待存证数据的摘要和存储地址一同包括在存证信息中,将存证信息在区块链进行上链,进而得到在区块链中该待存证数据的数据存证。该数据存证中包括待存证数据的摘要和存储地址,从而不仅可以通过数据存证中的摘要验证待存证数据是否被篡改,还可以通过数据存证中的存储地址获得待存证数据。在区块链数据存证的场景中,增加了通过存储地址获得待存证数据的功能,提高了待存证数据的交互便利,使区块链数据存证的场景不再仅限于用于验证数据是否被篡改,扩展了区块链数据存证的应用场景。
本实施例还提供一种区块链存证装置1000,参见图10,所述装置1000包括获取单元1001、确定单元1002、写入单元1003和上链单元1004:
所述获取单元1001,用于获取待存证数据;
所述确定单元1002,用于根据所述待存证数据确定对应的存证信息,所述存证信息包括所述待存证数据的摘要;
所述写入单元1003,用于根据存证模板的写入规则,将所述存证信息写入所述存证模板,所述写入规则用于标识所述存证模板中不同信息条目所对应的信息定义;
所述上链单元1004,用于将所述存证模板在区块链进行上链,得到在所述区块链中针对所述待存证数据的数据存证,所述数据存证为可追加信息的数据结构。
在一种可能的实现方式中,所述存证信息还包括所述待存证数据的存储地址。
在一种可能的实现方式中,所述装置还包括校验单元,用于在所述得到在所述区块链中针对所述待存证数据的数据存证之前, 判断写入的所述存证信息是否符合所述存证模板的校验规则,所述校验规则用于标识所述存证目标中不同信息条目所对应的数据结构要求;若符合,允许所述写入后的存证模板在区块链进行上链;若不符合,拒绝将所述存证信息写入所述存证模板。
上述实施例提供的区块链存证装置,数据存证中不仅具有待存证数据的摘要,根据摘要验证待存证数据是否被篡改,还具有信息定义后的不同信息条目,根据需求随时通过添加信息条目随时追加信息。若待存证数据发生了变化,均可以在存证模板中追加相关的内容。通过将待存证数据的追加存证信息以信息条目的方式写入到存证模板中,上链后得到对应的数据存证,可以使数据存证成为记录待存证数据变化的记录文档,从而实现可追溯的功能。
本申请实施例还提供了一种区块链存证设备,下面将从硬件实体化的角度对本申请实施例提供的区块链存证设备进行介绍。
参见图11,图11是本申请实施例提供的一种服务器结构示意图,该服务器1400可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(centralprocessing units,CPU)1422(例如,一个或一个以上处理器)和存储器1432,一个或一个以上存储应用程序1442或数据1444的存储介质1430(例如一个或一个以上海量存储设备)。其中,存储器1432和存储介质1430可以是短暂存储或持久存储。存储在存储介质1430的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1422可以设置为与存储介质1430通信,在服务器1400上执行存储介质1430中的一系列指令操作。
服务器1400还可以包括一个或一个以上电源1426,一个或一个以上有线或无线网络接口1450,一个或一个以上输入输出接口1458,和/或,一个或一个以上操作系统1441,例如Windows ServerTM,Mac OS XTM,UnixTM, LinuxTM,FreeBSDTM等等。
上述实施例中由服务器所执行的步骤可以基于该图11所示的服务器结构。
其中,CPU 1422用于执行如下步骤:
获取待存证数据;
根据所述待存证数据确定对应的存证信息;所述存证信息包括所述待存证数据的摘要和所述待存证数据的存储地址;
根据所述存证信息 在区块链进行上链,得到在所述区块链中针对所述待存证数据的数据存证 ;所述数据存证包括所述摘要和所述存储地址。
或者,CPU 1422用于执行如下步骤:
获取待存证数据;
根据所述待存证数据确定对应的存证信息,所述存证信息包括所述待存证数据的摘要;
根据存证模板的写入规则,将所述存证信息写入所述存证模板,所述写入规则用于标识所述存证模板中不同信息条目所对应的信息定义;
将所述存证模板在区块链进行上链,得到在所述区块链中针对所述待存证数据的数据存证,所述数据存证为可追加信息的数据结构。
可选的,CPU 1422还可以执行本申请实施例中区块链存证方法任一具体实现方式的方法步骤。
针对上文描述的区块链存证方法,本申请实施例还提供了一种用于区块链存证的终端设备,以使上述区块链存证方法在实际中实现以及应用。
参见图12,图12为本申请实施例提供的一种终端设备的结构示意图。为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。该终端设备可以为包括手机、平板电脑、个人数字助理(Personal DigitalAssistant,简称PDA)等任意终端设备,以终端设备为手机为例:
图12示出的是与本申请实施例提供的终端设备相关的手机的部分结构的框图。参考图12,该手机包括:射频(Radio Frequency,简称RF)电路1510、存储器1520、输入单元1530、显示单元1540、传感器1550、音频电路1560、无线保真(wireless fidelity,简称WiFi)模块1570、处理器1580、以及电源1590等部件。本领域技术人员可以理解,图12中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图12对手机的各个构成部件进行具体的介绍:
RF电路1510可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器1580处理;另外,将设计上行的数据发送给基站。通常,RF电路1510包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low NoiseAmplifier,简称LNA)、双工器等。此外,RF电路1510还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(Global System of Mobile communication,简称GSM)、通用分组无线服务(GeneralPacket Radio Service,简称GPRS)、码分多址(Code Division Multiple Access,简称CDMA)、宽带码分多址(Wideband Code Division Multiple Access,简称WCDMA)、长期演进(Long Term Evolution,简称LTE)、电子邮件、短消息服务(Short Messaging Service,简称SMS)等。
存储器1520可用于存储软件程序以及模块,处理器1580通过运行存储在存储器1520的软件程序以及模块,从而实现手机的各种功能应用以及数据处理。存储器1520可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1520可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元1530可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元1530可包括触控面板1531以及其他输入设备1532。触控面板1531,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1531上或在触控面板1531附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板1531可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器1580,并能接收处理器1580发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1531。除了触控面板1531,输入单元1530还可以包括其他输入设备1532。具体地,其他输入设备1532可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元1540可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元1540可包括显示面板1541,可选的,可以采用液晶显示器(LiquidCrystal Display,简称LCD)、有机发光二极管(Organic Light-Emitting Diode,简称OLED)等形式来配置显示面板1541。进一步的,触控面板1531可覆盖显示面板1541,当触控面板1531检测到在其上或附近的触摸操作后,传送给处理器1580以确定触摸事件的类型,随后处理器1580根据触摸事件的类型在显示面板1541上提供相应的视觉输出。虽然在图12中,触控面板1531与显示面板1541是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板1531与显示面板1541集成而实现手机的输入和输出功能。
手机还可包括至少一种传感器1550,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1541的亮度,接近传感器可在手机移动到耳边时,关闭显示面板1541和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路1560、扬声器1561,传声器1562可提供用户与手机之间的音频接口。音频电路1560可将接收到的音频数据转换后的电信号,传输到扬声器1561,由扬声器1561转换为声音信号输出;另一方面,传声器1562将收集的声音信号转换为电信号,由音频电路1560接收后转换为音频数据,再将音频数据输出处理器1580处理后,经RF电路1510以发送给比如另一手机,或者将音频数据输出至存储器1520以便进一步处理。
WiFi属于短距离无线传输技术,手机通过WiFi模块1570可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图12示出了WiFi模块1570,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器1580是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器1520内的软件程序和/或模块,以及调用存储在存储器1520内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器1580可包括一个或多个处理单元;优选的,处理器1580可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1580中。
手机还包括给各个部件供电的电源1590(比如电池),优选的,电源可以通过电源管理系统与处理器1580逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
在本申请实施例中,该手机所包括的存储器1520可以存储程序代码,并将所述程序代码传输给所述处理器。
该手机所包括的处理器1580可以根据所述程序代码中的指令执行上述实施例提供的区块链存证方法。
本申请实施例还提供一种计算机可读存储介质,用于存储计算机程序,该计算机程序用于执行上述实施例提供的区块链存证方法。
本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述方面的各种可选实现方式中提供的区块链存证方法。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质可以是下述介质中的至少一种:只读存储器(英文:read-only memory,缩写:ROM)、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备及系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的设备及系统实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述,仅为本申请的一种具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。
Claims (15)
1.一种区块链存证方法,其特征在于,所述方法包括:
获取待存证数据;
根据所述待存证数据确定对应的存证信息;所述存证信息包括所述待存证数据的摘要和所述待存证数据的存储地址;
根据所述存证信息在区块链进行上链,得到在所述区块链中针对所述待存证数据的数据存证;所述数据存证包括所述摘要和所述存储地址。
2.根据权利要求1所述的方法,其特征在于,所述根据所述存证信息进行区块链上链,得到在所述区块链中针对所述待存证数据的数据存证,包括:
对所述存证信息进行加密;
将加密后的存证信息在所述区块链进行上链,得到在所述区块链中针对所述待存证数据的数据存证。
3.根据权利要求2所述的方法,其特征在于,所述对所述存证信息进行加密,包括:
根据所述数据存证的上传方公钥、所述数据存证的上传方私钥或所述数据存证的读取方公钥对所述存证信息进行加密。
4.根据权利要求1-3任意一项所述的方法,其特征在于,所述数据存证为可追加信息的数据结构。
5.根据权利要求4所述的方法,其特征在于,所述数据存证为智能合约,所述根据所述存证信息在区块链进行上链,得到在所述区块链中针对所述待存证数据的数据存证,包括:
根据合约模板写入所述存证信息,得到写入后的合约模板;
将所述写入后的合约模板在区块链进行上链,得到在所述区块链中针对所述待存证数据的智能合约。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
获取所述待存证数据的追加存证信息;
在所述智能合约中写入所述追加存证信息。
7.根据权利要求5所述的方法,其特征在于,在所述得到在所述区块链中针对所述待存证数据的智能合约之前,所述方法还包括:
判断写入的所述存证信息是否符合所述合约模板的校验规则;
若符合,允许所述写入后的合约模板在区块链进行上链;
若不符合,拒绝将所述存证信息写入所述合约模板。
8.根据权利要求1-3任意一项所述的方法,其特征在于,所述待存证数据为非结构化数据。
9.一种区块链存证方法,其特征在于,所述方法包括:
获取待存证数据;
根据所述待存证数据确定对应的存证信息,所述存证信息包括所述待存证数据的摘要;
根据存证模板的写入规则,将所述存证信息写入所述存证模板,所述写入规则用于标识所述存证模板中不同信息条目所对应的信息定义;
将所述存证模板在区块链进行上链,得到在所述区块链中针对所述待存证数据的数据存证,所述数据存证为可追加信息的数据结构。
10.根据权利要求9所述的方法,其特征在于,所述存证信息还包括所述待存证数据的存储地址。
11.根据权利要求9所述的方法,其特征在于,在所述得到在所述区块链中针对所述待存证数据的数据存证之前,所述方法还包括:
判断写入的所述存证信息是否符合所述存证模板的校验规则,所述校验规则用于标识所述存证目标中不同信息条目所对应的数据结构要求;
若符合,允许所述写入后的存证模板在区块链进行上链;
若不符合,拒绝将所述存证信息写入所述存证模板。
12.一种区块链存证装置,其特征在于,所述装置包括获取单元、确定单元和上链单元:
所述获取单元,用于获取待存证数据;
所述确定单元,用于根据所述待存证数据确定对应的存证信息;所述存证信息包括所述待存证数据的摘要和所述待存证数据的存储地址;
所述上链单元,用于根据所述存证信息在区块链进行上链,得到在所述区块链中针对所述待存证数据的数据存证;所述数据存证包括所述摘要和所述存储地址。
13.一种区块链存证装置,其特征在于,所述装置包括获取单元、确定单元、写入单元和上链单元;
所述获取单元,用于获取待存证数据;
所述确定单元,用于根据所述待存证数据确定对应的存证信息,所述存证信息包括所述待存证数据的摘要;
所述写入单元,用于根据存证模板的写入规则,将所述存证信息写入所述存证模板,所述写入规则用于标识所述存证模板中不同信息条目所对应的信息定义;
所述上链单元,用于将所述存证模板在区块链进行上链,得到在所述区块链中针对所述待存证数据的数据存证,所述数据存证为可追加信息的数据结构。
14.一种区块链存证设备,其特征在于,所述设备包括处理器以及存储器:
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器用于根据所述程序代码中的指令执行权利要求1-8任意一项所述的方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行权利要求1-8任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011231164.7A CN112035897A (zh) | 2020-11-06 | 2020-11-06 | 区块链存证方法和相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011231164.7A CN112035897A (zh) | 2020-11-06 | 2020-11-06 | 区块链存证方法和相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112035897A true CN112035897A (zh) | 2020-12-04 |
Family
ID=73572800
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011231164.7A Pending CN112035897A (zh) | 2020-11-06 | 2020-11-06 | 区块链存证方法和相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112035897A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112597544A (zh) * | 2020-12-24 | 2021-04-02 | 北京工业大学 | 一种基于区块链的工业互联网数据安全管理系统及方法 |
CN112671745A (zh) * | 2020-12-17 | 2021-04-16 | 思创数码科技股份有限公司 | 一种数据收发方法、发送端及接收端 |
CN113051625A (zh) * | 2021-03-24 | 2021-06-29 | 中国工商银行股份有限公司 | 一种基于区块链的数据存证方法及装置 |
CN113191768A (zh) * | 2021-05-27 | 2021-07-30 | 中国工商银行股份有限公司 | 信贷签署材料存证方法及装置 |
CN113536342A (zh) * | 2021-07-06 | 2021-10-22 | 招商银行股份有限公司 | 基于区块链的存证管理方法、系统、程序产品及存储介质 |
CN113792350A (zh) * | 2021-09-27 | 2021-12-14 | 四川新网银行股份有限公司 | 网络仲裁和诉讼用的电子数据存证客户端、公证端及系统 |
CN114968951A (zh) * | 2022-07-29 | 2022-08-30 | 联通(四川)产业互联网有限公司 | 基于区块链的司法存证监管方法、系统和计算机存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107370730A (zh) * | 2017-07-14 | 2017-11-21 | 阿里巴巴集团控股有限公司 | 一种登录信息处理方法及设备 |
CN110188112A (zh) * | 2019-05-31 | 2019-08-30 | 深圳前海微众银行股份有限公司 | 一种区块链智能合约的变更记录的追溯方法及装置 |
CN110555320A (zh) * | 2019-08-21 | 2019-12-10 | 杭州趣链科技有限公司 | 一种基于区块链存证智能合约的形式验证方法 |
CN110879903A (zh) * | 2019-11-20 | 2020-03-13 | 北京海益同展信息科技有限公司 | 证据存储方法、证据验证方法及装置、设备和介质 |
CN110933163A (zh) * | 2019-11-27 | 2020-03-27 | 腾讯科技(深圳)有限公司 | 区块链合约部署方法、装置、设备以及存储介质 |
CN111177107A (zh) * | 2019-12-31 | 2020-05-19 | 百度在线网络技术(北京)有限公司 | 基于区块链的文件处理方法、装置、设备和存储介质 |
-
2020
- 2020-11-06 CN CN202011231164.7A patent/CN112035897A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107370730A (zh) * | 2017-07-14 | 2017-11-21 | 阿里巴巴集团控股有限公司 | 一种登录信息处理方法及设备 |
CN111885024A (zh) * | 2017-07-14 | 2020-11-03 | 创新先进技术有限公司 | 一种登录信息处理方法及设备 |
CN110188112A (zh) * | 2019-05-31 | 2019-08-30 | 深圳前海微众银行股份有限公司 | 一种区块链智能合约的变更记录的追溯方法及装置 |
CN110555320A (zh) * | 2019-08-21 | 2019-12-10 | 杭州趣链科技有限公司 | 一种基于区块链存证智能合约的形式验证方法 |
CN110879903A (zh) * | 2019-11-20 | 2020-03-13 | 北京海益同展信息科技有限公司 | 证据存储方法、证据验证方法及装置、设备和介质 |
CN110933163A (zh) * | 2019-11-27 | 2020-03-27 | 腾讯科技(深圳)有限公司 | 区块链合约部署方法、装置、设备以及存储介质 |
CN111177107A (zh) * | 2019-12-31 | 2020-05-19 | 百度在线网络技术(北京)有限公司 | 基于区块链的文件处理方法、装置、设备和存储介质 |
Non-Patent Citations (1)
Title |
---|
郭媛媛 等: ""跨境贸易区块链溯源数据上链方式研究"", 《数字通信世界》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112671745A (zh) * | 2020-12-17 | 2021-04-16 | 思创数码科技股份有限公司 | 一种数据收发方法、发送端及接收端 |
CN112597544A (zh) * | 2020-12-24 | 2021-04-02 | 北京工业大学 | 一种基于区块链的工业互联网数据安全管理系统及方法 |
CN113051625A (zh) * | 2021-03-24 | 2021-06-29 | 中国工商银行股份有限公司 | 一种基于区块链的数据存证方法及装置 |
CN113051625B (zh) * | 2021-03-24 | 2024-02-20 | 中国工商银行股份有限公司 | 一种基于区块链的数据存证方法及装置 |
CN113191768A (zh) * | 2021-05-27 | 2021-07-30 | 中国工商银行股份有限公司 | 信贷签署材料存证方法及装置 |
CN113536342A (zh) * | 2021-07-06 | 2021-10-22 | 招商银行股份有限公司 | 基于区块链的存证管理方法、系统、程序产品及存储介质 |
CN113536342B (zh) * | 2021-07-06 | 2024-03-26 | 招商银行股份有限公司 | 基于区块链的存证管理方法、系统、程序产品及存储介质 |
CN113792350A (zh) * | 2021-09-27 | 2021-12-14 | 四川新网银行股份有限公司 | 网络仲裁和诉讼用的电子数据存证客户端、公证端及系统 |
CN113792350B (zh) * | 2021-09-27 | 2023-06-27 | 四川新网银行股份有限公司 | 网络仲裁和诉讼用的电子数据存证客户端、公证端及系统 |
CN114968951A (zh) * | 2022-07-29 | 2022-08-30 | 联通(四川)产业互联网有限公司 | 基于区块链的司法存证监管方法、系统和计算机存储介质 |
CN114968951B (zh) * | 2022-07-29 | 2022-11-15 | 联通(四川)产业互联网有限公司 | 基于区块链的司法存证监管方法、系统和计算机存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112035897A (zh) | 区块链存证方法和相关装置 | |
TWI713855B (zh) | 憑證管理方法及系統 | |
CN109472166B (zh) | 一种电子签章方法、装置、设备及介质 | |
CN111475841B (zh) | 一种访问控制的方法、相关装置、设备、系统及存储介质 | |
EP3308522B1 (en) | System, apparatus and method for multi-owner transfer of ownership of a device | |
CN108614878B (zh) | 协议数据管理方法、装置、存储介质及系统 | |
CN110163004B (zh) | 一种区块链生成的方法、相关设备及系统 | |
CN107431924B (zh) | 将设备标识符和用户标识符相关联的设备盗窃防护 | |
CN105678553A (zh) | 一种处理订单信息的方法、装置和系统 | |
CN110601858B (zh) | 证书管理方法及装置 | |
CN111340482B (zh) | 冲突检测方法、装置、节点设备及存储介质 | |
WO2021169382A1 (zh) | 链接检测方法、装置、电子设备及存储介质 | |
CN111241569B (zh) | 一种信息处理的方法、装置及设备 | |
CN107528830B (zh) | 账号登陆方法、系统及存储介质 | |
US11770240B2 (en) | Electronic device and method for receiving push message stored in blockchain | |
US20230231701A1 (en) | Electronic device for managing right by using decentralized network, and operation method thereof | |
CN111339181B (zh) | 区块存储方法、装置、节点设备及存储介质 | |
US20230261886A1 (en) | Electronic device and method for sharing data using blockchain network | |
CN108763876A (zh) | 一种资源版权校验方法、装置以及设备 | |
CN111212074B (zh) | 基于区块链的资格认定方法、装置、设备及存储介质 | |
CN111027972B (zh) | 一种基于区块链的数据验证方法、装置及电子设备 | |
CN114362955A (zh) | 软件代码云端数字签名方法、系统、设备和存储介质 | |
CN110572268A (zh) | 一种匿名认证方法和装置 | |
CN111259452A (zh) | 一种基于区块链的数据管理方法以及相关装置 | |
CN110532324A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40035771 Country of ref document: HK |