CN113704238B - 基于fpga与区块链技术的数字文件认证方法及系统 - Google Patents
基于fpga与区块链技术的数字文件认证方法及系统 Download PDFInfo
- Publication number
- CN113704238B CN113704238B CN202110963205.XA CN202110963205A CN113704238B CN 113704238 B CN113704238 B CN 113704238B CN 202110963205 A CN202110963205 A CN 202110963205A CN 113704238 B CN113704238 B CN 113704238B
- Authority
- CN
- China
- Prior art keywords
- account
- file
- file object
- information
- registered
- 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
Links
- 238000005516 engineering process Methods 0.000 title claims abstract description 40
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000012545 processing Methods 0.000 claims abstract description 50
- 238000012986 modification Methods 0.000 claims description 35
- 230000004048 modification Effects 0.000 claims description 35
- 238000004422 calculation algorithm Methods 0.000 claims description 31
- 238000012217 deletion Methods 0.000 claims description 31
- 230000037430 deletion Effects 0.000 claims description 31
- 238000004458 analytical method Methods 0.000 claims description 10
- 238000007726 management method Methods 0.000 claims description 9
- 238000004891 communication Methods 0.000 claims description 8
- 230000002093 peripheral effect Effects 0.000 claims description 7
- 238000012856 packing Methods 0.000 claims description 6
- 238000007619 statistical method Methods 0.000 claims description 5
- 230000001360 synchronised effect Effects 0.000 claims description 4
- 238000007405 data analysis Methods 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 claims description 2
- 230000006870 function Effects 0.000 description 7
- 230000008901 benefit Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 125000002015 acyclic group Chemical group 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
基于FPGA与区块链技术的数字文件认证方法及系统,获取账户注册信息,通过区块链对账户注册信息进行存储;获取待上传的文件对象,将文件对象的文件信息写入区块链并进行账户权限配置;判断文件对象对应的账户类型,当账户类型为单一账户时,单一账户具有对文件对象进行操作处理的全部权限;当账户类型为多账户时,多账户中全部账户共同拥有对文件对象的操作处理权限,当多账户中的当前操作账户进行文件对象操作处理时向多账户中的剩余账户申请操作权限,若剩余账户通过当前操作账户的操作权限申请,允许当前操作账户对文件对象进行操作处理。本发明实现文件存储信息去中心化,可溯源存储,提高系统计算能力和计算资源利用率。
Description
技术领域
本发明属于数据处理技术领域,具体涉及一种基于FPGA与区块链技术的数字文件认证方法及系统。
背景技术
数字存证是未来互联网技术中最重要最前沿的技术方向之一。区块链技术作为一种新生的分布式存储技术,其技术环节正日趋成熟,其应用领域正日趋广泛。
区块链技术具有去中心化,可溯源的优点,但同时也伴随着高强度的计算量。由于传统的通用计算机采用冯·诺依曼结构,使得它提高了处理复杂任务的能力,但同时由于自身算力不足,使得区块链算法性能受到限制。而区块链的底层算法一般都需要进行高强度计算,这就导致算法资源没有得到充分利用。
FPGA是在PAL、GAL等可编程器件的基础上进一步发展的产物,是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。FPGA硬件自应用以来,就因为应用成本低、兼容性强、设计自由度高、应用性能优良等应用特性受到各个领域的青睐和追捧。
文件认证是日常工作事务中需要频繁接触处理的任务之一,有时由于重要文件的变更和丢失而引发的纠纷,屡见不鲜。为了解决这一系列问题,传统技术中,通过分布式的方式存储文件。虽然这一措施有效实现了去中心化,但仍然无法彻底杜绝无痕迹的恶意修改文件。
发明内容
为此,本发明提供一种基于FPGA与区块链技术的数字文件认证方法及系统,利用区块链和FPGA相结合的方式实现了文件信息的去中心化,可溯源存储,解决区块链底层算法在通用计算机中的效能不高、计算能力和资源利用率低的问题。
为了实现上述目的,本发明提供如下技术方案:基于FPGA与区块链技术的数字文件认证方法,包括以下步骤:
获取账户注册信息,所述账户注册信息包括用户身份信息和注册时间信息,通过区块链对所述账户注册信息进行存储;
获取待上传的文件对象,将所述文件对象的文件信息写入区块链,并对文件对象进行账户权限配置;
判断所述文件对象对应的账户类型,所述账户类型包括单一账户和多账户:
当所述账户类型为单一账户时,所述单一账户具有对所述文件对象进行操作处理的全部权限;
当所述账户类型为多账户时,所述多账户中全部账户共同拥有对所述文件对象的操作处理权限,当多账户中的当前操作账户进行文件对象操作处理时向多账户中的剩余账户申请操作权限,若所述剩余账户通过所述当前操作账户的操作权限申请,允许所述当前操作账户对所述文件对象进行操作处理。
作为基于FPGA与区块链技术的数字文件认证方法的优选方案,通过区块链进行所述账户注册信息的更新,当进行注册账户删除时,检测注册账户下是否包含文件对象:若注册账户下包含文件对象,限制注册账户的删除,若注册账户下的文件对象为空,允许注册账户的删除。
作为基于FPGA与区块链技术的数字文件认证方法的优选方案,当注册用户对文件对象进行修改时,查看所述文件对象的文件信息和注册账户的权限信息,当所述文件对象支持修改操作且注册用户具有修改权限时,允许注册用户对文件对象进行修改;当所述文件对象不支持修改操作或注册用户没有对应修改权限时,限制注册用户对文件对象进行修改。
作为基于FPGA与区块链技术的数字文件认证方法的优选方案,当注册用户对文件对象进行删除时,查看所述文件对象的文件信息和注册账户的权限信息,当所述文件对象支持删除操作且注册用户具有删除权限时,允许注册用户对文件对象进行删除;当所述文件对象不支持删除操作或注册用户没有对应删除权限时,限制注册用户对文件对象进行删除。
作为基于FPGA与区块链技术的数字文件认证方法的优选方案,通过账户注册信息查询注册账户下具有的文件对象、权限信息和操作历史记录;
数据分析模块,用于通过账户地址信息或者特殊字段,查看文件对象的安全分析报告;所述安全分析报告源于对于文件的权限信息和操作记录数据的统计分析。
作为基于FPGA与区块链技术的数字文件认证方法的优选方案,通过FPGA执行区块链的底层算法,所述底层算法包括非对称算法、哈希算法、共识算法和区块打包。
作为基于FPGA与区块链技术的数字文件认证方法的优选方案,采用通用计算机进行信息存储和逻辑判断任务处理,通用计算机与FPGA区块节点使用USB转TTL实现通信,FPGA区块节点间使用RS-485实现通信,通用计算机间使用网络协议通信。
作为基于FPGA与区块链技术的数字文件认证方法的优选方案,区块与区块之间串联成链,每隔固定的时间完成一次区块生成,将生成的区块链接在区块链上,并同步给周边节点。
本发明还提供一种基于FPGA与区块链技术的数字文件认证系统,包括:
账户管理模块,用于获取账户注册信息,所述账户注册信息包括用户身份信息和注册时间信息,通过区块链对所述账户注册信息进行存储;
文件管理模块,用于获取待上传的文件对象,将所述文件对象的文件信息写入区块链,并对文件对象进行账户权限配置;
权限管理模块,用于判断所述文件对象对应的账户类型,所述账户类型包括单一账户和多账户:
当所述账户类型为单一账户时,所述单一账户具有对所述文件对象进行操作处理的全部权限;
当所述账户类型为多账户时,所述多账户中全部账户共同拥有对所述文件对象的操作处理权限,当多账户中的当前操作账户进行文件对象操作处理时向多账户中的剩余账户申请操作权限,若所述剩余账户通过所述当前操作账户的操作权限申请,允许所述当前操作账户对所述文件对象进行操作处理。
作为基于FPGA与区块链技术的数字文件认证系统的优选方案,还包括:
账户更新模块,用于通过区块链进行所述账户注册信息的更新,当进行注册账户删除时,检测注册账户下是否包含文件对象:若注册账户下包含文件对象,限制注册账户的删除,若注册账户下的文件对象为空,允许注册账户的删除;
文件修改模块,用于当注册用户对文件对象进行修改时,查看所述文件对象的文件信息和注册账户的权限信息,当所述文件对象支持修改操作且注册用户具有修改权限时,允许注册用户对文件对象进行修改;当所述文件对象不支持修改操作或注册用户没有对应修改权限时,限制注册用户对文件对象进行修改;
文件删除模块,用于当注册用户对文件对象进行删除时,查看所述文件对象的文件信息和注册账户的权限信息,当所述文件对象支持删除操作且注册用户具有删除权限时,允许注册用户对文件对象进行删除;当所述文件对象不支持删除操作或注册用户没有对应删除权限时,限制注册用户对文件对象进行删除;
查询模块,用于通过账户注册信息查询注册账户下具有的文件对象、权限信息和操作历史记录;
异构计算模块,用于采用通用计算机进行信息存储和逻辑判断任务处理,通用计算机与FPGA区块节点使用USB转TTL实现通信,FPGA区块节点间使用RS-485实现通信,通用计算机间使用网络协议通信;
区块处理模块,用于区块与区块之间串联成链,每隔固定的时间完成一次区块生成,将生成的区块链接在区块链上,并同步给周边节点。
本发明具有如下优点:获取账户注册信息,账户注册信息包括用户身份信息和注册时间信息,通过区块链对账户注册信息进行存储;获取待上传的文件对象,将文件对象的文件信息写入区块链,并对文件对象进行账户权限配置;判断文件对象对应的账户类型,账户类型包括单一账户和多账户:当账户类型为单一账户时,单一账户具有对文件对象进行操作处理的全部权限;当账户类型为多账户时,多账户中全部账户共同拥有对文件对象的操作处理权限,当多账户中的当前操作账户进行文件对象操作处理时向多账户中的剩余账户申请操作权限,若剩余账户通过当前操作账户的操作权限申请,允许当前操作账户对文件对象进行操作处理。本发明利用区块链和FPGA相结合的方式实现文件存储信息的去中心化,可溯源存储,同时通过FPGA实现区块链的底层算法,提高了系统的计算能力和计算资源利用率。
附图说明
为了更清楚地说明本发明的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引伸获得其它的实施附图。
图1为本发明实施例中提供的基于FPGA与区块链技术的数字文件认证方法示意图;
图2为本发明实施例中提供的基于FPGA与区块链技术的数字文件认证方法技术架构图;
图3为本发明实施例中提供的基于FPGA与区块链技术的数字文件认证方法中FPGA区块节点参数结构;
图4为本发明实施例中提供的基于FPGA与区块链技术的数字文件认证方法中FPGA区块节点有向无环结构;
图5为本发明实施例中提供的基于FPGA与区块链技术的数字文件认证系统示意图;
图6为本发明实施例中提供的基于FPGA与区块链技术的数字文件认证系统层级通信示意图。
具体实施方式
以下由特定的具体实施例说明本发明的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本发明的其他优点及功效,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
参见图1和图2,提供一种基于FPGA与区块链技术的数字文件认证方法,包括以下步骤:
S1、获取账户注册信息,所述账户注册信息包括用户身份信息和注册时间信息,通过区块链对所述账户注册信息进行存储;
S2、获取待上传的文件对象,将所述文件对象的文件信息写入区块链,并对文件对象进行账户权限配置;
S3、判断所述文件对象对应的账户类型,所述账户类型包括单一账户和多账户:
S31、当所述账户类型为单一账户时,所述单一账户具有对所述文件对象进行操作处理的全部权限;
S32、当所述账户类型为多账户时,所述多账户中全部账户共同拥有对所述文件对象的操作处理权限,当多账户中的当前操作账户进行文件对象操作处理时向多账户中的剩余账户申请操作权限,若所述剩余账户通过所述当前操作账户的操作权限申请,允许所述当前操作账户对所述文件对象进行操作处理。
本实施例中,通过区块链进行所述账户注册信息的更新,当进行注册账户删除时,检测注册账户下是否包含文件对象:若注册账户下包含文件对象,限制注册账户的删除,若注册账户下的文件对象为空,允许注册账户的删除。
具体的,账户注册用于将账户的基本信息和注册时间,通过区块链进行存储。同时检测是否有特殊字段具有唯一性,通过区块链进行信息更新,同时需要检测将账户具有的文件信息进行更改,当进行账户删除时,检查所删除的账户是否具有文件,只有删除对应账户下的文件对象后才可删除账户,从而避免文件对象缺少归属账户,避免无账户进行维护处理。
本实施例中,注册账户可以将自己上传的文件对象的下载、修改、删除等权限赋予其它账户,同时权限职能包括单一账户和多账户,单一账户拥有文件对象的修改、删除全部权限;多账户对于文件对象的处理只有部分权限,操作文件对象时需要向多账户下的其它账户申请权限,只有多账户下的其它账户通过申请后,才有权限后进行后续操作。
本实施例中,当注册用户对文件对象进行修改时,查看所述文件对象的文件信息和注册账户的权限信息,当所述文件对象支持修改操作且注册用户具有修改权限时,允许注册用户对文件对象进行修改;当所述文件对象不支持修改操作或注册用户没有对应修改权限时,限制注册用户对文件对象进行修改。
具体的,当某一文件对象的属性为不可修改时,即使注册用户具有修改权限,也不允许进行文件修改,当某一文件对象的属性为可修改,但操作该文件对象的注册用户没有修改权限时,也不允许注册用户对文件对象进行修改,只有当文件对象支持修改操作且注册用户具有修改权限时,才允许注册用户对文件对象进行修改。
本实施例中,当注册用户对文件对象进行删除时,查看所述文件对象的文件信息和注册账户的权限信息,当所述文件对象支持删除操作且注册用户具有删除权限时,允许注册用户对文件对象进行删除;当所述文件对象不支持删除操作或注册用户没有对应删除权限时,限制注册用户对文件对象进行删除。
具体的,当某一文件对象的属性为不可删除时,即使注册用户具有删除权限,也不允许进行文件删除,当某一文件对象的属性为可删除,但操作该文件对象的注册用户没有删除权限时,也不允许注册用户对文件对象进行删除,只有当文件对象支持删除操作且注册用户具有删除权限时,才允许注册用户对文件对象进行删除。
本实施例中,通过账户注册信息查询注册账户下具有的文件对象、权限信息和操作历史记录。注册账户可以通过地址信息或者预设的特殊字段,查看自己具有的文件对象的文件信息、权限信息,以及对于文件对象操作的历史记录。通过账户地址信息或者特殊字段,查看文件对象的安全分析报告;所述安全分析报告源于对于文件的权限信息和操作记录数据的统计分析。
本实施例中,通过FPGA执行区块链的底层算法,所述底层算法包括非对称算法、哈希算法、共识算法和区块打包。采用通用计算机进行信息存储和逻辑判断任务处理,通用计算机与FPGA区块节点使用USB转TTL实现通信,FPGA区块节点间使用RS-485实现通信,通用计算机间使用网络协议通信。
具体的,通用计算机处理以调度为主的问题,主要进行信息存储和逻辑判断等任务。FPGA主要执行区块链的非对称算法,哈希算法(SHA-256),共识算法(PBFT)和区块打包等以计算为主的任务,通用计算机和FPGA区块节点之间通过USB转TTL方案实现数据同步。
具体的,FPGA之间的数据同步通过RS-485协议实现,构建四个功能,控制功能负责管理待发送的消息,发送消息功能用于消息发送,接受消息功能用于消息接收,标志位功能用于显示消息的状态。
参见图3和图4,本实施例中,区块与区块之间串联成链,每隔固定的时间完成一次区块生成,将生成的区块链接在区块链上,并同步给周边节点。
具体的,区块内的数据大部分由交易数据和消息数据构成,因此可以把区块链看作一本交易消息账本,交易是指区块链上注册账户与注册账户之间发生的货币转移信息,消息是指区块链上的账户间相互加密通信,交易数据。
具体的,FPGA区块节点与FPGA区块节点之间串联成链,每隔一个固定时间完成一次区块生成,生成的区块链接在区块链上,并迅速同步给周边节点。区块与区块之间通过哈希值链接,当前区块的哈希值指向下一个区块,区块链是一条有向无环链,每个节点均保留一条完整的区块链。
具体的,通过Pos共识算法得到需要打包的节点,赋予这些节点账户权益;打包节点与其他节点进行交易信息同步,然后通过哈希算法计算交易信息得到哈希值,同时记录最新一个区块信息,与之形成串联;最后实现节点间的区块同步,并将产生的区块信息存储到通用计算机。
综上所述,本发明通过获取账户注册信息,账户注册信息包括用户身份信息和注册时间信息,通过区块链对账户注册信息进行存储;获取待上传的文件对象,将文件对象的文件信息写入区块链,并对文件对象进行账户权限配置;判断文件对象对应的账户类型,账户类型包括单一账户和多账户:当账户类型为单一账户时,单一账户具有对文件对象进行操作处理的全部权限;当账户类型为多账户时,多账户中全部账户共同拥有对文件对象的操作处理权限,当多账户中的当前操作账户进行文件对象操作处理时向多账户中的剩余账户申请操作权限,若剩余账户通过当前操作账户的操作权限申请,允许当前操作账户对文件对象进行操作处理。本发明利用区块链和FPGA相结合的方式实现文件存储信息的去中心化,可溯源存储,同时通过FPGA实现区块链的底层算法,提高了系统的计算能力和计算资源利用率。
实施例2
参见图5和图6,本发明还提供一种基于FPGA与区块链技术的数字文件认证系统,包括:
账户管理模块1,用于获取账户注册信息,所述账户注册信息包括用户身份信息和注册时间信息,通过区块链对所述账户注册信息进行存储;
文件管理模块2,用于获取待上传的文件对象,将所述文件对象的文件信息写入区块链,并对文件对象进行账户权限配置;
权限管理模块3,用于判断所述文件对象对应的账户类型,所述账户类型包括单一账户和多账户:
当所述账户类型为单一账户时,所述单一账户具有对所述文件对象进行操作处理的全部权限;
当所述账户类型为多账户时,所述多账户中全部账户共同拥有对所述文件对象的操作处理权限,当多账户中的当前操作账户进行文件对象操作处理时向多账户中的剩余账户申请操作权限,若所述剩余账户通过所述当前操作账户的操作权限申请,允许所述当前操作账户对所述文件对象进行操作处理。
本实施例中,还包括:
账户更新模块4,用于通过区块链进行所述账户注册信息的更新,当进行注册账户删除时,检测注册账户下是否包含文件对象:若注册账户下包含文件对象,限制注册账户的删除,若注册账户下的文件对象为空,允许注册账户的删除;
文件修改模块5,用于当注册用户对文件对象进行修改时,查看所述文件对象的文件信息和注册账户的权限信息,当所述文件对象支持修改操作且注册用户具有修改权限时,允许注册用户对文件对象进行修改;当所述文件对象不支持修改操作或注册用户没有对应修改权限时,限制注册用户对文件对象进行修改;
文件删除模块6,用于当注册用户对文件对象进行删除时,查看所述文件对象的文件信息和注册账户的权限信息,当所述文件对象支持删除操作且注册用户具有删除权限时,允许注册用户对文件对象进行删除;当所述文件对象不支持删除操作或注册用户没有对应删除权限时,限制注册用户对文件对象进行删除;
查询模块7,用于通过账户注册信息查询注册账户下具有的文件对象、权限信息和操作历史记录;
数据分析模块8,用于通过账户地址信息或者特殊字段,查看文件对象的安全分析报告;所述安全分析报告源于对于文件的权限信息和操作记录数据的统计分析;
异构计算模块9,用于采用通用计算机进行信息存储和逻辑判断任务处理,通用计算机与FPGA区块节点使用USB转TTL实现通信,FPGA区块节点间使用RS-485实现通信,通用计算机间使用网络协议通信;
区块处理模块10,用于区块与区块之间串联成链,每隔固定的时间完成一次区块生成,将生成的区块链接在区块链上,并同步给周边节点。
需要说明的是,上述系统各模块/单元之间的信息交互、执行过程等内容,由于与本申请实施例1中的方法实施例基于同一构思,其带来的技术效果与本申请方法实施例相同,具体内容可参见本申请前述所示的方法实施例中的叙述,此处不再赘述。
实施例3
本发明实施例3提供一种计算机可读存储介质,所述计算机可读存储介质中存储基于FPGA与区块链技术的数字文件认证方法程序代码,所述程序代码包括用于执行实施例1或其任意可能实现方式的基于FPGA与区块链技术的数字文件认证方法指令。
计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(SolidStateDisk、SSD))等。
实施例4
本发明实施例4提供一种电子设备,所述电子设备包括处理器,所述处理器与存储介质耦合,当所述处理器执行存储介质中的指令时,使得所述电子设备执行实施例1或其任意可能实现方式的基于FPGA与区块链技术的数字文件认证方法。
具体的,处理器可以通过硬件来实现也可以通过软件来实现,当通过硬件实现时,该处理器可以是逻辑电路、集成电路等;当通过软件来实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现,该存储器可以集成在处理器中,可以位于所述处理器之外,独立存在。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
虽然,上文中已经用一般性说明及具体实施例对本发明作了详尽的描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。
Claims (9)
1.基于FPGA与区块链技术的数字文件认证方法,其特征在于,包括以下步骤:
获取账户注册信息,所述账户注册信息包括用户身份信息和注册时间信息,通过区块链对所述账户注册信息进行存储;
获取待上传的文件对象,将所述文件对象的文件信息写入区块链,并对文件对象进行账户权限配置;
判断所述文件对象对应的账户类型,所述账户类型包括单一账户和多账户:
当所述账户类型为单一账户时,所述单一账户具有对所述文件对象进行操作处理的全部权限;
当所述账户类型为多账户时,所述多账户中全部账户共同拥有对所述文件对象的操作处理权限,当多账户中的当前操作账户进行文件对象操作处理时向多账户中的剩余账户申请操作权限,若所述剩余账户通过所述当前操作账户的操作权限申请,允许所述当前操作账户对所述文件对象进行操作处理;
通过FPGA执行区块链的底层算法,所述底层算法包括非对称算法、哈希算法、共识算法和区块打包。
2.根据权利要求1所述的基于FPGA与区块链技术的数字文件认证方法,其特征在于,通过区块链进行所述账户注册信息的更新,当进行注册账户删除时,检测注册账户下是否包含文件对象:若注册账户下包含文件对象,限制注册账户的删除,若注册账户下的文件对象为空,允许注册账户的删除。
3.根据权利要求1所述的基于FPGA与区块链技术的数字文件认证方法,其特征在于,当注册用户对文件对象进行修改时,查看所述文件对象的文件信息和注册账户的权限信息,当所述文件对象支持修改操作且注册用户具有修改权限时,允许注册用户对文件对象进行修改;当所述文件对象不支持修改操作或注册用户没有对应修改权限时,限制注册用户对文件对象进行修改。
4.根据权利要求1所述的基于FPGA与区块链技术的数字文件认证方法,其特征在于,当注册用户对文件对象进行删除时,查看所述文件对象的文件信息和注册账户的权限信息,当所述文件对象支持删除操作且注册用户具有删除权限时,允许注册用户对文件对象进行删除;当所述文件对象不支持删除操作或注册用户没有对应删除权限时,限制注册用户对文件对象进行删除。
5.根据权利要求1所述的基于FPGA与区块链技术的数字文件认证方法,其特征在于,通过账户注册信息查询注册账户下具有的文件对象、权限信息和操作历史记录;
通过账户地址信息或者特殊字段,查看文件对象的安全分析报告;所述安全分析报告源于对于文件的权限信息和操作记录数据的统计分析。
6.根据权利要求1所述的基于FPGA与区块链技术的数字文件认证方法,其特征在于,采用通用计算机进行信息存储和逻辑判断任务处理,通用计算机与FPGA区块节点使用USB转TTL实现通信,FPGA区块节点间使用RS-485实现通信,通用计算机间使用网络协议通信。
7.根据权利要求6所述的基于FPGA与区块链技术的数字文件认证方法,其特征在于,区块与区块之间串联成链,每隔固定的时间完成一次区块生成,将生成的区块链接在区块链上,并同步给周边节点。
8.基于FPGA与区块链技术的数字文件认证系统,其特征在于,包括:
账户管理模块,用于获取账户注册信息,所述账户注册信息包括用户身份信息和注册时间信息,通过区块链对所述账户注册信息进行存储;
文件管理模块,用于获取待上传的文件对象,将所述文件对象的文件信息写入区块链,并对文件对象进行账户权限配置;
权限管理模块,用于判断所述文件对象对应的账户类型,所述账户类型包括单一账户和多账户:
当所述账户类型为单一账户时,所述单一账户具有对所述文件对象进行操作处理的全部权限;
当所述账户类型为多账户时,所述多账户中全部账户共同拥有对所述文件对象的操作处理权限,当多账户中的当前操作账户进行文件对象操作处理时向多账户中的剩余账户申请操作权限,若所述剩余账户通过所述当前操作账户的操作权限申请,允许所述当前操作账户对所述文件对象进行操作处理;
通过FPGA执行区块链的底层算法,所述底层算法包括非对称算法、哈希算法、共识算法和区块打包。
9.根据权利要求8所述的基于FPGA与区块链技术的数字文件认证系统,其特征在于,还包括:
账户更新模块,用于通过区块链进行所述账户注册信息的更新,当进行注册账户删除时,检测注册账户下是否包含文件对象:若注册账户下包含文件对象,限制注册账户的删除,若注册账户下的文件对象为空,允许注册账户的删除;
文件修改模块,用于当注册用户对文件对象进行修改时,查看所述文件对象的文件信息和注册账户的权限信息,当所述文件对象支持修改操作且注册用户具有修改权限时,允许注册用户对文件对象进行修改;当所述文件对象不支持修改操作或注册用户没有对应修改权限时,限制注册用户对文件对象进行修改;
文件删除模块,用于当注册用户对文件对象进行删除时,查看所述文件对象的文件信息和注册账户的权限信息,当所述文件对象支持删除操作且注册用户具有删除权限时,允许注册用户对文件对象进行删除;当所述文件对象不支持删除操作或注册用户没有对应删除权限时,限制注册用户对文件对象进行删除;
查询模块,用于通过账户注册信息查询注册账户下具有的文件对象、权限信息和操作历史记录;
数据分析模块,用于通过账户地址信息或者特殊字段,查看文件对象的安全分析报告;所述安全分析报告源于对于文件的权限信息和操作记录数据的统计分析;
异构计算模块,用于采用通用计算机进行信息存储和逻辑判断任务处理,通用计算机与FPGA区块节点使用USB转TTL实现通信,FPGA区块节点间使用RS-485实现通信,通用计算机间使用网络协议通信;
区块处理模块,用于区块与区块之间串联成链,每隔固定的时间完成一次区块生成,将生成的区块链接在区块链上,并同步给周边节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110963205.XA CN113704238B (zh) | 2021-08-20 | 2021-08-20 | 基于fpga与区块链技术的数字文件认证方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110963205.XA CN113704238B (zh) | 2021-08-20 | 2021-08-20 | 基于fpga与区块链技术的数字文件认证方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113704238A CN113704238A (zh) | 2021-11-26 |
CN113704238B true CN113704238B (zh) | 2024-01-30 |
Family
ID=78653745
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110963205.XA Active CN113704238B (zh) | 2021-08-20 | 2021-08-20 | 基于fpga与区块链技术的数字文件认证方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113704238B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102132118B1 (ko) * | 2019-03-21 | 2020-07-08 | 울산대학교 산학협력단 | 블록체인 기반 작업공간 제공 장치 및 방법 |
CN111741015A (zh) * | 2020-07-21 | 2020-10-02 | 百度在线网络技术(北京)有限公司 | 区块链网络中操作处理方法、装置、设备和介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3405862B1 (en) * | 2016-01-19 | 2020-11-18 | Priv8Pay, Inc. | Network node authentication |
US10535065B2 (en) * | 2016-06-11 | 2020-01-14 | Business Information Exchange System Corp. | Secure payment transactions based on the public bankcard ledger |
US20210012332A1 (en) * | 2018-04-24 | 2021-01-14 | Duvon Corporation | Autonomous exchange via entrusted ledger digital signature |
CN108667618B (zh) * | 2018-05-10 | 2020-07-03 | 阿里巴巴集团控股有限公司 | 区块链成员管理的数据处理方法、装置、服务器及系统 |
US20200058012A1 (en) * | 2018-08-20 | 2020-02-20 | Mastercard International Incorporated | System, computer-readable media and computer-implemented method for automated, multi-account purchase control |
-
2021
- 2021-08-20 CN CN202110963205.XA patent/CN113704238B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102132118B1 (ko) * | 2019-03-21 | 2020-07-08 | 울산대학교 산학협력단 | 블록체인 기반 작업공간 제공 장치 및 방법 |
CN111741015A (zh) * | 2020-07-21 | 2020-10-02 | 百度在线网络技术(北京)有限公司 | 区块链网络中操作处理方法、装置、设备和介质 |
Non-Patent Citations (3)
Title |
---|
BlockCAM: A Blockchain-Based Cross-Domain Authentication Model;Wentong Wang 等;2018 IEEE Third International Conference on Data Science in Cyberspace (DSC);896-901 * |
基于区块链的微认证系统架构;刘越 等;计算机系统应用(第06期);73-79 * |
基于区块链的身份认证系统设计与实现;韦智勇;软件工程;37-40 * |
Also Published As
Publication number | Publication date |
---|---|
CN113704238A (zh) | 2021-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107577427B (zh) | 用于区块链系统的数据迁移方法、设备和存储介质 | |
CN101313495B (zh) | 数据同步方法、系统及装置 | |
CN102682052B (zh) | 过滤数据存储上的查询数据 | |
US9244958B1 (en) | Detecting and reconciling system resource metadata anomolies in a distributed storage system | |
WO2017092470A1 (zh) | 数据存储方法和装置 | |
US10860604B1 (en) | Scalable tracking for database udpates according to a secondary index | |
US10936559B1 (en) | Strongly-consistent secondary index for a distributed data set | |
US10712964B2 (en) | Pre-forking replicas for efficient scaling of a distributed data storage system | |
US10275400B1 (en) | Systems and methods for forming a fault-tolerant federated distributed database | |
CN110880966B (zh) | 一种域名解析系统搭建和域名查询方法 | |
US10013449B1 (en) | Validating and non-validating secondary indexes for a table in a non-relational data store | |
CN106649676A (zh) | 一种基于hdfs存储文件的去重方法及装置 | |
CN104468274A (zh) | 一种集群监控管理方法及系统 | |
CN111897808B (zh) | 一种数据处理方法、装置、计算机设备及存储介质 | |
CN109145053B (zh) | 数据处理方法和装置、客户端、服务器 | |
CN111209120A (zh) | 微服务的数据同步方法、装置及计算机可读存储介质 | |
CN110941676A (zh) | 一种配置方法、装置、设备及介质 | |
CN104461929B (zh) | 基于拦截器的分布式数据缓存方法 | |
CN113704238B (zh) | 基于fpga与区块链技术的数字文件认证方法及系统 | |
US7409380B1 (en) | Facilitated reuse of K locations in a knowledge store | |
CN115658742A (zh) | 一种现场级主动标识载体的标识解析方法及系统 | |
US20220067047A1 (en) | Method, apparatus, device and storage medium for generating and processing a distributed graph database | |
CN112035471B (zh) | 一种事务处理方法及计算机设备 | |
CN109032804B (zh) | 数据处理方法和装置、服务器 | |
CN110347751B (zh) | 管理cdn系统业务属性的方法及装置 |
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 |