比特幣橢圓曲線簽名
① 如何生成bitcoin 地址長度不一樣
1.首先你要知道公鑰和私鑰的概念(已經懂的不用看這部分了)
公鑰私鑰是現代密碼學分支非對稱性加密裡面的名詞,通常都是用公鑰加密信息,用私鑰解密信息,為什麼要這樣? 因為你看電視劇的時候,發電報那種都是對稱性加密,這種加密方式缺點是顯而易見的,如果被人知道了密鑰和加密方法,於是按照加密方法反著來就能解密。 一直到非對稱性加密這種情況才有所改觀,公鑰就是可以對全世界公開的密鑰,比如你和google通訊,用google給的1024位的公鑰加密,送到google那裡只有他有對應的私鑰,只有他能解密,於是就保證了通訊安全
2.比特幣主要用了ECDSA,也就是橢圓曲線簽名演算法,這個演算法有兩個特性,注意這兩點對下面至關重要
a.只要知道私鑰,可以算出相應的公鑰;
b.你用私鑰簽名過的東西,可以用公鑰算一下是不是你簽的;
3.知識准備完了,下面開始講比特幣的交易,比特幣其實沒有錢包,只有交易賬單,整個比特幣就是一大堆交易賬單
比如:
賬單1 從A轉到B 轉了XXX比特幣
賬單2 從B轉到C和D 轉了XXX比特幣
賬單3 從C轉到E 轉了XXX比特幣
。。。。任何人只要下載了客戶端都能接收到從比特幣成立那一天起的所有賬單,所以,只要把所有賬單都下載全了自然知道每個賬戶上應該剩多少錢(這里仔細思考下)
4.比特幣的賬戶,就是剛才講的一段公鑰
5.下面我開始貼一個比特幣的賬單,這里是核心部分了!!! 每個賬單都是一段數據,你簽完了以後會發送到全網,把數據結構逆向成易懂的中文解釋如下:
FROM(誰發送的,包括兩部分)
Previous tx: 你要花的這筆錢的那個賬單的id, 也就是說,你花的任何一筆錢都應該有人轉給你過,需要出示那個賬單的id
scriptSig: 你對這筆交易的簽名,就是把單子用你的私鑰做hash,只有你能做這個hash
TO(誰接受,包括兩部分)
Value: 要發多少
scriptPubKey: 對方的公鑰,比特幣賬戶就是一段公鑰
6.等你簽完單子以後,開始往全網發送,怎麼發呢? 比特幣通訊沒那麼復雜,你可以類比成IRC頻道,但和普通的「IRC」不同的是,任何一個客戶端都是一台「IRC」伺服器,當你啟動客戶端的時候,會接收到周圍的有公網IP的客戶端地址,就是「伺服器」列表,這個列表也不斷的刷新,都是其他的比特幣用戶,於是你在這個「IRC」喊一句話的時候,周圍的人會聽到,進而擴散的全世界。
7.把簽單發送到全世界以後,所有收到這個單子的客戶端會效驗你這個單子對不對,比如會效驗你的簽名,是不是你發的,會效驗你是否有那麼多錢(根據歷史交易可以推算出你有多少錢可以花)
如果這個交易大家算過沒問題了,基本上就算轉賬成功了。
8.實際上現在對方已經接受了比特幣,但是要想花的話,他得有那個地址(公鑰)對應的私鑰。於是他就能填下一個單子的 FROM頭部,Previous tx就是剛才這筆交易的序號,scriptSig填用他私鑰簽名過的hash
如此往復。。。
② 比特幣演算法原理
比特幣演算法主要有兩種,分別是橢圓曲線數字簽名演算法和SHA256哈希演算法。
橢圓曲線數字簽名演算法主要運用在比特幣公鑰和私鑰的生成過程中,該演算法是構成比特幣系統的基石。SHA-256哈希演算法主要是運用在比特幣的工作量證明機制中。
比特幣產生的原理是經過復雜的運演算法產生的特解,挖礦就是尋找特解的過程。不過比特幣的總數量只有2100萬個,而且隨著比特幣不斷被挖掘,越往後產生比特幣的難度會增加,可能獲得比特幣的成本要比比特幣本身的價格高。
比特幣的區塊由區塊頭及該區塊所包含的交易列表組成,區塊頭的大小為80位元組,由4位元組的版本號、32位元組的上一個區塊的散列值、32位元組的 Merkle Root Hash、4位元組的時間戳(當前時間)、4位元組的當前難度值、4位元組的隨機數組成。擁有80位元組固定長度的區塊頭,就是用於比特幣工作量證明的輸入字元串。不停的變更區塊頭中的隨機數即 nonce 的數值,並對每次變更後的的區塊頭做雙重 SHA256運算,將結果值與當前網路的目標值做對比,如果小於目標值,則解題成功,工作量證明完成。
比特幣的本質其實是一堆復雜演算法所生成的一組方程組的特解(該解具有唯一性)。比特幣是世界上第一種分布式的虛擬貨幣,其沒有特定的發行中心,比特幣的網路由所有用戶構成,因為沒有中心的存在能夠保證了數據的安全性。
③ 比特幣的原理嗎
首先你要知道公鑰和私鑰的概念
2.比特幣主要用了ECDSA,也就是橢圓曲線簽名演算法,這個演算法有兩個特性,注意這兩點對下面至關重要
3.比特幣其實沒有錢包,只有交易賬單,整個比特幣就是交易賬單
4.比特幣的賬戶,就是一段公鑰
④ 什麼是比特幣的數字簽名
比特幣中的數字簽名,是交易中的發起方產生的,為了保證這筆交易確實是由此人發起,並且數據在傳輸時沒有被篡改。數字簽名簡單點來說,就是完整的交易信息,通過數字摘要技術壓縮成固定格式的字元串,然後通過非對稱加密技術,生成一個私鑰。將完整的交易信息和數字簽名傳送給礦工,礦工用交易發起方的公鑰對數字簽名進行解密,解密成功,就將此交易數據寫到區塊中。
⑤ 比特幣昵稱怎麼設置
你問的應該是比特幣的個性簽名,還是你在所在交易平台上的賬號昵稱。如果是數字簽名的話,那個就是你買幣的時候就已經產生了的,是以後用來交易的一個重要地址。
但是如果是交易平台上的賬戶昵稱,就需要在你所在的平台上,看一下了,一般都在『我的』,那個頁面那裡,但不知道是不是有些平台他是已注冊就馬上設置好,因為我剛剛看了一下我用的那個平台不太能更改。我用的是土星交易所。
⑥ 比特幣的數字簽名是什麼
比特幣的數字簽名,就是只有比特幣轉賬的轉出方生成的,一段防偽造的字元串。通過驗證該數字串,一方面證明該交易是轉出方發起的,另一方面證明交易信息在傳輸中沒有被更改。
數字簽名通過數字摘要技術把交易信息縮短成固定長度的字元串。舉個栗子,牛牛發起一筆比特幣轉賬,需要先將該交易進行數字摘要,縮短成一段字元串,然後用自己的私鑰對摘要進行加密,形成數字簽名。完成後,牛牛需要將原文(交易信息)和數字簽名一起廣播給礦工,礦工用牛牛的公鑰進行驗證,如果驗證成功,說明該筆交易確實是牛牛發出的,且信息未被更改。
同時,數字簽名加密的私鑰和解密的公鑰不一致,採用非對稱加密技術。看起來好復雜,其實轉賬只需要你輸入私鑰就瞬間完成啦!
⑦ 什麼是比特幣離線交易簽名
挖BTC的機器啊
你要是一點不懂BTC我跟你怎麼都是白說
根據目前的礦機價格和難度增長
沒有一台礦機能回本的 全部是賠錢貨
完畢
⑧ 比特幣的私鑰,公鑰,簽名,錢包,都是什麼意思
我把我家地址(地址)給你,你有可以查到我家郵編(公鑰),你用我家郵編(公鑰)+地址寫信給我,郵件到我家郵遞櫃裡面,我用只有我有的鑰匙打開郵遞櫃(私鑰)。快遞櫃鑰匙存放在我的錢包裡面(錢包)
1、郵遞櫃被盜(資料庫被盜)
2、鑰匙被盜(私鑰被盜)
3、知道我家地址(公鑰被盜),郵遞櫃鎖被暴力打開(私鑰被暴力破解)。