<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <updated></updated>
  <generator>https://nostr.ae</generator>

  <title>Nostr notes by </title>
  <author>
    <name></name>
  </author>
  <link rel="self" type="application/atom+xml" href="https://nostr.ae/npub1spe4rkz350zpn7h2pz07t8sdwgt440zmx9k530afwj6gmq7q0lksh8lz2h.rss" />
  <link href="https://nostr.ae/npub1spe4rkz350zpn7h2pz07t8sdwgt440zmx9k530afwj6gmq7q0lksh8lz2h" />
  <id>https://nostr.ae/npub1spe4rkz350zpn7h2pz07t8sdwgt440zmx9k530afwj6gmq7q0lksh8lz2h</id>
  <icon></icon>
  <logo></logo>




  <entry>
    <id>https://nostr.ae/nevent1qqs06r07em2tewmvd5jn7h5qjpgcktfzepd8dtat5xrelyakfv3nz5gzyzq8x5wc2x3ugx06agyflev7p4epwk4utvck6j9l496tfrvrcpl76nhyz63</id>
    
      <title type="html">📅 Original date posted:2018-01-13 📝 Original message:The ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs06r07em2tewmvd5jn7h5qjpgcktfzepd8dtat5xrelyakfv3nz5gzyzq8x5wc2x3ugx06agyflev7p4epwk4utvck6j9l496tfrvrcpl76nhyz63" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs2qhkmj99alauynxj6tk84sqlylpuvq5q0z2pkhhwlamzlxh9q96g5948yt&#39;&gt;nevent1q…48yt&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2018-01-13&lt;br/&gt;📝 Original message:The same problems exist for users of whole disk encrypted operating systems. Once the device (or, the initial password authentication) is found, the adversary knows that there is something to see. The objective of plausible deniability is to present some acceptable (plausible) alternative while keeping the actual hidden (denied).&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;If the adversary does not believe you, you do indeed risk everything.&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;Regards,&lt;br/&gt;&lt;br/&gt;Damian Williamson&lt;br/&gt;&lt;br/&gt;________________________________&lt;br/&gt;From: bitcoin-dev-bounces at lists.linuxfoundation.org &amp;lt;bitcoin-dev-bounces at lists.linuxfoundation.org&amp;gt; on behalf of nullius via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt;&lt;br/&gt;Sent: Friday, 12 January 2018 10:06:33 PM&lt;br/&gt;To: Peter Todd; Bitcoin Protocol Discussion&lt;br/&gt;Subject: [bitcoin-dev] Plausible Deniability (Re: Satoshilabs secret shared private key scheme)&lt;br/&gt;&lt;br/&gt;On 2018-01-12 at 09:50:58 &#43;0000, Peter Todd &amp;lt;pete at petertodd.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;On Tue, Jan 09, 2018 at 12:43:48PM &#43;0000, Perry Gibson wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;Trezor&amp;#39;s &amp;#34;plausible deniability&amp;#34; scheme could very well result in you&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;going to jail for lying to border security, because it&amp;#39;s so easy for&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;them to simply brute force alternate passwords based on your seeds.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;With that, they have proof that you lied to customs, a serious&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;offense.&lt;br/&gt;&amp;gt;&amp;gt;The passphrase scheme as I understand it allows a maximum of 50&lt;br/&gt;&amp;gt;&amp;gt;characters to be used.  Surely even with the HD seed, that search&lt;br/&gt;&amp;gt;&amp;gt;space is too large to brute force.  Or is there a weakness in the&lt;br/&gt;&amp;gt;&amp;gt;scheme I haven&amp;#39;t clocked?&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;While passphrases *can* be long, most user&amp;#39;s aren&amp;#39;t going to understand&lt;br/&gt;&amp;gt;the risk. For example, Trezors blog(1) doesn&amp;#39;t make it clear that the&lt;br/&gt;&amp;gt;passphrases could be bruteforced and used as evidence against you, and&lt;br/&gt;&amp;gt;even suggests the contrary:  [...quote...]&lt;br/&gt;&lt;br/&gt;I despise the term “plausible deniability”; and that’s really the wrong&lt;br/&gt;term to use in this discussion.&lt;br/&gt;&lt;br/&gt;“Plausible deniability” is a transparent excuse for explaining away an&lt;br/&gt;indisputable fact which arouses suspicion—when you got some serious&lt;br/&gt;’splain’ to do.  This is usually used in the context of some pseudolegal&lt;br/&gt;argument about introducing “reasonable doubt”, or even making “probable&lt;br/&gt;cause” a wee bit less probable.&lt;br/&gt;&lt;br/&gt;“Why yes, officer:  I was seen carrying an axe down the street near the&lt;br/&gt;site of an axe murder, at approximately the time of said axe murder.&lt;br/&gt;But I do have a fireplace; so it is plausible that I was simply out&lt;br/&gt;gathering wood.”&lt;br/&gt;&lt;br/&gt;I rather suspect the concept of “plausible deniability” of having been&lt;br/&gt;invented by a detective or agent provocateur.  There are few concepts&lt;br/&gt;more useful for helping suspects shoot themselves in the foot, or&lt;br/&gt;frankly, for entrapping people.&lt;br/&gt;&lt;br/&gt;One of the worst examples I have seen is in discussions of Monero,&lt;br/&gt;whereby I’ve seen proponents claim that even under the worst known&lt;br/&gt;active attacks, their mix scheme reduces transaction linking to a&lt;br/&gt;maximum of 20–40% probability.  “That’s not good enough to convince a&lt;br/&gt;jury!”  No, but it is certainly adequate for investigators to identify&lt;br/&gt;you as a person of interest.  Then, your (mis)deeds can be subjected to&lt;br/&gt;powerful confirmation attacks based on other data; blockchains do not&lt;br/&gt;exist in isolation.  I usually stay out of such discussions; for I have&lt;br/&gt;no interest in helping the sorts of people whose greatest concern in&lt;br/&gt;life is what story to foist on a jury.&lt;br/&gt;&lt;br/&gt;In the context of devices such as Trezor, what is needed is not&lt;br/&gt;“plausible deniability”, but rather the ability to obviate any need to&lt;br/&gt;deny anything at all.  I must repeat, information does not exist in&lt;br/&gt;isolation.&lt;br/&gt;&lt;br/&gt;If you are publicly known to be deepy involved in Bitcoin, then nobody&lt;br/&gt;will believe that your one-and-only wallet contains only 0.01 BTC.&lt;br/&gt;That’s not even “plausible”.  But if you have overall privacy practices&lt;br/&gt;which leave nobody knowing or suspecting that you have any Bitcoin at&lt;br/&gt;all, then there is nothing to “deny”; and should a Trezor with&lt;br/&gt;(supposedly) 0.01 BTC be found in your possession, that’s much better&lt;br/&gt;than “plausible”.  It’s completely unremarkable.&lt;br/&gt;&lt;br/&gt;Whereas if you are known or believed to own large amounts of BTC, a&lt;br/&gt;realistic bad guy’s response to your “decoy” wallet could be, “I don’t&lt;br/&gt;believe you; and it costs me nothing to keep beating you with rubber&lt;br/&gt;hose until you tell me the *real* password.”&lt;br/&gt;&lt;br/&gt;It could be worse, too.  In a kidnapping scenario, the bad guys could&lt;br/&gt;say, “I don’t believe you.  Hey, I also read Trezor’s website about&lt;br/&gt;‘plausible deniability’.  Now, I will maim your kid for life just to&lt;br/&gt;test whether you told me the *real* password.  And if you still don’t&lt;br/&gt;tell me the real password after you see that little Johnny can no longer&lt;br/&gt;walk, then I will kill him.”&lt;br/&gt;&lt;br/&gt;The worst part is that you have no means of proving that you really&lt;br/&gt;*did* give the real password.  Indeed, it can be proved if you’re lying&lt;br/&gt;by finding a password which reveals a hidden wallet—but *you* have no&lt;br/&gt;means of affirmatively proving that you are telling the truth!  If the&lt;br/&gt;bad guys overestimated your riches (or if they’re in a bad mood), then&lt;br/&gt;little Johnny is dead either way.&lt;br/&gt;&lt;br/&gt;In a legalistic scenario, if “authorities” believe you have 1000 BTC and&lt;br/&gt;you only reveal a password for 0.01 BTC, the likely response will not be&lt;br/&gt;to let you go.  Rather, “You will now sit in jail until you tell the&lt;br/&gt;*real* password.”  And again:  You have no means of proving that you did&lt;br/&gt;give the real password!&lt;br/&gt;&lt;br/&gt;“Plausible deniability” schemes can backfire quite badly.&lt;br/&gt;&lt;br/&gt;&amp;gt;Also note how this blog doesn&amp;#39;t mention anti-forensics: the wallet&lt;br/&gt;&amp;gt;software itself may leave traces of the other wallets on the computer.&lt;br/&gt;&amp;gt;Have they really audited it sufficiently to be sure this isn&amp;#39;t the&lt;br/&gt;&amp;gt;case?&lt;br/&gt;&lt;br/&gt;What about data obtained via the network?  I don’t *only* refer to&lt;br/&gt;dragnet surveillance.  See for but one e.g., Goldfelder, et al., “When&lt;br/&gt;the cookie meets the blockchain:  Privacy risks of web payments via&lt;br/&gt;cryptocurrencies” &lt;a href=&#34;https://arxiv.org/abs/1708.04748&#34;&gt;https://arxiv.org/abs/1708.04748&lt;/a&gt;  Your identity can be&lt;br/&gt;tied to your wallet all sorts of ways, any of which could be used to&lt;br/&gt;prove that you have more Bitcoin than you’re revealing.  Do you know&lt;br/&gt;what databases of cross-correlated analysis data customs agents have&lt;br/&gt;immediate access to nowadays—or will, tomorrow?  I don’t.&lt;br/&gt;&lt;br/&gt;In the scenario under discussion, that may not immediately prove “beyond&lt;br/&gt;a reasonable doubt” that you lied specifically about your Trezor.  But&lt;br/&gt;it could give plenty of cause to keep you locked up in a small room&lt;br/&gt;while your hard drive is examined for evidence that Trezor apps handled&lt;br/&gt;*addresses already known to be linked to you*.  Why even bother with&lt;br/&gt;bruteforce?  Low-hanging fruit abound.&lt;br/&gt;&lt;br/&gt;&amp;gt;1) &lt;a href=&#34;https://blog.trezor.io/hide-your-trezor-wallets-with-multiple-passphrases-f2e0834026eb&#34;&gt;https://blog.trezor.io/hide-your-trezor-wallets-with-multiple-passphrases-f2e0834026eb&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;--&lt;br/&gt;nullius at nym.zone | PGP ECC: 0xC2E91CD74A4C57A105F6C21B5A00591B2F307E0C&lt;br/&gt;Bitcoin: bc1qcash96s5jqppzsp8hy8swkggf7f6agex98an7h | (Segwit nested:&lt;br/&gt;3NULL3ZCUXr7RDLxXeLPDMZDZYxuaYkCnG)  (PGP RSA: 0x36EBB4AB699A10EE)&lt;br/&gt;“‘If you’re not doing anything wrong, you have nothing to hide.’&lt;br/&gt;No!  Because I do nothing wrong, I have nothing to show.” — nullius&lt;br/&gt;-------------- next part --------------&lt;br/&gt;An HTML attachment was scrubbed...&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20180113/f8efb9d9/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20180113/f8efb9d9/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T18:09:44Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs853zjfq2janhzzcpmpxmx8nstmckwvvtznkumazw8s86pezl23xqzyzq8x5wc2x3ugx06agyflev7p4epwk4utvck6j9l496tfrvrcpl76a7vp9d</id>
    
      <title type="html">📅 Original date posted:2017-12-15 📝 Original message:I ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs853zjfq2janhzzcpmpxmx8nstmckwvvtznkumazw8s86pezl23xqzyzq8x5wc2x3ugx06agyflev7p4epwk4utvck6j9l496tfrvrcpl76a7vp9d" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs2sxnpg7rvmdp4f6u4n0g8t0tpshp3d26gra7d9v45n83km7z5sjqsjlulw&#39;&gt;nevent1q…lulw&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-12-15&lt;br/&gt;📝 Original message:I should not take it that the lack of critical feedback to this revised proposal is a glowing endorsement. I understand that there would be technical issues to resolve in implementation, but, are there no fundamental errors?&lt;br/&gt;&lt;br/&gt;I suppose that it if is difficult to determine how long a transaction has been waiting in the pool then, each node could simply keep track of when a transaction was first seen. This may have implications for a verify routine, however, for example, if a node was offline, how should it differentiate how long each transaction was waiting in that case? If a node was restarted daily would it always think that all transactions had been waiting in the pool less than one day If each node keeps the current transaction pool in a file and updates it, as transactions are included in blocks and, as new transactions appear in the pool, then that would go some way to alleviate the issue, apart from entirely new nodes. There should be no reason the contents of a transaction pool files cannot be shared without agreement as to the transaction pool between nodes, just as nodes transmit new transactions freely.&lt;br/&gt;&lt;br/&gt;It has been questioned why miners could not cheat. For the question of how many transactions to include in a block, I say it is a standoff and miners will conform to the proposal, not wanting to leave transactions with valid fees standing, and, not wanting to shrink the transaction pool. In any case, if miners shrink the transaction pool then I am not immediately concerned since it provides a more efficient service. For the question of including transactions according to the proposal, I say if it is possible to keep track of how long transactions are waiting in the pool so that they can be included on a probability curve then it is possible to verify that blocks conform to the proposal, since the input is a probability, the output should conform to a probability curve.&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;If someone has the necessary skill, would anyone be willing to develop the math necessary for the proposal?&lt;br/&gt;&lt;br/&gt;Regards,&lt;br/&gt;Damian Williamson&lt;br/&gt;&lt;br/&gt;________________________________&lt;br/&gt;From: bitcoin-dev-bounces at lists.linuxfoundation.org &amp;lt;bitcoin-dev-bounces at lists.linuxfoundation.org&amp;gt; on behalf of Damian Williamson via bitcoin-dev &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt;&lt;br/&gt;Sent: Friday, 8 December 2017 8:01 AM&lt;br/&gt;To: bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;Subject: [bitcoin-dev] BIP Proposal: Revised: UTPFOTIB - Use Transaction Priority For Ordering Transactions In Blocks&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;Good afternoon,&lt;br/&gt;&lt;br/&gt;The need for this proposal:&lt;br/&gt;&lt;br/&gt;We all must learn to admit that transaction bandwidth is still lurking as a serious issue for the operation, reliability, safety, consumer acceptance, uptake and, for the value of Bitcoin.&lt;br/&gt;&lt;br/&gt;I recently sent a payment which was not urgent so; I chose three-day target confirmation from the fee recommendation. That transaction has still not confirmed after now more than six days - even waiting twice as long seems quite reasonable to me. That transaction is a valid transaction; it is not rubbish, junk or, spam. Under the current model with transaction bandwidth limitation, the longer a transaction waits, the less likely it is ever to confirm due to rising transaction numbers and being pushed back by transactions with rising fees.&lt;br/&gt;&lt;br/&gt;I argue that no transactions are rubbish or junk, only some zero fee transactions might be spam. Having an ever-increasing number of valid transactions that do not confirm as more new transactions with higher fees are created is the opposite of operating a robust, reliable transaction system.&lt;br/&gt;&lt;br/&gt;Business cannot operate with a model where transactions may or may not confirm. Even a business choosing a modest fee has no guarantee that their valid transaction will not be shuffled down by new transactions to the realm of never confirming after it is created. Consumers also will not accept this model as Bitcoin expands. If Bitcoin cannot be a reliable payment system for confirmed transactions then consumers, by and large, will simply not accept the model once they understand. Bitcoin will be a dirty payment system, and this will kill the value of Bitcoin.&lt;br/&gt;&lt;br/&gt;Under the current system, a minority of transactions will eventually be the lucky few who have fees high enough to escape being pushed down the list.&lt;br/&gt;&lt;br/&gt;Once there are more than x transactions (transaction bandwidth limit) every ten minutes, only those choosing twenty-minute confirmation (2 blocks) will have initially at most a fifty percent chance of ever having their payment confirm. Presently, not even using fee recommendations can ensure a sufficiently high fee is paid to ensure transaction confirmation.&lt;br/&gt;&lt;br/&gt;I also argue that the current auction model for limited transaction bandwidth is wrong, is not suitable for a reliable transaction system and, is wrong for Bitcoin. All transactions must confirm in due time. Currently, Bitcoin is not a safe way to send payments.&lt;br/&gt;&lt;br/&gt;I do not believe that consumers and business are against paying fees, even high fees. What is required is operational reliability.&lt;br/&gt;&lt;br/&gt;This great issue needs to be resolved for the safety and reliability of Bitcoin. The time to resolve issues in commerce is before they become great big issues. The time to resolve this issue is now. We must have the foresight to identify and resolve problems before they trip us over.  Simply doubling block sizes every so often is reactionary and is not a reliable permanent solution. I have written a BIP proposal for a technical solution but, need your help to write it up to an acceptable standard to be a full BIP.&lt;br/&gt;&lt;br/&gt;I have formatted the following with markdown which is human readable so, I hope nobody minds. I have done as much with this proposal as I feel that I am able so far but continue to take your feedback.&lt;br/&gt;&lt;br/&gt;# BIP Proposal: UTPFOTIB - Use Transaction Priority For Ordering Transactions In Blocks&lt;br/&gt;&lt;br/&gt;## The problem:&lt;br/&gt;Everybody wants value. Miners want to maximize revenue from fees (and we presume, to minimize block size). Consumers need transaction reliability and, (we presume) want low fees.&lt;br/&gt;&lt;br/&gt;The current transaction bandwidth limit is a limiting factor for both. As the operational safety of transactions is limited, so is consumer confidence as they realize the issue and, accordingly, uptake is limited. Fees are artificially inflated due to bandwidth limitations while failing to provide a full confirmation service for all transactions.&lt;br/&gt;&lt;br/&gt;Current fee recommendations provide no satisfaction for transaction reliability and, as Bitcoin scales, this will worsen.&lt;br/&gt;&lt;br/&gt;Bitcoin must be a fully scalable and reliable service, providing full transaction confirmation for every valid transaction.&lt;br/&gt;&lt;br/&gt;The possibility to send a transaction with a fee lower than one that is acceptable to allow eventual transaction confirmation should be removed from the protocol and also from the user interface.&lt;br/&gt;&lt;br/&gt;## Solution summary:&lt;br/&gt;Provide each transaction with an individual transaction priority each time before choosing transactions to include in the current block, the priority being a function of the fee paid (on a curve), and the time waiting in the transaction pool (also on a curve) out to n days (n=60 ?). The transaction priority to serve as the likelihood of a transaction being included in the current block, and for determining the order in which transactions are tried to see if they will be included.&lt;br/&gt;&lt;br/&gt;Use a target block size. Determine the target block size using; current transaction pool size x ( 1 / (144 x n days ) ) = number of transactions to be included in the current block. Broadcast the next target block size with the current block when it is solved so that nodes know the next target block size for the block that they are building on.&lt;br/&gt;&lt;br/&gt;The curves used for the priority of transactions would have to be appropriate. Perhaps a mathematician with experience in probability can develop the right formulae. My thinking is a steep curve. I suppose that the probability of all transactions should probably account for a sufficient number of inclusions that the target block size is met although, it may not always be. As a suggestion, consider including some zero fee transactions to pad, highest BTC value first?&lt;br/&gt;&lt;br/&gt;**Explanation of the operation of priority:**&lt;br/&gt;&amp;gt; If transaction priority is, for example, a number between one (low) and one-hundred (high) it can be directly understood as the percentage chance in one-hundred of a transaction being included in the block. Using probability or likelihood infers that there is some function of random. If random (100) &amp;lt; transaction priority then the transaction is included.&lt;br/&gt;&lt;br/&gt;&amp;gt;To break it down further, if both the fee on a curve value and the time waiting on a curve value are each a number between one and one-hundred, a rudimentary method may be to simply multiply those two numbers, to find the priority number. For example, a middle fee transaction waiting thirty days (if n = 60 days) may have a value of five for each part  (yes, just five, the values are on a curve). When multiplied that will give a priority value of twenty-five, or,  a twenty-five percent chance at that moment of being included in the block; it will likely be included in one of the next four blocks, getting more likely each chance. If it is still not included then the value of time waiting will be higher, making for more probability. A very low fee transaction would have a value for the fee of one. It would not be until near sixty-days that the particular low fee transaction has a high likelihood of being included in the block.&lt;br/&gt;&lt;br/&gt;I am not concerned with low (or high) transaction fees, the primary reason for addressing the issue is to ensure transactional reliability and scalability while having each transaction confirm in due time.&lt;br/&gt;&lt;br/&gt;## Pros:&lt;br/&gt;* Maximizes transaction reliability.&lt;br/&gt;* Fully scalable.&lt;br/&gt;* Maximizes possibility for consumer and business uptake.&lt;br/&gt;* Maximizes total fees paid per block without reducing reliability; because of reliability, in time confidence and overall uptake are greater; therefore, more transactions.&lt;br/&gt;* Market determines fee paid for transaction priority.&lt;br/&gt;* Fee recommendations work all the way out to 30 days or greater.&lt;br/&gt;* Provides additional block entropy; greater security since there is less probability of predicting the next block.&lt;br/&gt;&lt;br/&gt;## Cons:&lt;br/&gt;* Could initially lower total transaction fees per block.&lt;br/&gt;* Must be first be programmed.&lt;br/&gt;&lt;br/&gt;## Solution operation:&lt;br/&gt;This is a simplistic view of the operation. The actual operation will need to be determined in a spec for the programmer.&lt;br/&gt;&lt;br/&gt;1. Determine the target block size for the current block.&lt;br/&gt;2. Assign a transaction priority to each transaction in the pool.&lt;br/&gt;3. Select transactions to include in the current block using probability in transaction priority order until the target block size is met.&lt;br/&gt;5. Solve block.&lt;br/&gt;6. Broadcast the next target block size with the current block when it is solved.&lt;br/&gt;7. Block is received.&lt;br/&gt;8. Block verification process.&lt;br/&gt;9. Accept/reject block based on verification result.&lt;br/&gt;10. Repeat.&lt;br/&gt;&lt;br/&gt;## Closing comments:&lt;br/&gt;It may be possible to verify blocks conform to the proposal by showing that the probability for all transactions included in the block statistically conforms to a probability distribution curve, *if* the individual transaction priority can be recreated. I am not that deep into the mathematics; however, it may also be possible to use a similar method to do this just based on the fee, that statistically, the blocks conform to a fee distribution. Any zero fee transactions would have to be ignored. This solution needs a clever mathematician.&lt;br/&gt;&lt;br/&gt;I implore, at the very least, that we use some method that validates full transaction reliability and enables scalability of block sizes. If not this proposal, an alternative.&lt;br/&gt;&lt;br/&gt;Regards,&lt;br/&gt;Damian Williamson&lt;br/&gt;-------------- next part --------------&lt;br/&gt;An HTML attachment was scrubbed...&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20171215/dc268c35/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20171215/dc268c35/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T18:08:23Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs2sxnpg7rvmdp4f6u4n0g8t0tpshp3d26gra7d9v45n83km7z5sjqzyzq8x5wc2x3ugx06agyflev7p4epwk4utvck6j9l496tfrvrcpl76dps3jx</id>
    
      <title type="html">📅 Original date posted:2017-12-07 📝 Original message:Good ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs2sxnpg7rvmdp4f6u4n0g8t0tpshp3d26gra7d9v45n83km7z5sjqzyzq8x5wc2x3ugx06agyflev7p4epwk4utvck6j9l496tfrvrcpl76dps3jx" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs00yuhpta3p8855knk5ynnpf03flvmz0t8ggyywalcmnmzk6etl6sla4xz2&#39;&gt;nevent1q…4xz2&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-12-07&lt;br/&gt;📝 Original message:Good afternoon,&lt;br/&gt;&lt;br/&gt;The need for this proposal:&lt;br/&gt;&lt;br/&gt;We all must learn to admit that transaction bandwidth is still lurking as a serious issue for the operation, reliability, safety, consumer acceptance, uptake and, for the value of Bitcoin.&lt;br/&gt;&lt;br/&gt;I recently sent a payment which was not urgent so; I chose three-day target confirmation from the fee recommendation. That transaction has still not confirmed after now more than six days - even waiting twice as long seems quite reasonable to me. That transaction is a valid transaction; it is not rubbish, junk or, spam. Under the current model with transaction bandwidth limitation, the longer a transaction waits, the less likely it is ever to confirm due to rising transaction numbers and being pushed back by transactions with rising fees.&lt;br/&gt;&lt;br/&gt;I argue that no transactions are rubbish or junk, only some zero fee transactions might be spam. Having an ever-increasing number of valid transactions that do not confirm as more new transactions with higher fees are created is the opposite of operating a robust, reliable transaction system.&lt;br/&gt;&lt;br/&gt;Business cannot operate with a model where transactions may or may not confirm. Even a business choosing a modest fee has no guarantee that their valid transaction will not be shuffled down by new transactions to the realm of never confirming after it is created. Consumers also will not accept this model as Bitcoin expands. If Bitcoin cannot be a reliable payment system for confirmed transactions then consumers, by and large, will simply not accept the model once they understand. Bitcoin will be a dirty payment system, and this will kill the value of Bitcoin.&lt;br/&gt;&lt;br/&gt;Under the current system, a minority of transactions will eventually be the lucky few who have fees high enough to escape being pushed down the list.&lt;br/&gt;&lt;br/&gt;Once there are more than x transactions (transaction bandwidth limit) every ten minutes, only those choosing twenty-minute confirmation (2 blocks) will have initially at most a fifty percent chance of ever having their payment confirm. Presently, not even using fee recommendations can ensure a sufficiently high fee is paid to ensure transaction confirmation.&lt;br/&gt;&lt;br/&gt;I also argue that the current auction model for limited transaction bandwidth is wrong, is not suitable for a reliable transaction system and, is wrong for Bitcoin. All transactions must confirm in due time. Currently, Bitcoin is not a safe way to send payments.&lt;br/&gt;&lt;br/&gt;I do not believe that consumers and business are against paying fees, even high fees. What is required is operational reliability.&lt;br/&gt;&lt;br/&gt;This great issue needs to be resolved for the safety and reliability of Bitcoin. The time to resolve issues in commerce is before they become great big issues. The time to resolve this issue is now. We must have the foresight to identify and resolve problems before they trip us over.  Simply doubling block sizes every so often is reactionary and is not a reliable permanent solution. I have written a BIP proposal for a technical solution but, need your help to write it up to an acceptable standard to be a full BIP.&lt;br/&gt;&lt;br/&gt;I have formatted the following with markdown which is human readable so, I hope nobody minds. I have done as much with this proposal as I feel that I am able so far but continue to take your feedback.&lt;br/&gt;&lt;br/&gt;# BIP Proposal: UTPFOTIB - Use Transaction Priority For Ordering Transactions In Blocks&lt;br/&gt;&lt;br/&gt;## The problem:&lt;br/&gt;Everybody wants value. Miners want to maximize revenue from fees (and we presume, to minimize block size). Consumers need transaction reliability and, (we presume) want low fees.&lt;br/&gt;&lt;br/&gt;The current transaction bandwidth limit is a limiting factor for both. As the operational safety of transactions is limited, so is consumer confidence as they realize the issue and, accordingly, uptake is limited. Fees are artificially inflated due to bandwidth limitations while failing to provide a full confirmation service for all transactions.&lt;br/&gt;&lt;br/&gt;Current fee recommendations provide no satisfaction for transaction reliability and, as Bitcoin scales, this will worsen.&lt;br/&gt;&lt;br/&gt;Bitcoin must be a fully scalable and reliable service, providing full transaction confirmation for every valid transaction.&lt;br/&gt;&lt;br/&gt;The possibility to send a transaction with a fee lower than one that is acceptable to allow eventual transaction confirmation should be removed from the protocol and also from the user interface.&lt;br/&gt;&lt;br/&gt;## Solution summary:&lt;br/&gt;Provide each transaction with an individual transaction priority each time before choosing transactions to include in the current block, the priority being a function of the fee paid (on a curve), and the time waiting in the transaction pool (also on a curve) out to n days (n=60 ?). The transaction priority to serve as the likelihood of a transaction being included in the current block, and for determining the order in which transactions are tried to see if they will be included.&lt;br/&gt;&lt;br/&gt;Use a target block size. Determine the target block size using; current transaction pool size x ( 1 / (144 x n days ) ) = number of transactions to be included in the current block. Broadcast the next target block size with the current block when it is solved so that nodes know the next target block size for the block that they are building on.&lt;br/&gt;&lt;br/&gt;The curves used for the priority of transactions would have to be appropriate. Perhaps a mathematician with experience in probability can develop the right formulae. My thinking is a steep curve. I suppose that the probability of all transactions should probably account for a sufficient number of inclusions that the target block size is met although, it may not always be. As a suggestion, consider including some zero fee transactions to pad, highest BTC value first?&lt;br/&gt;&lt;br/&gt;**Explanation of the operation of priority:**&lt;br/&gt;&amp;gt; If transaction priority is, for example, a number between one (low) and one-hundred (high) it can be directly understood as the percentage chance in one-hundred of a transaction being included in the block. Using probability or likelihood infers that there is some function of random. If random (100) &amp;lt; transaction priority then the transaction is included.&lt;br/&gt;&lt;br/&gt;&amp;gt;To break it down further, if both the fee on a curve value and the time waiting on a curve value are each a number between one and one-hundred, a rudimentary method may be to simply multiply those two numbers, to find the priority number. For example, a middle fee transaction waiting thirty days (if n = 60 days) may have a value of five for each part  (yes, just five, the values are on a curve). When multiplied that will give a priority value of twenty-five, or,  a twenty-five percent chance at that moment of being included in the block; it will likely be included in one of the next four blocks, getting more likely each chance. If it is still not included then the value of time waiting will be higher, making for more probability. A very low fee transaction would have a value for the fee of one. It would not be until near sixty-days that the particular low fee transaction has a high likelihood of being included in the block.&lt;br/&gt;&lt;br/&gt;I am not concerned with low (or high) transaction fees, the primary reason for addressing the issue is to ensure transactional reliability and scalability while having each transaction confirm in due time.&lt;br/&gt;&lt;br/&gt;## Pros:&lt;br/&gt;* Maximizes transaction reliability.&lt;br/&gt;* Fully scalable.&lt;br/&gt;* Maximizes possibility for consumer and business uptake.&lt;br/&gt;* Maximizes total fees paid per block without reducing reliability; because of reliability, in time confidence and overall uptake are greater; therefore, more transactions.&lt;br/&gt;* Market determines fee paid for transaction priority.&lt;br/&gt;* Fee recommendations work all the way out to 30 days or greater.&lt;br/&gt;* Provides additional block entropy; greater security since there is less probability of predicting the next block.&lt;br/&gt;&lt;br/&gt;## Cons:&lt;br/&gt;* Could initially lower total transaction fees per block.&lt;br/&gt;* Must be first be programmed.&lt;br/&gt;&lt;br/&gt;## Solution operation:&lt;br/&gt;This is a simplistic view of the operation. The actual operation will need to be determined in a spec for the programmer.&lt;br/&gt;&lt;br/&gt;1. Determine the target block size for the current block.&lt;br/&gt;2. Assign a transaction priority to each transaction in the pool.&lt;br/&gt;3. Select transactions to include in the current block using probability in transaction priority order until the target block size is met.&lt;br/&gt;5. Solve block.&lt;br/&gt;6. Broadcast the next target block size with the current block when it is solved.&lt;br/&gt;7. Block is received.&lt;br/&gt;8. Block verification process.&lt;br/&gt;9. Accept/reject block based on verification result.&lt;br/&gt;10. Repeat.&lt;br/&gt;&lt;br/&gt;## Closing comments:&lt;br/&gt;It may be possible to verify blocks conform to the proposal by showing that the probability for all transactions included in the block statistically conforms to a probability distribution curve, *if* the individual transaction priority can be recreated. I am not that deep into the mathematics; however, it may also be possible to use a similar method to do this just based on the fee, that statistically, the blocks conform to a fee distribution. Any zero fee transactions would have to be ignored. This solution needs a clever mathematician.&lt;br/&gt;&lt;br/&gt;I implore, at the very least, that we use some method that validates full transaction reliability and enables scalability of block sizes. If not this proposal, an alternative.&lt;br/&gt;&lt;br/&gt;Regards,&lt;br/&gt;Damian Williamson&lt;br/&gt;-------------- next part --------------&lt;br/&gt;An HTML attachment was scrubbed...&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20171207/79e32368/attachment.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20171207/79e32368/attachment.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T18:08:22Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsd0twuc2g9kqe8nur4h2tjza7sy42jafj9tqhfvc57j4allpuhx4qzyzq8x5wc2x3ugx06agyflev7p4epwk4utvck6j9l496tfrvrcpl760889je</id>
    
      <title type="html">📅 Original date posted:2017-12-03 📝 Original message:# BIP ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsd0twuc2g9kqe8nur4h2tjza7sy42jafj9tqhfvc57j4allpuhx4qzyzq8x5wc2x3ugx06agyflev7p4epwk4utvck6j9l496tfrvrcpl760889je" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsf2yzycj6hz8u778fqklkah9h3ty5m8ujj6uyqqcyqa406md7ueccflq7w3&#39;&gt;nevent1q…q7w3&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-12-03&lt;br/&gt;📝 Original message:# BIP Proposal: UTWFOTIB - Use Transaction Weight For Ordering Transactions In Blocks&lt;br/&gt;&lt;br/&gt;I admit, with my limited experience in the operation of the protocol, the section entitled &amp;#39;Solution operation&amp;#39; may not be entirely correct but you will get the idea. If I have it wrong, please correct it back to the list.&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;## The problem:&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;Everybody wants value. Miners want to maximize revenue from fees. Consumers want transaction reliability and, (we presume) low fees.&lt;br/&gt;&lt;br/&gt;Current transaction bandwidth limit is a limiting factor for both.&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;## Solution summary:&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;Provide each transaction with a transaction weight, being a function of the fee paid (on a curve), and the time waiting in the transaction pool (also on a curve) out to n days (n=30 ?); the transaction weight serving as the likelihood of a transaction being included in the current block, and then use a target block size.&lt;br/&gt;&lt;br/&gt;Protocol enforcement to prevent high or low blocksize cheating to be handled by having the protocol determine the target size for the current block using; current transaction pool size x ( 1 / (144 x n days ) ) = transactions to be included in the current block.&lt;br/&gt;&lt;br/&gt;The curves used for the weight of transactions would have to be appropriate.&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;## Pros:&lt;br/&gt;&lt;br/&gt;* Maximizes transaction reliability.&lt;br/&gt;* Maximizes possibility for consumer and business uptake.&lt;br/&gt;* Maximizes total fees paid per block without reducing reliability; because of reliability, confidence and uptake are greater; therefore, more transactions and more transactions total at priority fees.&lt;br/&gt;* Market determines fee paid for transaction priority.&lt;br/&gt;&lt;br/&gt;* Fee recommendations work all the way out to 30 days or greater.&lt;br/&gt;&lt;br/&gt;* Provides additional block entropy and greater security since there is less probability of predicting the next block.&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;## Cons:&lt;br/&gt;&lt;br/&gt;* ?&lt;br/&gt;* Must be first be programmed.&lt;br/&gt;* Anything else?&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;## Solution operation:&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;As I have said, my simplistic view of the operation. If I have this wrong, please correct it back to the list.&lt;br/&gt;&lt;br/&gt;1. The protocol determines the target block size.&lt;br/&gt;&lt;br/&gt;2. Assign each transaction in the pool a transaction weight based on fee and time waiting in the transaction pool.&lt;br/&gt;&lt;br/&gt;3. Begin selecting transactions to include in the current block using transaction weight as the likelihood of inclusion until target block size is met.&lt;br/&gt;&lt;br/&gt;4. Solve block.&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;Regards,&lt;br/&gt;&lt;br/&gt;Damian Williamson&lt;br/&gt;-------------- next part --------------&lt;br/&gt;An HTML attachment was scrubbed...&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20171203/15371876/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20171203/15371876/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T18:08:13Z</updated>
  </entry>

</feed>