Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

attack-resilient micro-economy for media #1

Open
5 of 15 tasks
synctext opened this issue Mar 5, 2013 · 18 comments
Open
5 of 15 tasks

attack-resilient micro-economy for media #1

synctext opened this issue Mar 5, 2013 · 18 comments
Labels
component: token economy type: memo Stuff that can't be solved

Comments

@synctext
Copy link
Member

synctext commented Mar 5, 2013

Three primary tasks for the whole Tribler research team:

  • fully circular and self-sufficient token economy
    Create a richer incentive then tit-for-tat within Bittorrent. Deploy the micro-economy around tokens which we have been perfecting since the first deployed version in September 2007. Scientific micro-economy publications, presented recently at the Delft Blockchain Launch event:
    image
    • Mining. Earn tokens by donating bandwidth. Credit mining effortlessly converts idle bandwidth into tokens. The mining boosts the health of the network. Underseeded swarms and popular swarms are identified and helped out. Dead swarms and spam are correctly dealt with. Users need to select a channel with content to boost. This signal from the user prevents spam. In a later stage we will auto-boost swarms in general.
    • Earn credits by relaying Tor-like encrypted traffic.
    • Get tokens for hidden seeding and being an exit node
    • Market. Sell and buy on our integrated decentralised marketplace. Convert bandwidth tokens into Ethereum or Bitcoin. Your karma as a merchant grows with each successful trade. Part of our Internet-of-Trust research.
    • Coin wallet. Move coins between a Tribler PC and Android devices. Offline storage inside Android smartphones. Transfer securely and effortlessly using simple QR codes without the need for Internet access. Focus on the "you can see it, you can spend it" security model.
  • Tribler anonymous downloads are fast and secure
    Donations of encrypted relays are essential for performance. We require the token economy to fix that. Currently our software is still a bottleneck. Only 2.5MByte/sec is unacceptable for our video streaming use-case. Currently our GCM cypto, tunnel latency or other bottleneck are slowing things down. slow anonymous downloads: Crypto CPU bottleneck #1882 end-to-end anonymous seeding and download performance test #2548 Replace Dispersy tunnels with clean code of IPv8
  • search, share, rate and enhance
    Vloggers, journalists, and creatives in general need to be able to use Tribler to share. The content within Tribler needs to become richer. Metadata needs to be perfect. Spam marking and voting needs to work. Relevance ranking and swarm popularity needs to be shown in search. Rich channels. We need to empower our community to sustain itself.
    • spam prevention, voting and spam marking
    • accurate swarm size estimations
    • Fast search with relevance ranking based on swarm size
    • rich metadata for channels
    • redesign of the AllChannel voting and channel pre-view mess. IPv8
@ghost ghost assigned NielsZeilemaker Mar 12, 2013
whirm pushed a commit that referenced this issue Apr 21, 2015
@synctext synctext changed the title UDP NAT puncture success beyond 52.7% Fast anonymous downloads Jan 26, 2016
@synctext synctext reopened this Jan 26, 2016
@whirm whirm removed this from the V6.2: fast and light streaming milestone Jan 26, 2016
@whirm whirm modified the milestone: Backlog Mar 18, 2016
@synctext synctext changed the title Fast anonymous downloads attack-resilient micro-economy for media Feb 6, 2018
@synctext
Copy link
Member Author

Tribler is 14 years old in a few weeks. It's time to revisit the past and determine the future. The following mindmap shows the roadmap for the next 14 years of development and current accomplishments. Within the coming 12 months we aim to finish all open #1 issues around the token economy, anonymous downloading, and content crowd-sourcing. Long-term scientific focus is deploying our algorithm for creating trust and relentlessly improve it for another 14 years.
PRIOR 14 YEARS OF DEVELOPMENT

@grimadas
Copy link
Contributor

grimadas commented Aug 19, 2019

Anonymous downloads are now at least 5.5 MBytes per second. Historical milestone.
Our Tor-level privacy is no longer CPU bound. We need to incentives people's willingness to contribute.

Screenshot from 2019-08-19 09-36-20

@synctext
Copy link
Member Author

synctext commented Nov 1, 2019

Long-term scientific focus is deploying our algorithm for creating trust and relentlessly improve it for another 14 years.

Medical-grade software reliability

We need to think about our software development methodology. As our software matures the coming years we need to facilitate both bleeding-edge science and medical-grade software reliability. A series of lab-meetings will determine our best approach. Coming 12 months we need to focus on 1) stability and 2) closing #1. Tokens are financial products and people expect that coins don't disappear magically out of their wallets. Our application in the digital identity space demands that our code base is nearly bug-free and "passport-grade". As a university we need to take the next step the coming decade: combine the strength of tamper-proof data structures with machine learning (first running code https://github.com/Tribler/distributed-ai-kernel). Honor students aim to create the first proof-of-principle code featuring distributed learning and disease detection on actual DNA using IPv8.

