Hệ mã công khai RSA và ứng dụng bảo mật trong trao đổi tài liệu lâm sàng CDA - Pdf 38

i

ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

NGUYỄN HẢI NINH

HỆ MÃ CÔNG KHAI RSA VÀ ỨNG DỤNG BẢO MẬT
TRONG TRAO ĐỔI TÀI LIỆU LÂM SÀNG CDA

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

THÁI NGUYÊN - 2016
Số hóa bởi Trung tâm Học liệu – ĐHTN




ii
LỜI CẢM ƠN
Trên thực tế không có sự thành công nào mà không gắn liền với những sự hỗ
trợ, giúp đỡ dù ít hay nhiều của người khác. Trong suốt thời gian từ khi bắt đầu học
tập tại trường đến nay, em đã nhận được rất nhiều sự quan tâm, giúp đỡ của quý
Thầy Cô, gia đình và bạn bè. Với lòng biết ơn sâu sắc nhất, em xin gửi lời cảm ơn
chân thành và sự tri ân đến quý Thầy Cô - Trường Đại Học Công Nghệ Thông Tin
và Truyền Thông Thái Nguyên.
Em xin gửi lời cảm ơn tới TS. Nguyễn Văn Tảo, thầy đã dạy cho em những
kiến thức quý báu về bảo mật, về hệ mã công khai cũng như về hệ mã RSA mà em
đã sử dụng trong luận văn này. Em xin gửi lời cảm ơn tới TS. Nguyễn Hải Minh –
Khoa Công Nghệ Thông Tin - Trường Đại Học Công Nghệ Thông Tin và Truyền
Thông Thái đã tận tình hướng dẫn em trong thời gian thực hiện đề tài.

Thái Nguyên, ngày 10 tháng 05 năm 2016
Học viên thực hiện

Nguyễn Hải Ninh

Số hóa bởi Trung tâm Học liệu – ĐHTN




iv

MỤC LỤC
Trang
LỜI CẢM ƠN .............................................................................................................. i
LỜI CAM ĐOAN ..................................................................................................... iii
MỤC LỤC .................................................................................................................. iv
DANH MỤC CÁC BẢNG......................................................................................... vi
DANH MỤC CÁC HÌNH ẢNH ...............................................................................vii
MỞ ĐẦU ..................................................................................................................... 1
CHƯƠNG 1 CHUẨN TÀI LIỆU LÂM SÀNG ........................................................... 2
CLINICAL DOCUMENT ARCHITECTURE ............................................................ 2
1.1. Giới thiệu chung. .................................................................................................. 2
1.1.1. Mục đích thiết kế chuẩn tài liệu CDA [3] .....................................................2
1.1.2. Các tính chất của một tài liệu CDA ...............................................................3
1.2. Cấu trúcchuẩn tài liệu CDA ................................................................................. 4
1.2.1. Cấu trúc Header của tài liệu CDA. ................................................................4
1.2.2 Cấu trúc Body của tài liệu CDA ....................................................................7
1.2.3 Cấu trúc của một Entry. ..............................................................................14
1.3. Mô hình tham chiếu dữ liệu - HL7 Reference Information Model(RIM) ......... 19

3.3.1. Dữ liệu vào...................................................................................................56
3.3.2. Quy trình mã hóa .........................................................................................57
3.3.3 Tài liệu CDA dạng XML sau khi mã hóa .....................................................58
3.3.4. Module giải mã tài liệu ................................................................................59
3.3.5. Giao diện chương trình ................................................................................60
3.4. Module mã hóa thông tin phần Header hoặc Body............................................ 61
3.4.1. Thuật toán mã hóa thông tin phần Header hoặc Body ................................61
3.4.2. Thuật toán giải mã thông tin phần Header hoặc Body ................................62
3.4.3. Demo module mã hóa Header hoặc Body. ..................................................63
3.5. Một số Modules cốt lõi trong chương trình. ...................................................... 63
3.5.1. Module RSA ................................................................................................63
3.5.2. Module ReadDOM ......................................................................................63
3.5.3. Một số vấn đề quản lý khóa RSA. ...............................................................64
KẾT LUẬN VÀ KIẾN NGHỊ................................................................................... 65
TÀI LIỆU THAM KHẢO ......................................................................................... 66

Số hóa bởi Trung tâm Học liệu – ĐHTN




