Uploaded by Great Awulu

AWULU GREAT PARASITIC COMPUTING

advertisement
PARASITIC
COMPUTING
By Awulu Great
RUN/CMP/17/7045
INTRODUCTION
Parasitic Computing
Parasitic Computing is a Concept whereby one can utilize the resources of
machines that are connected over the internet or the same network. In this type of
computing, a parasite which is the computer attempts to solve a complex task by
breaking it up into many small sub-tasks and distributing the processing over
several separate remote computers that are connected over a network. (Barger &
Crowell).
Parasitic computing is seen as a model in which one machine “forces” other
machines to solve a computational problem by engaging in standard
communication with them.
Checksum: A checksum is a value used to verify the integrity of a file or a data
transfer. In other words, it is a sum that checks the validity of data. Checksums
are typically used to compare two sets of data to make sure they are the same.
Also a checksum is an error detection tool, used to check if data sent between two
or more device are valid. If the checksums don't match those of the original files,
the data may have been altered or corrupted. It is used in networking at the
Transport layer, IP layer and the Network Layer.
TCP: The Transmission Control Protocol (TCP) is a transport protocol that is
used on top of Internet Protocol (IP) to ensure reliable transmission of packets.
The TCP defines the how packets of data is sent between devices in a network.
The parasite, that is the machine that houses the problem or initiates
communication, exploits the communication channel at the TCP or at higher
layers of the network to take advantage of the other machine(s) processing power.
Parasitic Computing was first proposed by Albert-Laszlo Barabasi, Vincent W.
Freeh, Hawoong Jeong & Jay B. Brockman of the University of Notre Dame,
Indiana, USA, in 2001. In the original paper a 3-SAT or the Satisfiability problem
was used to demonstrate the concept of breaking problems to sub-problems and
using other computers processing power. Each of the sub-problems are encoded
between a checksum and a packet and are injected at the IP layer. The design of
the message sent is designed to evaluate a potential solution by exploiting the
TCP checksum. After the target server receives the message, it will try to verify
the data integrity of the TCP segment by calculating a TCP checksum.
The Target server or computer, as part of receiving the packet and deciding whether it is
valid and well-formed, create a checksum of the packet and see whether it is identical to
the provided checksum. The design of the message makes the checksum check fail if
the answer or solution to the sub-problem is invalid.
If the checksum is invalid, it will then request a new packet from the “parasite”
computer. The “parasite”computer now knows the answer to that smaller problem based
on the second computer's response and can transmit a fresh packet embodying a
different sub-problem.
Brief Literature Review and Related Works
Barabsi et al., (2001) suggested a parasitic computer to solve the
nondeterministic polynomial time-complete satisfiability problem by engaging
different web servers physically located in three continents (America, Europe and
Asia).
Vincent (2002) described how a TCP/IP Checksum Computer (TICC) will be
built, in a paper called the anatomy of a parasitic computer. It uses a specially
constructed TCP segment in such a way that when the receiver computes the
checksum, it unwittingly performs a computation for a remote node. Using the
TCP checksum, a parasite is able to ask the following question. The paper
detailed the implementation of the TICC in linux
Agbaje (2013) worked on parasitic computing : problems and ethical
considerations. This paper onlines the some of the security challenges that can
arise as a result of parasitic computing like ip spoofing, spread of worms, virus,
trojan horses and also Distributed Denial of Service attacks (DDOS).
Barger and Crowell (2005) illustrated Ethics of ‘Parasitic Computing’:Fair Use
or Abuse of TCP/IP Over the Internet? In this paper, the attacks that can be
performed against a computer in a used in the parasitic model were described
Also a philosophical look was taken on the morality of parasitic computing.
Architecture of a Parasitic computing Model using the TCP
checksum function
To implement a parasitic computer using the checksum function we need to design a
special message that coerces a target server into performing the desired computation. As
a test problem we choose to solve the well known `satisfiability' (or SAT) problem,
which is a common test for many unusual computation methods 4,5 . The SAT problem
involves ending a solution to a Boolean equation that satisfies a number of logical
clauses. This is called a 2-SAT problem because each clause, shown in parentheses,
involves two variables. The more difficult 3-SAT problem is known to be NP complete,
which in practice means that there is no known polynomial-time algorithm which solves
it.
Tcp checksum Function implementation
APPLICATION AREAS
➔ Solving of Mathematical problems (e.g satisfiability problems, time complex
problems)
➔ Bitcoin mining
References
Agbaje, M. (2013, june). PARASITIC COMPUTING: PROBLEMS AND ETHICAL
CONSIDERATION. International Journal of Advanced Research, 1(11), 8-18.
https://www.researchgate.net/publication/333868456_PARASITIC_COMPUTING_P
ROBLEMS_AND_ETHICAL_CONSIDERATION/
Albert-Laszlo, B., Freeh, V., Hawoong, J., & Jay, B. (n.d.). Nature.
Barger, R., & Crowell, C. (n.d.). THE ETHICS OF “PARASITIC COMPUTING:”
Distributed Computation or Trespassing? Information Ethics: Privacy and
Barger, R., & Crowell, C. (n.d.). THE ETHICS OF “PARASITIC COMPUTING:”
Distributed Computation or Trespassing? Information Ethics: Privacy and
Intellectual Property.
Freeh, V. (n.d.). Anatomy of a parasitic computer. Doctor Dobbs Journal, 27(1).
https://www.drdobbs.com/security/anatomy-of-a-parasitic-computer/184404947
Download