簡體   English   中英

支付提供商如何確認交易?

[英]How does payment providers confirm transactions?

我了解比特幣交易可以有多個輸入/輸出,但我對支付提供商如何確認在 3rd 方錢包中收到付款很感興趣?

我了解,一旦您進入錢包,您就會對交易有不同的看法,因此您可以向用戶提供有關該特定交易的清晰視圖 - 因為您知道哪些地址屬於該錢包。

但是,有沒有辦法猜測,或者更接近不屬於你擁有的錢包的交易價值的聚合? 所以我們可以清楚地向用戶展示:發送了多少,從哪里發送以及發送了多少。 好的,可能有多個輸出,我們必須顯示,但我們可以聚合它們並顯示交易的總和。 歸根結底,一旦您將交易 ID 發送給收件人(作為付款證明),他們就會想查看您的錢包、他們的錢包以及已支付的總金額。 不是 15 個輸入和另外 29 個輸出、確認和所有這些東西。

我明白了,這一切都非常重要,而且很重要。

但是我正在嘗試將一個資源管理器放在一起,它可以更容易地以簡單的方式(沒有所有這些輸入和輸出)顯示(向比特幣普通用戶)交易,但更簡單的是 From, To, Value, Fee ,就是這樣。

我知道,按照設計,區塊鏈不是這樣工作的。 無論如何,我想在這里詢問社區您是否對如何實現這一目標或接近這一目標有任何線索或想法:)

我對這方面的建議和想法持開放態度,干杯!

提前致謝,

但是,有沒有辦法猜測,或者更接近不屬於你擁有的錢包的交易價值的聚合?

是的當然。 在錢包中,您只需運行以下命令:

getrawtransaction <TXID> 1

對於任何翻譯 - 屬於您的錢包,或不屬於。

交易有數組vIn ,包含輸入列表,在此交易中花費。 每個輸入都花費了另一個事務的 output ,並且在該 vOut 中指定了vOut的值。 因此,為了計算輸入交易價值,您需要迭代交易的vIn 對於每個 In - 您需要提取對 (TXID,n),其中:

  • TXID - 事務的 ID,其 output 用在這里。
  • n - 該交易的vOut內的索引

此后,您必須獲取交易,提取適當的 vOut,並從該 vOut 中提取價值。

例如,讓我們查看 Emercoin 交易 TXID= 5cf7bb31bde158a12abb6d4d9ff7acd91a00fc71a2baca601405114322fa171d

當我們將運行命令時:

$ emc getrawtransaction 5cf7bb31bde158a12abb6d4d9ff7acd91a00fc71a2baca601405114322fa171d 1

我們將看到長 JSON output,包含:

 "vin": [
    {
      "txid": "ab16f439260f41d4e086428c78a5ef3fdb31002f4ce942e212b7c6071e52135c",
      "vout": 1,
      "scriptSig": {
        "asm": "3045022100e055effb7427af1a8504387fcdc8ed10859d029695e6a3d10d8e24794c9d55a802205ec2ceb8a937573b306f859bf34654edfc8b9c1716c008c0ae0e4b258b936b0b[ALL] 024d68c6511929667f80caae1f46a5cee3a307503a429f6ccc2ef52e306f966f87",
        "hex": "483045022100e055effb7427af1a8504387fcdc8ed10859d029695e6a3d10d8e24794c9d55a802205ec2ceb8a937573b306f859bf34654edfc8b9c1716c008c0ae0e4b258b936b0b0121024d68c6511929667f80caae1f46a5cee3a307503a429f6ccc2ef52e306f966f87"
      },
      "sequence": 4294967294
    }, 
    {
      "txid": "ab16f439260f41d4e086428c78a5ef3fdb31002f4ce942e212b7c6071e52135c",
      "vout": 0,
      "scriptSig": {
        "asm": "304402206c177d2be96bf666c147e0c13561d7d2cf915f8f8f1f16aeaa805383acc5572e02206104a70e6781d151476bd0345f27adaf896adb505f0fd285adcaddf4474f7de0[ALL] 03370ebd7dae0e80420ebf7d6326759517d8e58821337b476b2656f739bf0082de",
        "hex": "47304402206c177d2be96bf666c147e0c13561d7d2cf915f8f8f1f16aeaa805383acc5572e02206104a70e6781d151476bd0345f27adaf896adb505f0fd285adcaddf4474f7de0012103370ebd7dae0e80420ebf7d6326759517d8e58821337b476b2656f739bf0082de"
      },

如您所見,此交易有來自同一 TX 的 2 個輸入:

  • ab16f439260f41d4e086428c78a5ef3fdb31002f4ce942e212b7c6071e52135c, 1
  • ab16f439260f41d4e086428c78a5ef3fdb31002f4ce942e212b7c6071e52135c, 0

使用命令提取它們:

$ emc getrawtransaction ab16f439260f41d4e086428c78a5ef3fdb31002f4ce942e212b7c6071e52135c 1

你會看到 vOut 數組,包含值:

  "vout": [
    {
      "value": 0.000100,
      "n": 0,
      "scriptPubKey": {
        "asm": "2 OP_DROP 30354830384b35354449 9999 OP_2DROP 747970653d74657374696e670a2c706f736974696f6e5f69643d313031340a2c706f736974696f6e5f6e616d653dd09cd0bed0b4d0b5d0bbd0b820d0a1d092d09a2e20d09fd180d0b5d0b8d0bcd183d189d0b5d181d182d0b2d0b020d0b820d0bdd0b5d0b4d0bed181d182d0b0d182d0bad0b82028d0a4d0b8d0bd2e20d090d0bad0b0d0b4d0b5d0bcd0b8d18f290a2c76616c75653d36340a2c656e645f74696d653d313539363033323330313532300a2c636f6d70616e793d46696e61636164656d79 OP_DROP OP_DUP OP_HASH160 038411f3dfac30f42e999b87b165046bc205919f OP_EQUALVERIFY OP_CHECKSIG",
        "hex": "52750a30354830384b35354449020f276d4cc4747970653d74657374696e670a2c706f736974696f6e5f69643d313031340a2c706f736974696f6e5f6e616d653dd09cd0bed0b4d0b5d0bbd0b820d0a1d092d09a2e20d09fd180d0b5d0b8d0bcd183d189d0b5d181d182d0b2d0b020d0b820d0bdd0b5d0b4d0bed181d182d0b0d182d0bad0b82028d0a4d0b8d0bd2e20d090d0bad0b0d0b4d0b5d0bcd0b8d18f290a2c76616c75653d36340a2c656e645f74696d653d313539363033323330313532300a2c636f6d70616e793d46696e61636164656d797576a914038411f3dfac30f42e999b87b165046bc205919f88ac",
        "reqSigs": 1,
        "type": "name_pubkeyhash",
        "addresses": [
          "EHUVjZ2cyTqjvqxkg7h587XeEMAGpsi4sX"
        ]
      }
    }, 
    {
      "value": 1.509200,
      "n": 1,
      "scriptPubKey": {
        "asm": "OP_DUP OP_HASH160 085caddacb878333658194f96ec45b035be541d8 OP_EQUALVERIFY OP_CHECKSIG",
        "hex": "76a914085caddacb878333658194f96ec45b035be541d888ac",
        "reqSigs": 1,
        "type": "pubkeyhash",
        "addresses": [
          "EHv7vaRDN1q7b7XsmRYEugj6MuZpADbvYy"
        ]
      }
    }
  ],

將所有這些值相加,您將得到一個總的 TX 輸入值(輸出值可以更少,因為 TX FEE)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM