传输证明:IETF提供了确认网络数据包路径的新方法

IETF (互联网工程任务组) 提议实施传输证明(PoT)-网络数据包的“旅行日志”。 阅读更多有关PoT的倡议和原则的信息-切入正题。


/ Flickr / JonoTakes照片 / CC

为什么需要运输证明


根据思科专家的说法,Comcast和JP Morgan Chase虚拟化不能完全确保没有替换或修改网络数据包。 例如,可以通过组织的内部政策或监管机构的要求来证明这种需求。

现在可以间接解决这个问题,但是根据该计划作者,网络的演进以及诸如NFVLISPNSH之类的技术的出现极大地使这一过程复杂化。 因此,提出了一种称为过境证明的新方法。 假定它可以使您沿给定路线进行数据包通过的历史记录或日志记录。

建议的方法如何运作?


本文档中提出的解决方案基于向每个包装中添加少量数据的基础。 此数据用于编译历史记录并验证路径的正确性。 使用秘密密钥或秘密共享方案描述强制性节点的参数。

每个节点使用其自己的密钥或秘密共享来更新PoT数据包数据。 验证者收到数据包后,将验证路径的真实性。


/ Flickr / Ryan H. / CC

为了确保此方法的安全性,专家建议在生成PoT数据的阶段使用Shamir秘密共享方案 。 简而言之,这种保护方法的工作原理是将秘密逐步分离为点(节点)的条件“坐标”,沿着该点,节点将随后进行给定曲线的插值(数据包路径)-拉格朗日插值多项式的计算。

节点使用它们的秘密共享来更新每个数据包的POT数据,并通过构造一条曲线来验证POT数据的正确性。 如果缺少或替换了任何点,将无法构造多项式。 这意味着数据包没有通过指定的路径。

为了提高安全性,作者建议使用2个多项式:POLY-1(秘密和永久)和POLY-2(每个程序包是公共的,任意的和单独的)。 这里的算法如下:每个节点接收POLY-1曲线上的点的秘密值。 之后,每当数据包通过时,该节点都会在POLY-2曲线上生成一个点。 接下来,每个节点将POLY-1曲线上的一个点的值添加到POLY-2上的一个点,以获得POLY-3上的一个点,并将其与数据包一起传输到验证节点。 在路径的最后,验证者根据接收到的数据构建POLY-3曲线,并检查POLY-3 = POLY-1 + POLY-2的符合性(在这种情况下,只有验证者知道POLY-1多项式的参数)。


/ Flickr / 文化范宁 / CC

对PoT的批评


在有关The Register的评论中,网站的读者指出了该提议方法一些缺陷。 例如,有人担心该想法的实施会导致UDP数据包的“重量”显着增加,而PoT将无法与IPSec融为一体。 另外,不清楚在给定节点之一发生故障时PoT如何工作。 事实证明,PoT数据将需要铺设替代路线。 在这种情况下该怎么办,IETF尚未得到解释。

未来文件


应当指出的是,该倡议的草案尚处于讨论和完善阶段,到目前为止,尚无任何伪装。 在六个月内(至2018年12月2日),IETF可能会更改,替换或认为它已过时。



您可以在VAS专家网站上的公司博客中了解以下内容:

Source: https://habr.com/ru/post/zh-CN414931/


All Articles