CloudDPI: Cloud-Based Privacy-Preserving Deep Packet Inspection via Reversible Sketch
与sketch的结合点:将修改reversible sketch,用于高效率无差错的成员检测。
挑战:
- 要检测被加密的包负载,需要DPI和IPS的中间设备
- 商用设备检测规则对第三方保密,限制了第三方服务的提供。
- 中间设备的高性能是必备的要求
提供:
- 检测包负载并保留交互数据和检测规则
- 修改reversible sketch 数据结构,用于高效无差错成员检测
- 使用无锁单方向哈希函数而非复杂的密码协议达到隐私保护。
背景:
- 硬件设备的花费高,可扩展性差,故使用云服务
先前工作以及主要存在的问题
- A:BlindBox是首个提供加密流量检测的中间设备,但是没有考虑到检测规则的隐私保护,使用了加密技术造成了很大的计算开销。
- B: yuan et al提供了隐私保护,但只提供对标记而非规则的匹配,且其中用到的Cuckoo hash多次操作后会产生插入错误。
- C:16年infocomm上的dpi中间设备,使用了复杂的机制导致计算开销大。
如何解决
- 解决方案包含规则匹配算法
– reversible sketch高效且无插入错误
– 只用哈希函数集(是否导致安全性不足?)减少计算开销,保证高效和安全 - 提供隐私保护
– 规则可以满足以下- rules with content position modifiers
- field attributes
- cross-connection inspection.
DPI处理流程
- 总:提取负载->ClamAV得出token->reversible sketch记录token等信息
- 处理包的负载->
- 提取出token(与签名有关)->
- 将token 通过hash函数处理->
- 每个哈系桶有一个链表,sf_ptr指向对应的签名片段->
- rule_ptr指向 维护签名片段和规则的对应关系。
修改后的reversible sketch