从不同层面上降低冒充的可能性的一些想法

55 阅读1分钟

前言

前几天在讨论在复杂网络环境下(存在潜在攻击者)防止冒充的一些思路,有一些有意思的想法,在这里分享一下。当然防止冒充最简单的方式就是鉴权了,密码啦,token啦,session本质上都是一样的东西,在存在攻击者的情况下都很脆弱。下面就列一下个人的考虑。

应用层面

如果不太关注实时性的话,可以考虑多重双向非对称加密的方式。

  1. 由定期由a向b发送请求,发送的请求带有一个加密种子x,x由a随机生成的原始种子z并通过自己的私钥进行加密产生的
  2. 在收到下一次a的请求前,b向a发送的指令追加一段验证数据y,y是再由b用a的公钥解密x产生的,
  3. a在收到数据后,先用b公钥解密,解密后再检查验证数据y是否与z一致,就可以知道这个b是否是真的b了。

物理层面

专线+防火墙应该是最简单直接的物理层面防护了

其他

如果考虑b可能被攻下那么可以考虑将b分布成多个独立的服务,然后a从多个b获取指令取多数一致即可。