GithubHelp home page GithubHelp logo

gradeshelper's People

Watchers

 avatar  avatar

gradeshelper's Issues

Are extensions needed for the DHT implemenation?

Do i need a user registration to work with the DHT? see #7
Do i need a file / data signature to identify data manipulation from a malicious third party?

I need a trackerless p2p-network to be more resilient and no need for separate server infrastructure.

In the bittorrent network with dht, it is not natively possible to update / add / remove files or arbitrary data. But there are already BEPs for this use cases.

It is needed to sign the torrents with private key, so the user can be safer about the given data.

The user should use their smartphones and laptops with mobile internet to work with this application, so i need a resilient way to work with disconnects. But in first place, the data should be transfered, if the mobile device has a wlan connection.

To make the dht more resilient against devices, which are disconnect (because the user closed the application), it is needed, that there are replicants to reduce the possibility to find no seeder.

Security extension against standard attacks

Extend protocol

There is a possibility from attackers, which try to get into the swarm and get informations. The publisher itself is a node, so he can be a private tracker which replicates himself on another device (example: laptop replicate himself on smartphone, if it is set as a replication-device with sufficient permissions and the public key was set into the settings).

Softwarestack

Which stacks is needed and i want to use?

Serverside:

Database:

  • mariadb? redis?

programming language

  • python? go?

containerization

  • is this a good way to go?
  • podman? docker?
  • microservice?

Clientside:

BeeWare for python GUI on all mobile and desktop OS

How do you get your data as a publisher to a new consumer?

This is the main purpose of this application.
This has to be easy to use and safe to work with. But it has to be a lot more secure then already established ways.

At first, the dht can be published through magnet links. With this, the consumer gets all information about the torrent and correspnding data. This magnet links and corresponding torrentfile will be created by the publisher, when he wants to publish his data in the application.

The magnet link can be published through public channels like websites or group chats or private channels like private channels and email. Another way to exchange this link, the publisher can create a qr code with the magnet link and the consumer can scan it with his own camera device.

Though there is no way to disable crawl the dht, i need a way to encrypt the data or to authorize and authenticate the user against a torrent to get the seeds and torrent files.

Are there any use cases, where there is no explicit publisher and consumer?
Maybe, this can be realize with an authorization backend? This backend does not need to be centralize, because the publisher is a dht itself, so he can manipulate the respond, when he should send the files, but the consumer cannot authenticate or is not valid against the torrent.
This is the use case for private trackers.

make a wiki or homepage with images

To provide a better explanation about "what i want to do" and a better overview, i should create a wiki or homepage via github to describe images and my idea to the application, i want to make.

i prefer the wiki, because it is easy to use and do not need a new webpage. Maybe later.

"what i want to do" should go here

How to make download available, if there are no seed-devices from publisher?

First, i have to say that this application is not a realtime application. If you want this, you have to use a cloud solution, but there are already a lot.
This software should implement a way to work on a decentralized way. But if you want to enable a download for consumer or an upload for a publisher at any given time, you need a 24/7 server.
The user can setup a server by themself or rent this by me. This could be a way to earn money from the customers or institutions.

But smartphones are already a 24/7 devices, which have most of the time wlan-connections, so this could be already done with a background thread, which uploads / downloads files from network, while the device is not in use (for example at night).

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.