<oembed><type>rich</type><version>1.0</version><author_name>npub1f2nvlx49er5c7sqa43src6ssyp6snd4qwvtkwm5avc2l84cs84esecrwet</author_name><author_url>https://nostr.ae/npub1f2nvlx49er5c7sqa43src6ssyp6snd4qwvtkwm5avc2l84cs84esecrwet</author_url><provider_name>njump</provider_name><provider_url>https://nostr.ae</provider_url><html>📅 Original date posted:2017-09-28&#xA;📝 Original message:On Fri, Sep 29, 2017 at 1:50 AM, Peter Todd &lt;pete at petertodd.org&gt; wrote:&#xA;&gt; What do you mean by &#34;an embedded amount&#34;?&#xA;&#xA;I ask you to pay 1 Bitcoin to bc1blahblah.&#xA;&#xA;...you make a typo, or a poorly placed cosmic ray switches it in your&#xA;ram to bc1blohblahbah.   No problem, it&#39;ll get rejected. (even if the&#xA;cosmic ray happens just before signing... if the software is robust&#xA;it&#39;ll reencode from the signed transaction and check against the&#xA;original input.&#xA;&#xA;But if instead the typo converts it to 2 Bitcoins or the cosmic ray&#xA;converts it to 2.34217728... the payment will happily go through,&#xA;assuming your wallet had enough, and you&#39;re stuck asking me to refund&#xA;you the excess.&#xA;&#xA;Sure, you can put amounts in URIs and whatnot, but they&#39;re not error&#xA;protected... so there will always be unprotected poritons where a&#xA;glitch can radically change the amount.&#xA;&#xA;In many cases you know exactly what amount you&#39;re asking for when you&#xA;generate an address. There isn&#39;t any reason the amount couldn&#39;t be&#xA;covered by the addresses checksum in those cases.&#xA;&#xA;There are a couple ways of doing that... e.g. adding it explicitly,&#xA;where the checksum includes it but not the address itself; so it&#xA;errors out if you get it wrong. But this is unfortunate because it&#xA;can&#39;t tell you the expected amount when its wrong.   Another way would&#xA;be to embed the amount in the address, and then the software can tell&#xA;you the amount the address was expecting and not let you proceed until&#xA;they match.</html></oembed>