vi
DANH MỤC CÁC BẢNG
Bảng 1.1: Các thuộc tính của Header ..........................................................................6
Bảng 1.2: Quan hệ các lớp trong Header ....................................................................7
Bảng 1.3: Cấu trúc Body của tài liệu CDA .................................................................8
Bảng 1.4: Các thuộc tính của Section .........................................................................8
Bảng 1.5: Các đối tượng của Section ..........................................................................9
Bảng 1.6: Các quan hệ của Section ............................................................................9
Bảng 1.7: Các thuộc tính hỗ trợ cho định dạng.........................................................13

Hình 3.6: Sơ đồ quy trình giải mã toàn bộ tài liệu CDA .........................................59
Hình 3.7: Giao diện chương trình ............................................................................60
Hình 3.8: Sơ đồ quy trình mã hóaphần Header hoặc Body ......................................61
Hình 3.9: Sơ đồ quy trình giải mã phần Header hoặc Body .....................................62
Hình 3.10: Demo mã hóa vàgiải mã Header Body tài liệu CDA ..............................63

Số hóa bởi Trung tâm Học liệu – ĐHTN




1
MỞ ĐẦU
Khi mà các ứng dụng CNTT đã và đang ngày càng phổ biến rộng rãi đã ảnh
hưởng rất lớn đến diện mạo của đời sống xã hội, kinh tế. Mọi công việc của chúng
ta đều có thể thực hiện được từ xa với sự hỗ trợ của máy tính và mạng Internet. Tất
cả các thông tin liên quan đều được máy tính quản lý và truyền đi trên hệ thống
mạng. Trong y tế, việc ứng dụng công nghệ thông tin để nâng cao chất lượng chăm
sóc sức khỏe cho người dân cũng đã được trú trọng, rất nhiều chương trình ứng
dụng trên máy tính đã được xây dựng để hỗ trợ việc quản lý thông tin bệnh nhân,
quản lý viện phí, thanh toán bảo hiểm và khám chữa bệnh từ xa và các hệ thống hỗ
trợ quản lý và trao đổi thông tin tài liệu lâm sàng cũng đang được xây dựng và
phát triển. Do đó, vấn đề bảo mật các thông tin cá nhân trong tài liệu lâm sàng là
một việc cần thiết vì nó sẽ bảo đảm tính riêng tư cho mỗi bệnh nhân.
Trong phạm vi nghiên cứu của đề tài, chúng tôi tập chung nghiên cứu cấu trúc
chuẩn tài liệu lâm sàng HL7 Clinical Document Architecture (CDA), hệ mã công
khai RSA và ứng dụng trong việc mã hóa phần thông tin riên tư của bệnh nhận được
lưu trong trong tài liệu CDA ở hai mức: Phần Header của tài liệu và mức section
nằm trong component thuộc phần Body.
Kết quả của nghiên cứu sẽ là cơ sở khoa học để hướng tới việckhi gửi thông

thành tài liệu, cho phép tham chiếu và sử dụng các bộ máy tương thích với chuẩn
của HL7 (như: chuẩn LOINC, chuẩn SMOMED-CT và ICD 10), sự thay đổi các từ
vựng trong nhóm CNE (Code No Extended) và việc bổ sung nhóm từ vựng trong
CNE từ nhóm CWE (Code With Extended) đã làm cho CDA R2 có những tính năng
mạnh hơn hơn rất nhiều so với với phiên bản trước và đồng thời tính ngữ nghĩa
trong tài liệu lâm sàng đã được thể hiện một cách rõ nét hơn.
1.1.1. Mục đích thiết kế chuẩn tài liệu CDA [3]
 Đưa ra quy định trong việc trao đổi thông tin chăm sóc sức khỏe.
 Mang lại hiệu quả trong việc triển khai các hệ thống mang tính liên thông, có
sự trao đổi và chia sẻ thông tin giữa các hệ thống khác nhau trên phạm vi lớn.
 Việc mở và hiển thị nội dung tài liệu CDA không bị giới hạn bởi sự khác nhau
về công nghệ và phần mềm hiện đang sử dụng giữa nơi gửi và nơi nhận.
Số hóa bởi Trung tâm Học liệu – ĐHTN




3
 Các thông tin được mã hóa theo chuẩn CDA được toàn vẹn, an toàn và dễ
dàng lưu trữ lâu dài theo thời gian.
 Cho phép trao đổi thông tin qua các hệ thống trao đổi thông tin điện tử và hệ
