With the release of NanoWallet, NEM is introducing its first version of Apostille, a second-generation blockchain notarization service. The word “Apostille” was popularized during the Hague Convention of 1961 in an agreement signed by 112 countries to make Apostilles the official form of international notarizations. The NEM blockchain and Apostille program takes the same idea of notarizations but instead of having notaries backed by political will and treaties, has notarizations backed by an international and decentralized blockchain bound by computer code and cryptography.
The key innovation of the Apostille blockchain notarization service is to not just make a one-off timestamp of a fingerprint of a document, but instead to also take that document's file name and combine it with the user’s account information to make a special and unique private key just for that file. That file’s dedicated private key is used to make and hierarchical deterministic (HD) account. Furthermore, we then make a fingerprint of a document by hashing its contents and then signing that hash with the private key of the user. That signed fingerprint is sent in a transaction to the HD account created from the file’s private key. This HD account is both created from a file metadata and now holds the fingerprint of the file in the form of a transaction, so it can be said to be “colored” with that file.
The whole process of making a private Apostille blockchain notarization can be seen as the following:
If one is familiar with the Colored Coins project in Bitcoin, it helps to understand NEM’s Apostille. The simple explanation of colored coins is to take something like a car title and then represent that car title on the blockchain by tagging a Satoshi. The color of that Satoshi is now “car title”. As that Satoshi is passed through the blockchain from one person to another, it can be understood that the car title is being passed from one person to another. The system in NEM of coloring data value sets to tokenize them is not too different from Colored Coins except that we color and account and not a Satoshi. So now in NEM if I take a car title and represent it as a digital file, I will get a dedicated private key for that file and can fingerprint that file and send that fingerprint to the account made from the dedicated private key. Once this has been done, we can say we have successfully colored the account. In this case, the color of the account in NEM is “car title”.
The Apostille system is just getting started there, though. In NEM we can send messages to that colored HD account representing updates to the notarized document. In the case of a car again, it could represent getting the oil fixed and at what mileage, or a message could be sent by the government or insurance company saying an owner had paid their fees for the year.
With NEM’s namespaces, unique and easily recognizable names can be bought on the NEM blockchain and attached to accounts. Once one name is taken, others may not also use that name in association with their accounts or projects. This is useful in Apostille because now a namespaced account with a company’s name can be used to issue blockchain notarizations. And if a company publishes the namespace on their website, brochure, company profile, etc., then all can know that there is only one official account that is recognized to be making blockchain notarizations for a certain line of goods. This makes Apostille and ideal service for companies trying to prevent counterfeit goods.
Additionally, NEM has advanced multisig contracts. This now means that the colored HD account can be transferred from person to person. If I own the car and the blockchain notarization HD account for the car, when I sell the car, I can also pass the colored HD account to the new buyer. This is because, in NEM’s version of multisig, an account can be owned by other accounts. Multisig contracts in NEM do not start by making a new account by combining the keys of other accounts as in some blockchains, but instead start with taking a pre-existing and already funded account and turning it into a "multisigged account". The multisigged account now no longer has a private key that can initiate transactions, but instead, the cosigners are the only accounts that can initiate transactions on behalf of the multisigged account.
This allows a colored HD account created in an Apostille blockchain notarization to be now owned by one or more parties and passed from owner to owner as some signers are added and others removed; a process which takes only a few clicks in NEM.
Furthermore, the Mijin private chain, a NEM based technology but with improvements made to it to increase performance, can also use the Apostille program. It currently is operating at 100’s of tx/s but the next generation core, codenamed “Catapult”, already has its testnet running at 1000’s of tx/s. By making a private Mijin chain for Apostille blockchain notarizations, but anchoring it to the NEM chain, nearly the same level of immutability can be obtained. For businesses needing to do millions of notarizations per day, large costs can be saved in not paying as many transaction fees, and they can also have complete control of the chain and its updates.
We believe the Apostille program has raised the bar to a new level when dealing with blockchain notarizations making it very suitable for new commercial applications.
Apostille comes as one service but two branches.
The first branch is the NanoWallet, where it can be used on the NEM mainnet or Mijin network. Using the NanoWallet version of Apostille ensures one is in full control of their own documents at all times and maintains their privacy.
The second version of Apostille is via apostille.nem.io, a website that aims to make the Apostille notarization as easy as possible. While at the time of writing this blog the website is still under construction, we expect it to be up and running by December 2016. When using apostille.nem.io, a user will have all their transaction fees paid for them and will not have to download a wallet.
The full Apostille White Paper can be found here.
NEM has gone through extensive open alpha testing starting 2014. The productive public chain is running flawlessly since March 31, 2015.