In this paper we deal with active control of shock in a collision problem between two objects. In order to make it clear how the deformation of the shock-receiving object can be maximized while minimizing the deformation of the shock-giving object and how energy can be transmitted unilaterally, the relationships among contact stiffness, deformation time, deformation ratio and energy balance are discussed. The final-state control is applied to obtain a feedforward input to deform the shock-receiving object by a desired amount in a predetermined time. Thus, the energy balance and the energy efficiency are verified. Furthermore we examine the conditions necessary to realize a 'dynamical diode' that can transmit energy unilaterally from the shock-giving object to the shock-receiving object. It is demonstrated experimentally that the appropriate feedforward input can be obtained by final-state control under specified conditions of contact stiffness and deformation time.