Table of Contents
Recent advances in Distributed Ledger Technology (DLT) / Blockchain and the related blockchain security have significant implications for the global economy and financial services FinTech and Decentralized Finance (DeFi) solutions.
Blockchain is a set of technologies that through distributed computing and mathematics can now deliver Trust to an enterprise, consumer or financial institution remotely and without human intervention. Blockchain continues to improve at a torrid pace, driven first by Moore’s law and second by extraordinary advances in software and connectivity. As technology advances, the rapidly increasing number of use cases being developed on top of blockchain are illustrating the transformative potential of the technology to financial services, broader business, economy, and even society.
Blockchain application in the financial services industry has the potential to transform the way value is transferred, information is shared and business logic is coded.
Blockchain also introduces new challenges. One of the key advantages of blockchain technology over alternatives is the proven strong information integrity security, however, there are many inherent risks related to the confidentiality of the information stored in blockchain, blockchain scalability and availability, as well as the security of cryptographic keys or client software used to simplify user interaction with the blockchain.
For the blockchain to reach its full potential, it must address blockchain security challenges and meet or even exceed accepted security standards.
Enter the Blockchain Technology
Blockchain is an exciting emerging technology in the financial services industry. It could offer a more effective way to handle a wide range of financial transactions. That seems helpful, but can you rely on it?
Distributed Ledger Technology (DLT) is the generic name for the various implementations of blockchain technology solutions. Blockchain is originally the formal name of the tracking database underlying the digital currency bitcoin. The terms DLT or Blockchain are now used broadly to refer to any distributed electronic ledger that uses software algorithms to record transactions with reliability and anonymity. This technology is also sometimes referred to as a shared ledger, cryptocurrencies (the electronic currencies that first engendered it), bitcoin (the most prominent of those cryptocurrencies), and decentralized verification (the key differentiating attribute of this type of system).
Given our familiarity with office software and especially spreadsheets, one way to think of a blockchain is as a giant, interactive, constantly changing spreadsheet that can be viewed by any person that can access it. When one person makes a change, the spreadsheet is updated for all instantly, wherever they are. There is full transparency as to who and when made changes, as everyone that has access to the document can verify them independently.
Key concepts of the Blockchain:
- The blockchain is a decentralized database (or ledger) with predetermined network-enforced processes for updating the database for all parties.
- A distributed ledger allows a network to collaborate to form trust and consensus without paying a third party or centralized body to verify the accuracy of transactions.
- Taken together, they are a new class of decentralized data structures, which can be applied to disrupt/replace any centralized system that coordinates valuable information.
- These distributed databases are highly transparent, highly available, highly secure, highly trusted, and highly efficient.
At its heart, blockchain is a self-sustaining, peer-to-peer database technology for managing and recording transactions with no central administrator or a clearinghouse involvement and no need for centralized data storage. Because blockchain verification is handled through algorithms and consensus among multiple computers, the system is presumed immune to tampering, fraud, or political control. It is designed to protect against domination of the network by any single computer or group of computers. Participants are relatively anonymous, identified only by pseudonyms, and every transaction can be relied upon. Moreover, because every core transaction is processed just once, in one shared electronic ledger, blockchain reduces the redundancy and delays that exist in today’s financial system.
Today’s financial institutions are built on a centralized network premise. As banking precedes the digital era, this approach was the only way to tackle the problem of trusted recorded keeping and verifiability. In this model, the bank is the intermediary for all transactions that its customers make, and record the data appropriately.
As we have seen during the financial crises, this model can lead to systematic problems when there is no visibility (or trust) over the holdings each bank has. Similarly, an investor in a Ponzi scheme is reliant on being told by the scheme’s operator what the state of their holding is. Bernie Madoff is the central authority.
A distributed system, however, by definition prevents this occurrence because everything is visible by all market participants.
Blockchain could become a game-changing force in any venue where trading occurs, where trust is at a premium, and where people need protection from identity theft. The applications for new products and business models built on blockchain are only just beginning to emerge, and already include everything from smart contracts capable of self-execution, to reducing settlement time for corporate syndicated loans, to tracking the progress of assets through a supply chain.
Many of the large banks including Citigroup, Barclays, Deutsche and Santander are investing heavily in exploring its potential, with the latter noting that blockchain technologies could reduce banks’ infrastructure costs by $15-20bn a year by 2022.
The World Economic Forum (WEF) has conducted a 12-month study engaging industry leaders and subject matter experts globally and has defined six key findings regarding the implications of blockchain on the future of financial services:
- Blockchain has great potential to drive simplicity and efficiency through the establishment of new financial services infrastructure and processes.
- Blockchain is not a panacea; instead, it should be viewed as one of many technologies that will form the foundation of next-generation financial services infrastructure.
- Applications of blockchain will differ by use case, each leveraging the technology in different ways for a diverse range of benefits.
- Digital Identity is a critical enabler to broaden applications to new verticals; Digital Fiat (legal tender), along with other emerging capabilities, has the ability to amplify benefits.
- The most impactful blockchain applications will require deep collaboration between incumbents, innovators and regulators, adding complexity and delaying implementation.
- New financial services infrastructure built on blockchain will redraw processes and call into question orthodoxies that are foundational to today’s business models.
The WEF has also identified six key value drivers for blockchain in financial services:
- Operational simplification – Blockchain reduces/ eliminates manual efforts required to perform reconciliation and resolve disputes.
- Regulatory efficiency – Blockchain enables real-time monitoring of financial activity between regulators and regulated entities.
- Counterparty risk reduction – Blockchain challenges the need to trust counterparties to fulfil obligations as agreements are codified and executed in a shared, immutable environment.
- Clearing and settlement – Blockchain disintermediates third parties that support transaction verification/validation and accelerates settlement.
- Liquidity and capital – Blockchain reduces locked-in capital and provides transparency into sourcing liquidity for assets.
- Fraud minimization – Blockchain enables asset provenance and full transaction history to be established within a single source of truth.
In a recent response to a call for evidence by the European Securities and Markets Authority Deutsche Bank cited the following areas of potential blockchain application in its letter:
- Fiat currency payment and settlement.
- Securities issuance and transfer – creation of unique identifiers, transaction tracking and asset segregation.
- Securities clearing and settlement – through the delivery of more efficient post-trade processing.
- Securities asset servicing – through automation of dividend/interest payments and corporate actions processing.
- Enforcing derivatives contracts and improving derivatives clearing through smart contracts.
- Asset registries – without the need for a central administrative authority.
- Know your Customer and Anti-Money Laundering registries and surveillance.
- Creating transparency – and facilitating differentiated customer and regulatory reporting.
There are likely many more – every financial process that involves multiple parties and requires record-keeping could potentially benefit from blockchain.
Deutsche Bank also noted in its letter that the blockchain “has the potential to create new industry opportunities and disrupt existing technologies and processes“. Beyond finance, it sees the use of the blockchain growing on the institutional level, citing the work of government bodies in the area of the blockchain.
Furthermore, large tech companies are also seeing the potential for blockchain-powered products for new and emerging markets, as well as for application to traditional financial and government institutions and processes (such as social welfare distribution, disaster relief fund allocation and voting).
Though it’s still early days, what is clear is that we are at the beginning of a revolution in the way trust is delivered and ownership rights (or value) are transferred. On the face of it, this new world does not require third-party validation. Society expects better solutions and they are already being realized by those that are applying distributed ledger technologies.
Blockchain has the potential to disrupt the financial services value proposition to customers. Early signs suggest there will be many opportunities to leverage it to help build greater trust in the exchange of goods, services, assets and information around the world. In our view, blockchain may result in a radically different competitive future in the financial services industry, where current profit pools are disrupted and redistributed towards the owners of new highly efficient blockchain platforms.
However, academics, practitioners and regulators have identified several operational, security, governance, privacy and legal concerns and potential risks that should be addressed adequately before blockchain delivers on its promise and is implemented for supporting infrastructure as critical as that underpinning financial services.
Blockchain Key Technical Concepts
Blockchain is a technology that enables so-called “peer-to-peer” transactions. With this type of transaction, every participant in a network can transact directly with every other network participant without involving a third-party intermediary.
Network of Participants
Entities that wish to transact in a standardized way with others can create a network of participants that adopt a distributed ledger technology solution for communicating, storing and validating information related to a single standardized use case.
The blockchain innovation is that transactions are no longer stored in a central database, but distributed to all participating computers (nodes), which store the data locally. Traditional intermediaries, e.g. a bank, are no longer required under this model, as the other participants in the network act as witnesses to each transaction, and as such can afterwards also provide confirmation of the details of a transaction because all relevant information is distributed to the network and stored locally on the computers of all participants.
Blocks and Chains of Blocks
Where a network participant decides to enter data into the distributed ledger (DL) they would define variables of the record as determined by the use case. All information relating to an individual record is then combined with the details of other records made during the same period to create a new block of data.
The data stored in a block is verified using algorithms, which attach a unique hash to each block. Each such hash is a series of numbers and letters created on the basis of the information stored in the relevant data block. If any piece of information relating to any transaction is subsequently changed as a result of tampering or due to transmission errors, e.g. the exact amount of the transaction, the algorithm run on the changed block will no longer produce the correct hash and will therefore report an error.
All number/letter combinations are continuously checked for correctness and the individual data blocks are combined to form a chain of individual data blocks – the blockchain. Due to the interlinking of these number/letter combinations, the information stored on the blockchain cannot be tampered with (at least this would require a great deal of effort). This continuous verification process (called “mining”) is performed by the network participants.
The verification process ensures that all network participants can add to the blockchain but no subsequent revisions are possible. This enables direct, peer-to-peer transactions between persons or organizations that used to require the services of an intermediary in order for their transactions to be legitimately recorded. For example, while a bank is currently needed as an intermediary to effect a financial transaction between two parties, the same transaction can be executed and documented directly between the two parties if a blockchain is used.
A mutual distributed ledger, or a blockchain, has the following key capabilities:
- Mutual – blockchains are shared across organizations, owned equally by all and dominated by no one;
- Distributed – blockchains are inherently multi-locational data structures and any user can keep his or her own copy, thus providing resilience and robustness;
- Ledger – blockchains are immutable, once a transaction is written it cannot be erased and, along with multiple copies, this means that the ledger’s integrity can easily be proven.
Another way to think of blockchains is as permanent timestamping engines for computer records. Timestamps can be used to prove that data elements were entered at or before a certain time and have not been altered.
In a blockchain, the data structure links a unique, computer-generated signature, ‘hash’, of the previous record into a new record. Thus, the mechanism for adding new records must ensure:
- updated blocks are broadcast quickly to all users of the blockchain;
- individual users being unable to access the system does not stop the process of adding new records;
- where there is a conflict such that there are two incompatible versions of the blockchain broadcast at about the same time (a ‘fork’), there is a process to ensure that the situation is resolved quickly and the integrity of the blockchain is maintained.
“Permissioned” versus “Unpermissioned”
Oxford Dictionaries define a cryptocurrency as “a digital currency in which encryption techniques are used to regulate the generation of units of currency and verify the transfer of funds, operating independently of a central bank”. Cryptocurrencies – Bitcoin in particular – stimulated the current interest in blockchains, which are a core component of the digital technology making cryptocurrencies work.
A blockchain that can be read or updated by literally anyone, such as a cryptocurrency, is termed ‘unpermissioned’. In contrast, a ‘permissioned’ blockchain can be updated or validated only by authorized users within set governance rules.
Permissioned blockchains need some form of governance that guarantees admission and expulsion from the community of authorized users and defines how updates to the blockchain are made and validated. Permissioned blockchains have a significant advantage in cost and speed. They can also provide an ability to ‘evolve’, for example providing efficient and timely changes in the structure of the blockchain itself or in supporting processes, as new business or regulatory requirements emerge. Finally, a permissioned blockchain provides a structure for meeting legal and regulatory requirements to ‘contract with someone’. In a regulated environment, there may need to be a ‘user of last resort’ which maintains a current copy of the blockchain and contracts to rebroadcast it if required.
“Public” versus “Private”
A blockchain can also be ‘public’ or ‘private’. A ‘public’ blockchain is available for everyone to read. Within the ‘public’ structure, users can encrypt information placed on the blockchain, so that although everyone can see the encrypted version only those who receive the key can actually read the information. A ‘private’ blockchain is visible only to authorized users. Blockchain is generally thought of as useful in applications where multiple participants need to agree on a regularly changing dataset. However, it can also be useful within one organization to provide a tamperproof audit trail for external review or to simplify processes between multiple internal areas.
Core Blockchain Security Functions
Each block contains two types of information. The first type is application-specific information (‘payload’) that records transactions or smart contracts. These consist of a combination of data and code executable by the nodes. The second type is internal information that secures the block and specifies how it is chained to another. Blocks get automatically propagated across the network, verified and linked via hash values.
The main protection mechanisms are the following:
The first protection mechanism is linking each block with its predecessor in a way that is computationally hard to undo. This is achieved by the combination of two techniques. The first technique is the use of a hash tree. This means that a hash is calculated for each block, which includes the hash value of the previous block. This is done for each new block created, with the exception of the first block (the ‘genesis’ block), which has no predecessor. The second technique is the inclusion of a special number in each block, the block’s ‘nonce’. Insertion of the right nonce allows calculating a specific hash value over the entire block. Such a nonce is computationally hard to calculate, therefore it is referred to as a ‘proof-of-work’. When the correct nonce is inserted in the location reserved, calculating the hash function over the block will yield a specific hash value, i.e. one that starts with a specified number of zeroes. Since the nonce is hard to calculate, replacing a block with another one would mean redoing the nonce computations of all blocks that were subsequently linked to it. With the current state of algorithms and computing power, it is generally believed to be infeasible after extending the chain with approximately six blocks.
The second protection is the peer-to-peer built-in consensus mechanism. A majority of nodes need to agree about the next block that extends the chain. There is no central point of control that can be compromised. A blockchain system functions without a central trusted entity, in a peer-to-peer mode, where all nodes are equal. There is no trust between the nodes, so they need to rely on a consensus mechanism to confirm the transactions. The consensus mechanism is based on verification by every node that the received information complies with a set of rules, and by a verification of the nonce (the ‘proof-of-work’). The rules verify that the proposed transaction complies with the application functionality. This is application-specific. For example, in the case of a virtual currency it is verified that the payer has ownership over the coins he wants to spend.
Such ownership is demonstrated by a signature using the private key of a Public Key Infrastructure (PKI) key pair. The verification of the ‘proof-of-work’ demonstrates that a node has invested the required computational power to participate in the extension of the chain.
If two nodes would broadcast different versions of the next block at the same time, some nodes may receive one or the other first. Each node would work on the first block received, but save the other branch in case it becomes longer. The tie will be broken when the next nonce is found and one branch becomes longer; the nodes that were working on the other branch will then switch to the longer one.
While these two protection mechanisms are inherent to each Blockchain, the third protection mechanism is optional. It stems from the fact that Blockchains come in two different flavours: previously discussed permissionless and permissioned. The third, optional protection mechanism is designing the Blockchain application to use the permissioned model and allow only a limited set of known and accepted network participants, or nodes, to process the transactions and extend the chain. As this type of chain is typically set by know and consenting organizations with an assumed level of trust, the consensus mechanism could be based on less intensive computational processes than the previously described ‘proof-of-work’. Such permissioned Blockchain function is based on the self-interest of the participants and they do not need to prove to each other they invested a sufficient amount of computational power in confirming the transactions.
Regulatory Point of View
Regulators have initially monitored many Blockchain-related initiatives and there are examples where enforcement actions were taken against projects that were clearly in breach of the current legal framework. After the initial wait-and-see stance, regulators have become convinced of the possibilities of the technology since it has the ability to achieve a more accurate way of reporting and increase regulatory efficiency. Blockchain could offer the regulators access to a vast amount of records and ultimately alter the way the industry is regulated. It has already shown that this has the ability to reveal money-laundering schemes or potentially discover unauthorized international tax avoidance in a quicker way.
This increased interest in the Blockchain by the regulators was noticeable by the number of reports and guidance that were published in short succession. For example, the European Securities and Markets Authority (ESMA) has recently closed off a period for a call for evidence on investments using virtual currencies or Blockchain and the European Banking Authority (EBA) has set up a task force to investigate Blockchain implications. These and other actions are to be welcomed and show some appreciated well-willingness from the regulators’ side.
In addition to the growing number of publications and ongoing research, there are now regulators actively facilitating Blockchain projects. For example, the State of New York is offering a ‘BitLicense’ which allows businesses to conduct virtual currency activities on a blockchain-infrastructure. In the UK, the Financial Conduct Authority (FCA) has set up a regulatory sandbox to provide innovative initiatives with a so-called ‘safe space’, i.e. businesses can test their products and services in a way they do not have to worry about regulatory constraints or be afraid of legal action taken against unauthorized activities. Similar to the UK, the Australian government is taking a leading role in providing start-ups with facilities to further develop their activities with assistance from for example the Australian Securities and Investments Commission (ASIC). Adding to that, the Reserve Bank of Australia (RBA) is developing their ‘New Payments Platform’ (NPP) by implementing Blockchain. This will provide, amongst others, real-time payments and 24/7 availability.
The Hong Kong Monetary Authority (HKMA) is also supporting the adoption of FinTech and blockchain by collaborating with the Hong Kong Applied Science and Technology Research Institute (ASTRI) to form a FinTech Innovation Hub as well as driving a number of blockchain-related initiatives. Hong Kong authorities also seek to better incorporate FinTech and related technologies such as blockchain into its regulatory structure. The Security and Futures Commission (SFC), Hong Kong’s security regulatory agency, launched a pilot project in late 2016 to use FinTech data to improve its regulatory processes. In addition, a recently launched HKMA Fintech Supervisory Sandbox will facilitate pilot trials of new FinTech products and initiatives that authorized institutions and other FinTech stakeholders can conduct in a live, controlled environment before rolling them out to broader audiences. Finally, HKMA is undertaking research in establishing a central bank-issued digital currency and the use of blockchain for secure document validation. HKMA hopes to complete its proof-of-concept on digital currency by the end of 2017. It already has released preliminary results of its research on blockchain and plans to release more information in mid-2018 as it continues its research.
While the level of interest from the regulators is encouraging, the existence of sandboxes as ‘safe spaces’ for innovation however uncovers the fact that blockchain initiatives have not yet found their definite place within the current legal framework and legislative changes will be necessary to provide the financial industry with legal certainty in their activities.
Governance and Cybersecurity Challenges and Controls
Blockchain provides a superior ability to preserve information integrity. In order to change any past information after the participant consensus has been reached, information in all subsequent blocks would have to be changed as well, at a huge computational expense and with the changes visible to all the participants, making information in the blockchain practically immutable. Strong information integrity protection is the only inherent and clear security-related benefit of blockchain over traditional technologies.
However, while the core blockchain is proven to be resilient to information integrity attacks, integrity could be still compromised in case of client software (wallet) compromise and this will be discussed further down.
Privacy and Confidentiality
Privacy in blockchain refers to the ability for network participants to control which information stored in the blockchain is exposed to other network participants. According to the Blockchain design, all network participants have access to the whole ledger and many store their own copies of the whole ledger. In financial services it is to be expected that blockchain will contain private protected information as well as information about transactions that normally would not be shared outside of an organization.
Privacy in the blockchain is seen as the critical feature for blockchain adoption by the industry and for achieving compliance with relevant privacy and data protection regulations.
Blockchain privacy is additionally complicated by the blockchain design which primarily addressed information integrity. Blockchain is designed to be transparent. The focus on integrity in such a decentralized model requires all the network participants to share information. This transparency is by design, and is critical to maintaining trust: every participant verifies every transaction. Bottom line is that anything recorded onto a blockchain can be arbitrarily inspected without any restrictions by all participants.
Nonetheless, measures can be taken to enhance privacy. Addressing information confidentiality and privacy in blockchain can be achieved through a number of controls complementary, rather than inherent to blockchain, such as encryption or data anonymization.
In addition to addressing the confidentiality of protected information stored in the blockchain, it is important to consider the confidentiality of meta-data stored in blockchain. In addition to transactions being stored transparently; public keys that transact are anonymous but fixed meaning that transactions and transaction participants can be easily tracked over time. Applying advanced analytics approaches to that data could also lead to the de-identification of participants and the creation of new sensitive data.
To further exacerbate the problem, many jurisdictions are implementing the “right to be forgotten” laws providing consumers with an option to request their personal information to be removed from the databases. If information needs to be removed from a blockchain it might be challenging to implement due to the immutability of blockchain as well as its distributed nature. In an implementation in which many counterparties have copies of the blockchain, it would be difficult to prove that all data has been deleted.
Smart contracts are autonomously executed software programs stored in a blockchain and used to automate business processes on the blockchain. In order to execute the coded logic, smart contracts require access to the data stored in blockchain and that creates an additional risk of leaking confidential consumer data as well as confidential business information.
Practices and controls to consider
Privacy Threshold Analysis (PTA), Privacy Impact Assessment (PIA), and Data Protection Impact Assessment (DPIA)
From previous paragraphs it follows that blockchain adoption may entail a high risk to the privacy of the persons whose data are processed as well as to the confidentiality of business data that might be stored in a blockchain.
Privacy Threshold Analysis (PTA), Privacy Impact Assessment (PIA), and Data Protection Impact Assessment (DPIA) processes are conducted at the early stages of blockchain projects to understand if, and to what extent the blockchain solution will have privacy and data protection impacts. Such an assessment leads to further insight into the data protection aspects of the envisioned blockchain application and it also offers a useful point of reference to help ensure privacy and data protection compliance. It will increase the likelihood that privacy and data protection requirements are embedded into projects at the outset which may also prevent excessive privacy compliance costs later down the road.
In a traditional system each party had a wide variety of controls and technologies at their disposal to secure the data at rest or at transit according to their policies. In blockchain majority of the ability to control access to data is centralized in encryption. Blockchain requires an even stringent focus on encryption than traditional controls with a particular focus on key management. Another related control to consider is encrypting the ledger with more than one key and applying on-chain encryption. Encryption is the critical control and will be elaborated further down in the paper.
The original blockchain design requires each node to store all states (account balances, contract code and storage, etc.) and process all transactions. Sharding is an approach where the space of possible accounts is split into a number of subspaces (shards) and each shard gets its own set of validators. Transactions within the same shard would work in the same way as they work in the original design, but additional complexity might be introduced in order to achieve data sharing between the shards. Sharding can help with privacy and data protection challenges directly as well as indirectly by improving, although not guaranteeing, anonymity against behavioural profiling and metadata correlation.
Another approach to reducing the amount of data stored in distributed ledgers is using pruning (deleting) old blocks based on the security, performance and/or regulatory requirements. By reducing the amount of historical data available for correlation the process could improve anonymity against behavioural profiling and metadata correlation.
Multiple Key Pairs
Creating fresh key pairs for each new transaction is another privacy-preserving strategy that can further frustrate metadata correlation efforts.
Controlled Key Mapping
In a majority of financial services blockchain use cases, there is a need to be able to map keys to network participants. In such cases a centralized authority may be established to keep the mapping between keys and entities and protect the identity of network participants.
Centralization is an approach in which a blockchain is contained only within one, or few, strictly controlled locations in order to localize the information and reduce exposure. In this approach participants simply message transaction requests to these central authorities and receive certain crypto-based proof of successful transactions. Privacy and confidentiality are improved since the majority of the participants don’t have access to the full ledger, however, this approach undermines the key positive features of blockchain and offers no, or very limited advantage over well-established approaches based on databases and messaging platforms.
In addition to on-chain encryption, there are other approaches to anonymize the data stored on the blockchain. One of those is tokenization in which each participant replaces the sensitive information it owns with a unique token and it manages its own mapping between sensitive data elements and tokens.
Zero-Knowledge Proof (ZKP)
ZKP is a new approach attempting to produce a perfectly anonymous and confidential cryptocurrency system. Approaches are still experimental, but it is an area of research to be followed and potentially adopted for other blockchain uses.
One of the primary differences of blockchain technology compared to the traditional is hinted in its name. The traditional centralized model of data storage and sharing can ease the implementation and management of security controls that are focused on the technology they are trying to protect. Blockchain shifts data storage and data sharing from the centralized model to a decentralized and dynamic model in which every blockchain network participant has access to all the data and intended levels of security have to be achieved through new and innovative blockchain security approaches.
As with any crypto-based infrastructure, and potentially even more, protecting keys is paramount to ensuring the blockchain security. Blockchain implementations rely on the cryptographically generated public and private keys to operate. The main challenge associated with cryptography is that stringent policies and procedures must be followed when managing keys, including people, processes and technology.
Blockchain combines the message and the asset in a single record. Once an asset is embedded into a distributed ledger, possessing the associated cryptographic keys is the only way to retrieve or move the asset. By contrast, in a traditional IT model, a key protects the database, which in turn protects the data or the asset. When the key and the asset are one, anyone who obtains the key can exploit the asset instantly and there are no additional controls to overcome.
While the blockchain technology itself has proven itself to be tamper-resistant, the most impactful vulnerabilities end up being those related to key management and to the application layer key management solutions – the wallets holding the keys. Private keys are the direct means of authorizing activities from an account, which in the event they get accessed by an adversary, will compromise any wallets or assets secured by these keys. The protection of the keys is mission-critical.
The methodology of the attacks seeking to gain unauthorized access to a system via stolen credentials remains fundamentally the same-try to capture information, plant malware and/or use social engineering to steal the private keys from the user’s machine.
Potentially different private keys could be used for signing and encrypting messages across the distributed ledger. An attacker who obtained encryption keys to a dataset would be able to read the underlying data. However, if the signing key is secured, they will not be able to modify the data or interact with that smart contract.
The significance of protecting the private key is due to the fact that actions taking place on a hacker’s machine, such as file decryption attempts or private key reproduction, are not subject to server-imposed query limits and are run without anyone else being able to notice.
Unlike with traditional systems, where before a server administrator was capable of tracking attempts to break into a customer or user account, the malicious users can keep trying limitlessly to decrypt or try to reproduce a private key out of encrypted data from a given ledger. With blockchain, there is no way of knowing this is happening until after the hacker has succeeded.
Ultimately, the security of information protected by cryptography directly depends on the strength of the keys, the effectiveness of the mechanisms and protocols associated with the keys, and the protection afforded the keys. Cryptography can be rendered ineffective by the use of weak products, inappropriate algorithm pairing, poor physical security, and the use of weak protocols. All keys need to be protected against unauthorized substitution and modification. Secret and private keys need to be protected against unauthorized disclosure. Key management provides the foundation for the secure generation, storage, distribution, and destruction of keys.
Practices and controls to consider
Hardware security module (HSM)
Hardware security modules (HSMs) are the technology solution to safeguard and manage digital keys. A successful blockchain system needs highly reliable methods of interfacing with the strong key protection practices afforded by HSMs. Moving the cryptographic functions from software to dedicated hardware devices reduces the risk of processor errors. HSMs can be clustered for greater performance and availability, allowing encryption functions to scale without sacrificing security. By relieving servers from performing processor-intensive calculations, HSMs increase operational efficiency. To mount a successful attack, attackers either need to have administrative privileges, access to data before it is encrypted, or physical access to the HSM(s).
Use rules that require the use of multiple signatures to authorize and/or create transactions.
Allow the use of recovery agents-one way of doing this is through a trusted third party that holds the keying material required to recover keys.
Use different keys to sign and encrypt.
Enable internal identification of the individual signing of the request for a transaction.
Issue individual keys to persons working on behalf of the institution allowing audit and supporting investigations.
In decentralized, permissionless networks, where consensus is formed through the majority, taking control of a large enough portion of participating clients could allow an attacker to tamper with the validation process. This is often called the “51% attack” – When more than half the computing power on a blockchain mining network is controlled by an entity, it can effectively collude to certify false transactions by being able to produce new blocks faster than the rest of the network (in proportion to their computing power) leading participants to consider that chain as valid.
The extent of a consensus hijack will allow an attacker to refuse to process certain transactions as well as to re-use an asset that has already been spent.
Another consequence of such an attack is in the perspective of adoption. Any chain coming under attack might see an outflow of participants, leading to the question of which chain should be considered as the “main” one to follow as well as potentially crippling the value of that chain.
Another challenge comes from consensus protocols that do not involve some way of penalty to the participants. In this way for a malicious user would be easier to attack.
Practices and controls to consider
Limit Node Processing Ability
Make it difficult for a node to process a large number of transactions.
Processing Power Monitoring
Monitor if one of the nodes increases processing power and is executing a significantly higher number of transactions.
Consider advanced analytics approaches to monitor for participants’ anomalous behaviour.
Sidechains extend blockchain functionality by implementing multiple interoperable distributed ledger networks. Sidechains, due to their nature of being more specialized and typically having a smaller number of network participants are more at risk of a consensus hijack attack.
They are also introducing additional risks to the whole network of blockchains when sidechains participate in the transfer of assets and messages between chains. In those scenarios sidechains might introduce a fraudulent transaction into the parent chain after a sidechain has been compromised.
Practices and controls to consider
Require the use of merged mining, where the proof of work applied to validate the parent chain may also be used to submit valid blocks for the sidechain.
Exploited Permissioned Blockchain
Just like a traditional approach where databases are controlled by a centralized authority, permissioned blockchain networks where consensus is controlled by a central authority are at risk of the central authority being exploited. Just like in the traditional systems, the key risks to be addressed are unauthorized or fraudulent actives by the central authority – whether due to a malicious insider or due to capabilities being hijacked.
Practices and controls to consider
Implement usual practices to manage risks and monitor for malicious insiders.
Implement traditional controls for authorizing and monitoring privileged activities.
Processing power monitoring
Monitor if one of the nodes increases processing power and is executing a significantly higher number of transactions.
Distributed nature of blockchain introduces an additional risk of any of the participants intentionally, or inadvertently, consuming too much of the blockchain processing resources and impacting the service. For example, if a rouge member starts pushing a large volume of irrelevant transactions, the network processing to validate the transactions, checking for fraudulent transactions, etc. could grind the network to a halt.
Practices and controls to consider
Block Noisy Participants
Monitor the network for “noisy” participants. In the case of a permissioned blockchain, it would be possible to ignore or block such a participant.
Writer Nodes Restriction
Depending on the use case, a potential approach could be to restrict which nodes can offer new transactions for validation. While all the nodes in the network would have read access, only carefully vetted and secured nodes could introduce new transactions. Attempts by other nodes to introduce new transactions could be blocked before too much computing power is expanded on validation.
Similar to the previous solution, in certain cases, it might be feasible to accept transactions only from select, authorized IP addresses. IP/Node Blocking Infrastructure of the blockchain solution should allow admin blocking of IPs/nodes that generate too many new transactions. This could be manual, or automatic based on certain thresholds.
New Transaction Fees
Depending on the use case, the system could assign fees to be charged for every new transaction request. Such an approach would make it difficult for a node to issue a large number of transactions.
Security and Privacy of Clients
Wallet management represents the process and technology used with which a wallet software operates with the keys assigned to it. The wallet software would need to protect the keys from being accessed without authorization, in both cases while stored, but also while in operation with the software.
Practices and controls to consider
Make sure the software for the wallet does not leave the key accessible in plain text outside the application.
Require the implementation of recovery keys.
Smart Contract Management
Smart contract management refers to the people, processes and technology used when creating a smart contract. Smart contracts are essentially programs that run on the distributed ledger. They are prone to any faults associated with code. As with any software, the more complex a smart contract is, the more prone to software errors it will be.
Practices and controls to consider
Smart contracts are codified in blockchain using an applicable scripting/programming language. Consider implementing usual software security best practices such as code reviews. A party, independent from the development team, with a similar skillset, should review all of the smart contract code before it is pushed into production.
Consider standardizing regular functions into libraries and protecting them against unauthorized modifications through strong change control. Limiting the parameters and bands that could be used for key functions through such standardization would reduce opportunities for the introduction of malicious code.
Smart Contracts Library
The next level of protection could be achieved by developing and standardizing a library of carefully vetted and approved smart contracts.
Practices and controls to consider
The original blockchain design requires each node to store all states (account balances, contract code and storage, etc.) and process all transactions. This provides a large amount of blockchain security, but greatly limits scalability: a blockchain can only process as many transactions as a single node can. In large part because of this, current public implementations such as Bitcoin or Ethereum are limited to a small number of transactions per second. Sharding is an approach where the space of possible accounts is split into a number of subspaces (shards) and each shard gets its own set of validators. As long as there are sufficiently many nodes verifying each transaction that the system is still highly secure, but sufficiently few that the system can process many transactions in parallel and therefore greatly improve the blockchain throughput.
The pruning concept, available in certain implementations of blockchain, allows for historic transactions to be pruned without peer coordination. The feature is facilitated via pruning predicate functions, provided along with any smart contracts a given system is desired to host. For certain use cases, pruning of historic transactions from blockchain systems could yield significantly reduced storage requirements for some categories of applications, especially such with low transaction interdependency.
For certain blockchain use cases, the concept of mini-blockchain might address the scalability issues. The mini-blockchain introduces the “account tree”, which is basically a balance sheet storing the balance of every account. With this change, transactions do not need to be stored forever in the blockchain. Only the most recent transactions and the current account tree have to be stored. The mini-blockchain is thus much more scalable than the original blockchain since the mini-blockchain only grows when new accounts are created.
The mini-blockchain consists of 3 components:
- Account tree
- Transaction tree
- Proof chain
First, the account tree is a Merkle tree of all the accounts in a given block, each account being a data block with an address and a balance (it can have more data fields, if necessary). Second, the transaction tree is a Merkle tree of all transactions in a given block, each transaction representing a change to a number of accounts. Third, the proof chain is simply a chain of blocks where each block contains a nonce, the top hash of the account tree and of the transaction for that block and the hash of the previous block. Basically, it is the headers of a normal blockchain.
Quantum computing may threaten the premise of asymmetric cryptography. Popular security algorithms that are used for securing information through a complicated challenge (e.g. RSA, ElGamal), may now be resolved in shorter amounts of time through the use of quantum computing. Though quantum computing does not seem to represent an immediate threat, it should be certainly taken into consideration for a future-proof solution.
Practices and controls to consider
Post-quantum cryptography refers to cryptographic algorithms (usually public-key algorithms) that are thought to be secure against an attack by a quantum computer. It is an area of active research with a growing number of quantum secure cryptographic systems and encryption schemes being developed.
The modern financial services industry has evolved to include a range of complex networks of participants and processes with firms on every side of a transaction depending on an overlay of controls to be sure that everything is done right. Blockchain is now making it possible to rethink which relationships make sense and whether they are still necessary. The disruptive potential of eliminating financial market intermediates – combined with the ability to streamline network and transaction costs, free up capital and reduce market and regulatory risk – allows unprecedented business opportunities in financial services.
If blockchain is to gain wide acceptance in financial services, promoters should acknowledge and address the concerns. Blockchain is new, but it has matured rapidly. The controls are different, but they can be designed and managed. Technical expertise is rare, but it can be found, especially in those organizations that have made a commitment to the technology. Blockchain is now being firmly embraced by many of the most respected institutions in the world. For the blockchain to move from the proof-of-concept stage to commercialization and broader acceptance, blockchain security and privacy concerns have to be addressed. PwC believes that we are now at the tipping point and there are real, practical, cost-effective solutions for blockchain assurance.
We expect that blockchain assurance will include the following steps:
- Evaluating the business use case and the needs of all stakeholders.
- Assessing the underlying cryptography, including how private keys are managed and how blockchain security is maintained. This would include reviewing the consensus mechanism being used to be clear about when a new record should be added.
- Examining how the specific network has been set up, how that system’s reports are being generated, and the controls that guide that network’s operation. Keep in mind that there is no such thing as a standard blockchain. There are many blockchain systems, and each implementation is unique.
- Performing ongoing reviews to assess the effects of any systemic changes.
Using the approach described here, defusing concerns about blockchain technology are now within reach.
[This article was updates from an original 2013 article. It was also adapted and published by the Hong Kong Monetary Authority]
Cryptosec is a leading provider of security solutions in the rapidly evolving world of blockchain, cryptocurrency, DeFi. Their specialist investigations arm, Crypto Investigators, offers expert services in blockchain forensics and legal investigations, leveraging deep industry knowledge and advanced investigative techniques to navigate the complexities of the digital age.