I have been busy looking at a number of scenarios for such a lending facility and have lots of draft documents that I have yet to assemble into content that I would want to publish. I first thought that the lending facility would be a great extension to Bitsquare, however, I think a well designed decentralized lending protocol could be applicable to any exchange, centralized or decentralized, so developing it specifically for Bitsquare may be a suboptimal approach. I will elaborate on this further in the white paper. Since, the value transfer endpoints in the lending facility are cryptocurrency addresses, interfacing with Bitsquare (as well as Poloniex) should be a natural fit.
I have a draft workflow doc on ipfs that can be found at: https://gateway.ipfs.io/ipfs/QmepUc9vTEvs4WML7sy4gxY3iph3RmAgmVSQhgKt3qjkaV
(All of the workflow steps are automated and represent an event-based workflow processing system. Notifications are available through p2p messaging and workflow state is maintained through a blockchain construct).
I believe one key aspect of decentralized lending will involve the deposit of collateral by the borrower. Securing the collateral deposit in a decentralized lending system will require a multi-signature facility. Additionally, decentralized arbitration will be essential not only for properly disbursing loan collateral, but for obtaining decentralized consensus for the lending workflow. I really believe that for a decentralized lending facility to be efficient and effective, the system must utilize automation as manual human workflows involve inefficient, long (unacceptable) cycle times.
I have created a couple of prototypes that I’m working on to validate and test proof-of-concepts.
I stored a document on ipfs that illustrates how the multi-signature facility for collateral could work. That document can be found at: https://gateway.ipfs.io/ipfs/QmZpVkGQKZvf8mAxLj6CEUjhriRgf6iHbCwCCyJjjf15Xc
Many of the steps in this document would be automated in code. I illustrate it in the document using bitcoin-qt manually to make it easier for individuals to follow. I find that discussing multi-signature transactions using Bitcoin typically ends up confusing recipients and so I thought this approach might be more comprehensive. I am also looking to allow multiple protocols for collateral based multi-sig (Monero should have a multi-sig facility soon: https://gateway.ipfs.io/ipfs/QmWj7u6WmWXWxSVFuDXoHpwT6fPzPC9Vgbp3n71DBbiK9W).
I’m currently prototyping the arbiter as a software agent that processes the lending workflow as an automated software agent. The arbiter software agent code is on every p2p node. The arbiter is turned off by default, however, users can opt-in and turn the arbiter agent code on. An algorithm for obtaining decentralized consensus for arbiter agent workflow processing is currently being written and tested (the arbiter facility workflow processing will be similar in principle to how Bitcoin provides decentralized consensus for transaction processing). Incentives for participating in the arbiter functionality (PoW) will be a built-in monetary incentive similar to Bitcoin mining.
My prototyping work uses libp2p (out of the ipfs work) for the p2p architecture (I like the libp2p as routing options such as Tor and I2P are accommodated. I think the world will need agility in this area as authorities keep trying to attack financial privacy. The libp2p architecture allows for evolution to take place in this important capability.) I’m also looking at ipfs and Merkle DAG for offers, lending contracts, and workflow events.
My goal is to complete the current prototyping/Proof-of-Concepts, then write a comprehensive white paper to be published with the establishment of an open-source project on github to develop the decentralized lending facility. I’ll make the prototype code available in the github open-source project.
Sorry for the delay, but this idea has expanded and taken-on a life of its own.
Please feel free to contact me if you have any questions or concerns.
Doug