thống thư tín điện tử.
 Tương thích với các chuẩn tài liệu được tạo ra bởi các chương trình ứng dụng
khác.
 Việc trao đổi thông tin không phụ thuộc vào cơ sở hạ tầng hoặc hệ thống lưu
trữ.
 Cung cấp một thiết kế hợp lý cho mọi ứng dụng.
 Cho phép ghi lại những thông tin nhằm đáp ứng nhu cầu và các quy định trong
việc giám sát và quản lý thông tin trong tài liệu.
1.1.2. Các tính chất của một tài liệu CDA

(header) và phần nội dung tài liệu lâm sàng (body). Phần header dùng để lưu trữ các
thông tin cần thiết phục vụ cho việc chuyển giao tài liệu giữa các tổ chức liên quan.
Với phần body có thể dùng 2 kiểu khuôn dạng để lưu trữ: Dạng văn bản có định
dạng <StructuredBody> hoặc văn bản không định dạng <NonXMLBody> để lưu
trữ nội dung chính của tài liệu cần trao đổi. Cấu trúc tài liệu CDA được mô tả trong
Hình 1.1, bao gồm các phần: thuộc tính, chủ thể, thực thể và quan hệ giữa các thực
thể …
1.2.1. Cấu trúc Header của tài liệu CDA
1.2.1.1. Các thuộc tính của một Header
Phần header được dùng để lưu trữ thông tin phục vụ việc trao đổi tài liệu lâm
sàng giữa các cơ quan tổ chức, ngoài ra thông tin trong phần này còn được phục vụ
trong công tác quản lí hồ sơ tài liệu CDA và được dùng làm căn cứ cập nhật thông
tin cho hồ sơ bệnh án điện tử suốt đời cho một bệnh nhân. Trong Hình 16 thuộc tính
và các đối tượng tham gia trong quá trình hình thành tài liệu của phần header được
thể hiện qua khối bên trái của lược đồ, phần Body được thể hiện qua khối nằm bên
phải, liên kết giữa 2 phần này được liên kết qua section component. Nhưng trong
thiết kế tài liệu: Một tài liệu CDA được đặt trong tag gốc <ClinicalDocument> và
</ClinicalDocument>, khi đó phần header được tính làm phần nằm giữa từ tag
<ClinicalDocument> và tag <structuredBody>, phần thể hiện cấu trúc body của tài
liệu được xác định làm phần còn lại của tài liệu (từ tag <structuredBody> đến
</ClinicalDocument>).
Số hóa bởi Trung tâm Học liệu – ĐHTN




5

Hình 1.1: Cấu trúc tài liệu CDA [3]


Tiêu đề của tài liệu

4

ClinicalDocument.effectiveTime

Thời gian tạo tài liệu

5

6

Xác định tính bảo mật tài liệu, tính
chất này được thể hiện qua 3 mức:
-N(normal)
(codeSystem
2.16.840.1.113883.5.25);
ClinicalDocument.ConfidentialityCode
-R(restricted)
(codeSystem
2.16.840.1.113883.5.25);
-V(very restricted) (codeSystem
2.16.840.1.113883.5.25);
Mã ngôn ngữ được thể hiện trên
ClinicalDocument.languageCode

Web browser, mã này được quy định
qua

chuẩn:

sang người nhận.




7
1.2.1.3. Quan hệ giữa các phần trong Header
Nội dung trong phần này mô tả sự quan hệ giữa các class với lớp gốc
ClinicalDocument trên quan hệ giữa các Act thông qua class ActRelationship.
Bảng 1.2: Quan hệ các lớp trong Header
STT

Tên lớp

Chức năng

Ghi chú

Mô tả quan hệ thông tin trong tài Phụ thuộc vào
1

ActRelationship

liệu với tài liệu gốc, dùng khi cần mã(code)
phải tham chiếu tài liệu gốc.

vựng

từ
APND,

Số hóa bởi Trung tâm Học liệu – ĐHTN




8
Bảng 1.3: Cấu trúc Body của tài liệu CDA
STT

Tên lớp

Chức năng

1

NonXMLBody

2

StructuredBody

Ghi chú

Mô tả các dạng thông tin trong body, được
trình bày bởi các định dạng ngoài định dạng
XML.
Mô tả thông tin trong phần body, bao gồm
những thông tin được trình bày bởi 1 hay
nhiều section, có cấu trúc. Các thông tin này
được mô tả thông qua ngôn ngữ XML.

