java生成比特幣私鑰
『壹』 每個比特幣都有一個不一樣的私鑰嗎
每個人的比特別錢包中有多個比特幣地址,每個比特幣地址代表一定數量的比特幣。而比特幣地址是通過一個公鑰通過哈希(RPIEMD+SHA)生成的,這個公鑰又是由私鑰通過橢圓曲線(ECC)生成的。私鑰保存在比特幣錢包中,不應泄露出去。而公鑰在付款交易時,需要和比特幣地址一起,通過交易記錄公開發布,由區塊鏈系統驗證付款交易的有效性。
『貳』 怎樣查看比特幣錢包私鑰
比特幣錢包私鑰在線無法查看,比特幣存在平台要下載core 或者classic才是真正的錢包,然後就可以查看了。
【比特幣錢包私鑰的說明】:
1、錢包加密是指對儲存有私鑰的錢包進行自動加密存儲。 比特幣官方客戶端從0.4.0 版本開始支持錢包加密。加密的錢包在每次付款的時候,都會提示您輸入密碼。如果密碼錯誤,客戶端會拒絕付款。
2、如果用最早備份的錢包(wallet.dat)替換回來,還是一樣可以正常交易。考慮到比特幣的原理應該也可得出,只要有私鑰(錢包)存在,就可以證明你是這個錢包的合法擁有者,不管對這個錢包(核心就是某個地址對應的私鑰)是進行了加密還是刪除,都不能否定它。
3、備份比特幣錢包時,還需注意由於比特幣支付找零機制的存在(比如把一個完整的100 btc中的50 btc發送給某個地址,系統會發送其中的50 btc到對方的地址,並退回50 btc到你客戶端的一個新地址上,這個地址不會直接顯示在你的地址列表中)。
4、每發送了100次比特幣給其它地址或者使用了100個不同的地址接收比特幣後,請重新備份錢包,否則後面交易退回的和接收到的比特幣會永久丟失。 除了給錢包加密外,用戶還可以自行生成離線的紙錢包和腦錢包。
『叄』 比特幣私鑰、公鑰和地址如何確保一一對應
比特幣真相:
1、研究炒作比特幣誰獲益最大?
2、實質上是USA的陰疼餌(INTEL)、陰偽呆(NVIDIA)、挨罵的+挨踢(AMD+ATI)
3、挖比特幣需要巨量CPU、GPU、內存、主板、電源、線材、場地。
4、自從炒作比特幣以來,CPU、GPU、內存、主板、電源、線材銷量最高。
5、真正賺大頭的是USA的CPU、GPU產業,別國的零售、服務只是中間商賺差價。
6、炒作比特幣的策劃案:助推了USA的高端、核心、基礎晶元產業能力,別國是買辦而已。
7、危害:喪失發展本國高端、核心、基礎晶元的能力,淪為只能替USA賣晶元的零售商。
『肆』 如何在比特幣客戶端導入私鑰
在工具欄菜單中點擊導入私鑰。
multibit是一個輕量級的比特幣錢包,和bitcoinqt不同的是multibit不用下載整個數據塊的內容便可以同步並使用錢包。打開multibit錢包,在工具欄菜單中點擊導入私鑰,然後在導入文件中選擇匯入自。
『伍』 bitcoin私鑰是如何產生的
比特幣地址和私鑰是怎樣生成的?比特幣使用橢圓曲線演算法生成公鑰和私鑰,選擇的是secp256k1曲線。生成的公鑰是33位元組的大數,私鑰是32位元組的大數,錢包文件wallet.dat中直接保存了公鑰和私鑰。我們在接收和發送比特幣時用到的比特幣地址是公鑰經過演算法處理後得到的,具體過程是公鑰先經過SHA-256演算法處理得到32位元組的哈希結果,再經過RIPEMED演算法處理後得到20位元組的摘要結果,再經過字元轉換過程得到我們看到的地址。這個字元轉換過程與私鑰的字元轉換過程完成相同,步驟是先把輸入的內容(對於公鑰就是20位元組的摘要結果,對於私鑰就是32位元組的大數)增加版本號,經過連續兩次SHA-256演算法,取後一次哈希結果的前4位元組作為校驗碼附在輸入內容的後面,然後再經過Base58編碼,得到字元串。
『陸』 比特幣的私鑰怎麼生成的
私鑰是密文持有人設置的隨機的數字。
私鑰的生成是隨機的數字,通過拋硬幣將正面向上的計為0,反面向上計為1,連續拋256次,就隨機得到一個256位的二進制數字。生成了私鑰,就可以通過加密函數來生成一個地址。私鑰是一個64個字元長的代碼,包括字母a到f和數字1到9的任何混合。
『柒』 java中的rsa\des演算法的方法
rsa加密解密演算法
1978年就出現了這種演算法,它是第一個既能用於數據加密
也能用於數字簽名的演算法。它易於理解和操作,也很流行。算
法的名字以發明者的名字命名:Ron Rivest, AdiShamir 和
Leonard Adleman。但RSA的安全性一直未能得到理論上的證明。
RSA的安全性依賴於大數分解。公鑰和私鑰都是兩個大素數
( 大於 100個十進制位)的函數。據猜測,從一個密鑰和密文
推斷出明文的難度等同於分解兩個大素數的積。
密鑰對的產生:選擇兩個大素數,p 和q 。計算:
n = p * q
然後隨機選擇加密密鑰e,要求 e 和 ( p - 1 ) * ( q - 1 )
互質。最後,利用Euclid 演算法計算解密密鑰d, 滿足
e * d = 1 ( mod ( p - 1 ) * ( q - 1 ) )
其中n和d也要互質。數e和
n是公鑰,d是私鑰。兩個素數p和q不再需要,應該丟棄,不要讓任
何人知道。 加密信息 m(二進製表示)時,首先把m分成等長數據
塊 m1 ,m2,..., mi ,塊長s,其中 2^s <= n, s 盡可能的大。對
應的密文是:
ci = mi^e ( mod n ) ( a )
解密時作如下計算:
mi = ci^d ( mod n ) ( b )
RSA 可用於數字簽名,方案是用 ( a ) 式簽名, ( b )
式驗證。具體操作時考慮到安全性和 m信息量較大等因素,一般是先
作 HASH 運算。
RSA 的安全性。
RSA的安全性依賴於大數分解,但是否等同於大數分解一直未能得到理
論上的證明,因為沒有證明破解RSA就一定需要作大數分解。假設存在
一種無須分解大數的演算法,那它肯定可以修改成為大數分解演算法。目前,
RSA的一些變種演算法已被證明等價於大數分解。不管怎樣,分解n是最顯
然的攻擊方法。現在,人們已能分解140多個十進制位的大素數。因此,
模數n必須選大一些,因具體適用情況而定。
RSA的速度:
由於進行的都是大數計算,使得RSA最快的情況也比DES慢上100倍,無論
是軟體還是硬體實現。速度一直是RSA的缺陷。一般來說只用於少量數據
加密。
RSA的選擇密文攻擊:
RSA在選擇密文攻擊面前很脆弱。一般攻擊者是將某一信息作一下偽裝
(Blind),讓擁有私鑰的實體簽署。然後,經過計算就可得到它所想要的信
息。實際上,攻擊利用的都是同一個弱點,即存在這樣一個事實:乘冪保
留了輸入的乘法結構:
( XM )^d = X^d *M^d mod n
前面已經提到,這個固有的問題來自於公鑰密碼系統的最有用的特徵
--每個人都能使用公鑰。但從演算法上無法解決這一問題,主要措施有
兩條:一條是採用好的公鑰協議,保證工作過程中實體不對其他實體
任意產生的信息解密,不對自己一無所知的信息簽名;另一條是決不
對陌生人送來的隨機文檔簽名,簽名時首先使用One-Way HashFunction
對文檔作HASH處理,或同時使用不同的簽名演算法。在中提到了幾種不
同類型的攻擊方法。
RSA的公共模數攻擊。
若系統中共有一個模數,只是不同的人擁有不同的e和d,系統將是危險
的。最普遍的情況是同一信息用不同的公鑰加密,這些公鑰共模而且互
質,那末該信息無需私鑰就可得到恢復。設P為信息明文,兩個加密密鑰
為e1和e2,公共模數是n,則:
C1 = P^e1 mod n
C2 = P^e2 mod n
密碼分析者知道n、e1、e2、C1和C2,就能得到P。
因為e1和e2互質,故用Euclidean演算法能找到r和s,滿足:
r * e1 + s * e2 = 1
假設r為負數,需再用Euclidean演算法計算C1^(-1),則
( C1^(-1) )^(-r) * C2^s = P mod n
另外,還有其它幾種利用公共模數攻擊的方法。總之,如果知道給定模數
的一對e和d,一是有利於攻擊者分解模數,一是有利於攻擊者計算出其它
成對的e』和d』,而無需分解模數。解決辦法只有一個,那就是不要共享
模數n。
RSA的小指數攻擊。 有一種提高
RSA速度的建議是使公鑰e取較小的值,這樣會使加密變得易於實現,速度
有所提高。但這樣作是不安全的,對付辦法就是e和d都取較大的值。
RSA演算法是第一個能同時用於加密和數字簽名的演算法,也易於理解和操作。
RSA是被研究得最廣泛的公鑰演算法,從提出到現在已近二十年,經歷了各
種攻擊的考驗,逐漸為人們接受,普遍認為是目前最優秀的公鑰方案之一。
RSA的安全性依賴於大數的因子分解,但並沒有從理論上證明破譯RSA的難
度與大數分解難度等價。即RSA的重大缺陷是無法從理論上把握它的保密性
能如何,而且密碼學界多數人士傾向於因子分解不是NPC問題。
RSA的缺點主要有:
A)產生密鑰很麻煩,受到素數產生技術的限制,因而難以做到一次
一密。B)分組長度太大,為保證安全性,n 至少也要 600 bits
以上,使運算代價很高,尤其是速度較慢,較對稱密碼演算法慢幾個數量級;
且隨著大數分解技術的發展,這個長度還在增加,不利於數據格式的標准化。
目前,SET(Secure Electronic Transaction)協議中要求CA採用2048比特長
的密鑰,其他實體使用1024比特的密鑰。
參考資料:http://superpch.josun.com.cn/bbs/PrintPost.asp?ThreadID=465
CRC加解密演算法
http://www.bouncycastle.org/
『捌』 比特幣如何導出私鑰
把wallet.dat文件拷貝走就可以了。怕被盜,備份這個文件到其他地方,然後刪除之。切忌先備份
『玖』 比特幣使用哪種演算法來生成比特幣錢包的地址
首先生成私鑰,再由私鑰算出公鑰,再由公鑰經過一系列哈希算出錢包地址。
『拾』 比特幣基礎教學之:怎樣保護你的私鑰
私鑰安全問題的重要性對比特幣玩家來說不言而喻。對於比特幣的重量級玩家或者比特幣商家而言,如何保護好私鑰更是需要仔細考慮和反復斟酌的。今天編者就和大家探討一下如何保護比特幣私鑰的問題。對於bitcoin-qt客戶端來說,比特幣私鑰一般儲存在客戶端的wallet.dat文件中。對於Blockchain這樣的在線錢包用戶來說,比特幣私鑰是儲存在在線錢包的網路伺服器上,用戶也可以將私鑰下載到本地。對於紙錢包的用戶來說,私鑰可以被列印出來。但是,怎樣保護私鑰的安全性呢?編者列出了幾種方法供大家參考。
用對稱加密的方法保管私鑰 對稱加密(Symmetric-key algorithm)是指加密和解密都用一個密鑰。我們平時用到的加密方法一般都是對稱加密,比如 winrar 中的加密,bitcoin-qt中對私鑰文件的加密也是用的對稱型加密演算法。常用的對稱加密演算法有:AES、DES、RC4、RC5等等。對稱加密需要用戶設置相對比較復雜的密鑰,以防止被暴力破解。Go to top方法一,用bitcoin-qt對私鑰錢包進行加密。我們在命令模式下可以用encryptwallet命令來對錢包進行加密。命令模式的使用方法可以參見比特幣基礎教學之:怎樣使用紙錢包私鑰。這是私鑰加密的最簡易有效的方法。但是在使用walletpassphrase命令進行解密錢包時,密鑰會被讀入計算機內存中,所以存在攻擊者獲取密鑰的可能性。加密命令: encryptwallet YOURPASSWORD解密錢包命令: walletpassphrase YOURPASSWORDTIMEOUT更改密碼命令: walletpassphrasechange OLDPASSWORDNEWPASSWORDGo to top方法二,使用blockchain提供的AES加密。Blockchain為用戶提供基於AES演算法的私鑰文件加密服務。用戶可以將加密好的文件下載下來,並妥善保存。
Go to top方法三,用第三方軟體Truecrypt對密鑰文件加密,這也是編者比較推薦的方法。Truecrypt開源免費,軟體成熟度很高,而且支持雙因素認證和整個硬碟加密。另外,FBI人員在Truecrypt上面吃過虧,因此口碑很不錯。Truecrypt的口碑FBI hackers fail to crack TrueCrypt The FBI has admitted defeat in attempts to break the open source encryption used to secure hard drives seized by Brazilian police ring a 2008 investigation.
The Bureau had been called in by the Brazilian authorities after the country』s own National Institute of Criminology (INC) had been unable to crack the passphrases used to secure the drives by suspect banker, Daniel Dantas.Brazilian reports state that two programs were used to encrypt the drives, one of which was the popular and widely-used free open source program TrueCrypt. Experts in both countries apparently spent months trying to discover the passphrases using a dictionary attack, a technique that involves trying out large numbers of possible character combinations until the correct sequence is found.
完整文章點擊這里Truecrypt只支持對稱加密演算法。使用它的用戶必須要將密鑰牢記,如果你忘記密鑰,那麼沒有人能夠恢復你加密的文件。
Truecrypt官方網站Truecrypt使用文檔 用非對稱加密的方法保管私鑰 非對稱加密方法所採用公鑰和私鑰的形式來對文件進行加密。用戶可以用公鑰來對文件進行加密,用私鑰對文件解密。常見的非對稱加密演算法有RSA、Elgamal、ECC等等。非對稱加密的好處是密鑰的復雜度一般很高,可以很有效的防止被暴力破解。缺點是有一定的使用門檻,不太適合普通級用戶。Go to top 方法一、個人用戶可以考慮使用RSA來進行加密。首先,可以創建公鑰和私鑰,點擊這里生成密鑰。將公鑰私鑰妥善保管後,便可以用公鑰加密和私鑰解密了,點擊這里進行加密和解密。RSA公鑰和私鑰的產生過程RSA公鑰和私鑰的產生過程隨意選擇兩個大的素數p和q,p不等於q,計算N=pq。根據歐拉函數,求得r= φ(N) = φ(p)φ(q) = (p-1)(q-1)選擇一個小於r的整數e,求得e關於模r的模反元素,命名為d。(模反元素存在,當且僅當e與r互質)將p和q的記錄銷毀。(N,e)是公鑰,(N,d)是私鑰。Go to top方法二、比較成熟的非對稱加密軟體有我們可以採用PGP(Pretty Good Privacy)工具來對文件進行加密。PGP加密可以讓每個公鑰邦定到一個用戶的所有信息。相比RSA來講,PGP的功能更加完善可靠。但是隨著PGP的升級,新的加密消息有可能不被舊的PGP系統解密,所以用戶在使用PGP之前應該首先熟悉PGP的設置。PGP加密工具網上有很多,編者就不列舉了。
wiki中關於PGP的介紹PGP在線加解密系統PGP命令FAQ 高級方法保管私鑰 上述保管私鑰的方式都很常見,有經驗的攻擊者依然可能得到用戶的私鑰文件。關於更加高級隱秘的私鑰保管方式,參見以後的比特幣高級教學內容。