您的位置:网站首页 > DAO/DAPP钱包软件 > 正 文 比特币

是什么比特币的BCCAPI?

【作者:HXTOP】 来源:原创 日期:2012-4-9 10:33:15 人气: 标签:BCCAPI 【打印】

简而言之BCCAPI(位投币客户端API),允许你创建一个轻量级的Java安全Bitcoin客户。BCCAPI连接到服务器保存块链,并跟踪客户的钱包余额。服务器只拥有公共密钥的客户知识,而且是在没有花客户的钱包自有资金。

基于BCCAPI为客户的特点:

  • 带宽。客户端只发送或接收数据时:
    • 在日志
    • 取得了平衡
    • 将公共密钥的钱包
    • 发送bitcoins

  • 安全
    • 只有客户持有的钱包的私钥。
    • 服务器只持有相应的公共密钥,可以不花资金从钱包。
    • 管理私钥取决于客户端的实现。BCCAPI提供一个开源的Java库,提供客户端:
      • 确定性来自强烈的种子,所有键的功能。这样可以减少敏感数据,客户端需要处理32个字节的数量。
      • 功能产生强烈的种子,从任意长度的口令和盐。种子产生几轮scrypt keystretching。scrypt的设计是远远比PBKDF2的或bcrypt如替代功能对硬件的蛮力攻击安全。(http://www.tarsnap.com/scrypt/scrypt.pdf)这个过程需要相当数量的小型设备上的时间,但可能是一个一次性的过程,客户端初始化的一部分。
      • 种子使用任意长度的密码加密功能。如果有人得到加密种子的副本,他们将不得不以暴力破解盗窃被发现之前,资金移到别处。
    • SimpleClient是一个开源示例使用这些功能的客户端,实现了功能齐全,安全性好,重量轻Bitcoin客户。其他的客户可以选择使用随机生成的种子,而不是从口令生成的种子,并结合种子备份的一种手段。这是完全由客户端。
    • 所有客户端 - 服务器通信使用HTTPS保护。
  • 登录
    • 客户端有一个可确定性就像钱包私钥的私人帐户的关键。当登录到服务器的客户端呈现其公共帐户的关键,并获得一个随机的挑战。客户端哈希的挑战和标志使用其私人帐户的关键。随着公众的帐户密钥签署的挑战是返回到服务器。在第一次登录,创建一个新的帐户,这是与客户端的公共帐户的关键。需要创建一个帐户是唯一一个公开密钥,并使用相应的私钥对随机挑战的能力,使签名。没有其他的个人信息或电子邮件地址。
  • 发送硬币
    • 发送硬币时,使用以下过程:
      1. 客户端请求从服务器的Bitcoins发送硬币的形式和接收地址。
      2. 服务器收集来自客户的钱包的未动用的交易资金,并创建一个无符号的交易的任何变化,被送回客户端的地址之一。它在插入硬币的形式发送到客户端发送的任何交易与交易输出资金。
      3. 客户端验证,输入资金,输出资金和接收符合什么要求。
      4. 客户签署交易,并把它发送到服务器。
      5. 服务器验证签名和交易广播上bitcoin网络。
  • 备份
    • 如果密码短语+盐的做法,是用来生成种子有没有必要备份客户端上的任何东西。如果加密的种子文件丢失,它可以重新从最初的一个不同的设备上的密码和盐。
    • 如果用确定性的密钥生成一个随机生成的种子只有32字节的种子需要备份一劳永逸。种子可以选择离开客户端之前被加密。

在BCCAPI提供所有上述记录容易阅读的源代码,是一个完美的比赛,如果你想要写的发送和接收Bitcoins重量轻,安全的Andr​​iod应用程序。

在服务器端

BCCAPI服务器正在运行在Rackspace,并可以同时处理多个帐户。每个帐户的服务器拥有一个公共密钥,这是与所有的公共密钥加入到该帐户的钱包。服务器连接到Bitcoin网络和保持块链的轨道,和所有簿记必要保持最新的钱包。

常见问题

  • 问:服务器有我的钱包呢?
  • 答:BCCAPI基本上分成两个你的钱包。
    1. 一个公众的一部分,这是在服务器端,它允许服务器来保持跟踪你的钱包的交易输入和输出。为了这个目的,它需要知道你的钱包的公钥。
    2. 一个私人的一部分,这是在客户端上。客户端的一部分是在控制的私钥,它允许你签署交易和花bitcoins之一。
  • 问:服务器可以度过我的bitcoins?
  • 答:服务器是在没有签署关联交易,你的钱包。
  • 问:服务器可以做什么邪恶?
  • 答:虽然服务器可以不花您的bitcoins,有一些邪恶的服务器可以做:
    1. 服务器可以躺在钱包的平衡,使你认为它是高于或低于它到底是什么。
    2. 服务器可以使你相信你已将一些bitcoins,,,,而它只是没有转发交易网络。
    3. 服务器可以尝试让你签署一项交易,已经花了具有输入。在这种情况下的交易将是无效的,并通过网络拒绝。你不会失去任何bitcoins。
    4. 服务器可以尝试让你签署一项交易,寄钱给别人比你问。总是在客户端验证,交易签署之前预期的收件人,所以在这种情况下,客户端将拒绝交易。
    5. 服务器可以脱机,再也不会回来。
在所有上述情况下,你会不高兴,希望所有撤离您bitcoins的到别的地方。由于服务器没有超过控制bitcoins这不是一个问题。所有的私钥确定性产生你的密码和盐。你只需运行工具生成一个普通bitcoin客户wallet.dat文件。
  • 问:哪里可以找到这个工具?
  • 答:它的bccapi.jar的一部分。寻找com.bccapi.tool.WalletExporter.java,它在纯文本中的所有打印出您的私钥。接下来的事情是他们导入成wallet.dat文件。这是可以做到使用pywallet。简单易用的工具,是在进步。
  • 问:是否有地址,我可以使用的数量限制吗?
  • 答:现在你可以与一个帐户关联的地址数限制为10。这是限制在服务器端的压力。
  • 问:这对我的服务成本是什么?
  • 答:没有。运行和维护的服务器端,不费钱,但希望捐款能保持该法案,从打桩。展望未来,我们可能会增加选项获得连接到优先级服务器,它提供了更快的服务支付一小笔费用。
返回顶部】【关闭窗口 风险提示:本站分享转载的信息均来自互联网,且仅供阅读参考,不作为具体投资的依据,据此入市,风险自担。本站所有内容涉及到的“货币”字眼需谨慎研判,我们维护各国法币的合法地位,同时数字资产具有货币的某些属性,目前是不能替代任何国家的法定货币的,请谨慎理解投资并严格遵守各国法律法规!详见本站[免责声明]。】
【读完这篇文章后,可否发表您的感受?】
0
0
0
0
0
0
0
0
本文网址:
安全联盟站长平台 互联网举办平台 公共信息安全网监 中国网安 赛门铁克安全响应中心