Section.title

Lưu phần thông tin chung
cho section
Lưu trữ thông tin sẽ được Trường này có thể
chuyển tải tới người nhận dùng để lưu thông tin

4

Section.text

dưới dạng văn bản text

khi hỏi và thăm khám
người bệnh hàng ngày
hoặc kết quả hội chẩn.

Mã dùng trong bảo mật
5

Section.confidentialityCode thông tin trong cung cấp

thông tin
Mã ngôn ngữ thể hiện Sử dụng mã IETF
6

Section.languageCode

thông tin trên trình duyệt
Web


Nội dung này có thể được
tham chiếu tới informant
của phần header

Mô tả đối tượng nguyên Subject có thể được mô tả
3

Subject

thủy phát sinh thông tin trong 2 nội dung của tài liệu
được lưu trữ trong tài liệu

CDA, section và entry

c. Quan hệ trong một section
Bảng 1.6: Các quan hệ của Section
STT

Tên section

Chức năng

Ghi chú

Lớp này được dùng khi
1

Component


Để khai báo một nội dung trong tài liệu CDA dưới dạng văn bản text, thì nó
phải được bao trong cặp tag <content>, đối với nội dung này thì ta có thể khai báo
đan xen nhau. Trong phần <content> cho phép ta lựa chọn việc đặt tên khối để
thông qua đó ta có thể tham chiếu tới nội dung đó từ một khối khác nếu cần.
Sau đây là một ví dụ:
<section>

<title>Past Medical History</title>
<text>
There is a history of<content ID="a1"> Asthma</content>
</text>\
<entry>
<observation classCode="OBS"moodCode="EVN">

<originalText>
<reference value="#a1"/>
</originalText>
Số hóa bởi Trung tâm Học liệu – ĐHTN




11

</code>


12
của phép tham chiếu thông qua thuộc tính referencedObject, sử dụng tính chất này
ta có thể tạo sự liên kết tham chiếu ngữ nghĩa giữa các phần trong tài liệu.
 Trình bày đoạn văn bản-tag
Nội dung trong phần này tương tự như tài liệu của HTML. đối với tag này
cũng có một lựa chọn <caption>, khi hiển thị thông tin trên WED thì phần thông tin
được khai báo trong caption bao giờ cũng được hiển thị lên trước các nội dung khác
trong một paragraph.
 Danh sách list-tag<list>
Về cơ bản chức năng này cũng giống như tính năng tag <list> của HTML,
trong tài liệu CDA tag <list> có thựôc tính caption tuỳ chọn, và cho phép người gửi
khai báo một hoặc nhiều Data items. Bên cạnh đó tính năng của thuộc tính listType
cho phép ta chỉ rõ cách sắp xếp theo thứ tự hiển thị Data items trong danh sách náy.
 Khai báo bảng-tag<table>
Tính năng và cáh khai báo bảng trong CDA cũng tương tự như trong ngôn
ngữ HTML. Một điểm lưu ý đối với bảng trong tài liệu CDA là: Các cột (fileds)
trong bảng không thể dùng được với mục đích truy vấn dữ liệu. Bên cạnh đó trong
cấu trúc tài liệu CDA cũng cho phép ta khai báo thuộc tính của bảng như: Kiểu
đường viền, ghép các cột…, thông qua thuộc tính table.border, table.cellspacing,
and table.cellspadding.
 Lời chú thích-tag<caption>
Trong tài liệu CDA tag <caption> được dùng cho việc chú thích đối với
paragraph, lits, lits item, table hoặc table cell. Đôi khi caption cũng được dùng bên
trong tag <renderMultiMedia> để giải thích rõ việc tham chiếu của các tag
ObservationMedia và RegionOflnterest. Trong tag chú thích caption ta cũng có thể
khai báo một liên kết links hoặc liên kết footnotes.

Số hóa bởi Trung tâm Học liệu – ĐHTN



Render cell with left-sided rule.

Rrule

Render cell with right-side rule.

Toprule

Render cell with rule on top.

Botrule

Render cell with rule on buttom.

- Định dạng cho các list
Arabic

List is ordered using arabic numerals : 1,2,3.

LittleRoman

List is ordered using little Roman numerals: i, ii, iii.

BigRoman

List is ordered using big Roman numerals: I, II, III.

