In a blockchain project, the shared ledger is the beating heart of the solution. Data replicated automatically to all participants can never be changed or deleted. But what about the data that cannot be shared with everyone? Most enterprises are held to strict security and regulatory data controls; your data must be safeguarded both for competitive reasons and due to the sensitive nature of the content. Sharing that data with everyone might not be desirable, or even possible. Some data must be deleted when no longer required.
It's critical that you be able to control your data, where it's stored, how it's shared with other blockchain participants in your network and how it interacts with your on-chain transactions.
Kaleido’s Document Exchange Service solves these problems. Our new Document Exchange service allows you to privately store, manage and share files. The Document Store service provides a file-based storage solution that can be easily integrated with decentralized applications. On-chain identity registry and encryption are used to provide secure cross-organization file transfers.
IPFS is a distributed peer-to-peer file-sharing system in which every member of your network can access every file. This makes IPFS ideal for handling data that’s too large to be stored on the ledger, but should be shared with all participants. Applications can mask data through encryption, but cannot control who has a copy of that data or how long it is retained. The Document Store Service, on the other hand, is designed so that files can only be accessed by members of your organization. You do have the option to securely transfer individual files to other organizations using end-to-end encryption tied to organizational identity (which provides proof of the activity).
In addition to providing built-in storage, the Document Store Service also supports external storage solutions including AWS S3 Buckets and Azure Blob containers. There is no need to import or migrate files, connecting the service to existing storage will make all documents instantly available.
The service supports folders to conveniently organize files while allowing you to also address the files by hash regardless of where they are located. Interacting with the service can be done through its graphical user interface, RESTful and socket.io based APIs. We use KAFKA, a fault-tolerant, high-throughput and scalable system for the data transport functionality when transferring files among document store service instances.
Document store automatically generates hashes that uniquely identify each file in storage. These hashes can be easily pinned (stored on-chain), making it possible to track off-chain documents. The data itself is completely private and only sent to another participant’s private store if requested by you. When you want to send a copy to someone else, Kaleido handles the heavy lifting of compressing, encrypting, chunking and reliably transferring that large file. When it reaches the private storage on the other side, the hash is the same, so both parties can be confident they have the same payload and refer to it in on-chain Smart Contract logic.
For more information about Kaleido’s Document Exchange Service and how it works, check out our technical documentation or dive into our guided set of sample code. As always, feel free to reach out to our team of experts with any questions. We invite you to try it out for yourselves and provide feedback.
Kaleido is your easy button for developing next era blockchain based business applications.