bybitcoin



Offline



Activity: 672

Merit: 500









Hero MemberActivity: 672Merit: 500 Re: MasterCoin: New Protocol Layer Starting From The Exodus Address October 15, 2013, 07:09:19 AM

Last edit: October 15, 2013, 07:22:42 AM by bybitcoin #1261 Quote I don't like this. It discourages newcomers. Tomorrow may bring a fourth brilliant coder who would like to get it a try. However, she will be disinclined to try if grazcoin, zathras and tachi are all warm and fuzzy in bed together with solid jobs. It is better to have the door wide open to people who want to enter and make it very easy for them to come in.

I didn't mean guaranteed solid jobs, I meant result-based fund allocated part time jobs for these guys. And of course doors should be open with new contests, so the project be able to attract new talents.

Quote I am not saying the early guys don't deserve a great reward for their efforts - they do. Also, they deserve whatever it takes to keep them going in the future. But, lets don't put them on easy street while blocking out the path for others to join. Dude, It is not about who deserves the cake or reward, it's about give this proved talents a guaranteed modest piece of cake for them to continue their efforts in the same direction, still it will be result based and their works will be continually monitored.



Quote Let's run another contest. Make it independent of the features those three have conquered. Those three continue their efforts (with pay) to complete them. Those three are excluded from the new contest. This assures that at the end of the contest, we have three new stars on the team. Well you say the same thing as me, but with the opposition mark?! After all this is btt forum



Quote Giving these guys steady jobs now assures a high barrier to entry for newcomers and pushes them off to work on other projects. We've got about 479 tasks to complete. Let's form new contests which attract new talent while locking up that great talent we found last time. Not steady but rather result based fully monitored modest salary packed jobs. One or two new contests will be healthy as well. But I am sure nobody wants it to continue forever, spending money to create contests again and again ad infinitum, mastercoin is not a high school league!

After one or two more contests and when we got a stable team, talent hunting can be continued per se, necessity and applied based, driven by the foundation.



I didn't mean guaranteed solid jobs, I meant result-based fund allocated part time jobs for these guys. And of course doors should be open with new contests, so the project be able to attract new talents.Dude, It is not about who deserves the cake or reward, it's about give this proved talents a guaranteed modest piece of cake for them to continue their efforts in the same direction, still it will be result based and their works will be continually monitored.Well you say the same thing as me, but with the opposition mark?! After all this is btt forumNot steady but rather result based fully monitored modest salary packed jobs. One or two new contests will be healthy as well. But I am sure nobody wants it to continue forever, spending money to create contests again and again ad infinitum, mastercoin is not a high school league!After one or two more contests and when we got a stable team, talent hunting can be continued per se, necessity and applied based, driven by the foundation.

zathras



Offline



Activity: 266

Merit: 250









Sr. MemberActivity: 266Merit: 250 Re: MasterCoin: New Protocol Layer Starting From The Exodus Address October 15, 2013, 08:15:56 AM

Last edit: October 15, 2013, 08:39:31 AM by zathras #1262



I felt I was perhaps being a little eager in calling my wallet 'multi-currency' when it only supports transacting Mastercoin & Test Mastercoin. The wallet has always supported working with Bitcoin balances, but offers no way to actually send Bitcoin. As such I've now added initial send support (just sendtoaddress via RPC at this stage) for Bitcoin.



Note. to address the inevitable "what's the point when you already have a bitcoin wallet running anyway?" - I'm of the impression that a full-featured Mastercoin wallet should be able to transact in Bitcoin in addition to Mastercoin & the various Mastercoin-backed currencies/derivatives and this just adds the initial round of code. There is of course no requirement to use this functionality over your local bitcoin wallet.



Unconfirmed transaction support is now included for Bitcoin also.



Additionally I've spun up some extra test machines which has allowed me to locate and resolve some more bugs in the wallet & library - this release should hopefully be less buggy to get running:



Code: # FIXED: broken dependencies on sqlce libs

