OFFSystem

2020-05-02 18:03:36

跳转到导航跳转到搜索无所有者文件系统(关闭系统,或简称关闭)是一种对等分布式文件系统,其中所有共享文件都由随机的多用途数据块表示。代替匿名化网络,数据块被匿名化,因此,仅交换和存储数据垃圾,并且不需要通过中间节点转发。OFF声称已经创建了明确的意图";以切断一些坏疽滋生的…。

2003年,黑客Cheater512、CaptainMorgan、Aqlo和WhiteRaven在黑客组织The Big Hack内开始了Off开发。2004年,用PHP编写的初级版完成了,它以两张演示CD的形式分发。随后,SpectralMorning在2004年用C++重新实现了这一功能,这导致了目前的主流客户端。

2006年8月14日,CaptainMorgan发布了一封致美国版权行业协会(如RIAA和MPAA)的结束信,声明他们创造的目的是结束你们所有的消费者版权侵权问题。

今天,我们宣布一个大规模分布式无拷贝文件系统。一个所有内容都可以即时、匿名和向每个人开放的地方,而不违反任何法律。今天,我们宣布无所有者文件系统(Owner-Free File System)。在你疯狂的海洋里有一座理智的岛屿。

2008年,该网络由大约50个节点组成。2008年4月11日,进行了网络规模超过100个节点的Beta测试[3]。自从SpectralMorning在2008年底停止关闭工作以来,只发布了一些小的错误修复版本来主线关闭。

从2007年开始,开发了另一种但兼容的客户端,称为BlocksNet。它是用Ruby编写的,维护良好,最近有了重大改进。它一直在开发中,直到2011年。[4]。

客户端卸载是Mainline Off的一个分支,似乎没有添加任何功能。造成分叉的原因尚不清楚。另一个关系遥远的程序是Monolith,它使用与Off类似的原理。它是在关闭后创建的,其特点是不能多次使用块,也不能联网。

OFF系统是一种匿名的、完全分散的P2P文件共享程序和网络。与其他匿名文件共享网络不同的是,其他匿名文件共享网络通过中间网络节点转发其数据块而获得其匿名性,而OFF则通过匿名化数据文件来获得其匿名性。[5]因此,该系统将自己称为一张明网,以将其操作方法与称为DARKNETS的私人文件共享系统的操作方法进行对比……。

为了将文件存储到本地脱机存储器中,请分别。块缓存,选择元组大小t{\displaystyle t}(默认值3),将源文件s{\displaystyle s}拆分为大小为128 KiB的块s i{\displaystyle s_{i}}(填充随机数据以适应),并对每个块执行以下操作:

从现有的OFF高速缓存中选择t−1{\DisplayStyle t-1}块用作随机发生器块,或用于简称为随机化器,这些块在以前的迭代中没有使用过。如果缓存中没有足够的随机化器,请使用随机数生成器生成它们。

计算o i=s i⊕r 1⊕r 2⊕。。。⊕r t−1{\DisplayStyle o_{i}=s_{i}\Oplus r_{1}\Oplus r_{2}\Oplus.\Oplus r_{t-1}}并将结果块o i{\DisplayStyle o_{i}}存储在高速缓存中,⊕{\DisplayStyle\Oplus}是异或操作。

使用一组大小为t{\displaystyle t}:{o i,r 1,r 2的新条目更新描述符列表,该列表包含有关如何恢复每个源块s i{\displaystyle s_{i}}的信息。。。r t−1}{\displaystyle\{o_{i},r_{1},r_{2}.r_{t-1}\}}。

最后,将描述符列表存储在其自己的块(如果列表大于128KiB,则为多个块)中,并将这些块di{\displaystyle d_{i}}插入块缓存中,并生成用于引用源文件的OFF URL,并将其输出给用户或输出到本地OFF URL数据库中。

要检索,请获取一个或多个描述符块,并为每个包含的大小为t{\displaystyle t}的集合执行以下操作:

获得列出的块b1、b2。。。b t{\displaystyle b_{1},b_{2}.b_{t}}。虽然他们在这一点上不再有身份,但他们可以被称为oi,r1,r2。。。r t−1{\DisplayStyle o_{i},r_{1},r_{2}.r_{t-1}}。

执行s i=b1⊕b2⊕。。。⊕b t{\DisplayStyle s_{i}=b_{1}\Oplus b_{2}\Oplus.\Oplus b_{t}}并输出结果