当前位置:首页 » 服务存储 » 分布式存储数据加密
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

分布式存储数据加密

发布时间: 2022-12-18 06:38:55

‘壹’ IPFS 一个分布式系统,用于存储访问文件、网站、应用程序和数据

《开源精选》是我们分享Github、Gitee等开源社区中优质项目的栏目,包括技术、学习、实用与各种有趣的内容。本期推荐的IPFS 是一个分布式系统,用于存储和访问文件、网站、应用程序和数据。

而且,当您使用 IPFS 时,您不只是从其他人那里下载文件——您的计算机也有助于分发它们。当您在几个街区外的朋友需要相同的 Wikipedia 页面时,他们可能会像从您的邻居或任何使用 IPFS 的人那里一样从您那里获得它。

IPFS 不仅可以用于网页,还可以用于计算机可能存储的任何类型的文件,无论是文档、电子邮件,甚至是数据库记录。

可以从不由一个组织管理的多个位置下载文件:

最后一点实际上是 IPFS 的全名: InterPlanetary File System 。我们正在努力建立一个系统,该系统可以在不连贯或相隔很远的地方工作,就像行星一样。虽然这是一个理想主义的目标,但它让我们努力工作和思考,几乎我们为实现这一目标而创造的一切在家里也很有用。

IPFS 是一个点对点 (p2p) 存储网络。可以通过位于世界任何地方的对等点访问内容,这些对等点可能会传递信息、存储信息或两者兼而有之。IPFS 知道如何使用其内容地址而不是其位置来查找您要求的内容。

理解 IPFS 的三个基本原则:

这三个原则相互依赖,以启用 IPFS 生态系统。让我们从 内容寻址 和内容的唯一标识开始。

互联网和您的计算机上都存在这个问题!现在,内容是按位置查找的,例如:

相比之下,每条使用 IPFS 协议的内容都有一个 内容标识符 ,即 CID,即其 哈希值 。散列对于它所来自的内容来说是唯一的,即使它与原始内容相比可能看起来很短。

有向无环图 (DAG)

IPFS 和许多其他分布式系统利用称为有向无环图的数据结构 (打开新窗口),或 DAG。具体来说,他们使用 Merkle DAG ,其中每个节点都有一个唯一标识符,该标识符是节点内容的哈希。
IPFS 使用针对表示目录和文件进行了优化的 Merkle DAG,但您可以通过多种不同的方式构建 Merkle DAG。例如,Git 使用 Merkle DAG,其中包含许多版本的存储库。

为了构建内容的 Merkle DAG 表示,IPFS 通常首先将其拆分为 块 。将其拆分为块意味着文件的不同部分可以来自不同的来源并可以快速进行身份验证。

分布式哈希表 (DHT)

要查找哪些对等方正在托管您所追求的内容( 发现 ),IPFS 使用分布式哈希表或 DHT。哈希表是值键的数据库。 分布式 哈希表是一种表在分布式网络中的所有对等方之间拆分的表。要查找内容,您需要询问这些同行。

libp2p项目 (打开新窗口)是 IPFS 生态系统的一部分,它提供 DHT 并处理对等点之间的连接和交谈。

一旦你知道你的内容在哪里(或者更准确地说,哪些对等点正在存储构成你所追求的内容的每个块),你就可以再次使用 DHT 来查找这些对等点的当前位置( 路由 )。因此,要获取内容,请使用 libp2p 查询 DHT 两次。

然而,这确实意味着 IPFS 本身并没有明确保护 有关 CID 和提供或检索它们的节点的知识。这不是分布式网络所独有的。在 d-web 和 legacy web 上,流量和其他元数据都可以通过可以推断出很多关于网络及其用户的方式进行监控。下面概述了这方面的一些关键细节,但简而言之:虽然 节点之间 的 IPFS 流量是加密的,但这些节点发布到 DHT 的元数据是公开的。节点宣布对 DHT 功能至关重要的各种信息——包括它们的唯一节点标识符 (PeerID) 和它们提供的数据的 CID——因此,关于哪些节点正在检索和/或重新提供哪些 CID 的信息是公开的可用的。

