Blockchain Tech Approach Whitepaper VF1 Mar 30, 2018

1y ago
6.36 MB
13 Pages
Last View : 13d ago
Last Download : 2d ago
Upload by : Abby Duckworth

WhitepaperBlockchain TechnicalImplementation GuidelineAuthor :Ravindra Ved

Contents-1.Overview32.Blockchain Design Considerations33.Implementation Approach64.Reference Architecture85.Appendix12

Blockchain Technical Implementation sm and cryptographically provable audittrails of transactions and events backed by essoptimization using blockchain technologies, theyare looking for in technical aspects of deployingand integrating blockchain technology, with theirexisting IT systems.Based on operating models and blockchainplatforms, there are variations in deployment andoperationsaspects,along withfactorslikeintegration & information security. This documentprovides approach and factors to consider ce needs.As the technology is evolving, most of theplatforms are undergoing a rapid change in thearchitecture as new features are been added.There is an effort to build frameworks andabstractionlayers toisolate theblockchaindevelopment team from these rapid changes, andlet them focus on core business use cases. Onesuch framework is Microsoft’s APP Builder. Itprovides sets of enterprise design patterns andreference implementations, along with oretically, the underlying blockchains are nowswappable, like Ethereum with Hyperledger Fabric.Blockchain DesignConsiderationsType of BlockchainsBroadly, blockchains are classified as :There exists a plethora of blockchain platforms,and selecting one over another, is a matter ofunderstanding the business needs and matching Public Blockchains (e.g. Bitcoin, Ethereum) Federated Blockchains (e.g. Corda) Private Blockchains (e.g. Ethereum & Hyperledger)them to the features provided by a specificplatform. It is advisable to experiment withprototypes before settling on a specific platform.The appendix lists a few popular platforms.The Public vs Private/Federated classifications arealso referred to as Permissionless vs Permissioned,Suggestion: Assess if the use-case really demandsrespectively. The way participants interact andtheconsensus is arrived at, varies based on the type ofuseofcryptocurrencyandexpensiveconsensus mechanism. There are many variationsof platforms around cryptocurrency, but most oftheenterpriseuse-casedonotneedcryptocurrency. Hence, understanding of theblockchain being deployed.The focus in this paper is on deployment of private(permissioned) blockchains.use-case is paramount in the selection of rightplatform. Enterprise use-cases mostly need animmutabledistributedledgerwithstrongprovenance, resource effective consensusL&T Infotech Proprietary03 / 13

Blockchain Technical Implementation GuidelinePrivate BlockchainsWhile there are many industry and ptedplatforms are Ethereum and Hyperledger Fabric,Artefacts backed by support services from Microsoft andChannels-IBM, respectively.of transactions between two partiesBlockchain Technical Components Blockchain deployment comprises of multipleDigital certificates (issued by CA) & KeyStore-coordinating components and artefacts, whichneed tocommunicateProvide mechanism to maintain confidentialityforexecutingThe Certificate Authorities provide the identityservices to participate on the networksmart-contracts, arriving at consensus & synchronizingThe certificates are stored on each node’sKeyStore for endorsing and verifying thedata. Understanding of these components istransactionsessential in identifying compute, storage andnetwork requirements during the implementation-phase.KeyStore is vital part of blockchaininfrastructure, it maintains multiple keysIn the implementation approach section, we willand integrate with client applications tolook into two different skill/roles required to deployfacilitate smooth transactions.and operationalize these technical components.-In every blockchain transaction, the identity,authenticity and ownership of asset isestablished using the Keys. KeyStore providesa secure way to backup private Keys.Services Peer Nodes- Smart contracts / Chaincode-They are networked services that maintainoutput is agreed by the peer network.ledger state and run smart contracts Mining / Ordering nodes-The Ordering Service agrees on transaction Transactions-It then submits it to peer node via RPC orWhile this is a separate component onREST API.Fabric, in Ethereum it is an integral functionof a peer/node.The sender of the transaction digitally signsit, and provides the address of the recipient.sequence and distributes blocks to peers.-Constitute the transaction logic whose-The transaction is then broadcasted over thenetwork, where they are mined/validated.L&T Infotech Proprietary04 / 13

