CN114238867B - 一种分布式多备份的版权内容的自动切换存取方法 - Google Patents

一种分布式多备份的版权内容的自动切换存取方法 Download PDF

Info

Publication number
CN114238867B
CN114238867B CN202210183315.9A CN202210183315A CN114238867B CN 114238867 B CN114238867 B CN 114238867B CN 202210183315 A CN202210183315 A CN 202210183315A CN 114238867 B CN114238867 B CN 114238867B
Authority
CN
China
Prior art keywords
content
node
object data
content object
nodes
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
CN202210183315.9A
Other languages
English (en)
Other versions
CN114238867A (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.)
Nankai University
Original Assignee
Nankai University
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 Nankai University filed Critical Nankai University
Priority to CN202210183315.9A priority Critical patent/CN114238867B/zh
Publication of CN114238867A publication Critical patent/CN114238867A/zh
Application granted granted Critical
Publication of CN114238867B publication Critical patent/CN114238867B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/045Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply hybrid encryption, i.e. combination of symmetric and asymmetric encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • 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/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • 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/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • H04L2209/603Digital right managament [DRM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/101Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measures for digital rights management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开一种分布式多备份的版权内容的自动切换存取方法,在存储版权内容时,将内容元数据利用内容链进行存储,将内容对象数据采用多结点备份机制加密存储,实现内容分级存储;其中,在发布结点将内容对象数据存储成功后,从内容链的其余结点中自动选择两个内容结点作为备份结点对内容对象数据进行备份,使内容对象数据在结点中均匀分布,使结点负载均衡。本发明的多结点备份机制使得某一版权内容由多结点维护,不依赖于某一中心化的结点,在保证版权内容不丢失且可长期保存的同时,节省了存储空间,且版权内容在结点中加密存储,保证了版权内容的安全性。

Description

一种分布式多备份的版权内容的自动切换存取方法
技术领域
本发明涉及版权内容存储技术领域,具体的涉及一种分布式多备份的版权内容的自动切换存取方法。
背景技术
在传统的版权内容存储网络中,多数情况下,版权内容由单一的平台集中存储与维护,当平台遭受攻击或出现故障时,用户在该平台发布的版权内容可能会出现丢失的情况,也就是说在该平台中版权内容得不到持久性保证。从某种意义上来说,用户对内容版权并非真正的拥有,只是一种租用关系,一旦平台出现问题,用户的版权内容也得不到保证;
由于版权内容在平台上单一存储,版权内容的安全性与可靠性也得不到保证,如果版权内容被篡改或丢失,无法对版权内容进行恢复;除此之外,这种集中式的存储结构不利于版权内容的共享,版权内容分散在各个内容发布平台,各平台之间信息难共享;由于发布平台对用户版权内容的单一控制,使得用户在获取版权内容时处于被动的位置,同样如果平台出现问题,用户已购买的版权内容得不到保证;
现有的研究方案提出利用区块链解决上述问题,一些研究方案将内容本身分布式存储在区块中,给区块本身造成了很大的存储压力。因此,一些学者提出将内容进行分片存储,这种方式在一定程度上减缓了区块链的存储压力,但是,当随着区块增加,还是会给区块本身带来存储压力;另一种解决方案是将内容存储在第三方数据库中,而将存储索引存储在区块链中,这种方案虽然解决了区块链本身的存储压力,但是内容的可靠性与安全性以及内容的存取取决于第三方数据库的可靠性。
针对以上问题,需要设计一种版权内容存取方法,使得用户的版权内容能得到永久性保存,且版权内容的安全性与可靠性能得到保证。除此之外,还要保证版权内容均匀分布,版权内容获取的主动权在用户手中,用户在任何时间都可获取内容,且整个获取过程安全可靠。
发明内容
本发明的目的是提出一种分布式多备份的版权内容的自动切换存取方法,将内容元数据利用内容链进行存储,而内容对象数据采用多结点备份机制存储,实现内容分级存储。
本发明是这样实现的:
一种自动切换的多备份版权内容存取方法,
存储版权内容时,将版权内容的内容元数据利用内容链进行存储,将版权内容的内容对象数据采用多结点备份机制加密存储,实现内容分级存储;
其中,在发布结点将保存内容对象数据存储成功后,从内容链的其余结点中自动选择两个内容结点作为备份结点对内容对象数据进行备份,使内容对象数据在所有结点中均匀分布,使结点负载均衡;
所述多结点备份机制是,每个内容对象数据存储三个备份:当一个备份丢失、内容结点宕机或退出内容链时,自动对数据进行再备份,使内容对象数据始终存储三个备份;
从存储所述内容对象数据的结点获取所述内容对象数据时,在获取加密后内容对象数据后,先验证加密后的内容对象数据的完整性,再对从许可认证结点获取用户阅读内容许可进行解密,之后进行内容对象数据解密。
其中,通过内容哈希与内容唯一标识将内容元数据与内容对象数据关联,实现通过哈希验证使版权内容不被篡改。
其中,对内容对象数据加密存储,是利用对称加密算法对内容对象数据加密处理,然后对所述对称加密算法的内容对称加密密钥利用用户私钥进行非对称加密操作,再利用设备私钥进行二次非对称加密;
获取到内容对象数据后,先利用内容哈希值验证内容对象数据的完整性,再利用用户公钥、设备公钥对加密后的内容对称加密密钥进行解密,之后再用解密后的内容对称加密密钥解密内容对象数据;
其中,内容对称加密密钥、用户公钥、用户私钥、设备公钥,设备私钥存储在许可认证结点中。
其中,所述内容对象数据进行内容分级存储时采用多级目录散列结构存储到内容结点的本地文件系统中。
其中,所述多结点备份机制,对数据进行再备份,使内容对象数据始终存储三个备份;具体步骤如下:
种子结点定时检查时备份:
每个种子结点检查内容结点中内容的完整性,根据内容目录列表及内容对象存储位置表,利用内容哈希定期检查内容对象数据完整性;每一个内容对象的完整性检查包括对存储内容对象数据的三个内容结点的检查;发现数据丢失时,随机向内容对象存储位置表中记录的其余两个内容结点发起请求,获取内容对象数据,并根据cid将内容对象存储到丢失数据的内容结点的本地文件系统中;
内容结点宕机导致故障时备份:
当内容结点因故障重置数据后,先从区块中记录的数据恢复出内容目录列表中的数据及内容对象存储位置表中的数据,内容结点遍历内容对象存储位置表查找与自身相关的内容;在存储要请求的内容的其余两个内容结点中随机选取一个,请求内容对象数据;根据返回的数据及目录索引cid,将请求到的内容对象数据存储在自身本地文件系统中;直到遍历完整个内容对象存储位置表;
内容结点退出系统时备份:
遍历内容对象存储位置表,查询要退出系统的内容结点存储的内容对象的目录索引cid,选出新的内容结点,对要退出系统的内容结点存储的内容对象进行备份存储;备份成功后发起共识请求,将内容存储位置变更写入区块中;依次对该内容结点存储的内容对象数据进行备份。
其中,所述内容元数据利用内容链进行存储时,是将内容元数据的共识数据形成的区块存储于levelDB中,然后再从区块中恢复出内容目录列表,将内容目录列表存储于postgreSQL中,所述内容对象数据采用多结点备份机制加密存储时,是存储于本地的文件系统中。
其中,所述内容对象数据始终存储三个备份时,三个备份通过许可认证结点生成的对称密钥加密处理后,保存在内容结点的本地文件系统中。
其中,所述从内容链的其余结点中自动选择两个内容结点作为备份结点对内容对象数据进行备份,其步骤如下:
(1)发布结点对发布系统发布的内容对象数据进行保存,根据目录索引cid将内容对象数据保存在发布结点相应的目录下;
(2)发布结点将内容数据存储成功后,选出两个内容结点作为备份结点以备份内容对象数据;
(3)通过调用基于http协议之上的结点间命令,将内容的目录索引cid及内容对象数据发送给备份结点,请求备份结点对内容对象数据进行存储;
(4)备份结点接收到请求后,执行存储流程,执行完成后将结果返回给发布结点;
(5)如果发布结点接收到存储失败的结果,再次从所有内容结点中选出一个结点作为备份结点;
(6)直到收到两个存储成功的结果时,结束备份;
(7)发布结点发起共识请求,将内容存储位置写入区块中。
其中,获取加密后的内容对象数据的步骤如下:
(11)根据要获取的内容对象的cid,在任意一个种子结点的内容对象数据存储位置表中查询存储内容对象数据的内容结点id;
(12)从查找到的三个内容结点中随机选取一个内容结点;
(13)根据cid向该内容结点请求内容对象数据;
(14)该内容结点根据目录索引cid从自身本地文件系统中获取内容对象数据,并将结果返回;
(15)如果出现选取的内容结点出现故障而无法获取内容对象时,重复以上步骤,从剩余内容结点中选取新的结点进行内容获取;
获取用户阅读内容许可的步骤如下:
(21)许可认证结点查询用户是否有获取内容的权限,如果有,进入下一步骤,否则返回获取失败;
(22)许可认证结点根据目录索引cid获取用户内容许可,再利用阅读设备的设备私钥对用户内容许可进行非对称加密操作,得到用户阅读内容许可;
(23)返回用户阅读内容许可;
用户得到用户阅读内容许可后,使用设备公钥及用户公钥进行解密,得到原始的内容对称加密密钥,利用该原始的内容对称加密密钥对内容进行解密。
本发明的多结点备份机制使得某一版权内容由多结点维护,不依赖于某一中心化的结点,在保证版权内容不丢失且可长期保存的同时,节省了存储空间,且版权内容在结点中加密存储,保证了版权内容的安全性,而对于购买版权内容的用户来说,版权内容不会因为发布平台出现问题而无法获取;在保存内容对象数据时,通过结点选取机制选择内容结点,保证内容在所有结点中均匀分布,即结点负载均衡;通过哈希验证保证版权内容不被篡改;通过加密机制保证用户获取版权内容的整个过程安全可靠。
附图说明
图1是本发明实施例的版权内容存取方法的整体存储模型图;
图2是本发明实施例的内容对象数据保存结构图;
图3是本发明实施例的内容对象数据获取结构图;
图4是本发明实施例的内容迁移结构图。
具体实施方式
以下结合附图和具体实施例对本发明作进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例中,结点表示相互通信连接而形成数字内容链网络的多个单元结构,多个构成内容链的单元结构间相互通信,形成网络结构,与传统区块链中顺序排列的节点的含义存在区别。
本发明实施例中,从运行方式上分类将数字内容链网络涉及的结点分为四种类型,包括根结点、种子结点、普通结点、许可认证结点;
根结点:从种子结点中选取,维护对所有种子结点的评分,具有种子结点的全部功能权限;
种子结点:各自维护一份对根结点的评分,种子结点可以参与内容元数据的共识过程,对共识后的区块进行存储;
普通结点:普通结点与种子结点功能相同,但不参与共识;
许可认证结点:许可认证结点是独立于整个内容链的结点,用于颁发版权保护过程中需要的许可证书。
本发明中,从内容链的全部结点,包括根结点、种子结点、普通结点中选取相应的结点作为备份用的内容结点(备份结点),对内容对象数据进行备份。
本发明中从角色上分类将内容链中的结点分为两种类型,包括发布结点和备份结点;
发布结点:版权内容发布系统可以与本发明中的内容链中的种子结点和\或普通结点连接,从而实现内容元数据与内容对象数据的存储,此时发布系统连接的种子结点或普通结点可以是被称为发布结点,此发布结点同时作为内容对象数据三备份存储的内容结点之一,对内容对象数据进行存储;
备份结点:除发布结点外的其余两个对内容对象数据三备份存储的结点,该结点从剩余的种子结点、普通结点中选取;
本发明中版权内容存取主要是包括内容元数据共识存储、内容对象数据存储,整体存储模型如图1所示,具体的,内容元数据以及内容对象数据共同存储于数据持久层,内容元数据共识存储于levelDB中,然后再从区块中恢复出内容目录列表存储于postgreSQL中,内容对象数据存储本地的文件系统中。
本发明的内容链在区块链的基础上进行扩展设计,将内容与区块链充分融合。设计专门存储内容的内容结点,采用多级目录散列结构,将内容对象数据存储到内容结点的本地文件系统中,使内容目录具有可管理性,由于内容结点是可信可控的,所以可以保证内容的安全性与可靠性。将内容元数据存储在内容链中,实现内容分级存储。通过内容哈希与内容唯一标识将内容元数据与内容对象数据关联。设计许可认证结点负责内容版权保护,通过对内容对象数据进行加密,实现内容版权保护机制;
本发明中,每个内容对象数据存储三个备份,在节省存储成本的同时,保证了内容对象数据的可靠性。当一个备份丢失时,自动对数据进行再备份,保证对象数据始终存储三个备份。当内容结点宕机或退出内容链时,也有相应的备份机制。为了提高存储内容对象数据的内容结点的存储性能,在保存对象数据时可以是根据预设的结点选取机制,选出最优结点。为了保证存储的可扩展性,当需要扩展存储容量时,在系统中加入内容结点即可;
本发明中,内容对象存储安全性考虑两个方面,一是内容存储后不丢失;二是内容获取时不被窃取。为了保证内容存储后不丢失,种子结点轮流实现对内容对象数据完整性的验证,及时发现并处理结点丢失数据情况;当结点因故障重置数据后,对存储的内容对象数据进行恢复;当内容结点永久退出系统时,保证结点中存储的数据完成备份。
本发明中,为了保证内容对象数据的安全性与一致性,引入双层加密验证机制。利用许可认证结点对此过程中涉及到的密钥及许可进行管理,包括以下几种类型的密钥及许可:
(1)用户身份公私钥:用户身份公私钥是非对称密钥,将用户身份公私钥中的公钥称为用户公钥,用户身份公私钥中的私钥称为用户私钥。
(2)结点公私钥:结点公私钥是非对称密钥,由内容链其他结点的公私钥对组成,将结点公私钥中的公钥称为结点公钥,结点公私钥中的私钥称为结点私钥。
(3)设备公私钥:设备公私钥是非对称密钥,将设备公私钥中的公钥称为设备公钥,设备公私钥中的私钥称为设备私钥。
(4)内容对称加密密钥:内容链加密密钥为对称密钥,用于对内容对象数据进行加密。
(5)用户内容许可:将使用用户公钥对内容对称加密密钥进行加密之后的结果称为用户内容许可。
(6)用户阅读内容许可:将使用设备公钥对用户内容许可加密之后的结果称为用户阅读内容许可。
首先,利用对称加密算法对内容对象数据加密处理,针对内容对称加密密钥利用用户私钥进行非对称加密操作,再利用设备私钥进行二次非对称加密以保证内容对称加密密钥的安全性,内容对称加密密钥、用户公私钥、设备公私钥存储在许可认证结点中。
除此之外,将内容元数据、内容哈希值等信息通过交易存储在区块中。
在获取到内容对象数据后,先利用内容哈希值验证内容对象数据的完整性,再利用用户公钥、设备公钥对用户阅读内容许可进行解密,之后再用解密后的内容对称加密密钥进行内容对象数据解密。
下面具体的对本发明实施例的存储结构、内容结点选取、内容对象数据保存获取方案、内容备份机制进行说明。
1. 存储结构
内容对象数据采用多级目录散列结构存储在内容结点本地文件系统中。
目录索引(cid)是由许可认证结点维护的顺序计数器生成的自然数,长度为13位,顺序计数器的计数范围从0000,000,000,000 - 9999,999,999,999,可以包含八位32进制所有的字符编码(转换为自然数为0-1099,511,627,775)。
将生成的自然数转换成八位32进制字符编码,32进制的可读性更强,32进制表示方法如下:
0-9,A-10 B-11 C-12 D-13 E-14 F-15 G-16
H-17 J-18 K-19 L-20 M-21 N-22 P-23 Q-24
R-25 T-26 U-27 V-28 W-29 X-30 Y-31
将转换后的八位32进制字符编码作为cid,目录分为四级,cid中的每两位对应一级目录。
2. 内容结点选取
内容结点选取时可以是根据结点的存储空间、结点评分或是结点的地理位置的任一方法筛选出符合条件的结点作为备份用的内容结点(备份结点)。
(1)存储空间
当结点剩余空间大小大于需要存储的内容对象数据实际大小的100倍时,认为结点是符合存储条件的内容结点,可以进入到下一步筛选。
(2)结点评分
将筛选出的内容结点根据结点评分排序,从中选取结点评分小于中位数的内容结点。
结点评分方法可以是采用如下方法来实现:
内容链运行过程中,当有结点加入到内容链中时,将要加入的结点视为普通结点,将内容链中所有结点的结点评分的平均评分作为加入的结点的初始评分,之后对内容链中所有结点根据评分方法,在每个结点的初始评分的基础上进行评分,获得实时的结点评分,其中结点评分可以是包括对结点心跳反应和\或存取成功率两部分评估。通过心跳检测机制和\或对存取成功率的检测,对内容链中所有结点进行评分;其中,内容链初始化时,内容链中所有结点的初始评分均设置为0;
结点评分用d表示,d值越大,表明结点质量越差。
具体评分步骤如下:
1)心跳检测:
心跳检测包括根结点定时对包括自己在内的结点进行心跳检测,以及种子结点定时对根结点进行心跳检测;当根结点对包括自己在内的结点进行心跳检测时,在到达约定的时间间隔x后,根结点对被检测的结点发送一个不带任何参数的请求,被检测的结点则返回一个不带任何数据的响应;若根结点请求成功并接受到了被检测的结点的响应,则心跳检测成功;否则,心跳检测失败,此时根结点将被检测结点的d值加1。种子结点对根结点进行心跳检测的步骤与根结点对包括自己在内的结点进行心跳检测的步骤相同,若种子结点对根结点心跳检测失败,则种子结点将根结点的d值加1。
2)存储失败:
结点在存储内容时,如果存储失败且存储内容的这一结点不是根结点,发布结点会收到存储失败的结果,此时,发布结点将存储内容的这一结点存储失败的消息发送给根结点,根结点接收到消息后,将存储失败的结点的d值加1;如果存储内容的这一结点是根结点,发布结点则将根结点存储失败的消息发送给所有种子结点及根结点,种子结点收到消息后将根结点的d值加1,根结点收到消息后将自己的d值加1。
3)获取失败:
如果从某一结点获取内容失败且该被获取内容的这一结点不是根结点,则向根结点发送获取失败信息,根结点接收到消息后,将被获取内容的结点的d值加1;如果该被获取内容的这一结点是根结点,则将获取失败信息发送给所有种子结点及根结点,种子结点收到消息后将根结点的d值加1,根结点收到消息后将自己的d值加1。
其中,每经历一个监测周期,根结点将要维护评分的结点的d值以及种子结点将自己维护的根结点的d值按以下式进行设置:
Figure 70950DEST_PATH_IMAGE001
式中,dn表示第n个监测周期要维护评分的结点或根结点的d值,wi表示第i个监测周期要维护评分的结点或根结点的d值所占权重,di表示第i个监测周期要维护评分的结点或根结点的d值;其中,每个监测周期,内容链中要维护评分的结点的初始的基础评分为0。
(3)地理位置
根据ip地址计算选出的内容结点与发布结点间的距离,地理位置越远,优先级越高。将内容结点根据距离值进行排序,从中选出距离值大于中位数的内容结点。
随机从根据上述的三种方法之一选取出的符合条件的结点中选取两个内容结点,作为备份结点,计算公式如下:
m = random.sample(n, 2),其中m表示选出的内容结点,n表示之前选择出的所有符合条件的内容结点。
3. 内容对象数据保存
内容对象数据保存三个副本,通过许可认证结点生成的对称密钥加密处理后,保存在内容结点的本地文件系统中,保存流程如图2所示,具体步骤如下:
(1)发布结点对发布系统发布的内容对象进行保存,根据目录索引cid将内容对象保存在发布结点相应的目录下;
(2)发布结点将数据存储成功后,选出两个内容结点作为备份结点备份内容对象数据;
(3)通过调用基于http协议之上的结点间命令,将内容的目录索引cid及内容对象数据发送给备份结点,请求备份结点对内容对象数据进行存储;
(4)备份结点接收到请求后,执行存储流程,执行完成后将结果返回给发布结点;
(5)如果发布结点接收到存储失败的结果,从所有内容结点中选出一个结点作为备份结点;
(6)直到收到两个存储成功的结果时,结束备份;
(7)发布结点发起共识请求,将内容存储位置写入区块中。
4. 内容对象数据获取
在获取内容对象数据时包括两部分,一部分是从内容结点中获取加密后的内容对象数据;另一部分是许可认证结点获取用户阅读内容许可。内容获取如图3所示,具体步骤如下:
获取内容对象数据的步骤如下:
(1)根据要获取的内容对象的cid,在任意一个种子结点的内容对象数据存储位置表中查询存储内容对象数据的内容结点id;
(2)从查找到的三个内容结点中随机选取一个内容结点;
(3)根据cid向该内容结点请求内容对象数据;
(4)该内容结点根据目录索引cid从自身本地文件系统中获取内容对象数据,并将结果返回;
(5)如果出现选取的内容结点出现故障而无法获取内容对象时,重复以上步骤,从剩余内容结点中选取新的结点进行内容获取;
获取用户阅读内容许可的步骤如下:
(1)许可认证结点查询用户是否有获取内容的权限,如果有,进入下一步骤,否则返回获取失败;
(2)许可认证结点根据目录索引cid获取用户内容许可,再利用阅读设备的设备私钥对用户内容许可进行非对称加密操作,得到用户阅读内容许可;
(3)返回用户阅读内容许可;
用户得到用户阅读内容许可后,使用设备公钥及用户公钥进行解密,得到原始内容对称加密密钥,利用内容对称加密密钥对内容进行解密。
5. 内容备份机制
为了保证内容对象数据的安全性,设计以下几种机制来保证内容对象数据在内容结点中不丢失,包括种子结点定时检查、结点宕机时故障处理、内容结点退出系统时备份。
(1)种子结点定时检查时备份
每个种子结点检查内容结点中一部分内容的完整性,根据内容目录列表及内容对象存储位置表,利用内容哈希定期检查内容对象数据完整性。每一个内容对象的完整性检查包括对存储内容对象数据的三个结点的检查。发现数据丢失时,随机向内容对象存储位置表中记录的其余两个内容结点发起请求,获取内容对象数据,并根据cid将内容对象存储到丢失数据结点的本地文件系统中。
(2)结点宕机导致故障处理时备份
当结点因故障重置数据后,先从区块中记录的数据恢复出内容目录列表中的数据及内容对象存储位置表中的数据。结点遍历内容对象存储位置表查找与自身相关的内容;在存储要请求的内容的其余两个结点中随机选取一个,请求内容对象数据;根据返回的数据及目录索引cid,将请求到的内容对象数据存储在自身本地文件系统中;直到遍历完整个内容对象存储位置表。
(3)内容结点退出系统时备份
由根结点遍历内容对象数据存储位置表,查询要退出系统的内容结点存储的内容对象数据的目录索引cid,采用与存储时相同的方式选出新的内容结点,对要退出系统的内容结点存储的内容对象进行备份存储;备份成功后发起共识请求,将内容存储位置变更写入区块中;依次对该内容结点存储的内容对象数据进行备份。内容迁移如图4所示。
以上显示和描述了本发明的基本原理和主要特征和本发明的优点,对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。
因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内,不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。

