The paper analyzes an implementation of an optimal disability insurance system as a competitive equilibrium with taxes. The problem is modeled as a dynamic mechanism design problem in which disability is unobservable. We show that an asset-tested disability system in which a disability transfer is paid only if an agent has assets below a specified maximum implements the optimum. The logic behind the result is as follows: we show that an agent who falsely claims disability has higher savings than a truly disabled agent, and an asset test prevents false claimants from receiving disability. We also evaluate welfare benefits of asset testing. For a calibrated economy, we numerically compare the optimal system to the best system without asset testing. We find that gains of asset testing are significant and equal to about 0.65% of consumption.