加密

网络中有两种类型的加密: 传输加密 和 内容加密 。

在两方之间发送数据时使用传输加密。阿尔伯特加密文件并将其发送给莱卡,莱卡在收到文件后对其进行解密。这会阻止第三方在数据从一个地方移动到另一个地方时查看数据。

内容加密用于保护数据,直到有人需要访问它。Albert 为他的每月预算创建了一个电子表格,并用密码保存它。当 Albert 需要再次访问它时,他必须输入密码才能解密文件。没有密码,Laika 无法查看该文件。

IPFS 使用传输加密,但不使用内容加密。这意味着您的数据在从一个 IPFS 节点发送到另一个节点时是安全的。但是,如果拥有 CID,任何人都可以下载和查看该数据。缺乏内容加密是一个有意的决定。您可以自由选择最适合您的项目的方法,而不是强迫您使用特定的加密协议。

如果您精通命令行并且只想立即启动并运行 IPFS,请遵循此快速入门指南。请注意,本指南假定您将安装 go-ipfs,这是用 Go 编写的参考实现。

ipfs将其所有设置和内部数据存储在称为 存储库的目录中。 在第一次使用 IPFS 之前,您需要使用以下ipfs init命令初始化存储库:

如果您在数据中心的服务器上运行,则应使用server配置文件初始化 IPFS。这样做会阻止 IPFS 创建大量数据中心内部流量来尝试发现本地节点:

您可能需要设置大量其他配置选项 — 查看完整参考 (打开新窗口)更多。

后面的散列peer identity:是您节点的 ID,与上面输出中显示的不同。网络上的其他节点使用它来查找并连接到您。如果需要,您可以随时运行ipfs id以再次获取它。

现在,尝试运行在ipfs init. 那个样子ipfs cat /ipfs/ /readme。

您应该看到如下内容:

您可以 探索 存储库中的其他对象。特别是quick-start显示示例命令尝试的目录:

准备好将节点加入公共网络后,在另一个终端中运行 ipfs 守护程序,并等待以下所有三行显示您的节点已准备好:

记下您收到的 TCP 端口。如果它们不同,请在下面的命令中使用您的。

现在,切换回原来的终端。如果您已连接到网络,您应该能够在运行时看到对等方的 IPFS 地址:

这些是 /p2p/ .

现在,您应该能够从网络中获取对象了。尝试:

使用上述命令,IPFS 在网络中搜索 CIDQmSgv...并将数据写入spaceship-launch.jpg桌面上调用的文件中。

接下来,尝试将对象发送到网络,然后在您喜欢的浏览器中查看它。以下示例curl用作浏览器,但您也可以在其他浏览器中打开 IPFS URL:

您可以通过转到 来查看本地节点上的 Web 控制台localhost:5001/webui。这应该会弹出一个这样的控制台:

Web 控制台显示可变文件系统 (MFS)中的文件。MFS 是内置于 Web 控制台的工具,可帮助您以与基于名称的文件系统相同的方式导航 IPFS 文件。

当您使用CLI 命令ipfs add ...添加文件时,这些文件不会自动在 MFS 中可用。要查看您使用 CLI 添加的 IPFS 桌面中的文件,您必须将文件复制到 MFS:

—END—

开源协议:MIT License

开源地址:https://github.com/ipfs/kubo

‘贰’ 什么是区块链

区块链是一种带有数据“散列验证”功能的数据库。区块,就是数据块,按照时间顺序将数据区块组合成一种链式结构,并利用密码学算法,以分布式记账的方式,集体维护数据库的可靠性。所有数据块按时间顺序相连,从而形成区块链。
区块链系统由数据层、网络层、共识层、激励层、合约层和应用层组成。 其中,数据层封装了底层数据区块以及相关的数据加密和时间戳等基础数据和基本算法;网络层则包括分布式组网机制、数据传播机制和数据验证机制等;共识层主要封装网络节点的各类共识算法;激励层将经济因素集成到区块链技术体系中来,主要包括经济激励的发行机制和分配机制等;合约层主要封装各类脚本、算法和智能合约,是区块链可编程特性的基础;应用层则封装了区块链的各种应用场景和案例。该模型中,基于时间戳的链式区块结构、分布式节点的共识机制、基于共识算力的经济激励和灵活可编程的智能合约是区块链技术最具代表性的创新点。
区块链主要解决的交易的信任和安全问题,因此它针对这个问题提出了四个技术创新:
(1)分布式账本,就是交易记账由分布在不同地方的多个节点共同完成,而且每一个节点都记录的是完整的账目,因此它们都可以参与监督交易合法性,同时也可以共同为其作证。
跟传统的分布式存储有所不同,区块链的分布式存储的独特性主要体现在两个方面:一是区块链每个节点都按照块链式结构存储完整的数据,传统分布式存储一般是将数据按照一定的规则分成多份进行存储。二是区块链每个节点存储都是独立的、地位等同的,依靠共识机制保证存储的一致性,而传统分布式存储一般是通过中心节点往其他备份节点同步数据。 [8]
没有任何一个节点可以单独记录账本数据,从而避免了单一记账人被控制或者被贿赂而记假账的可能性。也由于记账节点足够多,理论上讲除非所有的节点被破坏,否则账目就不会丢失,从而保证了账目数据的安全性。
(2)非对称加密和授权技术,存储在区块链上的交易信息是公开的,但是账户身份信息是高度加密的,只有在数据拥有者授权的情况下才能访问到,从而保证了数据的安全和个人的隐私。
(3)共识机制,就是所有记账节点之间怎么达成共识,去认定一个记录的有效性,这既是认定的手段,也是防止篡改的手段。区块链提出了四种不同的共识机制,适用于不同的应用场景,在效率和安全性之间取得平衡。
区块链的共识机制具备“少数服从多数”以及“人人平等”的特点,其中“少数服从多数”并不完全指节点个数,也可以是计算能力、股权数或者其他的计算机可以比较的特征量。“人人平等”是当节点满足条件时,所有节点都有权优先提出共识结果、直接被其他节点认同后并最后有可能成为最终共识结果。以比特币为例,采用的是工作量证明,只有在控制了全网超过51%的记账节点的情况下,才有可能伪造出一条不存在的记录。当加入区块链的节点足够多的时候,这基本上不可能,从而杜绝了造假的可能.
(4)智能合约,智能合约是基于这些可信的不可篡改的数据,可以自动化的执行一些预先定义好的规则和条款。以保险为例,如果说每个人的信息(包括医疗信息和风险发生的信息)都是真实可信的,那就很容易的在一些标准化的保险产品中,去进行自动化的理赔
其实个人可以简单理解,其实就是一个金融数据库。

‘叁’ 企业如何保障数据存储安全

企业数据的安全性至关重要,因为它们涉及到企业机密,很多公司在员工入职的时候都要求它们签一份数据保密协议,但这依然不能阻止数据泄露。

一般来说,企业数据可以保存在两个位置,一个是自己手里,也就是私有化部署;一个是服务提供商手里,也就是SaaS。下面我们就分别来介绍一下,到底哪一种数据保存形式更安全。

1. 私有化部署的安全性:数据位置存放在本地

私有化部署将软件直接部署在内网的本地服务器中,数据把握在企业内部。也就是说只要保证企业的服务器不被攻破,那么数据就是安全的,因为他们是可控的。

但是对于私有化部署,企业需要安排专人对服务器维护,保证数据安全,但是大部分企业不会将大部分精力放在服务器上,所以从这一点上来说私有化部署的安全性降低了。

2、 SaaS的安全性:专业

SaaS部署的系统是企业通过购买SaaS服务提供商的服务,从而获得相应的所需功能,但企业通过该服务所处理的数据将无一例外的保存在SaaS服务提供商的服务器中。

服务提供商向很多公司提供租用的服务,所以会有很多工程师进行对系统的日常维护和升级,也更专注于系统的安全性,至少比大部分企业的安全做的更好更全面。

综上所述,好像SaaS的优势更强一些,那就是说我们应该选择SaaS来存储数据吗?其实,究竟选择哪一种数据安全存储方式还应该结合照公司的实际情况。

对于大型企业而言,可以选择私有化部署。首先在本地需要购买服务器,搭建环境,安排专人进行管理,安全保护,此中需要耗费人力财力。但由于企业大、资金足,这些不是考虑的重点,他们完全有能力将自己的系统搭建好,而且也能保证安全性。

对刚起步的中小型企业,选择SaaS是更好的选择,刚起步的企业没有精力去搭建并维护这些系统,且不说有没有能力去搭建这个系统,就算能搭建好这些系统,也不会比SaaS服务提供商的更加安全。所以选择SaaS部署可以给中小型企业节省搭建本地服务器的精力,减少开支,让他们专注于核心业务,更是提供了更多的安全保证。所以即使涉及到核心数据的问题,但是中小型公司应该相信SaaS服务提供商,选择SaaS模式来助力自己的发展。1m筑造是建筑装饰行业标准化的SaaS
ERP软件,在保存数据方面,我们的安全性毋庸置疑。

‘肆’ 区块链分布式存储:生态大数据的存储新模式

区块链,当之无愧的2019最靓的词,在 科技 领域闪闪发亮,在实体行业星光熠熠。

2019年的1024讲话,让区块链这个词焕然一新,以前它总是和传销和诈骗联系在一起,“区块链”这个词总是蒙上一层灰色。但是如今,区块链则是和实体经济融合紧密相连,成为国家的战略技术, 这个词瞬间闪耀着热情的红色和生意盎然的绿色

“产业区块链”在这个时代背景下应运而生, 是继“互联网”后的又一大热门词汇,核心就是区块链必须和实体产业融合,脱虚向实,让区块链技术找到更多业务场景才是正道。

区块链的本质就是一个数据库,而且是采用的分布式存储的方式。作为一名区块链从业者,今天就来讲讲 区块链的分布式存储和生态大数据 结合后,碰撞产生的火花。

当前的存储大多为中心化存储,存储在传统的中心化服务器。如果服务器出现宕机或者故障,或者服务器停止运营,则很多数据就会丢失。

比如我们在微信朋友圈发的图片,在抖音上传的视频等等,都是中心化存储。很多朋友会把东西存储在网上,但是某天打开后,网页呈现404,则表示存储的东西已经不见了。

区块链,作为一个分布式的数据库,则能很好解决这方面的问题。这是由区块链的技术特征决定了的。 区块链上的数字记录,不可篡改、不可伪造,智能合约让大家更高效地协同起来,从而建立可信的数字经济秩序,能够提高数据流转效率,打破数据孤岛,打造全新的存储模式。

生态大数据,其实和我们每天的生活息息相关,比如每天的天气预报,所吃的农产品的溯源数据等等,都是生态大数据的一部分。要来谈这个结合,首先咱们来看看生态大数据存储的特点。

伴随着互联网的发展,当前,生态大数据在存储方面有具有如下特点:

从数据规模来看,生态数据体量很大,数据已经从TB级跃升到了PB级别。

随着各类传感器技术、卫星遥感、雷达和视频感知等技术的发展,数据不仅来源于传统人工监测数据,还包括航空、航天和地面数据,他们一起产生了海量生态环境数据。近10年以来,生态数据以每年数百个TB的数据在增长。

生态环境大数据需要动态新数据和 历史 数据相结合来处理,实时连续观测尤为重要。只有实时处理分析这些动态新数据,并与已有 历史 数据结合起来分析,才能挖掘出有用信息,为解决有关生态环境问题提供科学决策。

