Post
Topic
Board Project Development
Re: Holy Grail BOUNTY
by
fellowtraveler
on 30/10/2013, 09:08:06 UTC

There are many contributors who I'm sure want a quick UPDATE on status, and we're making LOTS of EXCITING PROGRESS!

------------------------------------------------------------------------

First, here are the main project tasks as posted on the "Ciyam Open" project management site:

Systray GUI with OT integration   General UI   BTC:   10.000
Namecoin integration (credentials)   Integration   BTC:   7.500
HTTP Interface                     General UI   BTC:   8.000
Colored coins integration         Integration   BTC:   10.000
Bitmessage integration            Integration   BTC:   11.000
Bitcoin Integration (Multisig)         Integration   BTC:   10.000
Internationalization                  General UI   BTC:   5.000
Integration with legacy banking      Integration   BTC:   12.000
Markets UI                           General UI   BTC:   7.000

------------------------------------------------------------------------

LATEST STATUS ON TASKS:

-------------------------------------------------

Systray GUI with OT integration   General UI   BTC:   10.000

Since Xenland stopped working on this, I have taken over personally, courtesy of Monetas.

I'm nearly done! It's working great, and I will be posting a video really soon!

For those who have seen the iPhone video already, the functionality is basically the same, except more powerful. The UI is very similar and looks great... finally a real UI people can use for OT! Hopefully we can start making an official install program soon.

Here's my commit history:
https://github.com/Open-Transactions/Moneychanger/commits/master

===> Once this task is completed (video coming soon) I will split the bounty between myself and Xenland, based on the difference in code.

===> I will not keep my share of the bounty, but will re-distribute it among the existing tasks of the project.

-------------------------------------------------

Namecoin integration (credentials)   Integration   BTC:   7.500

The purpose of this integration is to allow us to eliminate Certificate Authorities, by making revokable OT credentials through Namecoin. (And to support other credential systems as well, with Namecoin just being the first one integrated.)

There's a developer working on this Namecoin integration, and I've been in regular contact with him -- he's progressing rapidly.

We are near the point now of adding it to the UI with full-functionality!

On Sept 17th, the developer wrote:

Quote
just a quick status update from my work on the Namecoin integration, in case you are interested.
I've now mostly finished a first version of libnmcrpc, which I'll use to communicate to Namecoin.
The code can be found at https://gitorious.org/libnmcrpc and already supports wallet unlocking,
querying of Namecoin names, signing and verifying messages and name registration
including semi-automatic handling of name_new/name_firstupdate,
although I still have some things to polish there.

On October 5th, he wrote:

Quote
I've already registered some names with my code and am working on finishing code to handle
multiple name registration processes conveniently (possibly in different "stages" of name_new / name_firstupdate
and waiting for confirmations.)

On October 16th, he wrote:

Quote
I've finished the work (at least for now) on the base Namecoin library, it
now supports registering and managing the registration processes of
multiple names.  It also includes a command-line utility that can be
used to register names and watch the registration processes including
"automatic" name_new / name_firstupdate, and I already used it
successfully to register some names for myself.

On October 18th, he wrote:

Quote
I'm also implementing a method with the signature:
Quote
virtual bool VerifyCredentialHashAtSource(hash, source);

===> The best part of this is that Namecoin is just an example of the kinds of credentials OT will now be able to support!

===> OT also supports self-signed credentials, as well as CA-based certs (through OpenSSL.)

===> Since this is implemented through an abstract interface, it will be trivial to support other identification systems, such as GPG web-of-trust, BitShares' BitIDs, Retroshare, etc.

-------------------------------------------------

HTTP Interface            General UI   BTC:   8.000

No one is working on this one yet, but now that basic functionality is nearly done, it shouldn't be hard to add an HTTP interface on a local loopback address.

This will enable many other applications to integrate, including web apps.

-------------------------------------------------

Bitcoin Integration (Multisig)      Integration   BTC:   10.000

JaSK has been kicking ass on the Bitcoin integration! He's got multi-sig coded!

On October 8th, he wrote:

Quote
We can now verify that certain transactions have been made (if we have the tx id) so my next step is to implement the actual escrow protocol.

His commit history on October 21st says:

