This intends to use .php code together with a php executable run using php -S internal webserver, locally, the interface would be using a browser on localhost:81 or similar.
Idea: A decentralized system where participants share max 10-100MB per person with all participants (100k ?) Each store this and send it to others when the originator is unavailable. There would be no encryption, no privacy whatsoever. All content shared by people would comprise of ascii text, this could be urls to content on other sites (pages, images, videos, audio, music, files) or text data (ascii or html) that can be shown directly.
Plugins and embedding functionality can be used to make it work as content is on this platform.
Having only links and text gives at the same time protection for many other type of liabilities, such as copyright and legality issues. Linking to other places and writing ascii text is still legal as far as I know.
instead of arguing over protocols, encryption, privacy, functionality after functionality, unending needs, we could do this and actually make it happen.
More things can be added later, and also as plugins to this this platform to expand it if needed.
My idea is to make a small piece of code, .php, that can be easily verified for its harmlessness by simply letting someone familiar with coding inspect it.
I intend to make this without the use of any database, not something like mysql, not even sqlite, it would increase complexity and make it less portable.
so what we have is a system where everyone contributes say 10 MB of content, and every participant has a copy of all other participants content, and whenever someone accesses this platform, they can access the content of all participants.
1. will there be a main server or not?
2. will each participant be able to serve content that is requested from the general Internet?
4. will each participant have a running program at home to provide their part of the service?
2. The limitation is the dynamic allocated IPs, and serving content to the outside without a properly setup NAT (network address translation) on their Internet router at home.
1. if so everyone would know of it and register their participation (and perhaps content) to it. Without it, a continuously update list of all participants would be needed to be circulated and everyone would needed to enter the loop to start their participation by knowing at least one ip in the loop.
4. These requirements and limitations are accentuated by the logical requirement of a locally run program that serves the contributors participation.
certain php code experiments have been conducted, that can open ports on the router and listen on them by similar means of torrent programs.
how to make it simple
only a php executable is needed to run php script (preferably one single script) on many platforms. And it has a built in web server that can run in the background and provide an interface on localhost.
php -S 0.0.0.0:81 /platform/index.php
(using php provides transparency into what the code does, the executable could be downloaded directly from a trusted source like the php website)
For each participant to be able to fully take part in a real decentralized network like this (with php), each needs to "nat holepunching" or what it is called, or properly setup a NAT on their router.
Having a centralized location to register each participant to the platform would ease things considerably (like a bulletin board, a known location, where people just post their ip addresses)
If that is considered cheating it can also be fixed by making it considerably more complicated, and every participant must add (at least) one other participant's IP address manually.
If a centralized server with known domain, that has a bulletin board system for people to announce their participation, is allowed then this is very much feasible in my opinion.
If nat holepunching is implemented then another hurdle is automatically overcome.
As for now, this is what I have come up with.