Anyone here have access to one of those code-plagiarizing detection systems used at CS schools? How would it fare on this kind of obfuscation?
I know that a plagiarized program that tries to just futz variable names is probably computationally easy to detect. And even extremely computationally exhaustive comparisons would be feasible, because the average college only has to deal with a few hundred to a thousand students a semester.
But would the algorithm even have to be more sophisticated than doing just a plain diff and applying some heuristic, even just the ratio of identical lines to total lines? My perception of students who would cheat in a 101CS class is that they are so incompetent that they don't even know how to change a variable name in a program without breaking the code...nevermind rearranging the order of a loop operation. Any student who could confidently obfuscate their plagiarism of 101-level program assignment is probably smart enough to just do the program themselves.