LittleAlpha


<content styleCode="Bold Italics">This is also rendered
Bold and italicized</content>
</test>
</section>
 Tham chiếu trong và ngoài khối
Viêc tham chiếu thông tin đối với các liên kết nằm trong khối narrative block
được khái quát như sau:
- CDA level 3 (entries) có thể tham chiếu đến tag<content> của khối narriative
block.
- Dùng <linkHtml> có thể tham chiếu đối tượng hoặc clas nằm trong hoặc
ngoài <footnote>
- Dùng <footnoteRef> có thể tham chiếu và hiển thị một chú thích nằm trong
<footnote>.
- Dùng <renderMultiMedia> có thể tạo ra một CDA observationMedia and
regionOflnterest nằm trong tài liệu CDA
1.2.3 Cấu trúc của một Entry.
1.3.2.1. Đối tượng tham gia trong một Entry
Chức năng này mô tả cấu trúc của các tiến trình xử lý của tài liệu để có thể
thực thi bằng ngôn ngữ máy tính. Mỗi section có thể không có hoặc có nhiều entries
trong quá trình sinh tài liệu CDA. Với cách tiếp cận này tài liệu CDA có thể tương
thích với các chuẩn khác như CEN, DICOM, and OpenEHR.

Số hóa bởi Trung tâm Học liệu – ĐHTN




15
Bảng 1.8: Các đối tượng tham gia một Entry
STT

Observation

xuất từ RIM Khi

Observation.negationInd

class, dùng nhận giá trị true thì toàn bộ các

để diễn tả mã và các sự xác nhận này sẽ không có hiệu
3

Observation

giám sat nguồn thông tin

lực, đồng thời một số thuộc tính
khác trong class cũng bị hủy
hiệu lực theo.
Ví dụ: Observation.id,
Observation.moodCode

Được dẫn xuất từ RIM Dữ liệu Multimedia này phải là

4

Observation
Media

Observation class, dùng để thành phần có quan hệ logic với
diễn tả mã và các sự giám các tài liệu hiện thời

Procedure

nhân

thuộc tính khác trong class cũng
không có hiệu lực theo
Vídụ:Procedure.id,
Procedure.moodCode

Được dẫn xuất từ RIM Một

7

Region

Of

Interest

RegionOfInterest

phải

Observation class, dùng để thham chiếu chinh xác tới một
mô tả một vùng ảnh được ObservationMedia

hoặc

đặc biệt quan tâm trên ảnh ExternalObservation.
y tế

tế, bao gồm thuốc và các
vật tư khác trong quá trình
chăm sóc và điều trị bệnh
nhân

Số hóa bởi Trung tâm Học liệu – ĐHTN




17

1.3.2.2. Quan hệ trong một Entry
Trong CDA giữa section va entry có thể có nhiều quan hệ về chủ thể, khi đó
các thực thể có ảnh hưởng lẫn nhau giữa các phần trong cấu trúc tài liệu, nội dung
phần header có thể bị ghi đè và thay thế trong phần body.
Bảng 1.9: Quan hệ trong một Entry
STT

Tên section

Chức năng

Ghi chú

Mô tả tác giả cho phần entry, Trong tài liệu CDA có 3
nhưng có thể được xác nhận mức để ta khai báo các quan
qua author của section, trong hệ thực thể header, section
1



Participant

khác mà thực thể này không gán tới CDA entry và phát
thể mô tả cùng với một thực sinh lồng nhau trong CDA
thể đã được xác định trước

entry

Mô tả người thực hiện hoặc, Một performer có thể hoạt
5

Performer

tham gia sự kiện khám chữa động độc lập và không cần
bệnh.

Số hóa bởi Trung tâm Học liệu – ĐHTN

phải gán trách nhiệm với



18
các thực thể tham gia khác
Mô tả bệnh phẩm (mẫu xét Bệnh phẩm là một phần
nghiệm)
6

quan trọng trong một số

hệ giữa các Organizer và mục
1

Component

đích của tài liệu, được dùng để
tạo ra một nhóm Organizer
liên quan đến việc cung cấp
thông tin
Được

dẫn

xuất

từ

ActRelationship class, được
2

Precondition

dùng với Criterion class để
diễn tả một điều kiện chắc
chắn có giá true, thì các sự
kiện khác mới xuất hiện

3

ReferenceRange


Nhờ tải bản gốc
Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status