# FIXED: getting started finish button empty field check not working

# FIXED: getting started panel may incorrectly fail bitcoind test using finish button while test button shows success

# FIXED: getting started panel transaction index check performed with test button but not finish button

# FIXED: wallet fails to syncronize leaving just two 'thread exited' messages in debug panel

# FIXED: error conditions not examined on blockchain scanning thread exit

# FIXED: address enumeration & BTC balance gathering during startup thread no longer working

# FIXED: getting started finish button not disabled after click so repeated clicks can run setup code multiple times

# FIXED: send address list only populated after full sync, not in startup thread

# FIXED: available balance for bitcoin in send panel incorrectly displays unconfirmed instead of confirmed balance

# FIXED: change of currency does not reset available balance

# FIXED: border paint sometimes does not occur until after first background thread has returned

# FIXED: welcome panel enter key on wallet passphrase does not submit and continue

# FIXED: focus is not on passphrase entry when welcome panel is shown requiring tabs before passphrase entry

# FIXED: default radio button for mastercoin currency type not working

This is a testing release only and is not fit for real usage - do not under any circumstances plug it into a bitcoin wallet with any sizable amount of bitcoins/mastercoins. Test only with an almost empty wallet.



Source & Binary :



Note download & extract MasterChestWalletAlphaWin.zip for binary and please remember a transaction index is required to use this software (txindex=1 in bitcoin.conf and next bitcoin run add -reindex switch).



Test safely!



As always please feel free to ask any questions & let me have any feedback, thanks! One last update before the contest endsI felt I was perhaps being a little eager in calling my wallet 'multi-currency' when it only supports transacting Mastercoin & Test Mastercoin. The wallet has always supported working with Bitcoin balances, but offers no way to actually send Bitcoin. As such I've now added initial send support (just sendtoaddress via RPC at this stage) for Bitcoin.Unconfirmed transaction support is now included for Bitcoin also.Additionally I've spun up some extra test machines which has allowed me to locate and resolve some more bugs in the wallet & library - this release should hopefully be less buggy to get running:Source & Binary : GitHub Note download & extract MasterChestWalletAlphaWin.zip for binary and please remember a transaction index is required to use this software (txindex=1 in bitcoin.conf and next bitcoin run add -reindex switch).As always please feel free to ask any questions & let me have any feedback, thanks! Smart Property & Distributed Exchange: Master Protocol for Bitcoin

zathras



Offline



Activity: 266

Merit: 250









Sr. MemberActivity: 266Merit: 250 Re: OFFICIAL LAUNCH: New Protocol Layer Starting From The Exodus Address October 15, 2013, 10:47:29 AM

Last edit: October 15, 2013, 10:58:37 AM by zathras #1264 Quote from: grazcoin on October 15, 2013, 10:28:27 AM Quote from: Tachikoma on September 22, 2013, 07:02:51 PM Sequences for multisig public keys need to start with 01 instead of 00. If you don't do this more often then not the public key won't be a valid ECDSA point.



I was trying to understand the compressed public key issue you described, and I checked your code:

https://github.com/maran/mastercoin-ruby/blob/master/lib/mastercoin-ruby/simple_send.rb#L29

It seems you always add '02' at the beginning, and you never use the '03' option.

Choosing '02' or '03' depends on odd/even characteristics of the data, and you could find an example here:

https://github.com/salfter/fillet/blob/master/hex2wifaddr.py#L193

I am not sure that this is the reason, but maybe it eliminates your voodoo rule.

Tachikoma:I was trying to understand the compressed public key issue you described, and I checked your code:It seems you always add '02' at the beginning, and you never use the '03' option.Choosing '02' or '03' depends on odd/even characteristics of the data, and you could find an example here:I am not sure that this is the reason, but maybe it eliminates your voodoo rule.



