implement external password change