重构验证组件