比如在当前城市建设中,提倡的生态环境修复、生态模型建设中,需要大量调用生态大数据进行分析、建模和制定方案。但是目前很多 历史 数据因为存储不当而消失,造成了数据的价值的流失。

既然生态大数据有这些特点,那么它有哪些存储需求呢?

当前,生态大数据面临严重安全隐患,强安全的存储对于生态大数据而言势在必行。

大数据的安全主要包括大数据自身安全和大数据技术安全,比如在大数据的数据存储中,由于黑客外部网络攻击和人为操作不当造成数据信息泄露。外部攻击包括对静态数据和动态数据的数据传输攻击、数据内容攻击、数据管理和网络物理攻击等。

例如,很多野外生态环境监测的海量数据需要网络传输,这就加大了网络攻击的风险。如果涉及到军用的一些生态环境数据,如果被黑客获得这些数据,就可能推测到我国军方的一些信息,或者获取敏感的生态环境数据,后果不堪设想。

生态大数据的商业化应用需要整合集成政府、企业、科研院所等 社会 多来源的数据。只有不同类型的生态环境大数据相互连接、碰撞和共享,才能释放生态环境大数据的价值。

以当前的智慧城市建设为例,很多城市都在全方位、多维度建立知识产权、种质资源、农资、农产品、病虫害疫情等农业信息大数据中心,为农业产供销提供全程信息服务。建设此类大数据中心,离不开各部门生态大数据的共享。

但是,生态大数据共享面临着巨大挑战。首先,我国生态环境大数据包括气象、水利、生态、国土、农业、林业、交通、 社会 经济等其他部门的大数据,涉及多领域多部门和多源数据。虽然目前这些部门已经建立了自己的数据平台,但这些平台之间互不连通,只是一个个的数据孤岛。

其次,相关部门因为无法追踪数据的轨迹,担心数据的利益归属问题,便无法实现数据的共享。因此,要想挖掘隐藏在生态大数据背后的潜在价值,实现安全的数据共享是关键,也是生态大数据产生价值的前提和基础。

生态大数据来之不易,是研究院所、企业、个人等 社会 来源的集体智慧。

其中,很多生态大数据涉及到了知识产权的保护。但是目前的中心化存储无法保证知识产权的保护,无法对数据的使用进行溯源管理,容易造成知识产权的侵犯和隐私数据的泄露。

这些就是生态大数据在存储方面的需求。在当前产业区块链快速发展的今天,区块链的分布式存储是可以为生态大数据存储提供全新的存储方式的。 这个核心前提就是区块链的分布式存储、不可篡改和数据追踪特性

把区块链作为底层技术,搭建此类平台,专门存储生态大数据,可以设置节点管理、存储管理、用户管理、许可管理、业务通道管理等。针对上层业务应用提供高可用和动态扩展的区块链网络底层服务的实现。在这个平台的应用层,可以搭建API接口,让整个平台的使用灵活可扩展。区块链分布式存储有如下特点:

利用区块链的分布式存储,能够实现真正的生态大数据安全存储。

首先,数据永不丢失。这点对于生态大数据的 历史 数据特别友好,方便新老数据的调用和对比。

其次,数据不易被泄露或者攻击。因为数据采取的是分布式存储,如果遭遇攻击,也只能得到存储在部分节点里的数据碎片,无法完全获得完整的数据信息或者数据段。

区块链能够实现生态数据的存储即确权,这样就能够避免知识产权被侵害,实现安全共享。毕竟生态大数据的获取,是需要生态工作者常年在野外驻守,提取数据的。

生态大数据来之不易,是很多生态工作者的工作心血和结晶,需要得到产权的保护,让数据体现出应用价值和商业价值,保护生态工作者的工作动力,让他们能够深入一线,采集出更多优质的大数据。

同时,利用区块链的数据安全共享机制,也能够打破气象、林业、湿地等部门的数据壁垒,构建安全可靠的数据共享机制,让数据流转更具价值。

现在有部分生态工作者,为了牟取私利,会将生态数据篡改。如果利用区块链技术,则没有那么容易了。

