国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

ECC橢圓曲線入門

這篇具有很好參考價(jià)值的文章主要介紹了ECC橢圓曲線入門。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

區(qū)塊鏈學(xué)習(xí)網(wǎng)站

https://web3study.club/

簡介?

ECC(Ellipse Curve Cryptography)又稱橢圓曲線密碼體制、橢圓曲線加密算法等。 橢圓曲線加密算法在比特幣、區(qū)塊鏈上有著廣泛的應(yīng)用。

公式: y^2 = x^3 + ax + b

這里使用簡單易懂的方式對大家介紹這部分內(nèi)容,讓大家有個簡單的理解

原理簡介?

公私鑰加密內(nèi)容?

公鑰未公開部分,私鑰則是不可泄露的 過程就是吧需要加密的信息用公鑰進(jìn)行加密,然后發(fā)送給私鑰進(jìn)行解密,且只有私鑰可以進(jìn)行解密 這里就會牽扯出兩個問題:

  1. 公鑰加密的過程是快速的,且簡單的
  2. 加密后的信息是不可逆的且直接進(jìn)行解密是困難的,即不可逆。

圖形講解?

橢圓曲線示例:

ECC橢圓曲線入門

  1. 橢圓曲線是x軸對稱的,在y軸正向隨便選擇一個點(diǎn),-y一定會有一個對稱點(diǎn)
  2. 隨便在圖形上找兩個點(diǎn),兩個點(diǎn)連成線,然后延長會經(jīng)過第三個點(diǎn)(垂直線除外)

ECC橢圓曲線入門

如圖,A、B延長線之后,尋找y軸的對稱點(diǎn),會得到點(diǎn)C,即一個運(yùn)算,A-B得到C 簡單的說為點(diǎn)運(yùn)算(此點(diǎn)運(yùn)算就是橢圓曲線的加運(yùn)算):A點(diǎn)B=C

ECC橢圓曲線入門

連接AC,相交于一點(diǎn),找到其對稱點(diǎn) D,即:A點(diǎn)C=D

依次類推,比如點(diǎn)E,再一次連接AE,可以找到更多的點(diǎn)

假設(shè)一個條件: 已知起點(diǎn)為A、終點(diǎn)為F點(diǎn),請問經(jīng)過多少次點(diǎn)運(yùn)算可以得到點(diǎn)F

ECC橢圓曲線入門

如果說給出路徑來看的話,肯定是可以得出F點(diǎn)的點(diǎn)運(yùn)算次數(shù),但是如果沒有的話就相當(dāng)困難了,比如你打桌球,讓你的朋友看到白球的起點(diǎn),然后閉眼, 你開始打,停到某個位置后告訴你朋友睜眼,問他:請問我打出白球的路線,這肯定是不知道的,包括有可能你自己都忘記了。 這也就是其中的一個原則:正向容易,逆向難(加密簡單,解密困難)

ECC橢圓曲線入門

但是有一個特例,比如說上圖,點(diǎn)P是一個切點(diǎn),延長線的對稱點(diǎn)為Q點(diǎn),切點(diǎn)可以當(dāng)做是2個點(diǎn)的重合點(diǎn),即P點(diǎn)P=Q = 2P 然后再次延長相交對稱:P點(diǎn)2P=3P 再依次對稱可以得到6P點(diǎn),6P就很特殊了,只看此定義,可以這樣: (3p)2 = 6P (2p)3 = 6p 乘法問題。

DH算法原理?

簡單舉一個例子糖醋排骨,Alice和Bob都有一個獨(dú)特的配方,Alice的糖,Bob的醋,Cindy是他們之間的聯(lián)絡(luò)員,但是Cindy總想偷他們的配方 Alice這里加糖處理好排骨之后,會通過Cindy發(fā)給Bob,Bob使用醋處理好排骨之后會通過Cindy發(fā)給Alice, 這時候Cindy是沒法獲取完全的配方及成品的,然后Alice和Bob獲得各自貨物后,進(jìn)行再加工,Alice加白糖,Bob加醋,就形成了糖醋排骨的原始材料, 進(jìn)行烹制后就是糖醋排骨了,這樣就可以拿取賣了,這里會發(fā)現(xiàn),Cindy雖然都接觸到了,但是沒有拿到核心的配方,也么有辦法竊取他們的成果。

ECC橢圓曲線入門

其中排骨是公開的,這個就可以類比為公鑰,Cindy因?yàn)闆]有其他人的私鑰,所以最終也獲取不到糖醋排骨。

在此基礎(chǔ)上加上橢圓曲線算法

ECC橢圓曲線入門

  1. Alice生成私鑰a,Bob生成私鑰b,
  2. Alice和Bob都有一個公共的數(shù)據(jù)G,其是開放的,所有人都可以知道,然后Alice使用私鑰經(jīng)過a次點(diǎn)運(yùn)算生成公鑰A,Bob也是用生成公鑰B
  3. 然后進(jìn)行交換,A、B的運(yùn)算就是使用的橢圓曲線加密運(yùn)算,因?yàn)閍次后生成A,這個次數(shù)是很難知道的,不可逆的,所以A是不能反向退出a的,相同的B也不能反向退出點(diǎn)b
  4. 互換之后,Alice產(chǎn)生一個新密鑰,aB,Bob產(chǎn)生一個新密鑰bA,然后根據(jù)剛才描述的(3p)2 = 6P問題,將aB與bA拆解:
    1. aB = a(bG)
    2. bA=b(aG) 其中就可以把 a(bG) = b(aG) ,即 aB = bA

ECDHE就是以上的橢圓曲線與DH混合起來的密鑰交換算法,正向容易、逆向困難

擴(kuò)展閱讀?

ECC橢圓曲線密碼學(xué)的原理、公式推導(dǎo)、例子、Python實(shí)現(xiàn)和應(yīng)用 - 知乎

[以太坊源代碼分析] IV. 橢圓曲線密碼學(xué)和以太坊中的橢圓曲線數(shù)字簽名算法應(yīng)用 - 程序員大本營

ECC橢圓曲線詳解(有具體實(shí)例) - Kalafinaian - 博客園文章來源地址http://www.zghlxwxcb.cn/news/detail-408427.html

