随机生成BTC私钥
⑴ 给一个java简单随机生成rsa公钥私钥的算法代码
1、用公钥加密,用私钥解密。
2、给别人发信息,就从服务器上拉下来别人的公钥,加密后发给他。
3、对方拿到信息后用自己的私钥解密。
4、这样,公钥加密后除了私钥持有人,别人都看不到信息。
5、若是用私钥加密,那么公钥都能解密,还有何安全性可言?
6、私钥加密的场合只有一个,那就是数字签名,用来表明这个信息来源于你。
⑵ 比特币交易 BTC-E. 如何设置密钥,一次性密码是怎么得到的求大神告诉方法
API密钥用来程序化交易的。一次性密码,用谷歌验证器。下载谷歌验证器到手机上,安装后。用验证器扫描二维码,就得到一次性密码。studybtc
⑶ java 如果随机生成秘钥对并获取
好像是,..这个你可以将公钥私钥放到一个MAP中 在这个MAP中初始化随即产生器然后生成密钥对 我也刚接触 还没看懂... //生成密钥
public static Map<String,Object> initKey(String seed) throws Exception{
KeyPairGenerator keygen = KeyPairGenerator.getInstance(ALGORITHM);
//初始化随机产生器
SecureRandom sr = new SecureRandom();
sr.setSeed(seed.getBytes());
keygen.initialize(KEY_SIZE,sr);
KeyPair keys = keygen.genKeyPair();
DSAPublicKey publicKey = (DSAPublicKey) keys.getPublic();
DSAPrivateKey privateKey = (DSAPrivateKey) keys.getPrivate();
Map<String,Object> map = new HashMap<String,Object>(2);
map.put(PUBLIC_KEY, publicKey);
map.put(PRIVATE_KEY, privateKey);
return map;
}
⑷ bitcoin私钥是如何产生的
比特币地址和私钥是怎样生成的?比特币使用椭圆曲线算法生成公钥和私钥,选择的是secp256k1曲线。生成的公钥是33字节的大数,私钥是32字节的大数,钱包文件wallet.dat中直接保存了公钥和私钥。我们在接收和发送比特币时用到的比特币地址是公钥经过算法处理后得到的,具体过程是公钥先经过SHA-256算法处理得到32字节的哈希结果,再经过RIPEMED算法处理后得到20字节的摘要结果,再经过字符转换过程得到我们看到的地址。这个字符转换过程与私钥的字符转换过程完成相同,步骤是先把输入的内容(对于公钥就是20字节的摘要结果,对于私钥就是32字节的大数)增加版本号,经过连续两次SHA-256算法,取后一次哈希结果的前4字节作为校验码附在输入内容的后面,然后再经过Base58编码,得到字符串。
⑸ 比特币私钥多少位
比特币私钥是一个256位的随机数,通过SHA-256算法产生
⑹ 一个比特币私钥可以算出几个地址
比特币交易网站只给你使用权,不给你所有权。在交易所你只是个比特币的租客。想当比特币的主子,请用比特币钱包(我用的是比太钱包)
⑺ 随机生成的比特币地址会重复吗
不会的,总会有那个几个数字或者字母是不一样的。因为一旦有重复的现象发生,市场可能会出现混乱,创造者当初应该也会想到一旦发生这种情况将会导致什么样的后果,因此个人觉得是不会有重复得到。
⑻ 比特币私钥是自己设定还是生成的
生成的一串加密密钥
⑼ 离线生成的比特币地址是如何避免冲突的
BTC的地址生成过程如下,完整的可以查一下比特币中文维基:
比特币地址的生成过程
(说明: 有些数字以"0x"开头,意思是此数字使用十六进制表示法。"0x"本身没有任何含义,它是C语言流传下来的,约定俗成的写法,比如0xA就是十进制的10。另外,1个字节 = 8位二进制 = 2位十六进制)。
第一步,随机选取一个32字节的数、大小介于1 ~ 0xFFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFE BAAE DCE6 AF48 A03B BFD2 5E8C D036 4141之间,作为私钥。
第二步,使用椭圆曲线加密算法(ECDSA-secp256k1)计算私钥所对应的非压缩公钥。 (共65字节, 1字节 0x04, 32字节为x坐标,32字节为y坐标)关于公钥压缩、非压缩的问题另文说明。
第三步,计算公钥的 SHA-256 哈希值
第四步,取上一步结果,计算 RIPEMD-160 哈希值
第五步,取上一步结果,前面加入地址版本号(比特币主网版本号“0x00”)
00
第六步,取上一步结果,计算 SHA-256 哈希值
第七步,取上一步结果,再计算一下 SHA-256 哈希值(哈哈)
第八步,取上一步结果的前4个字节(8位十六进制)
D61967F6
第九步,把这4个字节加在第五步的结果后面,作为校验(这就是比特币地址的16进制形态)。
00D61967F6
第十步,用base58表示法变换一下地址(这就是最常见的比特币地址形态)。