But AFAIK, DeCSS (as many programs) has 2 parts: the algorithm and the parameters (the decoding key).
Are the parameters a form of speech ? I wouldn't think so.
There is no law of CS that says algorithms must be distinct from parameters. Certainly they
can be more general when expressed that way, but it is not necessary. Let's say I'm designing a program to log into one particular account. I could use a general algorithm:
Program 1:
Algorithm: Send the password to the server.
Parameters: The password is "foo".
Or I could use a more specific one:
Program 2:
Algorithm: Send 'f', then send 'o' twice.
Parameters: None.
The line between algorithm and parameters is really indistinct. Perhaps programs like efdtt.c don't actually include the key bits or completely encapsulate their functionality, but there's no reason you couldn't redesign the algorithm to do so. Taken to an extreme, a brute-forcing program would include the functionality of all possible keys. Which part of the source code for that wouldn't be speech again?
But AFAIK, DeCSS (as many programs) has 2 parts: the algorithm and the parameters (the decoding key). Are the parameters a form of speech ? I wouldn't think so.
There is no law of CS that says algorithms must be distinct from parameters. Certainly they can be more general when expressed that way, but it is not necessary. Let's say I'm designing a program to log into one particular account. I could use a general algorithm:
Program 1:Or I could use a more specific one:
Program 2:The line between algorithm and parameters is really indistinct. Perhaps programs like efdtt.c don't actually include the key bits or completely encapsulate their functionality, but there's no reason you couldn't redesign the algorithm to do so. Taken to an extreme, a brute-forcing program would include the functionality of all possible keys. Which part of the source code for that wouldn't be speech again?