Secure Keyed Hashing on Programmable Switches

PROCEEDINGS OF THE 2021 ACM SIGCOMM WORKSHOP ON SECURE PROGRAMMABLE NETWORK INFRASTRUCTURE (SPIN '21)(2021)

引用 24|浏览21
暂无评分
摘要
Cyclic Redundancy Check (CRC) is a computationally inexpensive function readily available in many high-speed networking devices, and thus it is used extensively as a hash function in many data-plane applications. However, CRC is not a true cryptographic hash function, and it leaves applications vulnerable to attack. While crypto-graphically secure hash functions exist, there is no fast and efficient implementation for such functions on high-speed programmable switches. In this paper, we introduce an implementation of a secure keyed hash function optimized for commodity programmable switches and capable of running entirely within the data plane. We implement HalfSipHash on the Barefoot Tofino switch by using dependency management schemes to conserve pipeline stages and slicing semantics for concise circular bit shift operations. We show that our efficient implementation performs 67 million, 90 million, 150 million, and 304 million hashes per second for 32-byte, 24-byte, 16-byte, and 8-byte input strings, respectively.
更多
查看译文
关键词
Data Plane, P4, Hash Function, SipHash, CRC32
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要