I hope you getted modded up higher than 3. If he wrote that abstract then he really has no idea what he's doing.
And presumably, his school has no idea what he's talking about.
to make the cipher one-way and unbreakable
This would be interesting. A one-way cipher? Cryptography actually is very easy when you remove the requirement of being able to decrypt the ciphertext.
Cryptography based on a hacker "not knowing" something can be in for quite a surprise.
All cryptography is based on an attacker "not knowing" something. This 'something' is conventionally referred to as the 'key'.
If you are alluding to Kerkhoff's Principle, then it is really about defining what makes a good key and what makes a bad key.
Too many times someone without a good background in this area thinks they have done something impressive
This is true, and I have small doubt this guy's idea will amount to nothing. I would add that many times people with good backgrounds in this area think they have done something impressive and later find a flaw. Good cryptography is really really hard.
Of course, occasionally you get your Diffies, Hellmans, and Merckles who come up with relatively straightforward ideas that really are good, and really are significant. Even Rivest, Shamir and Adleman weren't experts in cryptography; they were number theorists who realized integer factorization would make a good trap-door one-way function.
I would suggest you find a book on Information Theory. It's an interesting subject, and very relevant to cryptographic theory. The proof of minimum key length relies exactly on the relationship between the entropy of the plaintext and the entropy of the key.
The simplest example would be to exploit the entropy within data already encoded to generate additional keydata.
Once you do this, your scheme is now breakable.
Keep in mind that a legitimate attack is an exhaustive search of the key space. If there are fewer possible keys than possible plaintexts, then for a given ciphertext the attacker can figure out a range of candidate plaintexts that is smaller than all possible plaintexts. That means the attacker has gained information.
"Unbreakable" probably just means it's a one-time pad variation, that being the only known system that can support that claim. Off hand, I'd suspect he's just working on some way to use animation to convey key information. I don't know how that would work, though.
But it's hard to criticize or admire whatever technique this guy is looking at, because there are no details in the article. (zero-knowledge reporting?)
Are you sure about this? My understanding was that the OED was developed and is administered primarily by academics, who are well-paid for their services.
My alma mater had quite a bit to do with converting the OED to the digital medium.
I know this is a joke, but I can't help but think that this could eventually be built to that level.
If it were to build a sufficient amount of understanding of a sufficiently large number of languages (dead languages included), it could start doing real linguistic analysis.
Linguists have a relatively good understanding of how languages develop, evolve, and diverge over time. This helps to chart large parts of human history by analyzing relationships between distant language cousins (Sanskrit and Latin are cousins, for example, and by comparing them we can draw inferences about certain unknown cultures who lived up to 5 thousand years ago).
If they were to add a phonological component to a system like this, and then utilize the massive amount of computational power distributed computing can provide, the system could start to do advanced analysis of languages.
What you could conceivably end up with is very much a Universal Translator. Imagine being able to enter in a few dozen pieces of script from some long dead language (say, Linear A), and in a few days have it translated and placed in its appropriate place in the tree of languages.
That said, as good as this idea is, I have serious reservations. The resources required to build such a system would be huge. You would need tremendous linguistic skills and great computer expertise to design the algorithms. I have to put this one in the category of "I'll believe it when I see it."
"Well you see we looked at the numbers of CD-Rs sold, and figured that every one of them is used for music piracy, and guessed that if no one had access to pirated music they would all purchase legitimate CDs instead, at a cost of $130 per disc, because we could milk them for whatever price we want, and they would purchase two of each CD because people like to have backups, and then we did some multiplication..."
This means that Quidditch must be an even harder game than I thought.
Just more kudos to Harry Potter, who can catch that Snitch even though it seems completely unaffected by gravity.
Now I think would be a good time to propose a Quidditch Module to be added to the International Space Station. Then all the funding countries could make teams and send them up.
I like Houdini, Side Effects makes a pretty solid product.
Why is the 3D graphics software industry so Canadian? Side Effects and Alias|Wavefront are both based in Toronto, while Softimage is in Montréal. I wonder.
From what I remember from an article XSI (probably starting with v. 2) is actually developed under Linux and from there ported to NT and Irix.
I worked for Softimage for most of 2000, coding on XSI v1.0 and v1.5. At the time they were working on a port to Linux (actually there was one guy doing this), but there's no way they converted the entire development environment to Linux.
Keep in mind that XSI uses COM extensively. Softimage was owned by Microsoft from 1994 to 1998, and XSI was started as project "Sumatra" during 1996. To build v2.0 on Linux and the port it to NT would have meant an entire rewrite of the software, not to mention retraining the development team.
Fair enough. I didn't know those goes were going that route.
Interestingly, I've heard it reported that ILM often doesn't have to pay for that software anyway. Software houses will give it to them for free as an incentive for them to use it. The advantage of being able to say "ILM uses our product for this and this and this" is easily worth the lost revenue.
Has anyone actually tried this? I haven't touched XSI since v1.5 was released in December 2000, but I know v2.0 came out a few months ago and it shipped for Linux as well.
I'm a little skeptical though: if it runs on Linux anything like v1.0 and v1.5 ran on IRIX, then it's a waste of time.
Incidentally, XSI was written on NT and ported to IRIX (and later Linux). Softimage|3D was written on IRIX and ported to NT. IRIX users were mighty pissed when XSI was released with second-rate performance on their platform of choice (and in particular they didn't like that it looked like a Windows app).
Of course, I have no idea why they ported XSI to Linux anyway. How many Linux users can afford an $8000 piece of software (for the light version, no less)?
"The second I don't get a paycheck, I'm out the door."
Yes, when your pay falls into arrears you have every right to walk out until they catch up.
However, in some circumstances it may make sense to stay. If you really believe that the company will catch up in the near future, then it can be reasonable to keep working for them to help them get into the black.
It would be interesting for someone to do a study on how many companies fall into that kind of trouble and later recover to become successful. Can you figure out at what point the risk surpasses the expected reward, in a struggling company? (Assuming to begin with that the company's business plan is viable)
But any way you slice it, six months is ridiculous. As many have been asking here, how did these people live?
"I work for one reason, money."
I work for money, too. But I certainly don't work for "one reason." Job satisfaction and a desire to improve myself rank up there as well.
In this case there is no need for crypto at all. Just generate a random CD key and store it in a master database. Then the user enters the key and it's existence in the database is verified. The only security you would need would be for the transmission, which could be provided by SSL or TLS.
This is not a desirable solution, aside from the fact that it doesn't help bnetd. They could not verify the key without access to the master database, whether that database stores verification keys or actual CD keys or both.
You haven't fully considered what you are suggesting. It really doesn't work.
We are talking about a system involving a Signing Key and a Verification Key, if you want to use the proper terms. Moreover, we have a single key pair. The Signing Key belongs to Blizzard, the Verification Key is public. (If you are considering having distinct key pairs PER CD, then that defeats the whole purpose of the system because the Verification Keys would have to be cached in a central repository).
Now, what gets signed? The previous proposal, I believe, said that to generate a valid CD key you would pick a random value, generate a signature with the Signing Key, and then use the random value together with the signature as the CD key. This could be verified by anyone with the Verification Key. I showed that this doesn't work.
If I misunderstood what was being suggested, then feel free to correct me. But please think the whole process through before suggesting it (including CD key generation and CD key validation; as well as it's resistance to attacks).
Observe:
I, Mr. Key Forger, have just pirated a CD. Now I need a key. How about I pick a random 'signature' of the appropriate length, and run the verification algorithm on it to produce the corresponding 4 byte value.
Now I pass the 4 byte value along with the random signature to Battle.Net, which checks the signature to ensure it matches the 4 bytes, and voila, I'm authenticated.
Why don't the servers ask for a CD key? Then leave it to Blizzard to authenticate the key?
This has been asked a couple of times but I don't think anyone has hit the real answer yet.
It is quite possible to for Blizzard to work with third parties to set up secure authentication systems (or at least, systems as secure as Battle.Net itself).
The real reason this won't happen is that Blizzard isn't about to start expending time and money to help someone emulate Battle.Net.
Blizzard's position is that no one should want to use anything else, particularly because Battle.Net is free. One of the questions in the FAQ talks about this.
In other battlenet and warcraft are both written without even elementary knowledge of cryptography and security. Otherwise there would have been no need to keep the algorithm secret.
In order to argue this, you have to know an algorithm that can accomplish this. What is a key verification alg that is not in any way compromised by knowledge of the algorithm?
You have to put aside any thought of public-key crypto, because those systems are based on data which can be signed. Here there is no data.
Symmetric cryptography is also useless, for obvious reasons.
The task is complicated by the fact that we must assume the attacker has access to a very large number of valid keys.
We can't really use hash functions, either. The hash function could hash the CD key and accept only if the result has certain characteristics. But this is not practical because then Blizzard would be unable to generate the CD keys in the first place (they would have to reverse the hash to get the keys -- breaking their own system).
I was actually thinking of Merkle's Puzzles.
And presumably, his school has no idea what he's talking about.
to make the cipher one-way and unbreakable
This would be interesting. A one-way cipher? Cryptography actually is very easy when you remove the requirement of being able to decrypt the ciphertext.
All cryptography is based on an attacker "not knowing" something. This 'something' is conventionally referred to as the 'key'.
If you are alluding to Kerkhoff's Principle, then it is really about defining what makes a good key and what makes a bad key.
Too many times someone without a good background in this area thinks they have done something impressive
This is true, and I have small doubt this guy's idea will amount to nothing. I would add that many times people with good backgrounds in this area think they have done something impressive and later find a flaw. Good cryptography is really really hard.
Of course, occasionally you get your Diffies, Hellmans, and Merckles who come up with relatively straightforward ideas that really are good, and really are significant. Even Rivest, Shamir and Adleman weren't experts in cryptography; they were number theorists who realized integer factorization would make a good trap-door one-way function.
The simplest example would be to exploit the entropy within data already encoded to generate additional keydata.
Once you do this, your scheme is now breakable.
Keep in mind that a legitimate attack is an exhaustive search of the key space. If there are fewer possible keys than possible plaintexts, then for a given ciphertext the attacker can figure out a range of candidate plaintexts that is smaller than all possible plaintexts. That means the attacker has gained information.
But it's hard to criticize or admire whatever technique this guy is looking at, because there are no details in the article. (zero-knowledge reporting?)
Astonishing.
My alma mater had quite a bit to do with converting the OED to the digital medium.
Time flies like an arrow has three valid syntactic parsings. Only one makes sense semantically, though.
Just think: Does translation software necessarily have to be able to read your handwriting?
If it were to build a sufficient amount of understanding of a sufficiently large number of languages (dead languages included), it could start doing real linguistic analysis.
Linguists have a relatively good understanding of how languages develop, evolve, and diverge over time. This helps to chart large parts of human history by analyzing relationships between distant language cousins (Sanskrit and Latin are cousins, for example, and by comparing them we can draw inferences about certain unknown cultures who lived up to 5 thousand years ago).
If they were to add a phonological component to a system like this, and then utilize the massive amount of computational power distributed computing can provide, the system could start to do advanced analysis of languages.
What you could conceivably end up with is very much a Universal Translator. Imagine being able to enter in a few dozen pieces of script from some long dead language (say, Linear A), and in a few days have it translated and placed in its appropriate place in the tree of languages.
That said, as good as this idea is, I have serious reservations. The resources required to build such a system would be huge. You would need tremendous linguistic skills and great computer expertise to design the algorithms. I have to put this one in the category of "I'll believe it when I see it."
Scientific Wild Ass Guess.
"Well you see we looked at the numbers of CD-Rs sold, and figured that every one of them is used for music piracy, and guessed that if no one had access to pirated music they would all purchase legitimate CDs instead, at a cost of $130 per disc, because we could milk them for whatever price we want, and they would purchase two of each CD because people like to have backups, and then we did some multiplication..."
Do you still have to pay if you put in a blank CD-R and get back a coaster?
Just more kudos to Harry Potter, who can catch that Snitch even though it seems completely unaffected by gravity.
Now I think would be a good time to propose a Quidditch Module to be added to the International Space Station. Then all the funding countries could make teams and send them up.
Why is the 3D graphics software industry so Canadian? Side Effects and Alias|Wavefront are both based in Toronto, while Softimage is in Montréal. I wonder.
From what I remember from an article XSI (probably starting with v. 2) is actually developed under Linux and from there ported to NT and Irix.
I worked for Softimage for most of 2000, coding on XSI v1.0 and v1.5. At the time they were working on a port to Linux (actually there was one guy doing this), but there's no way they converted the entire development environment to Linux.
Keep in mind that XSI uses COM extensively. Softimage was owned by Microsoft from 1994 to 1998, and XSI was started as project "Sumatra" during 1996. To build v2.0 on Linux and the port it to NT would have meant an entire rewrite of the software, not to mention retraining the development team.
Interestingly, I've heard it reported that ILM often doesn't have to pay for that software anyway. Software houses will give it to them for free as an incentive for them to use it. The advantage of being able to say "ILM uses our product for this and this and this" is easily worth the lost revenue.
I'm a little skeptical though: if it runs on Linux anything like v1.0 and v1.5 ran on IRIX, then it's a waste of time.
Incidentally, XSI was written on NT and ported to IRIX (and later Linux). Softimage|3D was written on IRIX and ported to NT. IRIX users were mighty pissed when XSI was released with second-rate performance on their platform of choice (and in particular they didn't like that it looked like a Windows app).
Of course, I have no idea why they ported XSI to Linux anyway. How many Linux users can afford an $8000 piece of software (for the light version, no less)?
In software terms, not hardware. When it detects 'tampering', it zeroes its memory (which is far more difficult than it sounds).
Tampering can be a number of things: unusual voltage spikes, radiation, or most importantly, someone cracking open the casing.
Such devices are already quite common, although I don't know the details of how their tamper-resistance measures are implemented.
Yes, when your pay falls into arrears you have every right to walk out until they catch up.
However, in some circumstances it may make sense to stay. If you really believe that the company will catch up in the near future, then it can be reasonable to keep working for them to help them get into the black.
It would be interesting for someone to do a study on how many companies fall into that kind of trouble and later recover to become successful. Can you figure out at what point the risk surpasses the expected reward, in a struggling company? (Assuming to begin with that the company's business plan is viable)
But any way you slice it, six months is ridiculous. As many have been asking here, how did these people live?
"I work for one reason, money."
I work for money, too. But I certainly don't work for "one reason." Job satisfaction and a desire to improve myself rank up there as well.
It's hosted by the Centre For Applied Cryptography Research (CACR) at the University of Waterloo. Anyone in southern Ontario who liked the book might consider attending.
Info:
Building Secure Software: How to Avoid Security Problems the Right Way
Gary McGraw, Cigital
Mar 20 (Wednesday), 2:30 pm, DC 1302
An 8 nanosecond pulse is therefore 125 Megahertz (1 Gigahertz divided by 8). So the theoretical limit is 125 Mb/s, not 12.5.
This is not a desirable solution, aside from the fact that it doesn't help bnetd. They could not verify the key without access to the master database, whether that database stores verification keys or actual CD keys or both.
We are talking about a system involving a Signing Key and a Verification Key, if you want to use the proper terms. Moreover, we have a single key pair. The Signing Key belongs to Blizzard, the Verification Key is public. (If you are considering having distinct key pairs PER CD, then that defeats the whole purpose of the system because the Verification Keys would have to be cached in a central repository).
Now, what gets signed? The previous proposal, I believe, said that to generate a valid CD key you would pick a random value, generate a signature with the Signing Key, and then use the random value together with the signature as the CD key. This could be verified by anyone with the Verification Key. I showed that this doesn't work.
If I misunderstood what was being suggested, then feel free to correct me. But please think the whole process through before suggesting it (including CD key generation and CD key validation; as well as it's resistance to attacks).
Observe:
I, Mr. Key Forger, have just pirated a CD. Now I need a key. How about I pick a random 'signature' of the appropriate length, and run the verification algorithm on it to produce the corresponding 4 byte value.
Now I pass the 4 byte value along with the random signature to Battle.Net, which checks the signature to ensure it matches the 4 bytes, and voila, I'm authenticated.
This has been asked a couple of times but I don't think anyone has hit the real answer yet.
It is quite possible to for Blizzard to work with third parties to set up secure authentication systems (or at least, systems as secure as Battle.Net itself).
The real reason this won't happen is that Blizzard isn't about to start expending time and money to help someone emulate Battle.Net.
Blizzard's position is that no one should want to use anything else, particularly because Battle.Net is free. One of the questions in the FAQ talks about this.
In order to argue this, you have to know an algorithm that can accomplish this. What is a key verification alg that is not in any way compromised by knowledge of the algorithm?
You have to put aside any thought of public-key crypto, because those systems are based on data which can be signed. Here there is no data.
Symmetric cryptography is also useless, for obvious reasons.
The task is complicated by the fact that we must assume the attacker has access to a very large number of valid keys.
We can't really use hash functions, either. The hash function could hash the CD key and accept only if the result has certain characteristics. But this is not practical because then Blizzard would be unable to generate the CD keys in the first place (they would have to reverse the hash to get the keys -- breaking their own system).
So, how would you do it?