The question given told you to connect on a port and issue a password (Never$olv3d!). Once you did that, you got a string back: 000111222333444555000111222333444555000111222333444555 Next, you could enter four bytes that were apparently a random seed of some sort, and you would receive another string similar to the above, but jumbled, such as: 523313532154022444100315423132140550500135143222041054 We relatively early realized the initial four byte seed could be used to produce lots of different values. After that, you could send up to twenty new-lines before you'd be disconnected. So we brute forced the seeds, even coming up with a few that resulted in a correct answer and the key (Let's not be too rough on our own ignorance; it's what makes America great!). Unfortunately, we fail at copying and pasting, so we didn't know we were done at that point. One of our team members finally looked at the challenge for a few seconds and said, "It's a Rubix Cube". In hindsight, /of course/ it's a Rubix cube. Each of the six faces has nine spots of the same color. There are 9 each of 0-5 in the string, so the number is the color and the order is the position on the cube. D'oh. Fortunately, just as we were almost done wrapping up our solver and going to try to unleash it on the cube (which would have been difficult -- the best known solvers take far longer normally, hence the password) when someone else finally returned to our previous efforts and pasted in the key correctly, probably saving us much time. It's too bad the solution was unintentionally so easy -- it would have been cool to see who would write a rubix cube solver better than those on the internet. Though 200pts might have been a little low for that...