
Parasitic Computing (2001) - dedalus
https://www.nature.com/articles/35091039
======
exikyut
Here's the TL;DR:

> _The parasite node creates 2n specially constructed messages designed to
> evaluate a potential solution. The design of the message, exploiting the TCP
> checksum, is described in Fig. 3. These messages are sent to many target
> servers throughout the Internet. ..._

> _The message received by a target servercontains an IP header, a TCP header,
> and a candidate solution (values for x(i)). The operators in the Boolean
> equation determine the value of the checksum, which is in the TCP header.
> The parasite node injects each message into the network at the IP level
> (Fig. 1), bypassing TCP. After receiving the message, the target server
> verifies the data integrity of the TCP segment by calculating a TCP
> checksum._

> _The construction of the message (Fig. 3) ensures that the TCP checksum
> fails for all messages containing an invalid solution to the posed SAT
> problem. Thus, a message that passes the TCP checksum contains a correct
> solution. The target server will respond to each message it receives (even
> if it does not understand the request). As a result, all messages containing
> invalid solutions are dropped in the TCP layer. Only a message which encodes
> a valid solution `reaches ' the target server, which sends a response to the
> `request' it received._

References:
[http://web.archive.org/web/20161106073051/http://www3.nd.edu...](http://web.archive.org/web/20161106073051/http://www3.nd.edu:80/~parasite/)

~~~
bribroder
Another bit about the practical usefulness at this point:

> The TCP checksum provides a series of additions and a comparison at the cost
> of hundreds of machine cycles to send and receive messages, which makes it
> computationally inefficient. To make the model viable, the computation-to-
> communication ratio must increase in order that the computation exported by
> the parasitic node is larger than the amount of cycles required by the node
> to solve the problem itself instead of sending it to the target. However, it
> is important to emphasize that these are drawbacks of the presented
> implementation and do not represent fundamental obstacles for parasitic
> computing. It remains to be seen whether a higher-level implementation of a
> parasitic computer could execute in an efficient manner.

------
sheepz
Mining cryptocurrencies in your browser could be seen as form of parasitic
computing that is actually happening right now (mining Monero on Piratebay)

~~~
stri8ed
Though it requires active participation from the participant, i.e. visiting
the "infected" website. Whereas this method requires no actions on part of the
server, beyond behaving normally.

~~~
knowaveragejoe
Makes me wonder what other sort of things a given server is participating in
without realizing it. I don't see how you could use this exact technique(TCP
checksums) to mine crypto, for example, but there might be some relatively
common web applications out there that could be exploited in a similar way.

~~~
gwern
You actually kinda sorta can 'mine' HTTPS - as part of a cryptocurrency which
incentivizes DDoSes!
[https://www.usenix.org/system/files/conference/woot16/woot16...](https://www.usenix.org/system/files/conference/woot16/woot16-paper-
wustrow.pdf)

------
c3534l
I was really confused about how subscribing to Nature vs. Redcube was an NP-
Complete problem.

------
bane
I know of a few organizations that buy multicore systems for their staff, and
then "reserve" a few cores as part of a local grid computer. I think of this
as more "symbiotic" computing than parasitic.

~~~
mikepurvis
How does that work in practice? Is it basically just asking everyone to run a
distcc node, or there something more to it?

~~~
bane
There's several vendors for it but typically there's some kind of service that
runs on the organization's desktop machines that are centrally controlled by a
job scheduler/server.

I don't have a lot of familiarity with them other than in conversation. But
here's a few:

[http://www.jppf.org/](http://www.jppf.org/)

[http://www.digipede.net/](http://www.digipede.net/)

[https://www.maplesoft.com/products/toolboxes/GridComputing/i...](https://www.maplesoft.com/products/toolboxes/GridComputing/index.aspx)

------
raker
Very interesting concept, but is the actual paper linked here available to
read online?

~~~
cybertronic
[https://pdfs.semanticscholar.org/24bd/35f377212dfb846afe6abf...](https://pdfs.semanticscholar.org/24bd/35f377212dfb846afe6abfee0cc6bf14964f.pdf)

~~~
etiam
You could also get a copy at Barabási's homepage.

[http://barabasi.com/publications/24/network-
science](http://barabasi.com/publications/24/network-science)

~~~
exikyut
PSA/headsup - this is the best copy, it contains the diagrams and figures.

Direct link: [http://barabasi.com/f/95.pdf](http://barabasi.com/f/95.pdf)

(Unfortunately the <a> link on the site has `download="Paper.pdf"` inserted
unhelpfully. This direct link won't suffer from that problem.)

------
cybertronic
(2001)

~~~
sctb
Thanks, updated.

