We present a new technique, inspired by zero-knowledge proof systems, for proving lower bounds on approximating the chromatic number of a graph. To illustrate this technique we present simple reductions frommax-3-coloringandmax-3-sat, showing that it is hard to approximate the chromatic number withinΩ(Nδ) for someδ>0. We then apply our technique in conjunction with the probabilistically checkable proofs of Håstad and show that it is hard to approximate the chromatic number to withinΩ(N1−ε) for anyε>0, assuming NP⊈ZPP. Here, ZPP denotes the class of languages decidable by a random expected polynomial-time algorithm that makes no errors. Our result matches (up to low order terms) the known gap for approximating the size of the largest independent set. PreviousO(Nδ) gaps for approximating the chromatic number (such as those by Lund and Yannakakis, and by Furer) did not match the gap for independent set nor extend beyondΩ(N1/2−ε).