{'fraction_non_alphanumeric': 0.022922636103151862, 'fraction_numerical': 0.0057306590257879654, 'mean_word_length': 5.321266968325792, '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}}
Efficient Private Information Retrieval Using Secure Hardware

Existing crypto-based Private Information Retrieval (PIR) schemes are either limited in the set of queries they can perform, or have prohibitively large performance overheads in making query comparisons. On the other hand, most previous tamper-resistant hardware schemes can support more general queries and have lower performance overheads, but need to trust that the query program will not leak information about the user query. We introduce Stream-Ascend in this paper, a processor that executes complex stream queries securely even if the query matching program is not trusted and would leak the query when executed on conventional secure processors. Stream-Ascend is based on Ascend, a recently-proposed tamper-resistant processor for untrusted programs. Directly applying Ascend to the PIR setting would result in significant inefficiency; Stream-Ascend is architected to support a streaming model of computation where each record is processed exactly once. Stream-Ascend is significantly more efficient than Ascend because its performance depends only on the working set of the application, not the length of the stream as in Ascend. Simulation results show that the performance overhead of Stream-Ascend relative to an insecure and idealized baseline processor is only 32.6%, 11%, and 13.5% for a set of streaming benchmarks.