In a nutshell a compressed public key is simply the uncompressed key cut in half and the 02 or 03 prefixed is derived from the last digit of the second half of the uncompressed key (whether odd or even). Since the first half of the uncompressed key is used for the compressed key, a bitcoin node seeing the transaction has no way to know what the last digit of the second half of the uncompressed key was (as they don't have that half), hence they have no way to verify if it should start with a 02 or an 03. Thus we don't need to do any evaluation of our data pubkey and can just prefix using a known value (02).



As to using 01 instead of 00 for sequence numbers and ECDSA point validity, to be honest that's above me at the moment (I'm trying to get my head around elliptic curve cryptography in general but it's a slow process!). All I can say is I have 100% tx acceptance with 0201, but not much joy with 0200 (if I recall correctly, so much has happened this month!).



Hey Grazcoin,In a nutshell a compressed public key is simply the uncompressed key cut in half and the 02 or 03 prefixed is derived from the last digit of the second half of the uncompressed key (whether odd or even). Since the first half of the uncompressed key is used for the compressed key, a bitcoin node seeing the transaction has no way to know what the last digit of the second half of the uncompressed key was (as they don't have that half), hence they have no way to verify if it should start with a 02 or an 03. Thus we don't need to do any evaluation of our data pubkey and can just prefix using a known value (02).As to using 01 instead of 00 for sequence numbers and ECDSA point validity, to be honest that's above me at the moment (I'm trying to get my head around elliptic curve cryptography in general but it's a slow process!). All I can say is I have 100% tx acceptance with 0201, but not much joy with 0200 (if I recall correctly, so much has happened this month!). Smart Property & Distributed Exchange: Master Protocol for Bitcoin

zathras



Offline



Activity: 266

Merit: 250









Sr. MemberActivity: 266Merit: 250 Re: MasterCoin: New Protocol Layer Starting From The Exodus Address October 15, 2013, 12:00:10 PM #1269 Quote from: StarenseN on October 15, 2013, 11:48:02 AM Zathras, the insallation seems not so easy and I don't wanna spend time on it right now. Is it possible to do a brief tutorial/how-to install your software?



I'd be glad to beta-test it afterwhile !

Sure. Installation should be pretty straight forward but I'm happy to detail it out here.



1] Ensure you have .NET4 installed

2] Ensure you have the transaction index enabled in your bitcoind/qt server. This is disabled by default in 0.8.x, and can be enabled by adding txindex=1 to bitcoin.conf and starting bitcoind/qt with the -reindex option.

3] Download the file MasterChestWalletAlphaWin.zip from

4] Extract the contents to a folder somewhere

5] Open Masterchest_Wallet.exe

6] On the getting started panel, enter your bitcoin rpc server information and click test. This will check the connection and test for the transaction index.

7] Once you get a successful connection and test, enter a new wallet passphrase and tick the box for preseeded database if you want to use it, then click finish.







8] You should be at the welcome screen where you can then enter your passphrase to access the wallet.



That should be it! Let me know if I can help further.



Quote from: grimentz on October 15, 2013, 11:54:09 AM Thanks! I am able to compile and build it now.



Great, let me know if I you have any other questions, happy to answer them in the morning Sure. Installation should be pretty straight forward but I'm happy to detail it out here.1] Ensure you have .NET4 installed2] Ensure you have the transaction index enabled in your bitcoind/qt server. This is disabled by default in 0.8.x, and can be enabled by adding txindex=1 to bitcoin.conf and starting bitcoind/qt with the -reindex option.3] Download the file MasterChestWalletAlphaWin.zip from here (github)4] Extract the contents to a folder somewhere5] Open Masterchest_Wallet.exe6] On the getting started panel, enter your bitcoin rpc server information and click test. This will check the connection and test for the transaction index.7] Once you get a successful connection and test, enter a new wallet passphrase and tick the box for preseeded database if you want to use it, then click finish.8] You should be at the welcome screen where you can then enter your passphrase to access the wallet.That should be it! Let me know if I can help further.Great, let me know if I you have any other questions, happy to answer them in the morning Smart Property & Distributed Exchange: Master Protocol for Bitcoin