Public Libraries and Blockchain by M Ryan Hess, Library Services Manager – Digital Initiatives, Palo Alto City Library
There are some tantalizing possibilities for public libraries with regard to blockchain technologies. One promising technology in the library context is Ethereum, a programmable blockchain platform.
Unlike other blockchain technologies, such as Bitcoin, Ethereum was designed for multiple use-cases. At Ethereum’s heart, is the blockchain, which allows automated, network-based validation of data. But Ethereum goes a step further, by adding a programmable layer that allows smart contracts or other programmable rules to be added. This programmable layer can be written in commonly-known scripting languages, such as JavaScript, reducing barriers to entry.
But Ethereum does not stop with smart contracts. Because of this programmable layer, other layers can be added on top, such as layers that serve content. The fancifully-named Inter-Planetary File System (IPFS), another blockchain-based protocol is one layer that can work to extend Ethereum.
These two technologies, Ethereum and IPFS, in fact, make for quite a powerful new model for sharing information. And since this is a primary mission of libraries, they open up important new ways for libraries to serve the public.
To understand the types of applications possible, a clear understanding of what Ethereum and IPFS do is required.
For libraries, the key functionality of Ethereum is the smart contract. This programmable layer allows for the authentication of any transaction, particularly those that could benefit from a network of participants.
If you consider the library environment, transactions are everywhere. We need validated MARC records that are provided by thousands of participating catalogers. Our users tag and comment on our catalog items. We have transactions involving borrowing and fines. We have event registration and possibly certificates for attending trainings in libraries. There are many kinds of transactions in libraries.
Ethereum is built to facilitate these transactions, but also to free these processes from the need for centralized control, but leveraging automated blockchain authentication. For example, currently, the library must run an expensive piece of software to validate that User X is authorized to check out Item Y from the Library. The system knows that Item Y is loanable due to the fact that library staff have cataloged it and made it available via the OPAC. Moreover, User X is authorized via the same centralized system to check out items, like Item Y.
But this is a closed system, controlled by the library. As such, the library can only make available items it has purchased and added to its collection. No one else can contribute and all users must go through the library to transact borrowing activities.
With a decentralized transactional system like Ethereum, the library can set up a peer-to-peer network for the community where anyone can add items and anyone can check them out. The rules in Ethereum’s smart contracts validate the transactions and ensure that everyone follows the borrowing rules.
So the very concept of a library can be radically changed by programmable blockchain technology like Ethereum.
But other blockchain-based technologies like IPFS to Ethereum’s smart contracts, even more possibilities can be considered.
IPFS is a protocol that combines Blockchain validation, Git for version control and BitTorrent for peer-to-peer data sharing. In short, it is a whole new, distributed model for delivering web content. With IPFS, web page content is stored across a network on peer machines in the form of small blocks of data. Like with a bitTorrent request, a person trying to load a given web page with IPFS does not communicate with a central server housing the web page. Instead, IPFS web content is delivered by thousands of networked peers. The result is distributed hosting of web content that does not require a central server. Moreover, IPFS uses blockchain and Git to verify that the web page you requested is the current, authorized version and not someone spoofing you.
Recently, IPFS was put to practical use in Spain where Catalonian separatists used it to restore access to websites that the Spanish government had taken down.
When combined with a smart contract technology like Ethereum, we can now program transaction rules into the delivery of content that is also distributed. One simple use case for these technologies could be a digital collection of oral histories, family photographs, newspaper stories and other historical documents stored on a wiki-like web platform stored on personal computers owned by members of the public, museums, publishers and libraries. Access rules and selection of items might be governed by Ethereum contracts and distributed with IPFS without the need of any organization hosting the collection.
But this is only one use case. There are many others as well.
Of course, the biggest challenge for any blockchain technology is the energy required to run the computers (the miners) who do the calculations that underpin the validation of every transaction. This is no small challenge and is already becoming an issue for Bitcoin, which requires enormous computing power to operate. Fortunately, Ethereum has made progress in this area, but it is an open question if running Ethereum-based programs will remain cheap enough for organizations like libraries to participate long-term.
Libraries were early adopters of networked information, introducing much of the public to Online Public Access Catalogs, computer-based searching and eventually the Internet. We will continue in this vein, experimenting with new technologies, exposing the public to them and using them to make access to knowledge and culture easier and more democratically distributed. Ethereum holds much promise toward this end.