到了這里,關(guān)于ECC橢圓曲線入門的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 區(qū)塊鏈數(shù)字簽名、驗(yàn)簽,以及橢圓曲線算法JS庫—elliptic的使用

    目錄 一、簡介 二、橢圓曲線密碼elliptic 1、安裝elliptic和js-sha3 2、Keccak256 3、簽名過程

    2024年02月02日
    瀏覽(26)
  • 橢圓曲線加密原理與應(yīng)用

    橢圓曲線加密原理與應(yīng)用

    由于RSA、AES等國際算法面臨高強(qiáng)度算法禁售和被部署后門風(fēng)險(xiǎn),我國基于ECC橢圓曲線,自研SM2/SM3/SM4/SM9一套安全算法。根據(jù)國家整體戰(zhàn)略,金融及重要領(lǐng)域要逐步實(shí)現(xiàn)國密算法替換,另根據(jù)人民銀行總體規(guī)劃,在2022年金融行業(yè)要全面應(yīng)用國密算法。 在FireFly移動金融開發(fā)平臺

    2024年02月05日
    瀏覽(21)
  • 常用橢圓曲線介紹

    chat-gpt生成,對應(yīng)python的miracl/core/python庫 ED系列 一、ED25519 ED25519使用的橢圓曲線是Curve25519,它是一種高效且安全的橢圓曲線,由Daniel J. Bernstein等人設(shè)計(jì)。 ED25519的 密鑰長度為256位,提供了128位的安全性。 ED25519可以用于生成密鑰對、進(jìn)行數(shù)字簽名和驗(yàn)證簽名。 由于其高效性

    2024年02月14日
    瀏覽(21)
  • 橢圓曲線密碼(SM2)

    橢圓曲線密碼(SM2)

    1. 公鑰生成 ① Alice首先構(gòu)造一條橢圓曲線E,在曲線上選擇一點(diǎn)G作為生成元,并求G的階為n,要求n必須為質(zhì)數(shù)。此時構(gòu)成了一個循環(huán)群G. ② Alice選擇一個私鑰k (k n),生成公鑰 Q = kG ③ Alice將公鑰組E、Q、G發(fā)送給Bob 2. 加密過程 ① Bob收到信息后,將明文編碼為M,M為曲線上一點(diǎn),

    2024年02月17日
    瀏覽(25)
  • 圓/橢圓/雙曲線/拋物線等二次曲線的各種情況方程

    圓/橢圓/雙曲線/拋物線等二次曲線的各種情況方程

    二次曲線(quadratic curves)由一般的具有兩個變量的二次方程所隱含確定,即 其中, A = [ a i j ] A=[a_{ij} ] A = [ a ij ? ] 為對稱的2x2矩陣 B = [ b i ] 、 [ X = [ x i ] B=[b_{i}]、[X=[x_i] B = [ b i ? ] 、 [ X = [ x i ? ] 為2x1向量 二次曲線方程的矩陣形式表示為: 二次曲線方程可以定義點(diǎn)、線

    2024年02月12日
    瀏覽(22)
  • SM2橢圓曲線公鑰密碼算法實(shí)現(xiàn)項(xiàng)目

    SM2橢圓曲線公鑰密碼算法實(shí)現(xiàn)項(xiàng)目

    Python 3.9 、PyCharm SM2橢圓曲線公鑰密碼算法是我國自主設(shè)計(jì)的公鑰密碼算法,包括SM2-1橢圓曲線數(shù)字簽名算法,SM2-2橢圓曲線密鑰交換協(xié)議,SM2-3橢圓曲線公鑰加密算法,分別用于實(shí)現(xiàn)數(shù)字簽名密鑰協(xié)商和數(shù)據(jù)加密等功能。 (1)有限域上的橢圓曲線上的點(diǎn)的加法 (2)dB*C1=dB*k

    2024年02月12日
    瀏覽(19)
  • sCrypt 合約中的橢圓曲線算法:第二部分

    sCrypt 合約中的橢圓曲線算法:第二部分

    我們在腳本中實(shí)現(xiàn)了橢圓曲線 (EC) 算法。在之前的實(shí)現(xiàn)中,我們進(jìn)行鏈下計(jì)算并在腳本中驗(yàn)證結(jié)果。我們這里直接用腳本計(jì)算。 基于EC的應(yīng)用非常多,特別是在密碼學(xué)領(lǐng)域,如數(shù)字簽名、加密、承諾方案等。作為具體示例,我們重新實(shí)現(xiàn)了 ECDSA 簽名驗(yàn)證,允許使用任意消息驗(yàn)

    2024年01月16日
    瀏覽(17)
  • SM2橢圓曲線公鑰密碼算法(Python實(shí)現(xiàn))

    SM2橢圓曲線公鑰密碼算法(Python實(shí)現(xiàn))

    Windows11 PyCharm2019.3.3 x64 通過編寫代碼實(shí)現(xiàn)SM2橢圓曲線公鑰密碼算法,加深對SM2橢圓曲線公鑰密碼算法的理解,體會該算法在解決實(shí)際問題的價(jià)值; 將密碼學(xué)和數(shù)學(xué)知識相聯(lián)系,并靈活運(yùn)用到密碼學(xué)的設(shè)計(jì)方案中; 提高實(shí)踐能力和邏輯思維能力。 random math gmssl SM2算法和RSA算法

    2024年02月02日
    瀏覽(20)
  • 在比特幣上支持橢圓曲線 BLS12–381

    在比特幣上支持橢圓曲線 BLS12–381

    通過使用智能合約實(shí)現(xiàn)來支持任何曲線 BLS12–381 是一種較新的配對友好型橢圓曲線。 與常用的 BN-256 曲線相比,BLS12-381 的安全性明顯更高,并且安全目標(biāo)是 128 位。 所有其他區(qū)塊鏈,例如 Zcash 和以太坊,都必須通過硬分叉才能升級到新曲線,因?yàn)樗褂玫那€是在協(xié)議級別

    2024年02月06日
    瀏覽(24)
  • 橢圓曲線在SM2加解密中的應(yīng)用(三)

    橢圓曲線在SM2加解密中的應(yīng)用(三)

    1.1加密原始數(shù)據(jù) SM2加密運(yùn)算首先是用戶A對數(shù)據(jù)加密,用戶A擁有原始數(shù)據(jù) 橢圓曲線系統(tǒng)參數(shù) 長度為klen比特的消息M 公鑰Pb 橢圓曲線系統(tǒng)參數(shù),已經(jīng)在 橢圓曲線參數(shù)(二)中詳細(xì)介紹;M就是需要加密消息,長度為klen; 1.1.1 公鑰Pb的計(jì)算方式 公鑰Pb=dBG,其中dB是私鑰,是256b

    2024年02月08日
    瀏覽(27)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包