We have pioneered mechanisms of creating trust since April 2005, when the first Tribler code was written. Tribler is older then both Github and Bitcoin. We survived the end of P2P file sharing and today we are past "Peak-Hype" of blockchain. We need to discuss if it is possible to transition to "medical-grade" quality of software while preserving our ability for scientific innovations. Can we "freeze" the lower parts of our software stack in coming years? Can we engineer a trustworthy trust function? The EU has reserved 300 million Euro for their European Blockchain Services Infrastructure. Trustchain has been submitted as the foundational EBSI technology. Could Trustchain drive the European services economy?
image
Concrete impact might be that we apply best-practices from the commercial world. For instance, deterministic builds, move fast and don't break things, atomic commits, autonomic bug reporting tools, deployment monitoring, reproduce all defects, hard-enforced sprint deadlines, monolithic repo, and this Git commit checklist for each PR. Can we still do science then?

  • The first line of commit message is less then 50 chars; clean, clear and easy to understand.
  • The parent of the commit(s) in the PR is not older than 3 days.
  • Pull request is sent from a non-master branch with a meaningful name.
  • Separate unrelated changes into different commits.
  • Use rebase to squash/fixup dummy/unnecessary commits into only one commit.
  • Close corresponding issue in commit message
  • Mention related issue(s), people in commit message, comment.

An even higher ambition level is formal verification of critical IPv8 communities/IPv8 modules and base classes.

@synctext
Copy link
Member Author

We need to grown in significance and offer a polished alternative to Youtube. Like DuckDuckGo, ProtonMail, Brave, and Signal covered by BBC News. This will be a challenge. Polished products don't break. period.

@synctext
Copy link
Member Author

synctext commented May 15, 2020

Polished products don't break. period.

Discuss with team the cost and benefits of using the Continuous Delivery model. Will it accelerate the closing of this issue #1? Make release 7.5 stable and possibly switch. When we expand with upto 5 additional people by 1 Sep 2020 we require more structured work methodologies and weekly stand-up meeting or something. The CMU Software Engineering Institute features a lot of depth on this issue, we probably should try this out even before new people join us. Would put a dashboard #4999 and performance monitoring #1287 (open issue for 5 years) at the core of our development process. We now rely on manual performance testing for release readiness. This is not on par with mature software like VLC, Kodi, BiglyBT, and Libtorrent. Our current test score?

  • Do you use source control?
  • Can you make a build in one step?
  • Do you make daily builds?
  • Do you have a bug database?
  • Do you fix bugs before writing new code?
  • Do you have an up-to-date schedule?
  • Do you have a spec?
  • Do programmers have quiet working conditions?
  • Do you use the best tools money can buy?
  • Do you have testers?
  • Do new candidates write code during their interview?
  • Do you do hallway usability testing?

Next step: find a volunteer 🦺 to write 1-page plan with details and decisions to make...

@synctext
Copy link
Member Author

Usability of Tribler still is lacking. See our great ToDo list by user Grunwald:

  • Problem the program starts very slowly. Plenty of time must to wait for the program to fully load. It stumbles on more serious operations and is very slow. When i added a new torrent they didn’t show up for a long time.
  • There is no option on it to run the program at system startup which is very inconvenient. For similar programs, this is a default option.
  • The anonymous mode with 1 hop does not working. The connection is constantly disconnected with the 2 PC. The anonymous mode with 3 hop using another torrent client to download the file uTorrent used it cannot be connected either.
  • Using the client in a local network with normal non anonymous mode. Transferring a file a Windows 10 laptop to PC Tribler to Tribler using a router are failed. The two Tribler to Tribler programs cannot find each other
  • Creating a torrent file from a large 10GB folder with many files are failed. And it’s not easy to put in either the torrent folder location. He wanted to download and not hashing the file.
  • When i deleted the program ruined the files. He threw the 10GB torrents in the trash on which I worked for half a day. However, the program did not want to delete its own components properly. Could not start the program due to a bug after reinstallation. I had to look for what the installer had left because there caused something problem.

@synctext
Copy link
Member Author

We developed many new insights during our continuing 15 year journey of creating a token economy for helping others. We continue the delicate balance between science, engineering and societal impact. Our "academic stature" was estimated to be low,improving in March 2019. We continue to document the lessons learned and shift in thinking in past 15 years. New milestone is our own workshop on distributed infrastructure of common good.

Closing all #1 main issues is getting closer. We make this work future-proof by creating a specialised dedicated scientific community around our line of work. This also means slowing down as individuals and building a larger community which collectively is stronger.
To re-visit the medical-grade software reliability issue, our lab ambition is to build strong infrastructural foundations: self-sovereign identity, secure communication, data dissemination, strong privacy, trust, money and markets. Directly usable, stable, documented, behaves as expected, and can easily build higher services on top.