Blockchain Technical Implementation Guideline-Once the consensus about the transactionsis achieved between the participating nodes,Consensus Algorithmsthe transactions are ordered and groupedinto a block to become the next chain in the blockchain.-Ethereum Platform-The consensus algorithm used by Ethereum isThe message is broadcasted back to thebased on “Proof of Work” and they have planssender and recipient confirming the additionto move towards “Proof of Stake”.of transaction as a part of valid block on-blockchain.The consensus algorithm approach providessafeguards against “Rogue” nodes on thenetwork. Hyperledger platformAlgorithms -Consensus-IT uses “Proof of Authority” which consumesless power, but does not provide safeguardsagainst “Rogue” nodes.Consensus is the process by which agreementis obtained on the peer network.-The selection of this algorithm has implicationon a network setup and the amount ofprocessing power and network bandwidthconsumed by each participating node.Transaction Throughput Platform Differences and SelectioncriteriaThe following differences between Ethereum andHyperledger platforms are the key drivers inselecting one over the other. Ethereum-Average block time of 17 seconds-25 TPS on average.Hyperledger-Dependent on network configuration.-700-1200 TPS with correctly optimizedconfiguration.Channels While Ethereum can be deployed as permissioned-Transaction throughput will decrease forlarge and growing, it does not support private channels i.e.separate ledger between sub-group of participants. Ethereum broadcasts the transactions to everyparticipant on the network.L&T Infotech Proprietary05 / 13

Blockchain Technical Implementation GuidelineData Store Official SupportEthereum- LevelDB — For storing and maintaining-blockchain Ethereum Hyperledger-LevelDB(default), CouchDB(optional)-CouchDB adds complex & rich read-onlyMicrosoft on Azure CloudHyperledger-IBM (on-premise and IBM Bluemix cloud)-Microsoft to provide on Azure platformqueriesImplementation ApproachBlockchain essentially is a state machine recording the state of Assets, as they move from one stage toanother, and from one participant to another in a workflow. The implementation comprises of three trackslisted below.Workflow Detailing & AdaptationTrackpeer nodes, acquiring certificates from certificationThe identification of assets to be tracked and theirThe deployment and configuration vary, based ontransition within a workflow, is the starting point.technical infrastructure, whether on-premise orThis can be recorded as activity diagram, process diagram, or on an Excel sheet.templates to begin with, however they need to beEvery node in the workflow is detailed byconfigured and customized.identifying the integration points and detailinguser interactions as use-case or user stories in thecontext of user personas and rming these functions.Infrastructure Setup & OperationsTrackauthorities, configuring digital certificates.Mostcloud“Network performing these functions.Business Services Development &Enhancements TrackDeveloping blockchain application comprises ofdeveloping,deployingandtestingmultiplemodules and their interoperations viz:In this phase, based on blockchain platform, thecomputational and networking infrastructure issetup and configured. This involves setting upL&T Infotech Proprietary06 / 13

Blockchain Technical Implementation Guideline Application module-- Implementing webIntegration module-Develop APIs forapplication andintegrating withpresentation logicinternal and externalsystemsInvoking blockchaintransactions- Blockchain module-Coding the digitalassets-Implement smartcontractsImplementing batchprocess requirementsSoftware Developers perform these functions.L&T Infotech Proprietary07 / 13

Blockchain Technical Implementation GuidelineReference ArchitectureConsortium & CommunitiesThe arrangements between participating entities in forming a consortium/communicates and selection ofconsensus protocol, have bearing on a network topology during deployment. This enables transactionpropagation and consensus formation between the participating nodes.We recommend analyzing the tasks on the following six dimensions:Consortium-basedFounders are equalNetworkamong Memberparticipants, mayinclude a joint legalentity among thefounders (e.g. – JV).Founder-directedIndividual founder in aNetworkposition to providestrong direction.FounderCommunity-basedDriven by industryNetworkstandards bodies orMemberMemberMemberMemberMemberMemberexisting nonblockchain networkowners.L&T Infotech Proprietary08 / 13

Blockchain Technical Implementation GuidelineConceptual ViewEach Node in an organization participates as Member or a Founder node.Diagram below depicts the set of services and components that needs tointeract within each such node.Node/OrganizationApplication ModuleBlockchain ModuleBlockchain Peer NodesInternal SystemsIntegration ModuleExternal Service ProvidersIDMComponents Overview IDM-several technical components listed in sectionauthentication, authorization and performabove (Blockchain Technical Components). -These are participating nodes on thenetwork, which are hosted on the peerprocessing systems are backbone of anynodes/organizations.Transactions origination and their lifecycleare tracked in Internal core ERP or CoreBanking systems.Integration Module-Blockchain Peer NodesThe system of records and transactionsenterprise.-This comprises of blockchain platform andstored user credentials and provide API forInternal Systems- -LDAP and Access manager component thatSSO functions. Blockchain Module External Service Providers-These are specific service providers, whichprovide feeds or updates on transactions inthe given business workflows, have beenlocked onto the blockchain.Most enterprise have ESB or integrationgateway that provides or exposes Internalsystems as API services.L&T Infotech Proprietary09 / 13

