Parasitic Computing 198
b0r0din writes: "CNN has this article about a way to force computers to solve complex computational problem using the checksum algorithm used by the TCP/IP protocol. For more technical details, see their website." You probably thought learning TCP/IP was useless. No! You can use it to make an extremely inefficient computer...
Lovely... (Score:1)
Extremely inefficient computers (Score:2, Funny)
Re:Extremely inefficient computers (Score:1)
Re:Extremely inefficient computers (Score:1)
Re:Extremely inefficient computers (Score:1)
Here an answer (Score:1)
Can you tell me :
1/ Why it cannot stay online for more than 2 days
(because Network stack has a memory leak the size of Indiana and it eats up all my 256 Mo)
2/ why, after a fresh start, I only have 160 Mo free ? (hmmm ! because...I start too much Dll ?)
3/ Why, everytime I close an app, I have to use Memturbo (c) to free the memory it was occupying ?
Ok This was my "Bad MEmory Windows"
I propose we meet tomorow to speak about Inerface, and the day after on Filesystem ! 8)
This Post AutoModerated -1 (Offtopic) +4 (NiceGuy)
An attempt at a non-flamable response (Score:2)
It doesn't run, it flies very, very fast.
I really think one of the main positive points of Linux is allowing one to configure a good system regarless of the underlying hardware. There are options. Lots of them. If one will not fit your needs or your machine, try another. For free. As in beer and freedom...
Re:Extremely inefficient computers (Score:2)
Don't they have anything better... (Score:1)
Christ, hiring a few hundred thousand third-worlders and teaching them to use an abacus would be faster.
Or course, the globalization protestors would never go for it... carry on then.
Re:Don't they have anything better... (Score:1)
Uh,... do you read slashdot???
[Read any of the ascii art posts, or X is dying, or Portman/Grits, and tell me that there aren't plenty of other less worthwhile ways to consumes one's time...]
And besides, like most research, this isn't for practical purposes (yet). It is for proof of theory. And someday something like this would be efficient enough to bother with...
Legality? (Score:3, Insightful)
But it could slow the machines down by engaging them in mindless conversation while they unwittingly work for their remote master, Barabasi said.
Isn't this theft of resources? The researchers are literally stealing bandwidth and clock cycles. Maybe it's just me, but this seems very ethically wrong. I wonder if an IDS or firewall can be configured to protect against such leeching. Any lawyers or firewall experts in the house?
Re:Legality? (Score:1)
Re:Legality? (Score:1)
Millions of p2p users are getting away with it right now....
Re:Legality? (Score:3, Interesting)
IANAFE (I am not a firewall expert), but the only way I could think of would be to always ignore the checksum so they always get a connection and thus it would screw up their results. Otherwise it's indistinguishable from normal traffic, it's just bad traffic. Maybe the firewall could start dropping packets after X number of bad checksum packets?
Re:Legality? (Score:1)
Re:Legality? (Score:1)
Re:Legality? (Score:2)
or sabotage the results. Given these tidbits from the papers:
Of course, it is very nice that they note:parasitic computing represents an advanced but ethically challenging alternative for cluster computing, as it uses resources without the consent of the computer's owner.
Aren't there some things that would be better left untouched?
- - -
Radio Free Nation [radiofreenation.com]
an indepedant news site based on Slash Code
Re:Legality? (Score:2, Informative)
Just like people dialing a wrong number are stealing your time and resources. But part of the deal in having a phone that other peopls can call you on is that OTHER PEOPLE CAN CALL YOU.
Re:Legality? (Score:1)
Re:Legality? (Score:1)
Re:Legality? (Score:2, Insightful)
And that is what the study did.
I think the wrong phone call analogy is correct. You open up a service and *have* to expect bad/malformed/incorrect data in addition to the good/expected/desired data. You can't get a phone service and say that you only want "desired calls" to come in. Have to take the good with the bad.
Now, if someone had the *intent* of causing and interruption in service or to harass you by *intentionally* dialing your number (or making a call to a service on your machine) then that is another issue.
All of this being said, I do think this is a little intrusive, and don't like the idea (other than it is cool that it possible), but I don't think there is much ground for any kind of legal complaint.
Oh, yeah: IANAL.
Re:Legality? (Score:1)
Re:Legality? (Score:1)
Buying double glazing, timesharing an overpriced holidy apartment, or, even contributing to the Veterins Association wasn't what I had in mind when I installed my phone.
But will those b*st*rd* ( and b*tch*s) stop calling me, or, even get of the line --- NO.
Can I sue them for misuse of resources?
Re:Legality? (Score:2)
Wrong # != Stealing Resources (Score:2)
Just like people dialing a wrong number are stealing your time and resources. But part of the deal in having a phone that other peopls can call you on is that OTHER PEOPLE CAN CALL YOU.
But the people dialing the wrong number are doing it unintentionally. These folks are intentionally using my resources.
It is one thing to waste my resources do to an honest mistake. It is another to intentionally do this. Those are called crank calls (or telemarketers).
Steve M
Re:Wrong # != Stealing Resources (Score:2)
Prank calls and telemarketing are not illegal, unless it's harassing (calling multiple times).
-- iCEBaLM
Re:Wrong # != Stealing Resources (Score:1)
Yeah, and your point would be?
Steve M
Re:doyyyy (Score:1)
Theoretically, you need to read the article
Re:doyyyy (Score:2)
Being an asshole isn't illegal. Nor did it prevent you from posting on /. But if it did the level of discource would rise significantly.
Read the thread to try and figure out my point, which you completely missed.
And while you're at it you may want to read the story. In which you'll find out that they really did this. Actual not theoretical.
I must be having a bad day to be responding to clueless fucking morons.
Steve M
Re:doyyyy (Score:2)
OK.
practical (prkt-kl) adj.
1. Of, relating to, governed by, or acquired through practice or action, rather than theory, speculation, or ideals: gained practical experience of sailing as a deck hand.
2. Manifested in or involving practice: practical applications of calculus.
3. Actually engaged in a specified occupation or a certain kind of work; practicing.
4. Capable of being used or put into effect; useful: practical knowledge of Japanese. See Usage Note at practicable.
5. Intended to serve a purpose without elaboration: practical low-heeled shoes.
6. Concerned with the production or operation of something useful: Woodworking is a practical art.
7. Level-headed, efficient, and unspeculative. Being actually so in almost every respect; virtual: a practical disaster.
While the usefulness of this hack is virtually nil, it has been put into practise. See definition 1 above.
Steve M
Re:doyyyy (Score:2)
2. Manifested in or involving practice: practical applications of calculus.
Did you read the article? They did this. They manifested it in practice.
3. Actually engaged in a specified occupation or a certain kind of work; practicing.
Again, they were actually engaged in doing this.
6. Concerned with the production or operation of something useful: Woodworking is a practical art.
Again, read the story. They solved their problem using this technique.
It has been put into practice. It is no longer just theorectical.
I do agree that it is not useful, but neither are virii or DOS attacks. Two other non-theorectical resource theives.
Steve M
Re:doyyyy (Score:2)
I'm logging off for the night and won't be responding to this thread again, and arguing over definitions by a hypertechnical dissection of semantics got old in junior high anyway.
Yeah that's how intelligent adults (or AC's) cope with things they don't like. They take their ball and go home. Bye.
My background is in physics. I studied it in college. Perhaps if you stayed in school after junior high ... but no matter.
Finding one Higgs boson means it is no longer theorectical. Just one. No no one will believe you if you don't explain how you did it. But you don't have to be continuously producing them.
And that is what they did here. They showed how to use this technique in practice. Thus it is no longer theorectical.
The technique was manifested in practice. It wasn't put into production nor does it appear to be all that useful. But they define the technique and they inplemented it. Just as Newton defined calculus and then used it to solve problems. Calculus turned out to be useful for solving other problems as well.
Here is another way to look at it. It is theoretically possible to use quantum computing techniques to solve a variety of problems. But in most cases it remains theorectical as the quantum computer has not been implemented.
Or perhaps you are confusing the non-theorectical vunerability with the as of yet only theorectical malicious uses.
Or perhaps I'm giving you too much credit. Since you seem unable to grasp the distinction between practical(real;concrete)/theorectical(unrealized; not yet seen in the universe) and practical(useful)/impractical(not useful).
And once they implemented a tinkertoy computer it was manifested in practice. It just takes one. Don't confuse the usefulness of the machine (is it practical to solve problems with it) with the implementation. Once it is implemented it is no longer theorectical, it is a practical implementation of the theory of machine computation.
Oh well, I guess I'll never know.
Steve M
Re:doyyyy (Score:2)
Who said anything about laws?
I think it is a neat hack. I don't think any laws are needed as it seems there are no useful applications of the technique.
But saying that that because I open a service on my machine means that I have to put up with that service being co-opted for uses outside the 'spirit' for which it is intended is bullshit.
Steve M
Re:Legality? (Score:1)
Poor analogy.
If someone calls your number once or twice by accident then its OK. Several thousand times, on purpose, for their gain.... it becomes harrasment.
The technique this article is talking about won't cause just 'a few' stray packets. It would have to send a LOT of bogus packets. I don't know the technical details, but if they spread it out evenly enough that each machine only had to deal with a very small number of seemly stray packets, they could probably get away with it. Especially if all their target/host machines were high-traffic servers to begin with.
Re:Legality? (Score:1)
Actually, the analogy still holds. The issue at first is if *any* use of bandwidth or processor cycles is a misapporiation. I think, like a phone call, it is not.
HOWEVER, and some point "any" crosses the line into "too much" at which point you *are* talking about harrasment.
The pdf document states that there are 2^n packets that need to be sent out, for a n-varriable SAT problem. So that *could* add up to a lot.
The paper does spell out that all the systems (page 4, paragraph 2)that participated did so *unknowingly*.
Re:Legality? (Score:1)
However, it's becoming harder to do legally in more and more states.
It is both legal and ethical - no questions here.. (Score:3)
--CTH
Re:It is both legal and ethical - no questions her (Score:2)
Note, I haven't read the pdf's yet, so I don't know how well this type of computing scales, or how much power is available.
Re:Legality? (Score:1)
Heh heh... (Score:2, Funny)
Give me a break (Score:1)
You'd think they were talking about Code Red.
Interesting... (Score:2)
I don't think we'll be having to worry about it becoming endemic anytime soon, as it appears the type of problem that can be solved is somewhat limited.
Re:Interesting... (Score:1)
Re:Interesting... (Score:1)
Damn invasion (Score:1)
Poepele used to think Iw sa paranoid, but now I have the proof.
Re:Damn invasion (Score:1)
Re:Damn invasion (Score:1)
Re:Damn invasion (Score:1)
If the checksum is not there or doesn't match the data, the packet is droped.
Sun was right (Score:1, Funny)
This looks possible, but why? (Score:4, Insightful)
Example --- need to send 4,000,000 packets out and recieve the TCP packet back.
To do this with any speed, and also to not lose a fair majority of packets, you have to have a huge backhaul.. (T-3, OC3 or larger) TCP will not continue sending packet so you will loses them. Cost for large backhaul. $4800 month, (as by what my company chages..)
4,800 x 12 $57,600
So for one year of a huge pipe to the net you will be paying 57,600 (through my provider)
This still will not fix latent packets that never get back to the user, or any other problems.. (such as someone on your network running bearshare and eating all of your bandwidth)
Now lets look at the amount of money used for that large amount of bandwidth.
$57,600 for the amount we could have spent on that line in one year we can build a beowulf cluster with 30 nodes (and that is being very liberal on the cost of the nodes)
Now, looking at the article that I read, it seems as if the computing style using TCP/IP is very very ineffiecint.
Personally, for the amount needed to make this work, on the scale of actually getting any real work done, I would much rather build a Athlon Beowulf cluster.
This looks like in reality this could only be implimented in the real world as a new type of DOS attack.
Re:This looks possible, but why? (Score:1, Redundant)
Re:This looks possible, but why? (Score:1)
to send 4,000,000 packets that are 50 bits each is 200,000,000 bits ~ 25MB
i can send that out in a few minutes on ADSL even.
don't get me wrong, this is a retarded idea. it is NOT an exploit, it is NOT intelligent.
odds are it is $5000 research grant that a couple college kids got for beer money. i got 2 of them to make a web site that could figure out the average of a set of numbers, so they aren't that hard to come by... and oh did i drink well that year.
Re:This looks possible, but why? (Score:1)
Re:This looks possible, but why? (Score:1)
the idea would be cool if you sent out
all those packages but only recieved the
correct answer back - voila, quantum computing!
How would you make sure only the correct answer
created a correct checksum, and when you get it
how do you know what the question was? But the good part might be that the host only needs to spit out a bunch of numbers without doing any computations.
Re:This looks possible, but why? (Score:1)
Re:This looks possible, but why? (Score:1)
With a few mods...... (Score:1)
Re:With a few mods...... (Score:1)
Re:With a few mods...... (Score:1)
Distributed seti@xxx.xxx.xxx.xxx? (Score:1)
"Oh yeah? I have a multi homed gigabit 486!"
That is quite neat (Score:1)
Possible application (Score:3, Funny)
Re:Possible application (Score:2)
But what do you do so that you get credit for it without getting blamed for the worm?
Re:Possible application (Score:1)
http://www.symantec.com/avcenter/venc/data/w32.hll w.bymer.html
I intercepted it before it ran so I didn't get a chance to check the stats. Thought about it later thought.
Oh and feel free to check my DNet stats for rich@tekkie.org. I am about to hit my millionth RC5 block by the end of the month.
possible DOS attack? (Score:1)
This particular technique will likely not become commonplace because the effort to make it work is far greater than the possible computational return.
True, but it could be modified and used to launch a DOS attack on a specific server, couldn't it?
Interview on All Things Considered (Score:2, Informative)
There must be more to this.. (Score:1)
Why not use ICMP echo instead? (Score:3, Interesting)
Let the MPAA servers DeCSS for you (Score:3, Funny)
Now the RIAA will want to ban TCP/IP!!! (Score:2)
Uh, oh, now the RIAA, MPAA, and any other ??AA organizations will want to ban TCP/IP!
Does this mean the Internet is in violation of the DMCA?
I Have DONE THIS! I Did it years ago(steal cycles) (Score:5, Interesting)
Many unitversities in the 1980s used the MERIT network and many still do.
A feture of MERIT allows logging onto any other system from another system and during a login process a free command line feature allows use of the CALC calculator line command.
This exotic command would only work for a while before they severed the line after about two minutes, unless you finally logged in validly so they could charge you the 9600 baud access fees.
The calculator command was great. It allowed a truly dumb terminal to do simple math functions. Other 1980's terminals such as Liberty Freedom Ones and other terminals have built in desk calculators modes.
You can use the calculator function to do multiplication and other operations without owning a system account. It even worked during modem connections and tou could tie up several connections by "hopping" during a login.
I created tools to use the math functions of the MERIT network to perform computations FOR FREE.
Merit is a private, non-profit corporation, governed by thirteen of Michigan's four-year publicly supported universities. In addition to the thirteen members there are 230 affiliates with a combined total of 425 dedicated network attachments from 398 separate locations. Merit affiliates include: 85 Colleges and universities,25 Community colleges
Stealing free cpu cycles of innocent target machines as a parasite to perform complex computational tasks of a larger state machine, using network protocols is fun, especially if distributed across multiple systems and limitless.
I proudly did it first in the early 1980s.
(I have a life though and achieved many other more useful things by the way)
F.E.
Re:I Have DONE THIS! I Did it years ago(steal cycl (Score:2)
Re:I Have DONE THIS! (my followup) (Score:1, Interesting)
Admittedly the 6502 chip is not that shabby even at 1 Mhz. Steve Wozniak wrote some math routines for floating point and also the Sweet16 math libraries. But serial modem IO was probably provably less expesive than 64 bit floating point precision math. The year was 1982. The IBM PC had not even shipped yet, and even when it did it was only 64K RAM and cassette.
There was a minor round trip delay, and I bet local floating point math might be sligthly faster than using my method, even with hopping between 4 systems round robin because of the delays, but what about parallelism?
But even if you are correct and a 1 Mhz Apple ][ using a 8 bit cpu (same as nintendo years later), was capable of beating the amdahl multimillion dollar mainframe due to initial latency on the time slice, The apple could be free to compute in parallel, thus your assumption is wrong that it was wortheless to do.
Plus there are some very subtle characteristics worht considering...
You have to rememember that every hard linefeed, ESPECIALLY during login time, runs for a spit second at ultra high priority. Its a design defect on several systems. Both for timeslice and for priority. It is a shortlived timeslice but is meant to aid in showing "responsiveness" of the system under heavy loads. The theory is that each user is waiting for a cursor action to acknowledge their return.
It is part of the evil "Coffee Mug" Exploit I discoverred. It would be "infamous" but i never shared it.
For example, If you rest a coffee mug on the return key of a terminal not logged in, and the terminal is conventionally hooked up to a large minicomputer, even those with completely separate subsystem boxes for all serial IO and packet IO.... YOU WILL DRAG THE SYSTEM TO A CRAWL if the terminal is set to high speed auto keyrepeat.
A 13 thousand dollar Tektronix 2d Cad terminal hooked to a 19,200 baud serial line would emit hundreds of carriage returns per second, if preset to.
The system normally syncs on a single or double carraige return to test a table to determine what baud to interpret in autobaud modes of a connecting modem, but this is not why its so slow. These were fixed baud lines. The cpu of the mainframe was slowed because it was trying to give hundreds of high priority time slices to the terminal. One for each return key byte. And because the terminal was not even a logged in user yet, it was running totally as a parasitic system level process with no history to govern its agregate timeslice priority.
I never disclosed this defect in Primes Primos, and though i was one of only a few private citizens with Prime's Primos source code to every tool and routine in the system, I myself never bothered patching the defect. I did have fun testing other OS's.
the parasitic "Coffe Mug" was dramatic..... it brought minicomputers and mainframes to their knees.
But one thing is for certiain, an apple II can use its serial card with so little overhead that using the CALC calculator console command do do long division was provably a useful technique.
At that time I was busy infiltrating DOD computers, ATT systems, cracking PIN algorithms, and so many other things besides programming that I spent little time having fun with my simple technologies to steal cycles from Merit, other than to prove it conclusively.
An apple II using ORCA assembler (a macro assembler based on ibm 360 in some ways) could be used to do many things including a 16 bit CCITT CRC without a table lookup in so few lines of code it would blow your mind. (A 6502 can do decrement test and loop branch in one opcode). Therefore I conclude that the original article we are referring to is ludicrous even if the years was 1982 and a apple ii was employed, but i can conclusively state the authors could find nothing lacking in what I divuged in my initial post.
This CRC article is way off the mark and useless when you consider the overhe3ad for the protocol stacks and the fact that little computation is possible per crc packet of info.
desingning a computer emulator using nothing more than boolean bit vector math is challenging, I admit, but you might as well buy a box of NAND gates and design a homebrew four bit math calculator just to show it can be done.
Ahhhh the good old days.....
But todays fun will be nostalgic history one day too 20 years from now. (writing full DVD decryptors, Macrovision SD2 pattern negators, and other more trendy modern hobby wonders)
I might not be at my coding peak in another 20 years though, unless medical wonders are created.
F.E.
Like an old joke... (Score:1)
The first priest says: I draw a line in the middle of the table and throw all the money on the table. Everything left of the line is for me, everything right of the line is for the church.
The second priest says: I draw a circle in the middle of the table. Everything which lands in the circle is for me, everything which lands outside is for the church.
The third priest says: I throw all the money in the air. Everything god grabs is for the church, the everything which lands on the floor is for me.
This project works the same: they send a request to a million webservers, everything which doesn't time out is good for them
Ideas, please! (Score:3, Insightful)
Most of the posts here have been of two schools:
Both valid points, but I think that it's foolish to dismiss this out of hand. First of all, it's a pretty slick hack. Very inventive, if nothing else. Secondly, it brings up some very interesting questions. Can this ever be made practical? What would it take? Would it be ethical to make it work? Can this be used to augment a DOS attack, or something similar? If so, how do we defend against it?
Maybe I'm talking out of my ass here. I don't know TCP/IP very well. However, I know that others of you out there really know your stuff. I'd like to hear from you.
Re:Ideas, please! (Score:1)
yes, unavoidable so long as it takes more computational horsepower to generate, send, collect packets and compensate for errors (vast/huge) than it is to generate a TCP checksum (trivial).
2. unethetical --
yes, so long as your using someone elses resources without their knowledge or implied consent. if you put up a web server and someone is legitimately accessing your content (perusing/reading articles for example), that's implied consent. if someone decides to use your web server to perform load testing without informing you, that's an unauthorized use/abuse under the law. try this with NYT or Yahoo sometime and see how fast you end up in court.
no, it cannot be made practical in anything like it's present form. it's not really even clever or slick compared to other (illegal) parasitic uses of computers and network infrastructures. unless we solve the first two points, who go on?
there, we haven't dismissed it out of hand.
Re:Ideas, please! (Score:2)
Fair enough. However, I already ceded the point that it's both impractical and unethical. That's not what I'm interested in. What really interests me is the security implications of something like this. Are there good defenses against this unauthorized use of your resources? If you turn off checksumming, does that leave you vulnerable to another form of attack?
We've already decided that this is useless for real computation. What are the other ramifications?
Ender's Game (Score:1)
Interesting but not useful (Score:1)
And another factor is of reliability. What if a packet times out. Not all the packets you send are responded to
could this be an answer to micro payments? (Score:2, Interesting)
Click here to agree.
piracy? (Score:1, Insightful)
Such online piracy does not violate the security of hapless servers, using only areas specifically earmarked for public access, according to the researchers.
Eh, there's that word again, pretty handy word isn't it?
Piracy: anything you do that someone else doesn't want you to do.
Contradiction (Score:3, Insightful)
If it will make piracy more efficient, I'm pretty sure the pirates would be very interested in finding out more about it.
Hell, in my experience, most pirates would use a modem that belched huge clouds of carbon monoxide and was powered by grinding up kittens in a big hopper if it got them an extra 10k/s on their downloads.
Parasitic Computing is an example of A.I. (Score:1)
A better way? Make the client do the work... (Score:2, Interesting)
1) Create a compeling website that will get people to stick around for a while (free pr0n would probably work).
2) Put all your pages into frames with a hidden, 0 pixel frame.
3) Create dynamic pages (JSP/ASP/whatever) that will pipe down JavaScript to the hidden frame with the algorythm that needs to be run.
4) Let the calculation run while the user browses your site, then POST the results back to the server when it's done.
This would all be relatively transparent to the user... Of course, if they're all paranoid
Why not enable this on purpose? (Score:3, Interesting)
You could give it a small chunk of memory to use, run it at a VERY low priority, and use SSH like transmission where the packets are automaticaly compressed and only a list of certain IPs would be accepted. All you would have to do is download the IPs of the distributed projects you wanted to work on and the virtual machine would accept packets from them. No specific clients to download for each project, and you would get distributed computing easily on all your machines.
Any projects like this? It would be great to have an always on and client secure distributed computing platform.
DDOS? (Score:1)
If you do it, do it right. (Score:3, Funny)
TCP/IP packets. And write an interface to this
so that you can use it for SetiAtHome.
Albert-Laszlo Barabasi (Score:1)
Can we stop talking about him now?
Re:MOD PARENT UP!!!!!!! (Score:1)
Re:Interesting concept (Score:1)
Re:Interesting concept (Score:3, Insightful)
An interesting idea is the hijacking of authorization sections of secure protocols, dispatching authentication requests based on a public/private key pair you are trying to hack, to thousands of servers and the one that returns a successful result must have been given the correct key pair.
Of course, I'm fairly certain most widespread secure protocols can't be used like this, but one or two of the less common ones might have a loophole... but then again, if they're less common, resources would be scarce, and you're better off trying to crack things on your own.
Re:Interesting concept (Score:2, Insightful)
While it does work, it's basically trading a (relatively) small amount of actual computation for a large amount of bandwidth. Actually sending those packets out in the first place may take more computation that the actual checksum would, so I'm not sure if this is entirely useful...
Re:Interesting concept (Score:2)
Re:Is this legal? (Score:2)
Re:Is this legal? (Score:1)
Unless you're in Afghanistan... ;-)
Interesting question... (response OT) (Score:2)
If I steal something from you, and you never, ever notice that thing is gone (ie, out of your posession), have I really stolen from you, from your viewpoint?
I mean, if you don't know, you don't know, right?
Re:Interesting question... (response OT) (Score:2)
Re:Inefficient compared to what? (Score:1)
Guess I shouldn't have used a bubble sort
Re:Inefficient compared to what? (Score:1)
excellent question!! (Score:1)