Claims (8)

1.分布式多备份的版权内容的自动切换存取方法,其特征在于,
存储版权内容时,将版权内容的内容元数据利用内容链进行存储,将版权内容的内容对象数据采用多结点备份机制加密存储,实现内容分级存储;
其中,在发布结点将内容对象数据存储成功后,从内容链的其余结点中自动选择两个内容结点作为备份结点对内容对象数据进行备份,使内容对象数据在结点中均匀分布,使结点负载均衡;
所述多结点备份机制是,每个内容对象数据存储三个备份:当一个备份丢失、内容结点宕机或退出内容链时,自动对数据进行再备份,使内容对象数据始终存储三个备份;
从存储所述内容对象数据的结点获取所述内容对象数据时,在获取加密后的内容对象数据后,先验证加密后的内容对象数据的完整性,再对从许可认证结点获取用户阅读内容许可进行解密,之后进行内容对象数据解密;
所述多结点备份机制,对数据进行再备份,使内容对象数据始终存储三个备份;具体步骤如下:
种子结点定时检查时备份:
每个种子结点检查内容结点中内容的完整性,根据内容目录列表及内容对象存储位置表,利用内容哈希定期检查内容对象数据完整性;每一个内容对象的完整性检查包括对存储内容对象数据的三个内容结点的检查;发现数据丢失时,随机向内容对象存储位置表中记录的其余两个内容结点发起请求,获取内容对象数据,并根据目录索引cid将内容对象存储到丢失数据的内容结点的本地文件系统中;
内容结点宕机导致故障处理时备份:
当内容结点因故障重置数据后,先从区块中记录的数据恢复出内容目录列表中的数据及内容对象存储位置表中的数据,内容结点遍历内容对象存储位置表查找与自身相关的内容;在存储要请求的内容的其余两个内容结点中随机选取一个,请求内容对象数据;根据返回的数据及目录索引cid,将请求到的内容对象数据存储在自身本地文件系统中;直到遍历完整个内容对象存储位置表;
内容结点退出系统时备份:
根结点遍历内容对象存储位置表,查询要退出系统的内容结点存储的内容对象的目录索引cid,选出新的内容结点,对要退出系统的内容结点存储的内容对象进行备份存储;备份成功后发起共识请求,将内容存储位置变更写入区块中;依次对该内容结点存储的内容对象数据进行备份。
2.根据权利要求1所述分布式多备份的版权内容的自动切换存取方法,其特征在于,通过内容哈希与内容唯一标识将内容元数据与内容对象数据关联,实现通过哈希验证使版权内容不被篡改。
3.根据权利要求1所述分布式多备份的版权内容的自动切换存取方法,其特征在于,对内容对象数据加密存储,是利用对称加密算法对内容对象数据加密处理,然后对所述对称加密算法的内容对称加密密钥,利用用户私钥进行非对称加密操作后再利用设备私钥进行二次非对称加密;
获取到内容对象数据后,先利用内容哈希值验证内容对象数据的完整性,再利用用户公钥、设备公钥对加密后的内容对称加密密钥进行解密,之后再用解密后的内容对称加密密钥解密内容对象数据;
其中,内容对称加密密钥、用户公钥、用户私钥、设备公钥,设备私钥存储在许可认证结点中。
4.根据权利要求1所述分布式多备份的版权内容的自动切换存取方法,其特征在于,所述内容对象数据进行内容分级存储时采用多级目录散列结构存储到内容结点的本地文件系统中。
5.根据权利要求1所述分布式多备份的版权内容的自动切换存取方法,其特征在于,所述内容元数据利用内容链进行存储时,是将内容元数据的共识数据形成的区块存储于levelDB中,然后再从区块中恢复出内容目录列表,将内容目录列表存储于postgreSQL中;所述内容对象数据采用多结点备份机制加密存储时,是存储于本地的文件系统中。
6.根据权利要求1所述分布式多备份的版权内容的自动切换存取方法,其特征在于,所述内容对象数据始终存储三个备份时,三个备份通过许可认证结点生成的对称密钥加密处理后,保存在内容结点的本地文件系统中。
7.根据权利要求1所述分布式多备份的版权内容的自动切换存取方法,其特征在于,所述从内容链的其余结点中自动选择两个内容结点作为备份结点对内容对象数据进行备份,其步骤如下:
(1)发布结点对发布系统发布的内容对象数据进行保存,根据目录索引cid将内容对象数据保存在发布结点相应的目录下;
(2)发布结点将内容对象数据存储成功后,选出的两个内容结点作为备份结点以备份内容对象数据;
(3)通过调用基于http协议之上的结点间命令,将内容的目录索引cid及内容对象数据发送给备份结点,请求备份结点对内容对象数据进行存储;
(4)备份结点接收到请求后,执行存储流程,执行完成后将结果返回给发布结点;
(5)如果发布结点接收到存储失败的结果,再次从所有内容结点中选出一个结点作为备份结点;
(6) 直到收到两个存储成功的结果时,结束备份;
(7)发布结点发起共识请求,将内容存储位置写入区块中。
8.根据权利要求1所述分布式多备份的版权内容的自动切换存取方法,其特征在于,获取加密后的内容对象数据的步骤如下:
(11)根据要获取的内容对象数据的cid,在任意一个种子结点的内容对象数据存储位置表中查询存储内容对象数据的内容结点id;
(12)从查找到的三个内容结点中随机选取一个内容结点;
(13)根据cid向该内容结点请求内容对象数据;
(14)该内容结点根据目录索引cid从自身本地文件系统中获取内容对象数据,并将结果返回;
(15)如果出现选取的内容结点出现故障而无法获取内容对象时,重复以上步骤,从剩余内容结点中选取新的结点进行内容获取;
获取用户阅读内容许可的步骤如下:
(21)许可认证结点查询用户是否有获取内容的权限,如果有,进入下一步骤,否则返回获取失败;
(22)许可认证结点根据目录索引cid获取用户内容许可,再利用阅读设备的设备私钥对用户内容许可进行非对称加密操作,得到用户阅读内容许可;
(23)返回用户阅读内容许可;
用户得到用户阅读内容许可后,使用设备公钥及用户公钥进行解密,得到原始的内容对称加密密钥,利用该原始的内容对称加密密钥对内容进行解密。
CN202210183315.9A 2022-02-28 2022-02-28 一种分布式多备份的版权内容的自动切换存取方法 Active CN114238867B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210183315.9A CN114238867B (zh) 2022-02-28 2022-02-28 一种分布式多备份的版权内容的自动切换存取方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210183315.9A CN114238867B (zh) 2022-02-28 2022-02-28 一种分布式多备份的版权内容的自动切换存取方法

