Validating the Security and Stability of the Grader for a Programming Contest System

Tocho TOCHEV, Tsvetan BOGDANOV

Abstract

Automated judging systems have had the tough task of ensuring the normal proceeding of programming contests for a long time. There are numerous ways proposed to secure the execution of a contestant's solution and many more actual implementations. In this article we review some criteria which the core of such systems must meet in order to be considered stable and secure. We will focus only on the core, as the functions it performs are similar across the variety of existing systems and it is the part of the system designed specifically to withstand attacks. In fact these criteria were created with their respective test cases in order to verify the grader we used in IOI 2009.