Giter Club home page Giter Club logo

js-offs's Introduction


Owner Free File System in Javascript

is a peer-to-peer distributed file system in which all shared files are represented by randomized multi-used data blocks. Instead of anonymizing the network, the data blocks are anonymized and therefore, only data garbage is ever exchanged and stored.

Purpose

The OFF System is the first P2P system designed to halt copyright infringement by facilitating legal activity. It protects each peers by removing the user's capability of breaking the law. The unique feature of this system is, that it stores all of its internal data in a multi-use randomized block format. In other words: there is not a one to one mapping between a stored block and its use in a retrieved file. Each stored block is simultaneously used as a part of many different files. Individually, however, each block is nothing but arbitrary digital white noise data. This gives files stored redundancy, permanence, privacy, and freedom from censorship through a single simple mathematical means. This creates a universal public storage cloud with the same properties as national public radio or public broadcasting.

Accessor's Rights First

Very much like a physical key, an off-system URL grants acccess to content to anyone with the URL. Privacy preservation is determined by one's ability to keep one's links private as access is irrevocable. There are many effective solutions for keeping short strings of text private and the off system reduces the total domain of data security down to managing control over short strings of text rather than large encrypted files. Therefore, abstractions can be written to interface with the off-system to receive, encrypt, and redistribute urls.

Feature Improvements

This can be considered a completely redeveloped version of the off-system and is not compatible with older versions. This version features the following:

  • New URL format
  • New REST API's for storing and accessing content
  • Static Website Hosting
  • New Altruistic network algorithm for optimizing block cache hits
  • Content Representation Recycling

Efficiency

Because OFF anonymizes the data blocks being exchanged instead of the network, no forwarding via intermediate nodes is required. Therefore, this method has a higher degree of efficiency than traditional, forwarding-based anonymous P2P systems. Furthermore, There have been many improvements in version 3 to optimize the way in which storage is used. Data is now split into three block size categories based on the size of the initial file. This allow for smaller data to not waste larger amounts of space than are needed and making the system more suitable for database storage as well as file storage. Additionally, the system trys to use the most popular blocks on the network first in the representation of new content. This creates an increased likelihood of a cache hit when downloading new files and lowering overall storage burden. This idea has been also extended to the new recycling feature that will attempt to use the blocks of a known representation in the representation of new content. This provides the ability to users to tie there related content together and in the case of serial files, potentially append existing representations.

Network Diagram

Note:

Block Cache's are not free space and the network will try to fill or empty themselves based upon network usage and the size limitations created by their installers.

Predecessors

http://offsystem.sourceforge.net/

https://en.wikipedia.org/wiki/OFFSystem

License

GPL V3

js-offs's People

Contributors

vijayee avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Forkers

msukuma vijayee

js-offs's Issues

Test Coverage

Problem

We need automated testing setup on each of the individual node objects

Solution

Write some mocha tests for each object that spans the scope of their methods

Infrastructure | Create Github Team

Feature: Create Github Team
Why?: The first and foremost reason is that I think many users are interested in an OFF System reboot but yours can be hard to find. Hopefully, this may make it easier.

The second thing is preparing for other projects, like possibly writing clients in other languages
or, perhaps the documentation (#3 ) could have its own repository. :)

Best of luck!

Documentation Site Required

Problem

We need a documentation site that illustrates the breadth of functionality available in the off system. Including the rest api's and the rpc calls.

Solution

Create github page for the off system.

[Feature] Add i2p to networking

Description: For added anonymity and security, add i2p to networking.
Why?: Mainly for privacy and security, but also to promote decentralized communications.


Want to support this issue? Post a bounty on it! We accept bounties via BountySource.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.