利用加密技术,把存储的数据放在分布式存储平台进行加密处理。如果生态大数据发生变更,平台就可以记录其不同版本,便于事后追溯和核查。

这个保护机制主要是利用了数据的不可篡改,满足在使用生态大数据的各类业务过程中对数据的安全性的要求。

区块链能够对数据提供安全监控,记录应用系统的操作日志、数据库的操作日志数据,并加密存储在系统上,提供日志预警功能,对于异常情况通过区块链浏览器展示出来,便于及时发现违规的操作和提供证据。

以上就是区块链的分布式存储能够在生态大数据方面所起的作用。未来,肯定会出现很多针对生态大数据存储的平台诞生。

生态大数据是智慧城市建设的重要基础资料 ,引用区块链技术,打造相关的生态大数据存储和管理平台,能够保证生态大数据的安全存储和有效共享,为智慧城市建设添砖加瓦,推动产业区块链的发展。

作者:Justina,微信公众号:妙译生花,从事于区块链运营,擅长内容运营、海外媒体运营。

题图来自Unsplash, 基于CC0协议。

‘伍’ 区块链在技术层面有哪几种属性

区块链技术起源于化名为“中本聪”(Satoshi Nakamoto)的学者在2008年发表的奠基性论文《比特币: 一种点对点电子现金系统》。狭义来讲, 区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构, 并以密码学方式保证的不可篡改和不可伪造的分布式账本。区块链网络的技术属性主要在于:匿名性、去中心化、不可篡改、分布式存储、多备份、数据加密等。匿名性是指在区块链网络中任何一个用户在交易的过程中,发送的交易数据中都不包含任何和个人信息有关的数据,用户和用户之间通过地址进行交易,而且地址理论上可以无限生成。去中心化是指通过多节点共同决策达成共识的方法,将原本的单一管理决策方案转换成多方共同商量决策,并且区块链网络中的所有节点拥有平等的数据控制权利和义务,任何节点都可以访问区块链网络中存储的数据,访问的过程可以同步并发执行。不可篡改是指区块链除创世区块以外,之后的每一个区块中都包含有上一个区块中数据的唯一哈希值,然后通过唯一的哈希值将各个区块进行串联。一旦其中某一个节点的区块数据被更改,此区块生成的哈希值也会改变。在区块连接的过程中,后面的区块无法找到其前区块哈希值所对应的区块,区块链也就被迫断开,该节点所保存的数据就不再被其他节点承认,变得没有价值。分布式存储和多备份的概念和现在数据库的分布式存储不同。区块链的分布式存储不仅是将数据存储在不同的地理位置和物理设备上,每个设备中都有完整的账本数据,而不是数据碎片,通过使用 Merkle 树技术在一定程度上解决数据冗余的问题。数据加密主要是指通过非对称加密的方式对数据使用公钥进行加密私钥进行解密或者私钥加密公钥解密。这种加密方式在数据传输的过程中,数据中不必包含数据解密的密钥,而是通过接收方手中的密钥完成解密操作,排除数据传输过程中被截取所带来的信息安全隐患。

吴超人会飞

帖子数1.0千获赞数20

  • rollup扩容是什么

  • 什么叫数字人民币

  • 什么是RBF内存池

  • 比特币网络的运行逻辑

  • 阅读作者更多精彩帖子

    最佳回答

  • 转载bitsbetter海盗王2021-08-0510:17:0810楼:囤币是屯在链上,只需要一个确认安全的私钥和对应的地址,地址才是真钱包。一般所谓的“钱包”都是私钥包。bitsbetter海盗王2021-08-0511:15:3112楼:把私钥放在别人提 ...

    来源

  • 比特币是一种货币。SaifedeanAmmous写了一本名为《比特币标准》的书,他在书中设定了一系列测试,以明确货币必须具有哪些特质,并将其分为三个主要类别:货币必须具有这些特质:第一点是具有价值存储功能(即保值、 ...

    来源