@synctext
Copy link
Member Author

synctext commented Jul 9, 2020

The lab is expanding significantly, 4 new people ✨ 🔥 ✨ As starting point for detailed discussions, rough breakdown of work for remainder of 2020.

Person Task
@xoriole mining community manager, badges of honour, release management
@drew2a Devops, code quality, deployment testing, and bandwidth tokens
@qstokkink overlay and first line of defence against fake accounts: latency diversity
@devos50 freerider prevention, token economy
@alexander-stannat deceptively simple trust model
@cuileri reputation and trust algorithm
@grimadas freerider prevention, community contribution accounting and anti-fraud police
@ichorid search, content discovery, metadata and adversarial information retrieval
@kozlovsky master of database matters
@egbertbouman single-person Decentralised Tor Team

@ichorid
Copy link
Contributor

ichorid commented Jul 9, 2020

The most important property of the economy is the ability to have different prices for different torrents. The seller (seeder) should be able to state his price for each of his torrents, individually. The buyer (leecher) is then able to compare the prices from different sellers and get the best combination for his request. The network then becomes literally the information exchange.

Having different prices is a prerequisite for profitable credit mining. The mining algorithm will be able to compare and predict prices for the info to seed. The network will always balance at the point of profitability, with really low margins. This will promote long-term participation (investment/seeding).

Popularity info is just a means to an end of the objective and up-to-date view into the supply-demand of information.

Price differentiation also solves the "negative balance" problem: if someone got no balance, they can only expect to be served by people who are willing to share their stuff for free as a kind of "community service". This is akin to the gas price in Ethereum: the more you are willing to pay for the service, the faster the download is for you. Willing to pay more enables more seeders.

However, this will disincentivize free torrent sharing in general. One way to solve this problem is to pay "residuals" back from each block transfer. Essentially, the result is the original seeder "recruiting" newbies for cheap work of spreading the stuff. This will require storing the whole history of sharing for each block in each torrent, and people generally controlling others for cheating. In turn, this could make the whole protocol unbearably slow.

@synctext
Copy link
Member Author

synctext commented Jul 9, 2020

Price differentiation is not something we need I think (just like bulk stuff, grain and copper). Keep it simple. But, Sandeep is in charge of the design of that part now.

@synctext
Copy link
Member Author

synctext commented Nov 6, 2020

1 million user engineering strategy: each part of Tribler should be good enough to support this huge community (but not perfect yet!).

Release priorities:

  • November - Popularity community
  • December - channels work
    • progress bar and instant-GUI feedback
    • IO is less agressive, no blocking/locking of entire computer
    • instant-random sample content in non-subscribed channels
  • January - keyword search with relevance ranking and popularity weight
  • February - ToDo.
  • March and beyond:
    1. Channel Thumbnails
    2. Markdown-based description for channels
    3. Markdown-based description for homepages of users and "follow user"
    4. Markdown hypertext with picture embedding and pointers
    5. Real-time updates of Tribler front-page
    6. content rating, quality voting (truthfulness, deceptive, CamQuality, True 4k, Italian subtitles, etc)
    7. Add more concrete steps for our ultimate goal: "global democratic layer for media"
    8. Strategy: core competence is scalability and trustworthy content; not social interaction and lively discussion
Person Task
@xoriole popularity community, mining community manager, badges of honour
@drew2a Devops, code quality, deployment testing, and "user acceptance test"
@qstokkink IPv8 2.0, IPv6 support, latency diversity
@devos50 freerider prevention, token economy, BAMI
@grimadas BAMI; freerider prevention, community contribution accounting and anti-fraud police
@cuileri reputation and trust algorithm
@ichorid search, content discovery, metadata and adversarial information retrieval
@kozlovsky master of database matters; social side of Tribler
@egbertbouman 2020: single-person Decentralised Tor Team; 2021: channels final polish?

@synctext
Copy link
Member Author

synctext commented Dec 9, 2020

1 million user engineering strategy: each part of Tribler should be good enough to support this huge community (but not perfect yet!). Customer journey as the basis of our development roadmap.

  1. User installs Tribler
  2. first startup
  3. sees the first channels appear, filling screen quickly
  4. clicks on a channel (trigger pre-view)
  5. subscribes to a channel.
  6. sees entire channels become visible
  7. does a keyword search
  8. relevant search results appear
  9. select a file for (Tor-like) download
  10. Downloading...

@synctext
Copy link
Member Author

synctext commented Feb 3, 2021

