Practical runtime verification of cross-organizational smart contracts | Research Square window.SnipcartSettings = { analytics: { enabled: false } }; (function() { var accessVector = localStorage.getItem('access_vector') || ''; window.dataLayer = window.dataLayer || []; if (accessVector) { window.dataLayer.push({ user: { profile: { profileInfo: { snid: accessVector } } } }); } })(); (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src='https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);})(window,document,'script','dataLayer','GTM-K279D39R'); Browse Preprints In Review Journals COVID-19 Preprints AJE Video Bytes Research Tools Research Promotion AJE Professional Editing AJE Rubriq About Preprint Platform In Review Editorial Policies Our Team Advisory Board Help Center Sign In Submit a Preprint Cite Share Download PDF Research Article Practical runtime verification of cross-organizational smart contracts Damaris Jepkurui Kangogo, Bertalan Zoltán Péter, Attila Klenik, and 1 more This is a preprint; it has not been peer reviewed by a journal. https://doi.org/ 10.21203/rs.3.rs-4606405/v1 This work is licensed under a CC BY 4.0 License Status: Posted Version 1 posted You are reading this latest preprint version Abstract Smart contracts in blockchains often implement critical functionality; consequently, their development time software fault detection, removal, and avoidance have been the target of intensive research. However, the applicability of runtime dependability mechanisms to smart contracts has not been explored systematically, mainly due to the transaction pricing models of public blockchains. In this paper, we propose a novel and practical runtime verification approach for Hyperledger Fabric, the leading cross-organizational blockchain platform, as an error detection facility for fault tolerance mechanisms; building on the proposition that, in contrast to the public setting, cross-organizational blockchains have ample computational headroom for their systematic use. We introduce a smart contract entity framework architecture with reusable domain models and encapsulated runtime verification. We describe Hypernate, our open-source implementation of the approach for Java smart contracts, which uses the Java Modelling Language for requirement specification and integrates the OpenJML verification tool. We demonstrate and evaluate the approach on a Fabric implementation of the TPC-C benchmark. runtime verification Hyperledger Fabric Java Modeling Language blockchain distributed ledger smart contracts Full Text Additional Declarations No competing interests reported. Cite Share Download PDF Status: Posted Version 1 posted You are reading this latest preprint version Research Square lets you share your work early, gain feedback from the community, and start making changes to your manuscript prior to peer review in a journal. As a division of Research Square Company, we’re committed to making research communication faster, fairer, and more useful. We do this by developing innovative software and high quality services for the global research community. Our growing team is made up of researchers and industry professionals working together to solve the most critical problems facing scientific publishing. Also discoverable on Platform About Our Team In Review Editorial Policies Advisory Board Help Center Resources Author Services Accessibility API Access RSS feed Manage Cookie Preferences © Research Square 2026 | ISSN 2693-5015 (online) Privacy Policy Terms of Service Do Not Sell My Personal Information {"props":{"pageProps":{"initialData":{"identity":"rs-4606405","acceptedTermsAndConditions":true,"allowDirectSubmit":true,"archivedVersions":[],"articleType":"Research Article","associatedPublications":[],"authors":[{"id":320447707,"identity":"4c8dd727-19c5-45fa-a77f-675384b9ca58","order_by":0,"name":"Damaris Jepkurui Kangogo","email":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZAAAAAyAQMAAABI0h/eAAAABlBMVEX///8AAABVwtN+AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAA30lEQVRIiWNgGAWjYDCCM1Can4HBgIGxAciSIFaLZAPJWgwOEKuF78zhZw+/VNTKGR9v3ibBuGObHIN0jwFeLZJn28yNZc4cNzY7c6xMgvHMbWMGmTP4tRicZzCTlmw7lrjtRo6ZBGPb7cQGiRxCWti/gbVsnv8GrKWesJazPWaSH9tqEjdI8IC1JDAQ0iJ55kyZNMOZA8YSZ9KKLRLP3DZsk0grwKuF70z6NskfFXVy/O2HN974uOO2PL9E8ga8WkCAmYfhMISVAMRsBNUDAeMPhjpi1I2CUTAKRsFIBQAu40o3VbT/qQAAAABJRU5ErkJggg==","orcid":"","institution":"Department of Measurement and Information Systems, Budapest University of Technology and Economics","correspondingAuthor":true,"prefix":"","firstName":"Damaris","middleName":"Jepkurui","lastName":"Kangogo","suffix":""},{"id":320447708,"identity":"2a4405a6-2afb-4e28-9504-5766b9eb2cc7","order_by":1,"name":"Bertalan Zoltán Péter","email":"","orcid":"","institution":"Department of Measurement and Information Systems, Budapest University of Technology and Economics","correspondingAuthor":false,"prefix":"","firstName":"Bertalan","middleName":"Zoltán","lastName":"Péter","suffix":""},{"id":320447710,"identity":"a97f0003-c8a7-4152-86f0-3d079906679a","order_by":2,"name":"Attila Klenik","email":"","orcid":"","institution":"Department of Measurement and Information Systems, Budapest University of Technology and Economics","correspondingAuthor":false,"prefix":"","firstName":"Attila","middleName":"","lastName":"Klenik","suffix":""},{"id":320447714,"identity":"d7d17903-3157-4ca9-968f-d5bb969bf767","order_by":3,"name":"Imre Kocsis","email":"","orcid":"","institution":"Department of Measurement and Information Systems, Budapest University of Technology and Economics","correspondingAuthor":false,"prefix":"","firstName":"Imre","middleName":"","lastName":"Kocsis","suffix":""}],"badges":[],"createdAt":"2024-06-19 13:59:29","currentVersionCode":1,"declarations":"","doi":"10.21203/rs.3.rs-4606405/v1","doiUrl":"https://doi.org/10.21203/rs.3.rs-4606405/v1","draftVersion":[],"editorialEvents":[],"editorialNote":"","failedWorkflow":false,"files":[{"id":99795116,"identity":"59e13a95-4a5f-4b8c-ae96-c6d3c52cc175","added_by":"auto","created_at":"2026-01-08 13:37:01","extension":"pdf","order_by":1,"title":"","display":"","copyAsset":false,"role":"manuscript-pdf","size":539165,"visible":true,"origin":"","legend":"","description":"","filename":"rv23Paper.pdf","url":"https://assets-eu.researchsquare.com/files/rs-4606405/v1_covered_af4e0a44-a3fc-4032-823d-5646b2a262ff.pdf"}],"financialInterests":"No competing interests reported.","formattedTitle":"Practical runtime verification of cross-organizational smart contracts","fulltext":[],"fulltextSource":"","fullText":"","funders":[],"hasAdminPriorityOnWorkflow":false,"hasManuscriptDocX":false,"hasOptedInToPreprint":true,"hasPassedJournalQc":"","hasAnyPriority":false,"hideJournal":true,"highlight":"","institution":"","isAcceptedByJournal":false,"isAuthorSuppliedPdf":true,"isDeskRejected":"","isHiddenFromSearch":false,"isInQc":false,"isInWorkflow":false,"isPdf":true,"isPdfUpToDate":true,"isWithdrawnOrRetracted":false,"journal":{"display":true,"email":"
[email protected]","identity":"researchsquare","isNatureJournal":false,"hasQc":true,"allowDirectSubmit":true,"externalIdentity":"","sideBox":"","snPcode":"","submissionUrl":"/submission","title":"Research Square","twitterHandle":"researchsquare","acdcEnabled":true,"dfaEnabled":false,"editorialSystem":"","reportingPortfolio":"","inReviewEnabled":false,"inReviewRevisionsEnabled":true},"keywords":"runtime verification, Hyperledger Fabric, Java Modeling Language, blockchain, distributed ledger, smart contracts","lastPublishedDoi":"10.21203/rs.3.rs-4606405/v1","lastPublishedDoiUrl":"https://doi.org/10.21203/rs.3.rs-4606405/v1","license":{"name":"CC BY 4.0","url":"https://creativecommons.org/licenses/by/4.0/"},"manuscriptAbstract":"Smart contracts in blockchains often implement critical functionality; consequently, their development time software fault detection, removal, and avoidance have been the target of intensive research. However, the applicability of runtime dependability mechanisms to smart contracts has not been explored systematically, mainly due to the transaction pricing models of public blockchains. In this paper, we propose a novel and practical runtime verification approach for Hyperledger Fabric, the leading cross-organizational blockchain platform, as an error detection facility for fault tolerance mechanisms; building on the proposition that, in contrast to the public setting, cross-organizational blockchains have ample computational headroom for their systematic use. We introduce a smart contract entity framework architecture with reusable domain models and encapsulated runtime verification. We describe Hypernate, our open-source implementation of the approach for Java smart contracts, which uses the Java Modelling Language for requirement specification and integrates the OpenJML verification tool. We demonstrate and evaluate the approach on a Fabric implementation of the TPC-C benchmark.","manuscriptTitle":"Practical runtime verification of cross-organizational smart contracts","msid":"","msnumber":"","nonDraftVersions":[{"code":1,"date":"2024-07-11 06:48:46","doi":"10.21203/rs.3.rs-4606405/v1","editorialEvents":[{"type":"communityComments","content":0}],"status":"published","journal":{"display":true,"email":"
[email protected]","identity":"researchsquare","isNatureJournal":false,"hasQc":true,"allowDirectSubmit":true,"externalIdentity":"","sideBox":"","snPcode":"","submissionUrl":"/submission","title":"Research Square","twitterHandle":"researchsquare","acdcEnabled":true,"dfaEnabled":false,"editorialSystem":"","reportingPortfolio":"","inReviewEnabled":false,"inReviewRevisionsEnabled":true}}],"origin":"","ownerIdentity":"c92296e2-1e72-44df-9aa7-d7690204ad89","owner":[],"postedDate":"July 11th, 2024","published":true,"recentEditorialEvents":[],"rejectedJournal":[],"revision":"","amendment":"","status":"posted","subjectAreas":[],"tags":[],"updatedAt":"2026-01-06T22:08:43+00:00","versionOfRecord":[],"versionCreatedAt":"2024-07-11 06:48:46","video":"","vorDoi":"","vorDoiUrl":"","workflowStages":[]},"version":"v1","identity":"rs-4606405","journalConfig":"researchsquare"},"__N_SSP":true},"page":"/article/[identity]/[[...version]]","query":{"redirect":"/article/rs-4606405","identity":"rs-4606405","version":["v1"]},"buildId":"qtupq5eGEP_6zYnWcrvyt","isFallback":false,"isExperimentalCompile":false,"dynamicIds":[84888],"gssp":true,"scriptLoader":[]}
Text is read by the "Ask this paper" AI Q&A widget below.
Extraction quality varies by source — PMC NXML preserves structure
cleanly, OA-HTML may include some navigation residue, and OA-PDF can
have broken hyphenation. The publisher copy
(via DOI)
is the canonical version.