emmmm 一点小问题 关于密码学和level-128的邪恶计划

emmm 事情是这样的,半年前level-128写了一个库,能把任何文本和文件编码先通过AES进行对称加密然后编码成base85之后在任何可以支持文本传输的平台传输。为了实现彻底的端到段加密,level-128先通过diffie hellman算法协商密钥然后一切都看似不错 – 除了不能防范MITM

level-128想了好多办法防范MITM然后由于可信任的第三方并不存在,所以只能通过侧信道尽可能猜测有没有中间人存在,例如:

  1. 其中一端在计算完 g^a mod p 后对结果不停的进行递归运算,这样运算只能在单核心上完成,并且计算机间单核心性能相差不多,然后设立timeout period,如果这期间没有收到结果那么直接timeout。实际上有很大的问题:要找一个不可并行的,可逆的,嵌套不存在通解的函数,且没有其它攻击面,目前的想法是不停的通过递增的密钥进行AES加密)

  2. 密钥交换算法中嵌入一个特别慢特别慢的哈希,需要其它算法,然后我没找到

emmm 感觉这两个办法都不牢靠,需要知道对方计算机的性能然后其实单核性能也差距很大,所以还有没有别的在没有任何第三方的情况下检测出中间人的办法))

1 个赞

除非你有一個pre-shared key或者上非對稱(也要求公鑰pre shared)
否則似乎並沒有什麼辦法。
也可能是winslow太蒻不知道(

1 个赞

我的理解是
假設Alice要和Bob通訊,winslow是搗亂的
並且bob和winslow都沒有任何預共享的信息
那麼顯然,對於Alice,bob和winslow沒有區別,vice versa.
因此無法在沒有任何預共享信息的情況下進行auth

1 个赞

原理上是这样的,但是我估计从侧信道还有办法判断

telegram的办法是,语音通话端到段加密会显示四个emoji(估计是密钥的hash的某种表现),如果emoji是对的,那么就没有中间人,但是这是建立在语音通话双方很好核实身份,估计level-128的不行)

1 个赞

level-128的办法是交换前把交换的结果,比如做100000次递增密钥的AES递归加密,预计Bob 5分钟解密完成,可是七分钟过去了Bob还没有回我,说明时间花在winslow解密上了,那么说明winslow在捣乱(
可是并不是很现实。。。

這個方法實在是不太行
不同設備的單核性能差距太大了

是呀呜呜呜,可是单核性能是计算机硬件差距最小的部分了,除此以外level-128想不出办法了))

level-128知道,所以一直在想侧信道办法。。

1 个赞

唔… 最坏情况下中间人可以把所有信息都按照协议换成自己的信息吧… ? > < (超小声(
中间人万能(但算力也还是要限制的)的话肯定是绝望的… 不万能的话似乎有解, 但senioria傻傻想不到了 x x (超小声(

1 个赞

zkp怎麼防中間人…還能這樣應用?

中间人万能的话任何加密算法都是无效的…

必须共享一些中间人不知道的秘密