你好,欢迎来到电脑编程技巧与维护杂志社! 杂志社简介广告服务读者反馈编程社区  
合订本订阅
 
 
您的位置:杂志经典 / 计算机安全与维护
基于XML电子病历的加密*(上)
 

摘 要 可扩展标志语言(简称XML) 在实现信息标准化、信息统一、信息的交换和共享上有其独特的技术优势。利用这些优势可以将XML技术运用到电子病历系统中。为了解决电子病历交换传输中的数据一致性、安全性等问题,本文提出了一种解决方案,方案由XML Schema验证、数据加密组成。本文通过实例重点讨论了加密处理过程。文章最后给出在Visual Studio.Net 2003环境下实现XML Schema验证、加密的部分程序代码。

关键词 电子病历(EMR)XML Schema;加密;.NET

 

一、引言

现代信息技术的迅猛发展给社会各个领域带来了巨大的革新,在医学领域也不例外,以计算机技术和网络技术为主的医院信息系统(HIS)也应运而生。实现电子病历(EMR)是医院信息系统的一个核心,也是它的一个重要研究课题。可扩展标记语言(XML)有很多优点,将它应用于电子病历能解决很多难以解决的问题。

XML应用到电子病历中后,如果将传统的加密技术简单运用于XML文档,也就是将XML文档作为一个整体字节流输入,得到加密的结果,这只能满足部分的需求,无法体现XML文档加密的粒度。因此很多情况下要对XML文档的元素进行粒度的加密。比如对于电子病历中的病人的基本信息,像姓名、家庭住址、联系电话以及一些重要的病情信息,都需要加密传输,防止第三者截获破译。本文根据以上情况,采用XML进行数据交换,探讨了一种针对电子病历的加密技术。

二、电子病历概述

电子病历(Electronic Medical Record ,简称EMR)是指将传统的纸病历完全电子化,并超越纸病历的管理模式,提供电子贮存、查询、统计、数据交换等。它的内容不仅包括纸张病历的所有信息,而且包括声像图文等多媒体信息,具有传统病历无法比拟的资料完整性,非常适合现代医疗卫生事业迅速发展的需要。

XML(eXtensible Markup Language 可扩展的标记语言)是由W3C组织在1998发布的一种标准,它具有三个主要的优势:结构化的语言、可扩展性、数据存储与数据显示的分离。

XML技术运用于电子病历领域,具有以下优点:

  XML是一种元语言,它采用层次化结构的、面向对象的方法描述数据对象的结构,通过XML的标记来定义电子病历的数据对象,非常适合描述含有复杂内容的病历文档;

  XML具有平台无关性,适合在不同平台下进行病历数据的交换,在不同环境下进行系统开发;

  XML对于机器和人来说,都具有很强的可读性,即使没有表现样式,用户也能够大致明白病历文档的内容;

  XML结构化的电子病历与非结构化的电子病历相比有显著的优点,但是还是存在一些安全问题,比如数据的真实性、完整性、保密性、不可抵赖性,使用者身份的合法性,特别是在传输过程中数据不被篡改。

三、电 子病历XML文档的说明

1. 病历的XML Schema描述

XML Schema1是关于XML标记的语法规则,它详细描述了XML文档的结构。一个Schema文件严格地规定了以它为标准的所有XML文档的树状层次结构的全部细节。当某一XML文档引用该Schema文件时,它必须通过有效性检验。

病历的信息交换是电子病历的一个重要目标。信息交换的前提是标准化,要使交换的病历的内容能为双方理解和处理,必须建立有关病历信息的文档类型定义-Schema标准。电子病历文档的Schema描述了XML文档中的元素和属性以及它们次序、个数、数据类型和取值范围,保证了病历文档书写的正确性。下面给出部分电子病历的Schema描述:

<?xml version="1.0" encoding="UTF-8"?>

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

<xs:element name="EMR">

<xs:complexType>

<xs:sequence>

<xs:element ref="Patient"/>

<xs:element name="Symptom"/>

<xs:element name="History"/>

<xs:element ref="Record" maxOccurs="unbounded"/>

</xs:sequence>

<xs:attribute name="EMRID" type="xs:integer"/>

<xs:attribute name="Type" type="xs:string"/>

<xs:attribute name="Date" type="DateLength"/>

</xs:complexType>

    </xs:element>

……

</xs:schema>

通过XML Schema的描述,可以清楚的表示XML文档的结构,先定义文档的根结点<EMR>,接下来定义子元素< Patient >< Symptom >< History >< Record >,其中< Record >元素可以出现多次,然后定义<EMR>元素的属性:< EMRID >< Type >< Date >,最后再定义子元素、属性、数据结构。通过图1可以清楚的看到树状的XML文档结构。


1  <EMR>的属性与子元素

 

  推荐精品文章

·2024年9月目录 
·2024年8月目录 
·2024年7月目录 
·2024年6月目录 
·2024年5月目录 
·2024年4月目录 
·2024年3月目录 
·2024年2月目录 
·2024年1月目录
·2023年12月目录
·2023年11月目录
·2023年10月目录
·2023年9月目录 
·2023年8月目录 

  联系方式
TEL:010-82561037
Fax: 010-82561614
QQ: 100164630
Mail:gaojian@comprg.com.cn

  友情链接
 
Copyright 2001-2010, www.comprg.com.cn, All Rights Reserved
京ICP备14022230号-1,电话/传真:010-82561037 82561614 ,Mail:gaojian@comprg.com.cn
地址:北京市海淀区远大路20号宝蓝大厦E座704,邮编:100089