{'fraction_non_alphanumeric': 0.018583042973286876, 'fraction_numerical': 0.005807200929152149, 'mean_word_length': 5.070422535211268, '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}}
Transform: Complicating Control Flow by Inserting Confusion Instructions

There is a certain mapping relationship between software control flow and data flow. Side channel attacks can take advantage of this relationship, peep some secret data of software through software control flow. To solve this problem, We insert code snippets that is able to obfuscate software control flow inside the. In this way, the connection between the software control flow and the data flow is disrupted, and it greatly increased the difficulty of side channel analysis. We implemented the prototype system, called as transform in the Ubuntu 18.04. Our tests show that transform does not affect the original semantics of the software. Although transform increase the size of software codes on the degree of confusion, it only introduce the performance overhead which is about 5%.