A formal approach to contract verification for high-integrity applications

dc.contributor.authorZhang, Zhi
dc.date.accessioned2016-08-10T21:21:57Z
dc.date.available2016-08-10T21:21:57Z
dc.date.graduationmonthAugust
dc.date.issued2016-08-01
dc.description.abstractHigh-integrity applications are safety- and security-critical applications developed for a variety of critical tasks. The correctness of these applications must be thoroughly tested or formally verified to ensure their reliability and robustness. The major properties to be verified for the correctness of applications include: (1) functional properties, capturing the expected behaviors of a software, (2) dataflow property, tracking data dependency and preventing secret data from leaking to the public, and (3) robustness property, the ability of a program to deal with errors during execution. This dissertation presents and explores formal verification and proof technique, a promising technique using rigorous mathematical methods, to verify critical applications from the above three aspects. Our research is carried out in the context of SPARK, a programming language designed for development of safety- and security-critical applications. First, we have formalized in the Coq proof assistant the dynamic semantics for a significant subset of the SPARK 2014 language, which includes run-time checks as an integral part of the language, as any formal methods for program specification and verification depend on the unambiguous semantics of the language. Second, we have formally defined and proved the correctness of run-time checks generation and optimization based on SPARK reference semantics, and have built the certifying tools within the mechanized proof infrastructure to certify the run-time checks inserted by the GNAT compiler frontend to guarantee the absence of run-time errors. Third, we have proposed a language-based information security policy framework and the associated enforcement algorithm, which is proved to be sound with respect to the formalized program semantics. We have shown how the policy framework can be integrated into SPARK 2014 for more advanced information security analysis.
dc.description.advisorJohn M. Hatcliff
dc.description.degreeDoctor of Philosophy
dc.description.departmentDepartment of Computing and Information Sciences
dc.description.levelDoctoral
dc.description.sponsorshipUS Air Force Office of Scientific Research under contract FA9550-09-1-0138
dc.identifier.urihttp://hdl.handle.net/2097/32880
dc.language.isoen_US
dc.publisherKansas State University
dc.rights© the author. This Item is protected by copyright and/or related rights. You are free to use this Item in any way that is permitted by the copyright and related rights legislation that applies to your use. For other uses you need to obtain permission from the rights-holder(s).
dc.rights.urihttp://rightsstatements.org/vocab/InC/1.0/
dc.subjectFormal Methods
dc.subjectLanguage Semantics
dc.subjectProgram Verification
dc.titleA formal approach to contract verification for high-integrity applications
dc.typeDissertation

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
ZhiZhang2016.pdf
Size:
1.08 MB
Format:
Adobe Portable Document Format
Description:
My Dissertation

License bundle

Now showing 1 - 1 of 1
No Thumbnail Available
Name:
license.txt
Size:
1.62 KB
Format:
Item-specific license agreed upon to submission
Description: