ECC 算法
一、簡介
1)橢圓曲線密碼學的初級讀本
http://8btc.com/thread-1240-1-1.html2)ECC加密算法入門介紹
http://www.pediy.com/kssd/pediy06/pediy6014.htm3)ECC算法原理的認識
http://blog.csdn.net/sszgg2006/article/details/419451634)ECC算法介紹
http://lxxavr.blog.163.com/blog/static/14029914720122299440884/?
二、算法原理
橢圓曲線離散對數(shù)問題。
?
三、算法應(yīng)用
ECC算法不僅可以用于加解密、簽名驗簽,還可以與DH結(jié)合使用,用于密鑰磋商,這個密鑰交換算法稱為ECDH。交換雙方可以在不共享任何秘密的情況下協(xié)商出一個密鑰。
小提示: 目前Openssl提供的ECC算法的套件支持是ECDSA/ECDH。在國密的SSL套件中,可以使用ECDSA/ECC(密鑰加密傳輸),ECDSA/ECDH(密鑰磋商)兩種套件。ECDH密鑰磋商過程:
假設(shè)密鑰交換雙方為Alice、Bob,其有共享曲線參數(shù)(橢圓曲線E、階N、基點G):1) Alice生成隨機整數(shù)a,計算A=a*G。Bob生成隨機整數(shù)b,計算B=b*G。2) Alice將A傳遞給Bob。A的傳遞可以公開,即攻擊者可以獲取A。由于橢圓曲線的離散對數(shù)問題是難題,所以攻擊者不可以通過A、G計算出a。Bob將B傳遞給Alice。同理,B的傳遞可以公開。3) Bob收到Alice傳遞的A,計算Q=b*A4) Alice收到Bob傳遞的B,計算Q‘=a*BAlice、Bob雙方即得Q=b*A=b*(a*G)=(b*a)*G=(a*b)*G=a*(b*G)=a*B=Q' (交換律和結(jié)合律),即雙方得到一致的密鑰Q。總結(jié)
- 上一篇: iOS对象属性详解
- 下一篇: C注释 转换为 C++注释