Bitcoind

我可以通過比特幣 bip 70 URI 傳遞值嗎?

  • December 13, 2014

是否可以將諸如 BTC 金額之類的參數添加到 bip 70 URI,例如:

bitcoin:?r=http://127.0.0.1:8000/paymentobject/?amount=10

我已經嘗試過向後兼容的 URI:

bitcoin:?amount=10&r=http://127.0.0.1:8000/paymentobject/

但是客戶端似乎沒有註冊除 ’ r= ’ 參數之外的任何內容。

非常感謝任何幫助:)


編輯:從 django views.py 添加功能以獲得額外的解釋-

def protoresponse(request):
   xpo = payments_pb2.ParseFromString(request)

   returnaddress = xpo.Payment.refund_to
   transactions = xpo.transactions
   memo = xpo.Payment.memo

   xpa = payments_pb2.PaymentACK
   xpa.payment = xpo.SerializeToString()
   xpa.memo = u'success, i think'
   return HttpResponse(xpa.SerializeToString(), content_type="application/octet-stream")

注意,函式的定義是protoresponse因為我們optional string payment_url = 6;在 payment.proto 文件中有。

在上面的評論中引用“Nate Eldredge”:

BIP 70 的重點是所有敏感資訊,包括地址,僅通過 HTTPS 發送(因此您的 URL 需要是 https,而不是 http,並且您需要在 localhost 上執行啟用 SSL 的網路伺服器)。這樣一來,中間人攻擊者就不能,例如,更改支付地址,從而將付款轉給攻擊者。

BIP70 的目的是提供一個輔助 URL,當您的客戶端錢包訪問該 URL 時,它將提供進行交易的所有詳細資訊,以及更多資訊。它被設計為連結到 POS 系統,該系統將生成資訊並生成唯一的 URL。

在標準比特幣 URI 方案中,可以傳遞金額,但您還需要傳遞收款地址。

引用自:https://bitcoin.stackexchange.com/questions/25830