Let's suppose that you want to build some device that use FPGA/ASIC technology and your system should provide a certain level of security when dealing with data from external world. This means that some data should be somehow encrypted. Two important questions could appear in this stage: first, what encryption algorithm should we use and second, do we need a hardware implementation or software one? In this paper we will provide some answers, taking in consideration a real world application.