Publications (2)

Publication Number Publication Date
CN114238867A CN114238867A (zh) 2022-03-25
CN114238867B true CN114238867B (zh) 2022-05-17

Family

ID=80748181

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210183315.9A Active CN114238867B (zh) 2022-02-28 2022-02-28 一种分布式多备份的版权内容的自动切换存取方法

Country Status (1)

Country Link
CN (1) CN114238867B (zh)

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030074982A (ko) * 2002-03-15 2003-09-22 삼성전자주식회사 소프트웨어 폴트 톨러런스 방법
US7440553B2 (en) * 2004-02-04 2008-10-21 Samsung Electronics Co., Ltd. Apparatus and method for checkpointing a half-call model in redundant call application nodes
CN102685148B (zh) * 2012-05-31 2014-10-15 清华大学 一种云存储环境下的安全网盘系统的实现方法
KR101760718B1 (ko) * 2016-01-29 2017-08-04 재단법인대구경북과학기술원 페어링 기반의 모바일 기기 관리 방법 및 시스템
CN106294585B (zh) * 2016-07-28 2019-10-18 上海倍增智能科技有限公司 一种云计算平台下的存储方法
CN108234618A (zh) * 2017-12-27 2018-06-29 中国地质大学(武汉) 一种智能手机定向备份文件方法、设备及存储设备
CN112416881A (zh) * 2020-10-23 2021-02-26 易联众信息技术股份有限公司 基于区块链的智能终端存储共享方法、装置、介质及设备
CN114079660A (zh) * 2021-09-28 2022-02-22 中诚区块链研究院(南京)有限公司 一种高性能分布式存储区块数据、时间戳、跨链通信与数据协同方法

