Removed macro implementation and placed it inline.  Modified client challenge to be different than server challenge