Skip to content

关于ECDSA防止中间人的问题 #30

@BruceVan1987

Description

@BruceVan1987

注意到,由于签名算法中的公钥ECDSA_verify_key是一直公开的,攻击者没有办法阻止别人获取公钥,除非完全掐断发送方的通信。这样一来,中间人攻击就不存在了,因为Eve无法伪造签名。具体过程如图5所示:
image


关于这一点不是很理解——中间人(Eve)仍然可以:

  1. 拦截客户端的请求后,通过自己生成一对sign_key和verify_key
  2. 篡改Bob_ECDH_pub_key之后,将中间人自己生成的signature_eve、eve_verify_key 和 eve_ECDH_pub_key,发给服务端
  3. 同理对客户端。

不知道我的理解中哪个部分是有问题的部分呢?

还是说,原本微信的sign_key和verify_key其实是根据static_svr_pub_key生成的,所以中间人在不破解客户端代码的情况下,生成的sign_key和verify_key无法通过微信后端校验?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions