We present an additional feature to the Challenge Handshake Authentication Protocol. It makes the protocol resilient to offline brute-force/dictionary attacks. We base our contribution to the protocol on the concept of a rewrite complement for ground term rewrite systems (GTRSs). We also introduce and study the notion of a type-based complement which is a special case of a rewrite complement. We show the following decision results. Given GTRSs A, C, and a reduced GTRS B over some ranked alphabet Σ, one can decide whether C is a type-based complement of A for B. Given a GTRS A and a reduced GTRS B over some ranked alphabet Σ, one can decide whether there is a GTRS C such that C is a type-based complement of A for B. If the answer is yes, then we can construct such a GTRS C.