Also Published As

Publication number Publication date
CN114238867A (zh) 2022-03-25

Similar Documents

Publication Publication Date Title
CN110868440B (zh) 区块链公链
CN105993043B (zh) 安全装置、其方法以及计算机可读取的记录介质
US10154086B1 (en) Distributed consumer cloud storage system
JP4662706B2 (ja) サーバーレス分散ファイルシステムにおけるセキュアリカバリ
US5530757A (en) Distributed fingerprints for information integrity verification
CN108923932A (zh) 一种去中心化协同验证模型及验证算法
AlZain et al. A Survey on Data Security Issues in Cloud Computing: From Single to Multi-Clouds.
Kubiatowicz Extracting guarantees from chaos
CN106055993A (zh) 一种用于区块链的加密存储系统及其使用方法
US20050165972A1 (en) File input/output control device and method for the same
CN106295401A (zh) 一种用于区块链的只读安全文件存储系统及其方法
MX2008008604A (es) Sistema de almacenamiento distribuido con interfaz para servicios al cliente via la web.
EP3785420A1 (en) Multi-decentralized private blockchains network
CN112116349B (zh) 面向高吞吐率的图式账本的随机化共识方法和装置
CN109842626A (zh) 分配安全区域访问凭证的方法和装置
JP2013521555A (ja) 分散型の記憶および通信
CN114238867B (zh) 一种分布式多备份的版权内容的自动切换存取方法
CN109067849A (zh) 基于区块的数据同步方法
CN108876378A (zh) 公有链数据加密备份方法
WO2008065342A1 (en) Data maps
Ma et al. A novel approach for improving security and storage efficiency on HDFS
Frank et al. Percival: A searchable secret-split datastore
Rajalakshmi et al. Towards Improving Cloud Security and Performance by using Proposed Controlled Replication Model
WO2021070234A1 (ja) データアクセス方法、データ記憶システム、サーバ装置、クライアント装置、およびプログラム
US11782789B2 (en) Encoding data and associated metadata in a storage network

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