操屁眼的视频在线免费看,日本在线综合一区二区,久久在线观看免费视频,欧美日韩精品久久综

新聞資訊

    上數學課了,大家坐穩。相信很多小伙伴聽說過,比特幣的密碼叫做私鑰,私鑰一旦丟失,對應的BTC將永遠封存。不存在重置私鑰一說,因此私鑰的保管至關重要。丟失私鑰,是早期BTC持有者常犯的錯誤,因為當時BTC 并沒有今天這么高的法幣標價,因此很多人并不重視。為什么私鑰丟失是致命事件?可以強行破解私鑰么?理論上可以,答案是算到地球滅亡。以今天凌晨最高全網算力紀錄100EH/s來看,也就是每秒進行100*2^60次哈希運算,也就是每秒猜100*2^60次,聽起來很大,但是私鑰的全部可能性是2^256種,假設私鑰呈現均勻分布U(0,2^256),強行破解也要幾億億億億億億年。

    如果還不夠直觀,想想如果有360個地球,每個地球上的每一克物質又變成一個新的地球,那這些地球上面的所有水分子就是所有的私鑰。(找是找不到的,這輩子都不可能找到的)那到底是什么加密算法讓比特幣有如此的密碼安全性呢?這就是本篇的硬核內容了。

    先看一個方程:

    這就是比特幣所使用的方程,用來保護消息摘要的真實性。這種算法叫橢圓曲線算法( Curve )。與傳統的基于大質數因子分解困難性的加密方法不同,ECC通過橢圓曲線方程式的性質產生密鑰,是典型的非對稱加密算法,抗暴力求解的能力極強。

    插一句,目前我國居民二代身份證正在使用 256 位的橢圓曲線密碼,比特幣也選擇ECC作為加密算法,也就是說比特幣的密碼學安全度是等同于身份證的。比特幣系統不安全性的說法可以退下了。

    那么橢圓曲線方程是不是就是一種橢圓方程呢?

    不是的,橢圓曲線的形狀并不是橢圓,只是因為橢圓曲線的描述方程,類似于計算一個橢圓周長的方程故得名。

    劃重點——基本上來說,橢圓曲線方程是一個齊次方程,曲線上的每個點都必須是非奇異的,也就是光滑的,即各個維度的偏導數不同時為0。具體的標準式我就不貼了,有興趣出門左轉百度維爾斯特拉斯方程()。為什么橢圓曲線可以用于加密呢?這就要溫習前面所講的,比特幣私鑰可以輕松生成公鑰,而基于公鑰無法反解私鑰的基本常識,而比特幣的私鑰產生公鑰的過程就是基于橢圓曲線來運算的。先看一個栗子——

    小明就讀于小學二年級,會計算加法,但是不會計算除法。你是小明的怪蜀黍大強,你想出一道題給他做,讓他雖然能理解題目意思但是做起來有難度:

    強:“小明小明,過來,叔叔問你,1+1等于幾?”

    明:“叔叔的大學白念了吧,我幼兒園就會了,等于2。”

    強:“那考你個難的,7+7等于幾?”

    明:“切,你當人家上課啃鉛筆頭,下課幫小紅寫作業都是白干的是吧。手指都不用數,等于14唄。”

    強:“行,有叔叔當年的風采,那叔叔再問你,幾個7相加等于56?”

    明:“……”,默默掏出草稿紙、鉛筆、手指頭、腳趾頭,進行了10分鐘的深度計算:2個7等于14,3個7等于21,4個7等于28……。“叔叔,我算出來了,是8個,對不對?”

    強:“好小子,叔叔就不信考不倒你。幾個7相加等于?” 你心中默念,以小明的計算能力,要算到這個數恐怕得一年半載的。

    明:“叔叔好厲害呀,我算不出來。”

    這個例子想說明的是基于加法階數難求問題的密碼方案。對于橢圓曲線密碼來講,橢圓曲線的基點就是例子里面的7,而私鑰就是基點的加法階數(例子里面的8),公鑰是基點(7)進行對應階數的加法(8次)得到的結果(56)。具體來看比特幣的例子——以一個隨機生成的私鑰 k(可以理解為一個極大的數)為起點,我們將其與曲線上已定義的生成點 G 相乘以獲得曲線上的另一點,也就是相應的公鑰K。

    生成點是標準的一部分,是指比特幣中使用的ECDSA(橢圓曲線數字簽名算法)曲線的參數。

    比特幣密鑰的生成點都是相同的:

    {K =k * G}其中 k 是私鑰,G是生成點,在該曲線上所得的點 K 是公鑰。因為所有比特幣用戶的生成點是相同的,一個私鑰k 乘以 G 將得到相同的公鑰 K。k 和 K 之間的關系是固定的,但只能單向運算,即從 k 得到 K。為了展示整數點的乘法,我們將使用較為簡單的實數范圍的橢圓曲線。但實際上,橢圓曲線密碼里的加法是建立在“有限域上的二元三次曲線上的點”上坐標加密點是什么意思,組成一個“有限加法循環群”,是離散的。我們的目標是找到生成點 G 的倍數 k*G。也就是將 G相加 k 次。在橢圓曲線中,點的相加等同于從該點畫切線找到與曲線相交的另一點,然后映射到 x 軸。

    針對上面這張圖說一下k*G的計算過程,這里我們假定k的值為8。

    1.已知橢圓曲線上的一點G,我們做其在曲線上的切線,此時切線與原本的橢圓曲線就會產生一個交點,這個點我們記作-2G,那么與-2G關于x軸對稱的點就是2G了。

    2.重復上面的動作,對點2G做切線,使得切線與橢圓曲線相交,交點記為-4G,再取-4G關于x軸的對稱點,就得到了4G。

    3.再次重復前面的動作,對點4G做切線,使得切線與橢圓曲線相交,交點記為-8G,再取-8G關于x軸的對稱點,就得到了8G。

    這里8G點就是我們所說的公鑰K,點的坐標就是公鑰K的x和y。事實上,這個動作我們可以重復很多很多次,能堅持讀到這里的小伙伴一定想到了,這是阿貝爾群( Group):任意取橢圓曲線上兩點P、Q(若P、Q兩點重合,則作P點的切線),作直線交于橢圓曲線的另一點R',過R'做y軸的平行線交于R坐標加密點是什么意思,定義P+Q=R。這樣,加法的和也在橢圓曲線上,并同樣具備加法的交換律、結合律。

    好了,上面的整個過程如果看明白了,我們接著來說為什么通過公鑰K得不到私鑰k。

    假定我們現在已知點8G(公鑰K),我們可以反向推出它關于x軸的對稱點-8G。到了這一步我們會發現,想通過-8G反向堆出4G變成了不可能的事情。因為-8G是橢圓曲線上的一個點,在平面上過這個點有無數條直線,這里或許會有一條或者幾條與橢圓曲線相切,但這些切線我們卻無從求得。或許我們可以逐條測試,通過窮舉法找出過點-8G且與橢圓曲線相切的直線,進而得到可能的點4G。但不要忘記,我們只是進行了反向推理的第一步,我們想從4G得到2G也需要同樣的計算量。

    如果私鑰是長這個樣子:AEDD那么計算量將是不可想象的。

網站首頁   |    關于我們   |    公司新聞   |    產品方案   |    用戶案例   |    售后服務   |    合作伙伴   |    人才招聘   |   

友情鏈接: 餐飲加盟

地址:北京市海淀區    電話:010-     郵箱:@126.com

備案號:冀ICP備2024067069號-3 北京科技有限公司版權所有