iMessage 私钥存储位置推测 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Heracles
V2EX    Apple

iMessage 私钥存储位置推测

  •  
  •   Heracles 2014-09-29 23:30:03 +08:00 4153 次点击
    这是一个创建于 4111 天前的主题,其中的信息可能已经有所发展或是发生改变。
    苹果说iMessage采用端到端加密,但iMessage又可以多平台同步,这意味着多个设备共用一个私钥。那么私钥是如何分发的?苹果有没有保存这个私钥?

    做了个实验,详情https://medium.com/@herac1es/imessage-9c28b7ed97a6

    我的结论是:iMessage私钥保存在设备上,苹果没有私钥,因此无法破解用户通信。

    不科学的实验,结论不一定对。
    10 条回复    2014-10-08 10:59:29 +08:00
    WernerLi
        1
    WernerLi  
       2014-09-29 23:39:08 +08:00
    有一个问题,设备间传输私钥是不是通过Apple服务器的?是的话理论上也是可以拦截的,不是的话又是怎么传输的?
    Heracles
        2
    Heracles  
    OP
       2014-09-29 23:42:05 +08:00
    @WernerLi 这个就不知道怎么验证了
    yyfearth
        3
    yyfearth  
       2014-09-30 03:37:13 +08:00
    @WernerLi 可以用非对称加密 只传递PubKey啊
    每个设备生成自己的Pub/Private Key Pair
    然后Apple服务器通过帐号分发PubKey不就好了
    拦截了 也是拦截PubKey 照样是加密了不可解密
    yishanhe
        4
    yishanhe  
       2014-09-30 04:37:48 +08:00
    http://support.apple.com/kb/HT4865

    @Heracles 我觉得设备之间应该是有共享的secret key
    这个 secret key 应该是 @WernerLi 说的这样,应该是每个设备有pub/private key pair,然后用DiffieHellman key exchange交换这么一个secret key,这个secret key是用来做对称加密得,比如AES128/256

    @WernerLi 拦截这种,对于中间人攻击,都是通过证书和CA来验证apple服务器,确认再协商key得阶段是再和真正得server通信,一旦key exchange顺利完成,可以认为接下来得通信是安全得
    wy315700
        5
    wy315700  
       2014-09-30 08:58:05 +08:00
    发现LZ文章里的几个逻辑错误。
    PGP加密方式是先用自己的私钥签名,然后用对方的公钥加密。

    如果先用对方的公钥加密,再用自己的私钥签名的话,攻击者获取消息以后,可以用你的公钥解密后再用他自己的私钥进行签名,发给对方。

    如果先用自己的私钥签名,再用对方的公钥加密后,攻击者拿到消息以后做不了任何事情。(重放除外)

    然后我想知道LZ是如何删除imessage的私钥的。

    端对端加密不需要共享私钥。

    端对端加密真正的意义是 A要和B发消息,先通过某种手段双方交换密钥,然后使用该密钥进行加密。
    而交互密钥的过程必须能够防御中间人攻击。有很多这种公开的密钥交互机制,比如ECDHE等。

    至于imessage支持多终端在线,你把他们看做是不同的人,发送端发消息的时候同时给多个人发而已,但是对每个人还是要单独进行一次密钥交换的。

    最后,苹果想要查看消息,压根不需要在加密上做文章。整个ios,Mac OSX都是他的,只要有某种手段将消息发给服务器就可以了。
    Heracles
        6
    Heracles  
    OP
       2014-09-30 09:58:10 +08:00 via iPad
    @wy315700 多谢指正。
    我好像没说要共享私钥吧。。。
    如果每个设备有不同的私钥,我打开Mac时应该收到那个时段发的信息,可是没有。
    wy315700
        7
    wy315700  
       2014-09-30 10:39:48 +08:00
    @Heracles Mac离线以后,不能交互密钥了把,所以收不到把
    yarshure
        8
    yarshure  
       2014-10-05 16:48:38 +08:00
    怎么可能共享私钥的? 密码学没学习过吧?
    多设备共享msg 是每个设备都发一次,用对应设备的公钥,设备收到用自己的private 解密。
    yishanhe
        9
    yishanhe  
       2014-10-08 10:33:04 +08:00
    我今天无意中读到这篇post,大家有兴趣可以看看

    http://blog.cryptographyengineering.com/2014/10/why-cant-apple-decrypt-your-iphone.html
    yishanhe
        10
    yishanhe  
       2014-10-08 10:59:29 +08:00   1
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1211 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 17:22 PVG 01:22 LAX 09:22 JFK 12:22
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86