论文部分内容阅读
随着信息产业和信息技术的不断发展,越来越多的信息需要处理及交流,而处理信息最有效的工具是数据库应用系统。一方面必须提高系统效率,尽可能的共享信息资源,另一方面必须防止盗用者利用共享平台获得系统中不属于其权限范围之内的资源。多级安全(Multi-Level Security简写为MLS)分布式事务处理的研究一直受到人们的关注,也是信息安全中的一个重要研究课题。E.Bertino等提出的基于信号锁的多级安全并发控制机制虽然解决了隐通道问题和“饥饿”问题,但在高负载情况下大量低密级事务时常更新数据而产生让高密级事务回滚的信号,故很容易引起高密级事务的“饥饿”。S.Pal提出的利用数据两个提交版本的锁协议虽然解决了以上问题,但它利用一个截止期,在该截止期内高密级事务读数据必须要完成。如果不能完成,则必须夭折,并有可能无限期的被延迟。而且高密级事务总是读数据的旧版本,这也可能不会被接受。本文将信号锁机制和利用数据两个提交版本的锁协议结合,提出一种基于信号锁和两版本的多级安全并发控制机制,即所有的读事务(高密级和低密级的)都读已提交的版本,而写事务则在一个未提交版本上进行,高密级读事务通过信号锁机制来确保安全性和一致性。这样就结合信号锁和两个版本的功能特性,解决了传统并发控制协议的隐通道和“饥饿”问题,在高负载情况下高密级事务的执行效率也得到有效提高,并给出了形式化证明。传统的多级安全分布式提交协议也很难满足分布式环境下的安全与可串行化要求。本文给出的多级安全分布式提交协议(S2VBSEP协议),在低读锁异常的情况下允许分布式事务继续执行,分布式事务在提交前通过信号锁机制来满足可串行化和安全需求,这样就避免了过度夭折高密级事务而造成的高密级事务的“饥饿”,同时也利用两版本优势提高了分布式事务处理的效率。本文还给出了多级安全分布式事务处理原型系统关键模块的设计与实现。通过实验原型,证明本文提出的安全并发控制协议及多级安全分布式提交算法都是可实现的和可行的。