{'fraction_non_alphanumeric': 0.02091713596138375, 'fraction_numerical': 0.002413515687851971, 'mean_word_length': 5.513089005235602, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
The Implementation of Video Cipher Engine in FPGA

In the video system, a variety of different encryption engines are usually stacked in the FPGA to meet the system requirements for multiple encryption functions, which results in a large waste of FPGA resources. And because this structure is difficult to dynamically allocate the bandwidth of different algorithms according to the requirements of the system, it further aggravates the consumption of FPGA resources. According to the characteristics of video transport stream, this paper introduces a video encryption engine with pipeline structure. The encryption engine can support video data encryption standard DES, triple DES (3DES) and DVB common scrambling algorithm (DVB-CSA) at the same time, and can support electronic codebook (ECB), cipher block chaining (CBC) and reverse cipher block cipher (RCBC) encryption modes at the same time. It can also dynamically allocate bandwidth in different encryption algorithms and modes according to system requirements. The encryption engine can support simultaneous encryption of up to 32 transport stream packets, which can meet the performance requirements of the system line rate, while greatly reducing the requirements for FPGA resources.