RSA 中如果将公钥私钥交换使用会怎样? - V2EX
aiqier

RSA 中如果将公钥私钥交换使用会怎样?

  •  1
     
  •   aiqier Jun 25, 2015 4626 views
    This topic created in 3982 days ago, the information mentioned may be changed or developed.

    对于RSA而言,私钥加密公钥解密用来签名验证,公钥加密私钥解密则用来加密数据,那么现在如果我在生成两把钥匙的时候,把私钥公开,把公钥自己留着,是否可以把私钥当公钥使用,公钥当私钥使用?

    目前我只知道,私钥要比公钥长,而且它们都有上下类似--public--的文字环绕,除了这些,它们是否有真正的本质区别?

    9 replies    2015-06-26 10:20:46 +08:00
    sneezry
        1
    sneezry  
       Jun 25, 2015 via iPhone
    公钥可由私钥算出来呀~
    wy315700
        2
    wy315700  
       Jun 25, 2015
    一楼正解,理论上公钥加密里公钥和私钥可以对称使用,但是在实际上各个算法都不一样的

    RSA里有几个参数 P,Q,N,E,D
    其中 P,Q是素数,N是大整数,E一般65537,D是对应的数

    理论上 N和D是私钥,N和E是公钥,但是实际操作到时候Q,P一般会存储到私钥里。
    finab
        3
    finab  
       Jun 25, 2015
    当你把私钥公开,公钥保留,那么公钥就变成了“私钥”呗

    公钥加密/签名 私钥解密/验签,反着来也行

    但要注意 在iOS中,为了安全性考虑,只能公钥加密 私钥解密, 私钥签名 公钥验签
    如果你的加密解密有iOS参与,那么最好按照上面那种情况 公开公钥

    否则就需要集成一个庞大的openssl库 来处理加密解密了
    echo1937
        4
    echo1937  
       Jun 25, 2015
    @sneezry 私钥是推倒不出公钥的吧,你在openssl私钥导公钥的时候,是因为p,q还没有丢掉。
    amaranthf
        5
    amaranthf  
       Jun 25, 2015
    从数学上来说,公钥私钥是完全对称的,但是实际使用中,如同2L所说,公钥一般采用更容易运算的数,所以如果你采用默认的生成算法生成密钥对,攻击者有了私钥是比较好猜到公钥的。自己去实现的话可以避免此问题。
    aiqier
        6
    aiqier  
    OP
       Jun 26, 2015
    @wy315700 那么在时间上,是不是公钥加密和解密的速度,也要比私钥加密和解密的速度快?
    wy315700
        7
    wy315700  
       Jun 26, 2015
    @aiqier
    因为公钥通常很短,所以公钥计算的时间远远小于私钥计算的时间。

    另外,一个术语问题,公钥可以加密,私钥只能签名。
    任何情况下,不公开的叫私钥,公开的叫公钥,你把两个密钥换一换,那他们的名字也要换一换。
    aiqier
        8
    aiqier  
    OP
       Jun 26, 2015
    @wy315700 貌似很多书或者博客都会把私钥签名也称作私钥加密,我一直不知道是真的可以这样叫,还是他们叫错了。
    wy315700
        9
    wy315700  
       Jun 26, 2015   1
    @aiqier
    肯定是叫错了,上次我和老师说私钥加密,然后被老师骂了一顿,说私钥不能加密,只能签名。
    About     Help     Advertise     Blog     API     FAQ     Solana     5436 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 69ms UTC 01:41 PVG 09:41 LAX 18:41 JFK 21:41
    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