| As people participate in the activities in the Internet more and more frequently, the Internet information transmission has become commonly used means of data exchange, such as education, national defense, electronic commerce, banking, and it gradually penetrates every field in society. Data security requirements are increasingly strict and complicated. Encryption technology is an important means for data security. Encryption technology can be divided into two categories, one is a software encryption technology, the other is hardware encryption technology. Software encryption has the advantage of low cost, but it needs to participate in CPU computing, consume system resources, and the encryption speed is slow. Hardware encryption has the advantages of high speed and better reliability. Therefore, the development of hardware encryption card is of great significance.At present most of the hardware encryption cards are composed of main controller chip, encryption processing core and some interface control chip; and encryption card communicate with host by PCI interface, but integration is low, and has poor security, and it’s limited by PCI transmission rate, low efficiency of encryption. To address the above problems, this essay develops the encryption card using Freescale new C2xO encryption coprocessor, which has built-in PowerPC architecture processor cores, hardware encryption processing unit, PCI Express controller and other peripheral interface controller, etc., so the encryption card integration is higher. In addition, the chip has the private key security preservation mechanism function, improving the security of encryption. The encryption card can implement the data interaction by PCI Express. The data transfer rate is no longer a bottleneck affecting encryption speed.In this paper, the author introduces the encryption card from two aspects, namely hardware and software. In terms of hardware, the author introduces C2xO chip features, expounds the encryption card hardware platform design and introduces the various hardware modules. For software, firstly the author introduces the encryption card system software design-porting the embedded Linux system. Second, the paper analyzes and discusses encryption soft, and further analyzes the Linux UIO driver basic framework and operational mechanism, from the aspects of the kernel part of the implementation of the UIO driver, user interface, the initialization, related hardware encryption process, secret key management, discusses development process of encryption card. Finally, the author discusses the design of the host driver, the paper introduces the design of the PCI-E driver under Linux and interface provided for the OPENSSL application. |