Fix: payload hash is checked before mac