What is claimed is:
1. A method for facilitating a peer review process for a computer-based activity, comprising:
receiving a computer-based activity to be evaluated through the peer review process;
making the computer-based activity available for evaluation by a plurality of evaluators, by making the computer-based activity available on a computer system coupled to a network, so that the computer-based activity can be accessed by remote computer systems across the network;
receiving evaluations from the plurality of evaluators across the network; and
tabulating the evaluations from the plurality of evaluators to produce an evaluation result.
2. The method of claim 1, wherein the computer-based activity includes one of:
a computer-based quiz;
a computer-based examination; and
a computer-based game.
3. The method of claim 1, wherein receiving the computer-based activity involves receiving a nomination for the computer-based activity from a creator of the computer-based activity.
4. The method of claim 1, wherein making the computer-based activity available for evaluation involves making the computer-based activity available on a web site that is accessible by the plurality of evaluators.
5. The method of claim 1, wherein if the evaluation result exceeds a threshold, the computer-based activity is placed in a public directory on the computer system, so that the computer-based activity becomes available to activity users from remote computer systems across the network.
6. The method of claim 5, wherein the method further comprises making the evaluation result available to activity users who can access the computer-based activity.
7. The method of claim 1, wherein the method further comprises automatically screening the computer-based activity for offensive language before making the computer-based activity available for evaluation.
8. The method of claim 1, wherein tabulating the evaluations involves waiting until a minimum number of evaluations are received for the computer-based activity before tabulating the evaluations.
9. The method of claim 1,
wherein the computer-based activity is a computer-based quiz; and
wherein the evaluations include scores for,
spelling and grammar,
accuracy,
topic coverage, and
usefulness of the computer-based quiz.
10. The method of claim 1, wherein making the computer-based activity available for evaluation involves making the computer-based activity accessible under an activity category that is specified by a creator of the computer-based activity.
11. The method of claim 1, wherein the evaluations include textual comments from the plurality of evaluators.
12. A computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform a method for facilitating a peer review process for a computer-based activity, the method comprising:
receiving a computer-based activity to be evaluated through the peer review process;
making the computer-based activity available for evaluation by a plurality of evaluators, by making the computer-based activity available on a computer system coupled to a network, so that the computer-based activity can be accessed by remote computer systems across the network;
receiving evaluations from the plurality of evaluators across the network; and
tabulating the evaluations from the plurality of evaluators to produce an evaluation result.
13. The computer-readable storage medium of claim 12, wherein the computer-based activity includes one of:
a computer-based quiz;
a computer-based examination; and
a computer-based game.
14. The computer-readable storage medium of claim 12, wherein receiving the computer-based activity involves receiving a nomination for the computer-based activity from a creator of the computer-based activity.
15. The computer-readable storage medium of claim 12, wherein making the computer-based activity available for evaluation involves making the computer-based activity available on a web site that is accessible by the plurality of evaluators.
16. The computer-readable storage medium of claim 12, wherein if the evaluation result exceeds a threshold, the computer-based activity is placed in a public directory on the computer system, so that the computer-based activity becomes available to activity users from remote computer systems across the network.
17. The computer-readable storage medium of claim 16, wherein the method further comprises making the evaluation result available to activity users who can access the computer-based activity.
18. The computer-readable storage medium of claim 12, wherein the method further comprises automatically screening the computer-based activity for offensive language before making the computer-based activity available for evaluation.
19. The computer-readable storage medium of claim 12, wherein tabulating the evaluations involves waiting until a minimum number of evaluations are received for the computer-based activity before tabulating the evaluations.
20. The computer-readable storage medium of claim 12,
wherein the computer-based activity is a computer-based quiz; and
wherein the evaluations include scores for,
spelling and grammar,
accuracy,
topic coverage, and
usefulness of the computer-based quiz.
21. The computer-readable storage medium of claim 12, wherein making the computer-based activity available for evaluation involves making the computer-based activity accessible under an activity category that is specified by a creator of the computer-based activity.
22. The computer-readable storage medium of claim 12, wherein the evaluations include textual comments from the plurality of evaluators.
23. An apparatus that facilitates a peer review process for a computer-based activity, comprising:
a receiving mechanism that is configured to receive a computer-based activity to be evaluated through the peer review process;
an access mechanism that is configured to make the computer-based activity available for evaluation by a plurality of evaluators, by making the computer-based activity available on a computer system coupled to a network, so that the computer-based activity can be accessed by remote computer systems across the network;
wherein the receiving mechanism is additionally configured to receive evaluations from the plurality of evaluators across the network; and
a tabulating mechanism that is configured to tabulate the evaluations from the plurality of evaluators to produce an evaluation result.
24. The apparatus of claim 23, wherein the computer-based activity includes one of:
a computer-based quiz;
a computer-based examination; and
a computer-based game.
25. The apparatus of claim 23, wherein the receiving mechanism is configured to receive a nomination for the computer-based activity from a creator of the computer-based activity.
26. The apparatus of claim 23, wherein the access mechanism is configured to make the computer-based activity available on a web site that is accessible by the plurality of evaluators.
27. The apparatus of claim 23, further comprising a publication mechanism that is configured to place the computer-based activity in a public directory on the computer system if the evaluation result exceeds a threshold, so that the computer-based activity becomes available to activity users from remote computer systems across the network.
28. The apparatus of claim 27, wherein the publication mechanism is additionally configured to make the evaluation result available to activity users who can access the computer-based activity.
29. The apparatus of claim 23, further comprising a screening mechanism that is configured to automatically screen the computer-based activity for offensive language before making the computer-based activity available for evaluation.
30. The apparatus of claim 23, wherein the tabulating mechanism is configured to wait until a minimum number of evaluations are received for the computer-based activity before tabulating the evaluations.
31. The apparatus of claim 23,
wherein the computer-based activity is a computer-based quiz; and
wherein the evaluations include scores for,
spelling and grammar,
accuracy,
topic coverage, and
usefulness of the computer-based quiz.
32. The apparatus of claim 23, wherein the access mechanism is configured to make the computer-based activity accessible under an activity category that is specified by a creator of the computer-based activity.
33. The apparatus of claim 23, wherein the evaluations include textual comments from the plurality of evaluators.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1. A computer-implemented method comprising:
receiving a first message, in a network protocol connection establishment handshake, from an initiator, the first message comprising source information indicating a source of the first message;
generating a transaction identifier using private information and the source information indicating the source of the first message, the generated transaction identifier comprising a first aspect and a second aspect;
sending a second message, in the network protocol connection establishment handshake, to the initiator, the second message comprising the generated transaction identifier;
receiving a third message, in the network protocol connection establishment handshake, from the initiator, the third message comprising the generated transaction identifier and source information indicating a source of the third message;
terminating the network protocol connection establishment handshake when the first aspect of the generated transaction identifier does not match a first expectation corresponding to the first aspect, the first expectation being independent of the source information indicating the source of the first message matching the source information indicating the source of the third message;
establishing a connection with the initiator when the first aspect of the generated transaction identifier matches the first expectation, and the second aspect of the generated transaction identifier matches a second expectation corresponding to the second aspect, the second expectation being dependent on the source information indicating the source of the first message matching the source information indicating the source of the third message; and
continuing the network protocol connection establishment handshake to establish the connection when the first aspect of the generated transaction identifier matches the first expectation, but the second aspect of the generated transaction identifier does not match the second expectation.
2. The method of claim 1, wherein receiving the first message comprises receiving the first message indirectly from the initiator through an intermediary.
3. The method of claim 1, wherein continuing the network protocol connection establishment handshake comprises:
generating a new identifier using private information and the source information indicating the source of the third message; and
sending a fourth message, comprising the new identifier, to the initiator to cause the initiator to resend the third message using the new identifier.
4. The method of claim 1, wherein generating the transaction identifier comprises:
applying a trapdoor function to first input to create a first data portion;
applying a trapdoor function to second input to create a second data portion, the second input comprising the source information indicating the source of the first message; and
combining the first and second data portions into a cookie comprising the transaction identifier.
5. The method of claim 4, wherein the private information comprises a secret key, and applying the trapdoor function to the second input comprises applying a cryptographic hash function to the second input using the secret key, wherein the second input further comprises current time information, and the source of the first message comprises a network address.
6. A non-transitory computer-readable medium encoding a computer program product operable to cause data processing apparatus to perform operations comprising:
receiving a first message, in a network protocol connection establishment handshake, from an initiator, the first message comprising source information indicating a source of the first message;
generating a transaction identifier using private information and the source information indicating the source of the first message, the generated transaction identifier comprising a first aspect and a second aspect;
sending a second message, in the network protocol connection establishment handshake, to the initiator, the second message comprising the generated transaction identifier;
receiving a third message, in the network protocol connection establishment handshake, from the initiator, the third message comprising the generated transaction identifier and source information indicating a source of the third message;
terminating the network protocol connection establishment handshake when the first aspect of the generated transaction identifier does not match a first expectation corresponding to the first aspect, the first expectation being independent of the source information indicating the source of the first message matching the source information indicating the source of the third message;
establishing a connection with the initiator when the first aspect of the generated transaction identifier matches the first expectation, and the second aspect of the generated transaction identifier matches a second expectation corresponding to the second aspect, the second expectation being dependent on the source information indicating the source of the first message matching the source information indicating the source of the third message; and
continuing the network protocol connection establishment handshake to establish the connection when the first aspect of the generated transaction identifier matches the first expectation, but the second aspect of the generated transaction identifier does not match the second expectation.
7. The computer-readable medium of claim 6, wherein receiving the first message comprises receiving the first message indirectly from the initiator through an intermediary.
8. The computer-readable medium of claim 6, wherein continuing the network protocol connection establishment handshake comprises:
generating a new identifier using private information and the source information indicating the source of the third message; and
sending a fourth message, comprising the new identifier, to the initiator to cause the initiator to resend the third message using the new identifier.
9. The computer-readable medium of claim 6, wherein generating the transaction identifier comprises:
applying a trapdoor function to first input to create a first data portion;
applying a trapdoor function to second input to create a second data portion, the second input comprising the source information indicating the source of the first message; and
combining the first and second data portions into a cookie comprising the transaction identifier.
10. The computer-readable medium of claim 9, wherein the private information comprises a secret key, and applying the trapdoor function to the second input comprises applying a cryptographic hash function to the second input using the secret key, wherein the second input further comprises current time information, and the source of the first message comprises a network address.
11. A system comprising:
a first computer operable to send a first message, in a network protocol connection establishment handshake, from an initiator, the first message comprising source information indicating a source of the first message; and
one or more additional computers operable to:
receive the first message, in the network protocol connection establishment handshake,
generate a transaction identifier using private information and the source information indicating the source of the first message, the generated transaction identifier comprising a first aspect and a second aspect;
send a second message, in the network protocol connection establishment handshake, to the initiator, the second message comprising the generated transaction identifier;
receive a third message, in the network protocol connection establishment handshake, from the initiator, the third message comprising the generated transaction identifier and source information indicating a source of the third message;
terminate the network protocol connection establishment handshake when the first aspect of the generated transaction identifier does not match a first expectation corresponding to the first aspect, the first expectation being independent of the source information indicating the source of the first message matching the source information indicating the source of the third message;
establish a connection with the initiator when the first aspect of the generated transaction identifier matches the first expectation, and the second aspect of the generated transaction identifier matches a second expectation corresponding to the second aspect, the second expectation being dependent on the source information indicating the source of the first message matching the source information indicating the source of the third message; and
continue the network protocol connection establishment handshake to establish the connection when the first aspect of the generated transaction identifier matches the first expectation, but the second aspect of the generated transaction identifier does not match the second expectation.
12. The system of claim 11, wherein the one or more additional computers comprise a responder and an intermediary, the intermediary operable to receive the first message and redirect the first message to the responder.
13. The system of claim 11, wherein continuing the network protocol connection establishment handshake comprises:
generating a new identifier using private information and the source information indicating the source of the third message; and
sending a fourth message, comprising the new identifier, to the initiator to cause the initiator to resend the third message using the new identifier.
14. The system of claim 11, wherein generating the transaction identifier comprises:
applying a trapdoor function to first input to create a first data portion;
applying a trapdoor function to second input to create a second data portion, the second input comprising the source information indicating the source of the first message; and
combining the first and second data portions into a cookie comprising the transaction identifier.
15. The system of claim 14, wherein the private information comprises a secret key, and applying the trapdoor function to the second input comprises applying a cryptographic hash function to the second input using the secret key, wherein the second input further comprises current time information, and the source of the first message comprises a network address.
16. The system of claim 11, wherein the first computer and the one or more computers each comprise a peer in a peer-to-peer network.