All About Escrow
The use of escrow often occurs when two parties want to trade something of value. Escrow is essentially using a trusted third party to "hold" this valuable thing until certain conditions are met, upon which the valuable thing is released.
- The party giving the item of value is usually called the depositor.
- The party receiving the item of value is usually called the beneficiary.
- The "trusted third partner" is usually called the escrow agent.
The House Example
When a house is purchased, there are often conditions to the sale, such as the house passing an inspection. How do we protect both the buyer and seller during the inspection? The buyer of the property will deposit the full payment for the house "in escrow." The seller deposits the title of the house "in escrow."
This protects both the buyer and the seller:
- it assures the seller that the buyer is capable of making payment
- it assures the buyer that if an issue is found, they can still recover their payment
- it assures the buyer that they will receive the title
Once all of the conditions to the sale are satisfied, the escrow agent transfers the payment to the seller, and title is transferred to the buyer.
Source Code and Technology Escrow
Source code and technology escrow is very similar. However, instead of the purchase of a house, it is intellectual property being protected. Further, instead of ensuring that the transfer goes through, it is often the case that the goal of the escrow agreement for the transfer not to go through.
Most of the time, the buyer simply wants to use the software, and has no special interest in acquiring the intellectual property. Further, the seller usually has very little interest in "giving up" this intellectual property. However, the buyer does have an interest in having access to the intellectual property under certain circumstances.
For example, if a manufacturing company purchases some Manufacturing Resource Planning (MRP) software, a significant portion of their business is now dependent on the performance of the software company. If the software company is not responsive, or goes out of business, the manufacturing company has now been put at significant risk.
While the MRP software is working great, the manufacturer has not particular interest in the intellectual property (the source code) behind the software. However, under certain circumstances, or if certain events occur (breach of contract, the software company goes out of business), they will become very interested in the source code.
Escrow is important to both the seller and the buyer of the software:
- the seller knows that their intellectual property is protected
- the buyer is more comfortable purchasing the software because they know that their business is not as dependent on the software company
Deposits and Release
In classic escrow situations, the buyer will make frequent deposits of CDs, DVD's, or backup tapes. This media is then put into an old vault that was abandoned by a bank. The tapes or other media is then shipped to the buyer when a triggering event occurs.
tinyEscrow similarly protects your IP, but makes depositing much easier. We also provide an agreed-upon, appropriate level of visibility to the beneficiary.
Common release-triggering events are:
- The depositor remains in breach-of-contract for some period of time
- The depositor goes out-of-business
- The depositor decides to end-of-life the software
- The depositor company is acquired
Verification
There are two areas of thought with verification. The first is that the depositor should be fully trusted to deposit 100% working, tested software, and that verification is an insult to the depositor. The second is that the depositor should not be trusted, and that their source code should be verified.
tinyEscrow provides extremely fast, innovative and appropriate verification services. We also take a more nuanced philosophical approach to verification. We know that technology is not perfect. While we believe that depositors should always be trusted to deposit working code, we believe that verification services are more important to the depositor than the beneficiary.
By having a third-party verify that your source code compiles and runs, you are demonstrating "good faith," and are establishing that your deposits did indeed work as designed.