blockgenesis (OP)
Sr. Member
Offline
Activity: 285
Merit: 250
Bitcoin.org maintainer
|
|
March 12, 2014, 01:40:48 AM Last edit: May 24, 2014, 03:31:48 PM by blockgenesis |
|
Update: Developer documentation has been merged on bitcoin.org: https://bitcoin.org/en/developer-documentation-- The goals of this project is to improve access to good quality documentation for developers. A lot of useful information is spread accross wiki pages, BIPS GitHub pages and BitcoinTalk threads. It would be nice to gather all this information in a single place with a consistent structure or a set of pages with a single table of content. A good "API Reference" page with code snippets would be useful too. Good writers are needed to make this project happen. If you can help with this project, please PM me or comment on this thread. Some of this work can be paid work as the Foundation is providing a 2000$ monthly bounty ( some of it is already assigned to server and translation expenses ). Work is already ongoing but needs more contributors to be completed. Not just writers, actually a lot of work will be to review, discuss, edit and organize all of this information. Live previewYou can preview current work in progress here: (Merged) General DiscussionsYou can join general discussions on this Google group: https://groups.google.com/forum/#!forum/bitcoin-documentationStyle GuideGeneral writing guidelines are discussed and edited here: https://github.com/bitcoin/bitcoin.org/wiki/Documentation-Style-Guide
|
Donation: 18XXXQs1vAQGBAZbXKA322r9Zy1nZac2H4
|
|
|
freedomno1
Legendary
Offline
Activity: 1806
Merit: 1090
Learning the troll avoidance button :)
|
|
March 12, 2014, 01:57:21 AM |
|
I will probably leave this to more technical hands but I might be able to find some good points here and there so reporting in
|
Believing in Bitcoins and it's ability to change the world
|
|
|
blockgenesis (OP)
Sr. Member
Offline
Activity: 285
Merit: 250
Bitcoin.org maintainer
|
|
March 12, 2014, 02:18:39 AM |
|
I will probably leave this to more technical hands but I might be able to find some good points here and there so reporting in
PM'd, thanks!
|
Donation: 18XXXQs1vAQGBAZbXKA322r9Zy1nZac2H4
|
|
|
harding
Jr. Member
Offline
Activity: 50
Merit: 54
|
|
March 12, 2014, 06:43:39 AM |
|
Right now there are two simple (but not necessarily easy!) ways to get started:
1. Dip your toes in the water: work with Blockgenesis to refine the text we already have about the block chain. Blockgenesis has proposed a number of improvements (some small, some larger) and we need a writer/editor to implement those improvements.
2. Jump into the deep end: agree to write a section of the outline Blockgenesis posted to above. The Block Chain section is written and I'm working on the Transaction section, but all the other sections are unclaimed. Just tell us what section you want and give us a rough idea about how long it will take you.
You can, of course, think up an option #3 and do that
Blockgenesis is currently co-ordinating everything, so let him know what you want to do and he'll give you access to the resources we're currently using.
-Dave (author of the block chain section in the OP link)
|
|
|
|
Cyrus
Ninja
Administrator
Legendary
Online
Activity: 3920
Merit: 3123
|
|
March 12, 2014, 07:02:38 AM |
|
Interested as well. I'm also in the process of translating bitcoin.org on transifex.
|
|
|
|
Mike Hearn
Legendary
Offline
Activity: 1526
Merit: 1134
|
|
March 12, 2014, 09:38:09 AM |
|
We definitely need a section on the payment protocol, which merges together all the BIPs and best practices into a living document. BIPs are great but they are written as "delta to previous behaviour" which can make figuring out the systems final state harder than it should be.
|
|
|
|
blockgenesis (OP)
Sr. Member
Offline
Activity: 285
Merit: 250
Bitcoin.org maintainer
|
|
March 12, 2014, 05:32:59 PM |
|
We definitely need a section on the payment protocol, which merges together all the BIPs and best practices into a living document. BIPs are great but they are written as "delta to previous behaviour" which can make figuring out the systems final state harder than it should be.
Yup, I called this subsection "Payment requests". Just let me know if you feel anything is missing (or isn't relevant enough to be mentionned). I just updated the initial thread to provide clearer procedures and instructions for anyone to take part in discussions, submit work and see assigned tasks.
|
Donation: 18XXXQs1vAQGBAZbXKA322r9Zy1nZac2H4
|
|
|
Mike Hearn
Legendary
Offline
Activity: 1526
Merit: 1134
|
|
March 13, 2014, 12:00:01 PM |
|
Awesome! Let's go!
|
|
|
|
Farghaly
Newbie
Offline
Activity: 38
Merit: 0
|
|
March 13, 2014, 02:03:05 PM |
|
I can translate into Arabic, if you need help ?
|
|
|
|
blockgenesis (OP)
Sr. Member
Offline
Activity: 285
Merit: 250
Bitcoin.org maintainer
|
|
March 13, 2014, 04:15:34 PM |
|
I can translate into Arabic, if you need help ?
You can refer to this thread for translations: https://bitcointalk.org/index.php?topic=349633.0Arabic translations indeed really need to be updated. Your help is more than welcome!
|
Donation: 18XXXQs1vAQGBAZbXKA322r9Zy1nZac2H4
|
|
|
harding
Jr. Member
Offline
Activity: 50
Merit: 54
|
|
March 17, 2014, 03:23:40 AM |
|
Hi, I'm currently writing about OP_CHECKSIG for the dev guide and I could use a quick hint from someone more knowledgeable about the SIGHASH_NONE|SIGHASH_ANYONECANPAY hash type: What prevents peers (relayers) and miners from extracting all inputs signed with SIGHASH_NONE|SIGHASH_ANYONECANPAY from a transaction and using those inputs to create new transactions that pay themselves? I'm confused because, on one hand, bitcoinj's payment channels seem to use SH_N|SH_ACP, so I suspect Mike thinks it's secure, but on the other hand, I don't see how it could be based on the explanation of SH_N|SH_ACP on the wiki, which I understand to say: * SH_NONE prevents signing of any outputs by the current input. * SH_ANYONECANPAY prevents signing of any input except the current input The combined effect being a valid input which can extracted and spent to an arbitrary script. Any help will be appreciated, -Dave
|
|
|
|
Mike Hearn
Legendary
Offline
Activity: 1526
Merit: 1134
|
|
March 17, 2014, 12:41:46 PM |
|
At that stage of the protocol the signature being returned is signing for a CHECKMULTISIG output. The signature covers the outpoints, so you can't take it and apply it to any arbitrary coin (besides the keys are meant to not be reused, even though they are in the current code). The other signature for the multisig output is required and that covers the outputs.
|
|
|
|
harding
Jr. Member
Offline
Activity: 50
Merit: 54
|
|
March 17, 2014, 01:44:18 PM |
|
Mike: Thank you for your answer. I think I confused the issue by trying to generalize it and tie it into bitcoinj. Looking at a particular transaction with the form: And... * Input0 is signed SIGHASH_NONE|SIGHASH_ANYONECANPAY (prevout script was pay-to-pubkey-hash) * Input1 is signed SIGHASH_ALL (prevout script was pay-to-pubkey-hash) And... * The transaction is transmitted directly to a single miner who doesn't relay it Question: Is it true that the miner can remove Input1 and Output0, add a new Output0, and mine the modified transaction? --- Your answer did point out something I haven't seen documented elsewhere, so I want to make sure I understand correctly before documenting it myself: Question: Is it true that each signature in a multisig scriptSig can use a different hash type? Thank you again for your help! -Dave
|
|
|
|
Mike Hearn
Legendary
Offline
Activity: 1526
Merit: 1134
|
|
March 17, 2014, 07:17:22 PM |
|
Question: Is it true that the miner can remove Input1 and Output0, add a new Output0, and mine the modified transaction?
Yes. Question: Is it true that each signature in a multisig scriptSig can use a different hash type?
Yes.
|
|
|
|
harding
Jr. Member
Offline
Activity: 50
Merit: 54
|
|
March 17, 2014, 07:20:01 PM |
|
Thanks!
|
|
|
|
|
blockgenesis (OP)
Sr. Member
Offline
Activity: 285
Merit: 250
Bitcoin.org maintainer
|
|
March 17, 2014, 08:08:59 PM |
|
The content on bitcoin.org is already under MIT (see the copyright notice at the bottom), which is a very permissive license (AFAIK, I'm no expert with licensing).
|
Donation: 18XXXQs1vAQGBAZbXKA322r9Zy1nZac2H4
|
|
|
genjix
Legendary
Offline
Activity: 1232
Merit: 1076
|
|
March 18, 2014, 04:16:31 PM |
|
|
|
|
|
|
blockgenesis (OP)
Sr. Member
Offline
Activity: 285
Merit: 250
Bitcoin.org maintainer
|
|
March 21, 2014, 01:35:06 AM Last edit: June 17, 2014, 08:10:11 AM by blockgenesis |
|
Latest update: The first draft for the Transaction subsection is there:
(Merged)
Reviews are appreciated (only errors, omissions, confusions, and other issues at this point, writing style improvements can be done later ).
|
Donation: 18XXXQs1vAQGBAZbXKA322r9Zy1nZac2H4
|
|
|
|