Quote
ESCROW MOTHERFUCKING WORKS THEORETICALLY - Added all missing functions required for receiving, verifying, creating, signing and sending to and from p2sh addresses and tested them successfully in a simple 2-of-2-escrow.

A lot more testing needs to be done and there are still some things I need to check to make sure noone gets scammed but all major issues are out of the way.

In the next commits I will do some cleaning up and commenting, create some helper functions and structures to hold information about the current state of outstanding escrow transactions and add GUI items so more people can start testing how well it actually works.

See his commit history:
https://github.com/tuttleorbuttle/Moneychanger/commits/master

TL;DR: This means we are finally going to have multi-sig voting pools on OT! (These will enable an OT server to process Bitcoin transactions, without having to trust that OT server with your Bitcoins.)

(I mean frankly, isn't everyone in the Bitcoin community tired of having to trust all the various servers out there with their coins?)

JaSK recently asked:

Quote
we can probably automate part of that process by communicating over bitmessage or direct p2p connections.
But that will take more time and I'll have to ask FellowTraveler how he'd like it to be done.

The answer is: When a user wishes to move Bitcoins into OT, he will be sending the coins multi-sig, using your code as described above. As long as I am able to send and verify those coins, and as long as I am able to perform multi-sig votes to remove those coins back out, then I will be able to do the rest on the OT side. Bitmessage will not be needed for this, but if you want to get started on the Bitmessage integration, it's definitely needed for other pieces.

-------------------------------------------------

Integration with legacy banking   Integration   BTC:   12.000

As you guys know, we have a 12 BTC bounty on implementing this protocol for p2p transfer of funds in/out of legacy banking systems:
http://pastebin.com/SsLrxVP6

The protocol requires the use of smart contracts for dispute resolution inside OT (which OT is able to do) but it also involves integration with legacy systems.

Fortunately, people have been working on the integration, and there is now alpha software ready for testing!

See this thread:
https://bitcointalk.org/index.php?topic=173220.msg3429555#msg3429555

The next step is to integrate this (through an abstract interface) into the new GUI, and use OT smart contracts for escrow and dispute resolution.

The abstract interface will allow us to swap in alternate solutions as well, so we are not reliant on any one. But I have to say, it looks like these guys have done some great work so far.

-------------------------------------------------

Colored coins integration      Integration   BTC:   10.000

Not yet started.

We'll use an abstract interface here so we can handle disparate systems such as colored coins, master coins, bitshares, etc.

(OT strives to be agnostic on this sort of thing.)

BTW, we are also integrating with Project Praesto by ninjabanker, which is another system for providing fiat in/out, which uses Bitcoin reserves in order to eliminate the need for an "issuer" entity (normally trusted to hold the reserves in dollars / euros / etc)

I'm really excited about this solution, since it will take advantage of OT-based virtual corporations and of course, since it enables us to eliminate the issuer.

-------------------------------------------------

Bitmessage integration         Integration   BTC:   11.000

The original purposes of this integration:

1. Server-to-server wiring of funds.
2. Distributed exchange.
3. Integration with legacy banking.


Well, a great new benefit is being added to the pile:

4. Distributed bazaar. (Like E-Bay, except without the server.)

I realized a few weeks ago how easy this would be to add, using the same Bitmessage integration we already had planned.

So I worked out the UI with Yamamushi's help, and have started adding it to the GUI app.

This bazaar will not be functional until the Bitmessage integration is ready, but I do expect to have it all working soon.

-------------------------------------------------

Internationalization         General UI   BTC:   0.000

The Subtask in Ciyam Open appears to show a zero balance, but rest assured, a contributor put 5 BTC towards Internationalization, but the money is in the top-level wallet so it's showing incorrectly as a zero on the subtask. But the 5 BTC is really there, so if anyone wants to consider Internationalization of this project, there's a good reward waiting for you.

Update: Internationalization work has begun! See this commit history from one of our contributors:
https://github.com/Open-Transactions/Moneychanger/commit/023b0a0a649e7023d2c7dc10c9c8a3c692c97227

-------------------------------------------------

Markets UI               General UI   Open   7.000

Yamamushi is working on this page but I'm not sure of his current status. I will probably sync up with him sometime this week.

-------------------------------------------------

I will update the Ciyam Open project soon, once I have the video ready showing off the new GUI. (I hope to record one this week.)