Roadmap for coming 5 years. (ongoing drafting)
We aim to overcome the tragedy of the commons, quite ambitious. Our roadmap below has the 4 pillar: money, trust, code and data. This roadmap incrementally works towards a global commons to manage the digital domain. It is meticulously designed to provide self-governance, financial sustainability, and existential financial freedom. Each year we move up and deploy more blocks to our users. The money pillar is the most scientifically challenging. We aim to create the first DAO with pure horizontal governance. Our work essentially represents a closed micro-economy with no critical dependency (share nothing architecture). The first sovereign international organisation with democratic governance. For effective self-governance we expect to encounter digital identity (#2682) and online voting problems (#5986). This needs to be addressed, but much is still unknown.
roadmap_of_Tribler_research_lab_Jan2021

Our challenge is: creating trustworthy IPv8 plugins, bootstrapping a collaborative ecosystem, scale to 1000+ engineers, CV of anonymous code contributors, and Bitcoin payments for new code plugins.

If we manage to realise this self-governing DAO we could target broader ambitions post-2026, expanding into hardware and crowdsourcing with numerous engineers on the software. Long-term scientific challenge for humanity is creating robots which can assemble themselves. Thus robots which can do 3D printing, assemble parts, and add Raspberry-pi type of boards. Science fiction scenario around asteroid mining is covering the whole "ore-to-arm" spectrum from ore mining to robot arm printing, creating self-evolving robots. My target after 2026 is to transition our DAO to a hardware platform. Goal is to have an open source robot which can walk, see, own money and conduct economic activity. This team or others here, Github: https://github.com/J-DIndustries/openDog-V2.1 It should form an IPv8 mesh network with others, IPv8 live code updates, and have our self-organising federated learning #5221.

The 20 years dream roadmap

Milestone description
Plutus Operational DAO for investments in autonomous robotic technology
Peitho Strong self-sovereign identity for democratic decision making within our DAO
Themis First DAO income is divided fairly amongst participants
Coeus DAO pays first bounty for Robot technology which is shared freely.
Nomos Self-sustaining robot technology development using Bitcoin DAO funding
Juno Nevada Mars Simulator Mile - legal establishment of a test site for robots to autonomously roam around (photo credits) !
Mercurius first robot walk at test site
Daedalus robots find and locate an iron deposit in Nevada simulator
Helios First melt using concentrated sun beams
Hephaestus Create robot parts with melting of Moon regolith simulant in Nevada
t.b.d. launch it!

@synctext
Copy link
Member Author

synctext commented Jan 19, 2023

Concrete roadmap for 2023, instead of a 20-year dream as posted above.

Priority level item
1 Stability
2 Search
2.1 100 ms for first result (with refresh later)
2.2 tags. Ontology-free crowdsourced metatada
2.3 Perfect metadata
2.4 popularity community. For high-quality relevance ranking
3 BONUS: make tags the only method for content discovery

2024 (First long-enduring DAO):

Priority level item
1 Bitcoin wallet
2 Direct artist donations and reward seeders
3 Earn Bitcoin with Bittorrent. Credit mining: donate bandwidth to swarm, 5 TByte seeding ability
4 improve upload and download performance

@synctext
Copy link
Member Author

image
Roadmap for coming 5 years. (ongoing drafting) The primitives are still democracy, autonomy, money, trust and global brain. Feb2023 update: full focus on search engine + youtube/Tiktok. Remains on Python, only master students are doing a best-effort mobile-first implementation of our prototocols. Kotlin compatible Android re-implementation would have less features, but enable camera recording plus sharing. Thumbnails, plugins, channel PRs etc are dropped.
image

@hbednar
Copy link

hbednar commented Feb 17, 2023

@synctext
This may help from a security and privacy point of view.
https://github.com/rule110-io/surge

@synctext
Copy link
Member Author

thnx @hbednar ! That is an interesting project, feels like Freenet (1999) all over again. Freenet also uses hop-by-hop forwarding architecture. Then you need a anti-freeriding, resource usage, reputation function or central user moderation server.

@Tribler Tribler locked and limited conversation to collaborators Feb 20, 2023
@synctext
Copy link
Member Author

synctext commented Apr 18, 2024

Placeholder post for 1-2 year roadmap:

  • HTML5 GUI with webtech, video playback, and GUI design make-over
  • seed content, like 40 million scientific papers (CC)
  • metadata enrichment tools. Semantic extraction from .PDF files and auto-tagging
  • Perfect search, zero spam, semantics. Visual search, personal recomendation and browsing

@qstokkink qstokkink removed this from the Backlog milestone Aug 23, 2024
@qstokkink qstokkink added type: memo Stuff that can't be solved and removed type: enhancement type: long-term labels Sep 3, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
component: token economy type: memo Stuff that can't be solved
Development

No branches or pull requests

9 participants