My first thought when I saw the picture in the article was, "Ick, it's a PC." While it may not exactly be a PC, it does, IMO, suffer from featuritis--a problem I see much too often these days. I can live with my game console, my VHS deck, and my DVD player [no, I don't actually have one] separate just fine, thankyouverymuch. I won't even go into the issue of more complexity = more bugs; I'm just getting tired of these so-called "all-in-one" solutions that never actually do all of what you want.
I don't know of a case that has declared them enforceable, but I have heard of a Japanese company with a patent on charging ISP users based on connect time or something absurd like that which is attempting to sue other Japanese companies under US patent law (which is more lenient than Japanese law), on the basis that said ISPs can be accessed from the US as well as Japan.
If it succeeds, I think I may just crawl under a rock and shrivel up...
Well, my first real eye-opener was when I first came to Japan during summer vacation a couple of years ago; on my return trip from Akita (a prefecture in northern Japan) to Tokyo, a trip of about 660 km, the train left at 10:10 [IIRC] and was scheduled to arrive in Tokyo at 14:38. And whaddyaknow... when the train comes to a stop at the platform, my watch says 14:38:10.
I've gone on various other long-distance trips since, and they've all been accurate to more or less the same degree. Some of the time schedules the station staff use even have seconds printed on them.
I have to say, spending xmas in Denmark last year (rather than the UK, where i live) was amusing - getting a train that ran from one end of Denmark to the other (Randers -> copenhagen), on christmas day, and leaving/arriving within a minute of its scheduled time, was a new experience for me!
It was a whole minute off?
I must have become more spoiled by the Japanese train system than I thought...
"Further, for those who can read code fluently, the code itself is a precise description of what is intended, more
than any amount of English."
They are handing an argument on a platter here, in my view. Pages spent saying code is speech, there is no line
between code and expression, etc. is subverted right here.
While it's easy enough to jump on that statement, it seems to me it would be hard to formulate a solid argument against it. After all, you see exactly the same distinction in human language. I speak Japanese fairly fluently, and while I can't come up with any examples off the top of my head, there are any number of Japanese expressions which simply don't translate well to English--you'd have to explain them instead, just like the authors of the brief demonstrated in explaining source code in English.
However, what is a phone primarily used for? Reading contents? No. Talking with others. For that, the PHS
phones are so much better than i-mode.
And they work fine as long as you stay real close to a relay; if you leave the city, tough luck. Not to mention that people can pinpoint your location much more accurately with PHS's. Thanks, but I'll be sticking with my 800MHz digital phone.
And incidentally, I've never quite seen the need for CD-quality audio in a telephone conversation...
On the other hand, we can safely assume that if there is someone out there sending out a signal, they'll be using a hell of a lot more power than your average cell phone, so I wouldn't put detection out of the question just yet.
-- BACKNEXTFINISHCANCEL
I'm not sure what "it" is...
on
What is 'IT'?
·
· Score: 1
I realize this isn't the kind of comment the poster is looking for, but I see this as just another example of what will happen when anyone can put a server up and have it accessible from anywhere else in the world. Yes, if people secured their boxes that would be fine, yes, it's possible to make things work without outside regulation, but for that you need an ideal world, and ours is far, far from ideal. Hell, half the sysadmins out there probably couldn't secure their systems properly if their lives depended on it, and we all know the attitude of most businesses toward security. Unless both of those factors change significantly for the better--something I don't see happening anytime soon--we need someone setting rules on who can do what on the Internet. If you don't like government regulation, then get on backbone providers to clean up their act and not let bad packets through their routers. But as long as there are broken machines out there and idiots to abuse them, I don't think we're going to see any respite from this sort of thing.
As for what Undernet can do? Not much, really. Filter ICMP at ingress routers or turn off ICMP echo replies on affected machines, that sort of basic stuff you can do easily, but it only cuts down on some traffic at best. After that your only hope is to get backbone providers to cooperate with you in tracing down the problem sites and get the owners of the problem sites to secure their machines (or else get their network provider to pull their connectivity).
The one other thing I can suggest in general is just to not be a place that lamers would want to attack. Undernet is already one of the Big Three, so that's probably hopeless, but the network I started up about five years ago (and am still nominally involved in) hasn't seen any DoS attacks that I've been aware of. It may be obvious, but even the lamers have reason to their actions (usually)--mostly they're just looking for attention, so they atttack places that will cause the most disruption.
Delphi may save you from accidentally creating buffer overflows, but will it stop you from forgetting to clear the "valid" flag on a user record for a user who has terminated their session? I didn't think so.
This argument is one that has happened countless times on Bugtraq, without any real conclusion. Some people claim that C (and any other language without bounds checking) is "inappropriate for deployed software," while other people say that languages with bounds checking have too much overhead--in terms of speed, memory, or other factors--to make them usable for server programs, monitoring software, etc., or don't provide feature XYZ which they "need" to write their software (of course, you can write most any program in most any language, but writing a program in a language you're not familiar with is a recipe for disaster). Yet others say that letting the compiler do all the security work will make programmers careless and lead to more of the kind of mistake I mentioned above.
My personal position is, there is no absolute "best language", so use whatever language you're most comfortable with--just make sure you know what you're doing.
By the way, are you sure your Delphi compiler will always bound-check properly in every possible case? One of the reasons I like C is that the compiler does just that--compiles--and doesn't try to insert all sorts of fancy features. That limited functionality, combined with the sheer amount of C code out there which compilers get tested on, allows me to be much more certain than with any other language (except assembly, perhaps) that the compiler will correctly turn my source code into machine code that does exactly what I say.
Incidentally, I haven't had a buffer overflow in a few years myself, ever since I learned to watch out for them--using C all the while. (Why they don't teach this in classes is a mystery to me, though...)
What I'd really like to know is what the hell Iraq would have done with a bunch of PS2s - much less what they'll
do with the PS1. The machine are designed specifically for graphics rendering. [...] They can now use them to map the trajectory of
their missiles! Of course, it all has to fit on a PlayStation disk...
Not if you take it apart. The PS and PS2 hardware, like that of most other game consoles, can easily be adapted to other uses; see, for example, Linux on the Dreamcast. Now, whether the Iraqis have enough smarts to reverse-engineer the hardware and wire it up for their own purposes, I don't know--but just because these are game machines, don't assume they can't do anything except graphics.
So why can't you just reformat anyway? At the worst, you take a DOS boot floppy and fdisk the thing to death, or give it a dd if=/dev/zero from Linux. And if a virus like this was possible and did cause damage, it would only hasten the end of this silly idea, since hard drive vendors and OEMs would not be at all happy to have to replace tons of users' hard drives.
Well, I read over the articles, the specs, and the presentation, and to be honest, I can't quite see what everyone's getting so worked up about. To me, it looks as if all they're doing is providing a set of commands that can be used to cause data to be encrypted / rendered uncopyable by the hardware. While this will obviously raise all sorts of problems with data that is stored this way (no backups, no defragmentation, watch out for cache read-aheads, etc.), the way I read it, this only applies if the software explicitly requests protection--there's nothing saying you can't use it as an ordinary hard disk the same way things have worked up until now.
As far as the problems that would crop up with software that did use this feature, I imagine that such software would last right up until the day Joe Q. User defragged his hard disk and lost access to all of his protected data, and then be dumped by software vendors and OEMs who don't want to have to deal with all the threats and legal problems. (However much the courts may or may not be leaning toward Big Business, the argument "I paid for this but didn't get it!" is still a sufficiently strong one, I think.) I don't see much of a realistic probability that this scheme would actually work in the real world.
So what am I missing that makes this such a horrible problem?
This is exactly what I do (my list is pretty huge at this point)--and here's the code I wrote to return empty web pages. It's pretty simplistic, but it gets the job done:
#!/usr/bin/perl
$PORT = 31337;
use Socket;
socket SOCKET, PF_INET, SOCK_STREAM, 6 or die "no socket: $!\n";
bind SOCKET, sockaddr_in($PORT, inet_aton("127.0.0.1")) or die "no bind: $!\n";
listen SOCKET, 5;
while (accept(CLIENT, SOCKET)) {
$timeout = time()+2;
$fd = "";
vec($fd,fileno(CLIENT),1) = 1;
1 while ((select(($x=$fd),undef,undef,1) != 1 || <CLIENT> !~/^\s*$/)
&& time() < $timeout);
select CLIENT;
$| = 1;
print "HTTP/1.0 200 Go away\015\012";
print "Content-Type: text/html\015\012\015\012 ";
close CLIENT;
}
Are you willing to let spammers take 2 days from your life?
Out of 18,262? Sure.
And in doing so, you are doing nothing to help others.
Oh, what a horrible person I am.
I make more of an effort- I file reports with Spamcop.net. I spend about six times the seconds you do, per day.
Good for you.
What right do you have to say that I should have almost two weeks taken out of my life by spammers?
What, it's now my fault that you chose to report spammers to some pseudo-authority? Give me a break. If you think that using those two weeks to report spammers is a waste of your time, then for crying out loud, don't do it! It's your life, live it how you want--but don't go blaming others for your decisions.
Besides, seeing how terrible the RBL's false-negative rate is, using it wouldn't save you much time anyway. And there are filters (someone even posted one) you can apply on the client end if spam is causing you that much trouble.
Soon you'll be spending 45 seconds digging through the spam (nine days out of your life)
Again, no big deal, even assuming the amount of spam does increase that drastically. If you want to play numbers, how about this one: if you're a good little boy and brush your teeth for one minute every day, that's 12.7 days out of your hypothetical 50-year life right there.
If you really have some imperative need to make spam into a huge problem, then yes, it is a problem, but some of us just don't think it's worth getting all worked up over.
I think the phrase "the Internet has peaked" is misleading, but the article makes a good point: the Web isn't a panacea, and in fact we've probably taken it about as far as it's going to go at this point. Perhaps it would be better to say "the Web has matured" (carefully avoiding the Web == Internet misconception).
As far as the Internet itself goes, I think it's still got a lot of development ahead of it. For all the business going on on the Internet these days, it still resembles nothing so much as a giant research project--which is reasonable, seeing as it hasn't even been around for 40 years yet. When I can call my parents in the US from the data terminal in my house in Japan over the Internet and get the same reliability and quality as a call today over the telephone network, then the Internet will be mature, or at least closer.
I know I'm going to get flamed for a heretical opinion like this, but how about just ignoring the spam, just like tossing out junk snail-mail? I typically get on the order of 8-10 spams a day, and I just "D" them out of my way and go on; it takes me about one second to recognize a mail as being spam and delete it, so we're looking at an investment of maybe ten seconds a day to get rid of it. In my eyes, that's much simpler than trying to install a spam filter and get it working properly, remembering to update its lists, and still not being able to catch 100% of spam.
Now, I realize there are people who get dozens or hundreds of messages a day--I used to, while I ran a web provider--where sorting out spam really can take a good deal of time, and in those cases some sort of filter might be useful. But I don't think it's a problem of the level where ISPs need to (or should) unilaterally impose filters on their users--particularly when such filters have such bad performance as the RBL. I was particularly disturbed by the comment in the article which mentioned that the RBL was the only filter which blocked a legitimate message.
Also, before anyone asks, I'm not by any means in favor of spam; I'd be delighted if all the spammers in the world suddenly became enlightened and desisted from their wrongful ways, or something. But I'm not exactly enamored of the RBL's heavy-handed tactics, either.
They are us. We are not actually the descendants of apes; we're the descendants of the people who killed the descendants of apes when they crash-landed here a couple million years ago. We haven't been able to contact the planet we came from because the people who remained all died out from a disease spread from a dirty telephone booth.
No, because you only need one of the pair to determine its partner. DNA bases pair up predictably: A with T, G with C. So if you have a sequence of bases
CATGATACAGTAG then you know the respective complements will be
GTACTATGTCATC so you only need two bits per base pair to store the data. (Disclaimer: I haven't studied biology since high school, so I could be misremembering.)
I wonder what the genetic analog of gzip would be...
You can do that now, if your hardware is crappy enough. I get static through my earphones on my Compaq at work whenever there's CPU activity. It's bizarre.
A method whereby a computer program inputs an amount of data greater than the size of the buffer which receives that data, allowing on-the-fly modifications of the program's behavior... oh wait, prior art. Damn.
Though it's almost a shame one can't do something like this--it would be a great argument to take to pointy-eared bosses who want to ignore security problems...
...is the sound your new floppy CD with its 650 gigs of irreplaceable data makes as you accidentally bump the box and the vibration flops the CD enough to get it caught in the motor.
Okay, I guess that wasn't such a good investment after all...
My first thought when I saw the picture in the article was, "Ick, it's a PC." While it may not exactly be a PC, it does, IMO, suffer from featuritis--a problem I see much too often these days. I can live with my game console, my VHS deck, and my DVD player [no, I don't actually have one] separate just fine, thankyouverymuch. I won't even go into the issue of more complexity = more bugs; I'm just getting tired of these so-called "all-in-one" solutions that never actually do all of what you want.
--
BACKNEXTFINISHCANCEL
I don't know of a case that has declared them enforceable, but I have heard of a Japanese company with a patent on charging ISP users based on connect time or something absurd like that which is attempting to sue other Japanese companies under US patent law (which is more lenient than Japanese law), on the basis that said ISPs can be accessed from the US as well as Japan.
If it succeeds, I think I may just crawl under a rock and shrivel up...
--
BACKNEXTFINISHCANCEL
Well, my first real eye-opener was when I first came to Japan during summer vacation a couple of years ago; on my return trip from Akita (a prefecture in northern Japan) to Tokyo, a trip of about 660 km, the train left at 10:10 [IIRC] and was scheduled to arrive in Tokyo at 14:38. And whaddyaknow... when the train comes to a stop at the platform, my watch says 14:38:10.
I've gone on various other long-distance trips since, and they've all been accurate to more or less the same degree. Some of the time schedules the station staff use even have seconds printed on them.
--
BACKNEXTFINISHCANCEL
I have to say, spending xmas in Denmark last year (rather than the UK, where i live) was amusing - getting a train that ran from one end of Denmark to the other (Randers -> copenhagen), on christmas day, and leaving/arriving within a minute of its scheduled time, was a new experience for me!
It was a whole minute off?
I must have become more spoiled by the Japanese train system than I thought...
--
BACKNEXTFINISHCANCEL
"Further, for those who can read code fluently, the code itself is a precise description of what is intended, more than any amount of English."
They are handing an argument on a platter here, in my view. Pages spent saying code is speech, there is no line between code and expression, etc. is subverted right here.
While it's easy enough to jump on that statement, it seems to me it would be hard to formulate a solid argument against it. After all, you see exactly the same distinction in human language. I speak Japanese fairly fluently, and while I can't come up with any examples off the top of my head, there are any number of Japanese expressions which simply don't translate well to English--you'd have to explain them instead, just like the authors of the brief demonstrated in explaining source code in English.
--
BACKNEXTFINISHCANCEL
However, what is a phone primarily used for? Reading contents? No. Talking with others. For that, the PHS phones are so much better than i-mode.
And they work fine as long as you stay real close to a relay; if you leave the city, tough luck. Not to mention that people can pinpoint your location much more accurately with PHS's. Thanks, but I'll be sticking with my 800MHz digital phone.
And incidentally, I've never quite seen the need for CD-quality audio in a telephone conversation...
--
BACKNEXTFINISHCANCEL
On the other hand, we can safely assume that if there is someone out there sending out a signal, they'll be using a hell of a lot more power than your average cell phone, so I wouldn't put detection out of the question just yet.
--
BACKNEXTFINISHCANCEL
...but our company's slogan is "Big IT."
Well, uh, the bigger the better, I guess...
--
BACKNEXTFINISHCANCEL
I realize this isn't the kind of comment the poster is looking for, but I see this as just another example of what will happen when anyone can put a server up and have it accessible from anywhere else in the world. Yes, if people secured their boxes that would be fine, yes, it's possible to make things work without outside regulation, but for that you need an ideal world, and ours is far, far from ideal. Hell, half the sysadmins out there probably couldn't secure their systems properly if their lives depended on it, and we all know the attitude of most businesses toward security. Unless both of those factors change significantly for the better--something I don't see happening anytime soon--we need someone setting rules on who can do what on the Internet. If you don't like government regulation, then get on backbone providers to clean up their act and not let bad packets through their routers. But as long as there are broken machines out there and idiots to abuse them, I don't think we're going to see any respite from this sort of thing.
As for what Undernet can do? Not much, really. Filter ICMP at ingress routers or turn off ICMP echo replies on affected machines, that sort of basic stuff you can do easily, but it only cuts down on some traffic at best. After that your only hope is to get backbone providers to cooperate with you in tracing down the problem sites and get the owners of the problem sites to secure their machines (or else get their network provider to pull their connectivity).
The one other thing I can suggest in general is just to not be a place that lamers would want to attack. Undernet is already one of the Big Three, so that's probably hopeless, but the network I started up about five years ago (and am still nominally involved in) hasn't seen any DoS attacks that I've been aware of. It may be obvious, but even the lamers have reason to their actions (usually)--mostly they're just looking for attention, so they atttack places that will cause the most disruption.
--
BACKNEXTFINISHCANCEL
Delphi may save you from accidentally creating buffer overflows, but will it stop you from forgetting to clear the "valid" flag on a user record for a user who has terminated their session? I didn't think so.
This argument is one that has happened countless times on Bugtraq, without any real conclusion. Some people claim that C (and any other language without bounds checking) is "inappropriate for deployed software," while other people say that languages with bounds checking have too much overhead--in terms of speed, memory, or other factors--to make them usable for server programs, monitoring software, etc., or don't provide feature XYZ which they "need" to write their software (of course, you can write most any program in most any language, but writing a program in a language you're not familiar with is a recipe for disaster). Yet others say that letting the compiler do all the security work will make programmers careless and lead to more of the kind of mistake I mentioned above.
My personal position is, there is no absolute "best language", so use whatever language you're most comfortable with--just make sure you know what you're doing.
By the way, are you sure your Delphi compiler will always bound-check properly in every possible case? One of the reasons I like C is that the compiler does just that--compiles--and doesn't try to insert all sorts of fancy features. That limited functionality, combined with the sheer amount of C code out there which compilers get tested on, allows me to be much more certain than with any other language (except assembly, perhaps) that the compiler will correctly turn my source code into machine code that does exactly what I say.
Incidentally, I haven't had a buffer overflow in a few years myself, ever since I learned to watch out for them--using C all the while. (Why they don't teach this in classes is a mystery to me, though...)
--
BACKNEXTFINISHCANCEL
What I'd really like to know is what the hell Iraq would have done with a bunch of PS2s - much less what they'll do with the PS1. The machine are designed specifically for graphics rendering. [...] They can now use them to map the trajectory of their missiles! Of course, it all has to fit on a PlayStation disk...
Not if you take it apart. The PS and PS2 hardware, like that of most other game consoles, can easily be adapted to other uses; see, for example, Linux on the Dreamcast. Now, whether the Iraqis have enough smarts to reverse-engineer the hardware and wire it up for their own purposes, I don't know--but just because these are game machines, don't assume they can't do anything except graphics.
--
BACKNEXTFINISHCANCEL
So why can't you just reformat anyway? At the worst, you take a DOS boot floppy and fdisk the thing to death, or give it a dd if=/dev/zero from Linux. And if a virus like this was possible and did cause damage, it would only hasten the end of this silly idea, since hard drive vendors and OEMs would not be at all happy to have to replace tons of users' hard drives.
--
BACKNEXTFINISHCANCEL
Well, I read over the articles, the specs, and the presentation, and to be honest, I can't quite see what everyone's getting so worked up about. To me, it looks as if all they're doing is providing a set of commands that can be used to cause data to be encrypted / rendered uncopyable by the hardware. While this will obviously raise all sorts of problems with data that is stored this way (no backups, no defragmentation, watch out for cache read-aheads, etc.), the way I read it, this only applies if the software explicitly requests protection--there's nothing saying you can't use it as an ordinary hard disk the same way things have worked up until now.
As far as the problems that would crop up with software that did use this feature, I imagine that such software would last right up until the day Joe Q. User defragged his hard disk and lost access to all of his protected data, and then be dumped by software vendors and OEMs who don't want to have to deal with all the threats and legal problems. (However much the courts may or may not be leaning toward Big Business, the argument "I paid for this but didn't get it!" is still a sufficiently strong one, I think.) I don't see much of a realistic probability that this scheme would actually work in the real world.
So what am I missing that makes this such a horrible problem?
--
BACKNEXTFINISHCANCEL
#!/usr/bin/perl
/^\s*$/)
$PORT = 31337;
use Socket;
socket SOCKET, PF_INET, SOCK_STREAM, 6 or die "no socket: $!\n";
bind SOCKET, sockaddr_in($PORT, inet_aton("127.0.0.1")) or die "no bind: $!\n";
listen SOCKET, 5;
while (accept(CLIENT, SOCKET)) {
$timeout = time()+2;
$fd = "";
vec($fd,fileno(CLIENT),1) = 1;
1 while ((select(($x=$fd),undef,undef,1) != 1 || <CLIENT> !~
&& time() < $timeout);
select CLIENT;
$| = 1;
print "HTTP/1.0 200 Go away\015\012";
print "Content-Type: text/html\015\012\015\012 ";
close CLIENT;
}
--
BACKNEXTFINISHCANCEL
Are you willing to let spammers take 2 days from your life?
Out of 18,262? Sure.
And in doing so, you are doing nothing to help others.
Oh, what a horrible person I am.
I make more of an effort- I file reports with Spamcop.net. I spend about six times the seconds you do, per day.
Good for you.
What right do you have to say that I should have almost two weeks taken out of my life by spammers?
What, it's now my fault that you chose to report spammers to some pseudo-authority? Give me a break. If you think that using those two weeks to report spammers is a waste of your time, then for crying out loud, don't do it! It's your life, live it how you want--but don't go blaming others for your decisions.
Besides, seeing how terrible the RBL's false-negative rate is, using it wouldn't save you much time anyway. And there are filters (someone even posted one) you can apply on the client end if spam is causing you that much trouble.
Soon you'll be spending 45 seconds digging through the spam (nine days out of your life)
Again, no big deal, even assuming the amount of spam does increase that drastically. If you want to play numbers, how about this one: if you're a good little boy and brush your teeth for one minute every day, that's 12.7 days out of your hypothetical 50-year life right there.
If you really have some imperative need to make spam into a huge problem, then yes, it is a problem, but some of us just don't think it's worth getting all worked up over.
--
BACKNEXTFINISHCANCEL
I think the phrase "the Internet has peaked" is misleading, but the article makes a good point: the Web isn't a panacea, and in fact we've probably taken it about as far as it's going to go at this point. Perhaps it would be better to say "the Web has matured" (carefully avoiding the Web == Internet misconception).
As far as the Internet itself goes, I think it's still got a lot of development ahead of it. For all the business going on on the Internet these days, it still resembles nothing so much as a giant research project--which is reasonable, seeing as it hasn't even been around for 40 years yet. When I can call my parents in the US from the data terminal in my house in Japan over the Internet and get the same reliability and quality as a call today over the telephone network, then the Internet will be mature, or at least closer.
--
BACKNEXTFINISHCANCEL
I know I'm going to get flamed for a heretical opinion like this, but how about just ignoring the spam, just like tossing out junk snail-mail? I typically get on the order of 8-10 spams a day, and I just "D" them out of my way and go on; it takes me about one second to recognize a mail as being spam and delete it, so we're looking at an investment of maybe ten seconds a day to get rid of it. In my eyes, that's much simpler than trying to install a spam filter and get it working properly, remembering to update its lists, and still not being able to catch 100% of spam.
Now, I realize there are people who get dozens or hundreds of messages a day--I used to, while I ran a web provider--where sorting out spam really can take a good deal of time, and in those cases some sort of filter might be useful. But I don't think it's a problem of the level where ISPs need to (or should) unilaterally impose filters on their users--particularly when such filters have such bad performance as the RBL. I was particularly disturbed by the comment in the article which mentioned that the RBL was the only filter which blocked a legitimate message.
Also, before anyone asks, I'm not by any means in favor of spam; I'd be delighted if all the spammers in the world suddenly became enlightened and desisted from their wrongful ways, or something. But I'm not exactly enamored of the RBL's heavy-handed tactics, either.
--
BACKNEXTFINISHCANCEL
More or less, anyway. I could go on a rant about why does the US keep avoiding the metric system but it's been discussed before.
At least you don't have to worry about the Russians forgetting to convert units and sending you into the solar panels instead of the airlock...
--
BACKNEXTFINISHCANCEL
So, where are they?
They are us. We are not actually the descendants of apes; we're the descendants of the people who killed the descendants of apes when they crash-landed here a couple million years ago. We haven't been able to contact the planet we came from because the people who remained all died out from a disease spread from a dirty telephone booth.
(With apologies to Douglas Adams...)
--
BACKNEXTFINISHCANCEL
No, because you only need one of the pair to determine its partner. DNA bases pair up predictably: A with T, G with C. So if you have a sequence of bases
CATGATACAGTAG
then you know the respective complements will be
GTACTATGTCATC
so you only need two bits per base pair to store the data. (Disclaimer: I haven't studied biology since high school, so I could be misremembering.)
I wonder what the genetic analog of gzip would be...
--
BACKNEXTFINISHCANCEL
You can do that now, if your hardware is crappy enough. I get static through my earphones on my Compaq at work whenever there's CPU activity. It's bizarre.
--
BACKNEXTFINISHCANCEL
A method whereby a computer program inputs an amount of data greater than the size of the buffer which receives that data, allowing on-the-fly modifications of the program's behavior... oh wait, prior art. Damn.
Though it's almost a shame one can't do something like this--it would be a great argument to take to pointy-eared bosses who want to ignore security problems...
--
BACKNEXTFINISHCANCEL
If it's on your person, the FBI would have a very difficult time getting to it without your knowledge.
Who's going to watch over it while you're asleep? And how do you know they're not an FBI spy?
--
BACKNEXTFINISHCANCEL
--
BACKNEXTFINISHCANCEL
...is the sound your new floppy CD with its 650 gigs of irreplaceable data makes as you accidentally bump the box and the vibration flops the CD enough to get it caught in the motor.
Okay, I guess that wasn't such a good investment after all...
--
BACKNEXTFINISHCANCEL