- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在编写一个比特币应用程序并希望实现“取消”功能。 Reddit 上的所有引用资料都表明,如果发生了 3 次以下的确认,从技术上讲,可以停止付款。也许只有一两分钟可用,但仍然如此。
我在比特币 api 文档中找不到任何引用资料来演示如何做到这一点。
我知道出于这个原因,一个山寨币故意使用 60 分钟的间隔来确认。
有谁知道这是怎么做到的?
最佳答案
是否可以取消比特币交易...
... 这是 还没有播出?
是的,显然这是可能的。我建议你在你的比特币应用程序中选择这种方法,向用户显示一个确认屏幕几秒钟,其中包含有关交易的信息和一些按钮,上面写着 cancel
和 confirm
. @nahtnam 提出了 60 分钟的延迟,考虑到您可能无法访问互联网或希望交易尽快出现在区块链中,这太过分了。
... 这是 已经播出了?
也许... 要取消此类交易,您需要自己创建一个区块,将原始交易的输入移动到您自己的地址之一。 (有效地使原始交易无效。)但是,截至目前,创建一个区块需要花费数千美元,并且不能保证找到一个区块。
另一种可能性是广播另一笔交易,采用与原始交易相同的输入,并将输出定位在您自己的地址/钱包之一。为了激励矿工加入此交易而不是原始交易,您增加了交易费用。然而,一些客户可能不会将这种双花交易转发给矿工,而一些矿工可能会拒绝双花交易并包含原始交易(他们首先收到的交易)。 (参见 Bitpay encountered zero double spent in the first 10000 transactions. 和 Cancelling an unconfirmed transaction by @theymos (bitcoin.stackexchange))
有一些技巧可以通过创建所谓的“非标准”交易来向矿工隐藏您的初始交易。或者,交易可能包括非常低的费用,以使矿工出于经济原因拒绝它。 (c.f. Significant losses by double-spending unconfirmed transactions (bitcoin-dev mailing list) 和 Double-spending by @petertodd (Reddit) )但是,如果接收者仔细查看,这会使您的交易看起来很可疑,并且他们很可能会要求您等到它有一个或多个确认。
最后,如果您在原始交易上设置一个标志来指示可替换性,也是可能的。然后,您可以通过在替换交易中包含相同(一个或多个)输入来将原始交易替换为另一个交易。此外,您必须支付更高的费用。但是,并非所有矿工都遵守此标志,有些矿工可能仍包含您的初始交易。 (参见引用 BIP 125: Opt-in Full Replace-by-Fee Signaling)
... 这是 包含在一个或多个块中?
不,非常不可能甚至不可能。 您需要控制大量的散列能力来创建 fork ,方法是重建从原始交易发生之前的区块开始并以 height = (current public blockchain height) + 1
结束的区块的区块链。 .因此,“你拥有的确认越多,像这样的攻击就越困难、昂贵和不可靠。”
Source: @DannyHamilton (Bitcointalk)
Satoshi Nakamoto 的比特币论文解释说,当你控制超过 50% 的散列能力时,这总是可能的,如果你控制不到 50% 的散列能力,则概率小于 1,但大于 0。见 Bitcoin: A Peer-to-Peer Electronic Cash System .
但是,如果你控制了大量的散列能力,你很可能不会通过撤销交易和间接损害你的挖矿收入流来破坏对比特币的信任。
关于bitcoin - 取消比特币交易,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20929564/
我正在修改比特币源代码,并试图理解 testnet 模式下对等发现机制的确切工作方式,为此我做了以下更改: 禁用 DNS 种子发现以强制 bitcoind 回退以连接到硬编码节点。 将默认的硬编码节点
我正在编写一个比特币应用程序并希望实现“取消”功能。 Reddit 上的所有引用资料都表明,如果发生了 3 次以下的确认,从技术上讲,可以停止付款。也许只有一两分钟可用,但仍然如此。 我在比特币 ap
我可以将流程可视化的唯一方法是:在区 block 链中搜索与正在处理的交易具有相同源地址的所有交易,将它们全部加起来(包括正在处理的 trx)以验证它们加起来更少小于或等于源交易金额。 对每一笔比特币
我需要开发一个 Web 界面来显示以太坊和特定地址的最新交易。 我正在使用 web3 javascript 界面,但我无法找到获取最新交易的方法。 有什么办法吗? 最佳答案 您正在寻找 eth_get
我刚开始使用以太坊编写智能合约。 根据官方文档,编译智能合约需要删除合约源代码中的所有换行符: var greeterSource = 'contract mortal { address owner
我得到的最接近的是来自blockchain.info https://blockchain.info/qr?data=1Agb153xWsbqS9vt8gP4vBFKHkAchLMdSX&size=2
已结束。此问题正在寻求书籍、工具、软件库等的推荐。它不满足Stack Overflow guidelines 。目前不接受答案。 我们不允许提出寻求书籍、工具、软件库等推荐的问题。您可以编辑问题,以便
我正在尝试使用获取交易信息 bitcoind gettransaction \ 9962d5c704ec27243364cbe9d384808feeac1c15c35ac790dffd1e9298
我对两个点对点客户端如何像比特币客户端一样在网状网络中相互连接很感兴趣。 那么当我启动比特币时,我的客户如何加入所有其他人?它如何找到第一个同行(谁可能知道其他人在哪里)? 谢谢! 最佳答案 比特币客
我有两台 PC 和 bitcoin-qt。在第一台 PC 上,我有一个用我的密码 AAAAAAA 加密的钱包,在我的第二台 PC 上,我有一个用其他密码 BBBBBBBB 加密的钱包。我想在我的第一台
我如何检查比特币地址(任何,不一定是我的)的余额,比如说在 Java 应用程序(或任何其他语言)中? 我需要类似 blockchain.info 上的功能或 biteasy.com但我不想使用他们的
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 2年前关闭。 Improve thi
我正在使用 Coinbase API。我的应用程序通过回调生成新的接收地址。然而,当 BTC 到达这些地址中的任何一个时,回调似乎没有被触发。 我已经验证确实为新地址创建了回调,并且我的应用程序会正确
在哪里可以找到比特币实现(P2PKH 地址编码)之后每种货币的版本字节列表(地址前缀)? 我浏览了官方的比特币 github 和 BIP,但找不到任何相关信息。此处仅列出货币 ID。 我在 Walle
我创建了我的新altercoin,但是当我第一次运行它时,它已经显示:“5周后没有可用的块源”。 我在局域网中启动另一台计算机,它们连接成功。 我使用Datacoin的代码。 static const
我目前正在使用 SSD 在 Linux 上运行 geth mit,并且希望将部分(或全部)链数据移动到外部驱动器以节省空间。 我知道有一个命令行选项可以移动数据目录: geth --datadir
我正在寻找一个将验证 58 比特币私钥的正则表达式。我为公共(public)地址找到了这个: /^[13n][1-9A-Za-z][^OIl]{20,40}/ 但我不知道私钥的要求是什么。 最佳答案
我正在运行一个私有(private)比特币网络,为此我将两个 block 之间的目标时间更改为 12 秒,并将难度调整为 25 个 block 间隔。我用 50 个节点运行了大约 4 个小时的网络。在
我正在为 Android 应用程序寻找一个轻量级的比特币库。 我基本上需要一个比特币库,它可以让我创建一个私钥/公钥对(或者最好是一个带有可以序列化的 key 的钱包)。能够为交易设置最合适的费用并将
无论如何通过使用API RPC到bitcoind列出来自给定地址的所有交易?实际上,我正在使用 btcd 并且大多数非钱包功能与 bitcoind 相同,但我找不到任何方法来做到这一点。 最佳答案
我是一名优秀的程序员,十分优秀!