1

As I understand it, Eligius is the only miner pool accepting non-standard transactions.

The Opcodes for the scripts are here.
Some use cases for non-standard transactions can be found here.

My Question:

If I pay some Bitcoins to a non-standard pubkey script mined and accepted by Eligius, can these BTCs be redeemed by a non-standard redeem script (also mined at Eligius) or are these BTCs just lost forever?

  • Are you asking whether this can be done in general, or whether it can be done for your output script? Some non-standard outputs cannot be spent. – Nick ODell Nov 26 '14 at 15:16
2

Yes, if you pay bitcoins to a non-standard pubkey script, you can spend them in a later signature script using Eligius. But there are some conditions:

  1. The pubkey script must be spendable. For example, a pubkey script starting with OP_RETURN can never be spent. It's up to you to craft your non-standard script to make it spendable.

  2. Eligius will only mine valid transactions. For example, you can't have a data push of more than 520 bytes in either the pubkey or signature script.

  3. The IsStandard() checks check more than just op codes---they also require minimum network fees (to avoid "dust" spam) and correct transaction version numbers. Eligius still includes these parts of the IsStandard() checks.

  4. Eligius has its own minimum fee for non-standard transactions: 0.00004096 BTC per 512 bytes according to their FAQ.

If you're going to send custom transactions, I highly recommend that you test them on Testnet first. (Testnet allows non-standard transactions.)

Note also that Bitcoin Core 0.10 will likely relax the IsStandard() rules for P2SH, making it possible to use pretty much any script you want as long as you wrap it inside P2SH. (That won't help you now, but it's a good thing to consider when developing your script.)

  • Thank you very much for your answer. The minimum fee for non-standard transactions you specified is according to the FAQ not official yet. The current fee for non-standard transactions is 0.00004096 BTC per 512 bytes. – user1861174 Nov 26 '14 at 16:08
  • I've corrected Eligius's fee listed in your answer; the one you had at first was a proposed rule for transactions after the first 128 KB in a block. – Tim S. Nov 26 '14 at 19:31

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.