{'fraction_non_alphanumeric': 0.014191106906338695, 'fraction_numerical': 0.0, 'mean_word_length': 5.2976190476190474, '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}}
A protocol for simultaneous use of confidentiality and integrity in large-scale storage systems

Large-scale storage systems often contain sensitive information such as medical information in healthcare services, captured traffic in large companies like Internet Service Providers, or personal user information which is stored by different firms. Most of these systems are distributed geographically and data should be able to move between systems in different places, which mean we cannot protect data by limiting them to internal access. Even internal access is not adequate to provide security because we cannot fully trust every operator who has physical access to systems. In this paper we propose a new approach which provides both confidentiality and integrity for large datasets by combining keyed hash tree (KHT) and Merkle hash tree. In addition, we introduce a hash value and key exchange protocol. Theoretical and experimental analysis shows that it is a practical and scalable way to protect large-scale datasets against modification and theft.