Blockchain Technical Implementation GuidelineDeployment ViewEvery participating node may choose to deploy the set of services based on their IT policies and roadmap.There is a trend towards Blockchain service components been deployed on cloud infrastructures havingstrong integration, with on-premise core systems (e.g ERP, Identity Servers).The diagram below provides reference architecture of Ethereum-based blockchain deployment.Node (Member / Founder)ExternalApplication Militarized ZoneBlockchainNodeBlockchainServiceVPNBlockchain Service( e.g Ethereum, Geth)WAF(e.g Ethereum,Geth)KeyStore (FIPS Compliance)Core Systems(Cloud or OnPrem)Batch ProcessingLDAP IntegrationServicesServicesExternal APIApplication ControllerSSL/TLSEmail IntegrationDatabaseApplicationDemilitarized ZoneFile StorageWAFUI ServiceWeb Portal(HTML/CSS/JS)L&T Infotech ProprietaryAPI ConnectorSSL/TLSLogging Service10 / 13

Blockchain Technical Implementation GuidelineIntegration ConsiderationsMost blockchain projects are integration-oriented,Every implementation must check for enterprise-having touchpoints with internal systems andwide integration infrastructure, however they maythird-party API providers. As an example, for anybe limited in terms of onboarding all the requiredsupplyparties and their specific APIs.chainprojectimplementation,thetransaction flows through core ERP, externalsuppliers, quality controls agencies, shipping andtransporting companies, government agencies likecustoms, banking and insurance companies, etc.Each of these participants will have differentmessage formats and integration needs.Special care should be taken in identifying whatneeds to be recorded on Blockchain and not usingit as a shared database for all the data exchangesbetween participants. Only the relevant andauditable data should be put on the blockchain.Off-chain data should be exchanged using provenintegration patterns.L&T Infotech Proprietary11 / 13

Blockchain Technical Implementation GuidelineAppendixList of Prominent blockchain platformsSr. No1Blockchain PlatformOverview decentralized platform that runs smart contractson a custom built blockchain.Ethereum is a decentralized platform that runssmart contracts: applications that run exactly asprogrammed without any possibility of downtime,censorship, fraud or third-party interference2Hyperledger and itsimplementations like Fabric Indy Sawtooth roha BurrowA modular platform with multiple implementations.Hyperledger is an open source collaborative effortcreated to advance cross-industry blockchaintechnologies. It is a global collaboration, hosted byThe Linux Foundation, including leaders in finance,banking, IoT, supply chain, manufacturing .com/technology/An open source distributed ledger system for issuingand managing digital assets.Chain Core is a blockchain platform for issuing andtransferring financial assets on a permissionedblockchain infrastructure. Chain Core runs on theopen-source Chain Protocol.5Corda is an open-source distributed ledger platformwith pluggable consensus — “it supports multipleconsensus providers employing different algorithmson the same network”.L&T Infotech Proprietary12 / 13

Blockchain Technical Implementation GuidelineAbout the AuthorRavindra VedLead Technical Architect with Digital Practice at LTIHe has 19 years’ of IT experience with proficiency in defining solution and buildinglarge scale distributed systems that ties platforms, products, tools and frameworksin a manner that is oriented towards achieving project goals. As a softwarepractitioner, he is experienced on Opensource stack (Java/Linux) and developingcloud native applications. Currently, he is leading Blockchain implementations at LTI.He is an Integrated Architecture Framework (IAF) certified professional, which is abasis for the content framework of TOGAF.He is a key member of architecture team for flagship programs for the Governmentof India currently been implemented by LTI. He has been in similar roles during hisassignments with General Motors, Walt Disney, Sony Pictures, Mobixell & Citi Bank.LTI (NSE: LTI, BSE: 540005) is a global technology consulting and digital solutions Company helping more than 250clients succeed in a converging world. With operations in 27 countries, we go the extra mile for our clients andaccelerate their digital transformation with LTI’s Mosaic platform enabling their mobile, social, analytics, IoT and cloudjourneys. Founded 20 years ago as a subsidiary of Larsen & Toubro Limited, our unique heritage gives us unrivaledreal-world expertise to solve the most complex challenges of enterprises across all industries. Each day, our team ofmore than 20,000 LTItes enable our clients to improve the effectiveness of their business and technology operations,and deliver value to their customers, employees and shareholders. Find more at or follow us [email protected] [email protected]&T Infotech Proprietary13 / 13

provides approach and factors to consider during selection and implementation of blockchain technologies. Blockchain Design Considera ons There exists a plethora of blockchain platforms, and selecting one over another, is a matter of understanding the business needs and matching them to the features provided by a specific platform.