Quản lý lưu trữ trong đám mây

Một phần của tài liệu MÃ hóa ĐỒNG cấu đầy đủ VÀ ỨNG DỤNG TRONG THEO dõi sức KHỎE AN TOÀN dựa TRÊN điện TOÁN đám mây (Trang 52)

3. Cấu trúc luận văn

3.3.5 Quản lý lưu trữ trong đám mây

Xem xét dung lượng lưu trữ đáng kể mà FHE yêu cầu, một câu hỏi tự nhiên cần đặt ra là tổng dung lượng lưu trữ cần thiết cho mỗi ứng dụng. Theo như tìm hiểu thì chúng tôi khái niệm hóa lưu trữ đám mây mà ứng dụng hỗ trợ FHE yêu

43 cầu bao gồm ba khu vực riêng biệt: 1) Khu vực dữ liệu AES, là nơi các hồ sơ y tế được lưu trữ vĩnh viễn ở định dạng được mã hóa AES, 2) Khu vực lưu trữ dữ liệu FHE, là bản sao được mã hóa bằng FHE của dữ liệu AES gốc, chỉ dành cho một số bản ghi nhất định, 3) Khu vực bộ đệm tính toán FHE, là kết quả được tính toán trước cho các phần của bộ đệm dữ liệu FHE.

Trong phương án này, các tác giả đã giả định rằng, ba không gian riêng biệt sẽ được phân bổ cho mỗi dữ liệu AES, bộ đệm dữ liệu FHE và bộ đệm tính toán FHE. Điều này ngụ ý một bộ nhớ phân cấp gần giống với một hệ thống con bộ nhớ của máy tính, trong đó, vùng dữ liệu AES tương tự như một đĩa máy tính, vì quá trình chuyển đổi từ AES sang FHE mất một thời gian dài FHE data-cache tương tự như bộ nhớ máy tính, vì có một hình phạt đáng kể trong việc đưa dữ liệu từ bộ nhớ vào bộ nhớ đệm và FHE compute-cache tương tự như L3 cache, nơi các kết quả trong bộ nhớ cache này có thể được chuyển đổi thành các kết quả hữu ích nhanh hơn đáng kể so với các kết quả trong FHE data-cache.

Trong sơ đồ lưu trữ phân cấp được đề xuất này, bộ đệm dữ liệu FHE và bộ đệm tính toán FHE hoàn toàn dùng một lần, tức là việc loại bỏ bất kỳ thông tin nào trong các bộ đệm này chỉ làm ảnh hưởng đến hiệu suất, nhưng không gây mất dữ liệu. Điều này cho phép ứng dụng đám mây điều chỉnh động nội dung của từng bộ nhớ cache, do đó điều chỉnh thời gian phản hồi của ứng dụng so với lưu trữ và tính toán bắt buộc.

Nhóm nghiên cứu cũng đã triển khai thử trên hai sơ đồ FHE của Gentry và sơ đồ BGV dựa trên mẫu dữ liệu nhịp tim trung bình của bệnh nhân và đưa ra kết luận sơ đồ BGV rất gần với việc đem lại kết quả trong thời gian thực với sự mở rộng vừa phải kho lưu trữ. Trong luận văn này, chúng tôi cũng sẽ thử nghiểm triển khai theo sơ đồ FHE của Gentry và sơ đồ BGV để đưa ra một mô hình liên quan tới dữ liệu sức khỏe không chỉ với 1 mẫu là dữ liệu nhịp tim.

44

CHƯƠNG 4: KẾT QUẢ THỰC NGHIỆM 4.1 Môi trường thực nghiệm

Do điều kiện covid hiện tại, việc đến các bệnh viện để thu thập dữ liệu gặp rất nhiều khó khăn, do vậy trong luận văn này, chúng tôi sẽ sử dụng bộ dữ liệu đầu vào là các “Dữ liệu bệnh án” được thu thập bởi 50 bạn tình nguyện viên cung cấp quá trình tham gia hiến máu tình nguyện của mình. “Bệnh án” ở đây chúng tôi định nghĩa đó chính là các tờ khai tham gia hiến máu, dữ liệu trong tờ khai cũng đầy đủ thông tin của người tham gia, các thông tin về tình trạng sức khỏe và các thông tin xét nghiệm khác. Dữ liệu đầu vào này được nhập vào form như hình 4.1.

Hình 4.1: “Dữ liệu bệnh án” dùng để thu thập thông tin

Sau đó, dựa trên bộ dữ liệu đầu vào đó, chúng tôi tiến hành chuẩn hóa thành các file dạng .doc, và tiến hành các bước đã được mô tả ở phần 3.3. Quá trình này được mô tả chi tiết trong phần 4.2 dưới đây.

45 Môi trường thực nghiệm được chúng tôi sử dụng máy tính cá nhân cấu hình chi tiết:

• Intel core I3-7100U @ 2.40GHz

• RAM 8Gb

• SSD 512GB

• Hệ điều hành Windows 10 Pro 64bit

Để thực hiện quá trình mã hóa AES và chuyển đổi mã AES sang FHE, sau đó chúng tôi dùng Google Cloud Platform phiên bản miễn phí để thực hiện lưu trữ và tính toán.

4.2 Kết quả thử nghiệm

4.2.1 Thu thập dữ liệu liên quan tới sức khỏe

Dựa mẫu phiếu như đã trình bày ở phần 6, chúng tôi đã tiến hành thu thập được 50 bản ghi của các bạn tình nguyện viên với các thông tin đầy đủ như hình 4.2. Tuy nhiên vì lý do bảo mật thông tin người tham gia thu thập, chúng tôi đã lược bỏ các thông tin liên quan tới xét nghiệm của các y bác sĩ.

46

Hình 4.2: Bản ghi được thu thập

Sau khi thu thập, chúng tôi tiến hành chuyển đổi dữ liệu thu thập thành các file dưới dạng .doc. Các bản ghi này sẽ được thực nghiệm ở các phần tiếp theo.

4.2.2 Mã hóa dữ liệu bằng mã hóa AES

Dựa trên các bản ghi đã được chuyển đổi, chúng tôi tiến hành xây dựng một công cụ mã hóa dữ liệu bằng mã hóa AES. Đây là áp dụng với trường hợp trên hệ thống chưa có dữ liệu của bản ghi này, nếu có sẽ được cập nhật và các bước mã hóa và chuyển đổi sẽ được thao tác tự động.

Đầu tiên chúng tôi xây dựng một khóa mã hóa và giải mã: string password = "ktson@ioit.ac.vn";

Tiếp theo chúng tôi thử nghiệm đối với file với dung lượng 607Kb thì thời gian mã hóa chỉ mất khoảng 2s. File mã hóa tôi thu về dưới dạng filename.aes.

47

Hình 4.4: Thông báo của hệ thống đã mã hóa thành công

Hình 4.5: File sau khi mã hóa

4.2.3 Chuyển đổi mã hóa AES sang FHE

Sau khi dữ liệu đã được mã hóa sang AES, chúng tôi tiến hành chuyển đổi mã hóa từ AES sang FHE, ở đây chúng tôi sử dụng mã hóa RSA. File đầu vào là file dạng .aes, và kết quả của quá trình này là một file đã được mã hóa RSA, có thể chuyển đổi trực tiếp từ bản ghi ban đầu sang bản mã hóa RSA, tuy nhiên, trong luận văn này, như chúng tôi đã trình bày thì dữ liệu y tế của người bệnh rất quan trọng, vì thế để bảo đảm an toàn dữ liệu cho người tham gia quá trình, chúng tôi tiến hành mã hóa hai bước, như vậy mức độ rủi ro bị mất dữ liệu là khá nhỏ. Hình 4.6 mô tả giao diện của việc chuyển đổi AES sang FHE.

Hình 4.6: Chuyển đổi AES sang FHE

4.2.4 Lưu trữ và tính toán trong đám mây:

Sau khi đã có được đầy đủ dữ liệu đầu vào được mã hóa, tôi tiến hành lưu trữ vào Google Cloud Platform. Tại đây chúng tôi tạo một dự án mới mang tên LVTN2021 như hình 4.7.

48

Hình 4.7: Tạo một dự án mới

Dữ liệu được lưu trữ sẽ được đặt tên theo mã định danh đối với từng người bệnh dưới dạng mã căn cước công dân. Sau đó các file đã được mã hóa sẽ được lưu trữ trên dự án.

4.2.5 Quản lý lưu trữ trong đám mây

Dữ liệu được mã hóa được đẩy lên đám mây như hình dưới:

Hình 4.8: Lưu trữ dữ liệu trên đám mây

Đây là bản gốc của dữ liệu của người tham gia vào khảo sát. Mã định danh của các dữ liệu này chính là số chứng minh thư, căn cước công dân của các tình nguyện viên tham gia vào chương trình này. Ngoài thư mục lưu trữ bản gốc dưới dạng .docx và dưới dạng mã hóa AES, còn hai phân vùng lưu trữ khác đó chính là khu vực lưu trữ dữ liệu FHE, là bản sao được mã hóa bằng FHE của dữ liệu AES gốc, chỉ dành cho một số bản ghi nhất định và Khu vực bộ đệm tính toán

49 FHE, là kết quả được tính toán trước cho các phần của bộ đệm dữ liệu FHE.

Các dữ liệu này cũng được lưu trữ dưới dạng các chuỗi file *.json và bản ghi trong MogonDB.

Cấu trúc dữ liệu lưu trong file JSON của 1 người tham gia chương trình: { "domain": "LVTN2021", "Ma_ID": "001094015732", "Ho_Ten": "Blue-Exchange ", "Ngay_sinh": "03081994", "Sex": "Nam", "Mo_ta": """, "created_time": 1557595717790, "So_lan_hien_mau": [ "1", "2", "3", "4" ], "Thoi_gian_hien_mau": [ 23092012, 14012013, 16082013, 15012014 ], "Nhom_mau": "O", "Ket_qua_xet_nghiem": [ "", "", "", "" ] } Trong đó:

STT Tên trường Mô tả

1 Ma_ID Số CMT/CCCD

2 created_time Thời gian bản ghi này được tạo

3 Domain Tên dự án

50

5 Ho_ten Họ và tên người tham gia

6 Ngay_sinh Ngày tháng năm sinh

7 Mo_ta Giới thiệu sơ bộ về người tham gia

8 Sex Giới tính

9 So_lan_hien_mau Các thông số liên quan tới hiến máu của người tham gia

10 Nhom_mau Nhóm máu của người tham gia

11 Ket_qua_xet_nghiem Thông tin các kết quả xét nghiệm của người tham gia

12 Thoi_gian_hien_mau Mảng thời gian hiến máu tương ứng.

Sau quá trình mã hóa, quá trình tạo file .json cũng được làm hoàn toàn tự động, với đầu vào là thông tin của người tham gia chương trình. Sau đó với mỗi dữ liệu được trả về từ chuỗi JSON thông qua hàm GET, chúng tôi tiến hành kiểm tra đối chiếu với file mã hóa đã được đẩy lên driver, sau khi thông tin được xác thực, file thông tin được cập nhật và đẩy ngược trở lại driver theo quá trình mã hóa, chuyển đổi và lưu trữ.

Đối với một phép toán, ở đây chúng tôi sử dụng phép toán truy vấn, quy trình hoạt động của hệ thống mà chúng tôi xây dựng như sau:

p thông tin tra u: tên, CCCD ng a ng u p o i u i file c nh nh danh ng m tra nh danh i u u o, truy t i file ê o ng i t u không i thông o c n

Hình 4.9: Phép toán truy vấn

51

Hình 4.10: Nhập thông tin truy vấn

Hệ thống tiến hành thực thi thao tác sau đó trả về thông tin bệnh án của người bệnh như hình 4.11, tại đây chúng ta có thể bổ sung, cập nhật kết quả cho đối tượng chúng ta đang tra cứu.

Hình 4.11: Kết quả trả về

Sau đó chúng tôi tiến hành chỉnh sửa, cập nhật thông tin, và hệ thống sẽ cập nhật theo mã định danh đã truy xuất trước đó, sau khi thông tin được xác thực, file thông tin được cập nhật và đẩy ngược trở lại driver theo quá trình mã hóa, chuyển đổi mã hóa mà không cần phải thực hiện lại các bước như đối với dữ liệu mới.

52

4.3 Nhận xét đánh giá

Kết quả của chương trình đó chính là những thông tin của người bệnh trước khi được cập nhật, ghi đè đã được so sánh với những thông tin trong khu vực chứa bộ đệm tính toán FHE, và sẽ được lưu trữ ở đây trước khi quá trình xác thực giữa bản đệm và khu vực bản sao, sau đó mới được cập nhật vào khu vực lưu trữ bản gốc. Điều này đã nâng cao khả năng đảm bảo dữ liệu của người dùng không bị thay đổi hay phá hủy. Tuy nhiên thời gian cho quá trình này cũng tốn nhiều thời gian hơn so với các cách lưu trữ và sử dụng thông thường. Nguyên nhân đó chính là quá trình mã hóa và giải mã của chương trình chúng tôi đề xuất chưa được tối ưu, điều này chúng tôi sẽ khắc phục trong những nghiên cứu tiếp theo của bản thân.

53

KẾT LUẬN VÀ ĐỊNH HƯỚNG PHÁT TRIỂN

Với hiệu quả thu được ban đầu, thông tin dữ liệu của người tham gia chương trình đã được bảo vệ, hệ thống bước đầu đã tạo nên được cơ chế kiểm soát, đảm bảo tính toàn vẹn và minh bạch cho dữ liệu của người sử dụng khi tham gia vào hệ thống.

Trong luận văn này, chúng tôi đã trình bày về mã hóa đồng cấu, một số hệ mã hóa đồng cấu đầy đủ, điện toán đám mây và ứng dụng của điện toán đám mây vào vấn đề kiểm soát sức khỏe, chúng tôi cũng đã xây dựng một hệ thống kiểm soát hồ sơ theo dõi sức khỏe cộng đồng an toàn mà ở đó, nhiệm vụ đảm bảo tính toàn vẹn và minh bạch của dữ liệu người dùng được đặt lên hàng đầu. Bên cạnh đó, luận văn này sẽ là cơ sở lý thuyết phục vụ cho các môn học thuộc lĩnh vực an toàn thông tin và đặc biệt là mã hóa dữ liệu hệ thống theo dõi sức khỏe an toàn sẽ giúp cho người sử dụng được an toàn khi thông tin cá nhân của mình được bảo đảm toàn vẹn.

Hiện tại trên thế giới chưa có một hệ thống nào kiểm soát an toàn phục vụ nhu cầu theo dõi sức khỏe. Với hiệu quả trước mắt, việc đầu tư nghiên cứu, phát triển và hoàn thiện hệ thống là điều cần làm và chắc chắn có tương lai.

Từ những nghiên cứu được đề cập trong luận văn, chúng tôi có thể hình dung ra hướng phát triển liên quan tới nội dung này còn rất rộng lớn, ví dụ như xây dựng một hệ thống phân tích, đánh giá, đưa ra dự báo bệnh tật hỗ trợ cho y bác sĩ điều trị, mà ở đó toàn bộ dữ liệu được xử lý trên dữ liệu đã được mã hóa. Đây là một hướng mà chúng tôi sẽ tiếp tục nghiên cứu trong thời gian tới để phát triển thêm nghiên cứu này của chúng tôi.

54

TÀI LIỆU THAM KHẢO

[1]. Quyết định 4888/QĐ-BYT ngày 18/10/2019 của Bộ Trưởng Bộ Y tế về việc “Phê duyệt đề án Ứng dụng và Phát triển Công nghệ thông tin Y tế thông minh giai đoạn 2019 -2025”.

[2]. Craig Gentry. A Fully Homomorphic Encryption Scheme. PhD thesis, Stanford, September 2009.

[3]. Zvika Brakerski, Craig Gentry, and Vinod Vaikuntanathan. “(Leveled) Fully Homomorphic Encryption Without Bootstrapping”. In: ACM Trans. Comput. Theory 6.3 (July 2014), 13:1–13:36. issn: 1942-3454. doi: 10. 1145/2633600. url: http://doi.acm.org/10.1145/2633600.

[4]. R. Rivest, A. Shamir and L. Adleman, “A method for obtaining digital signatures and public-key cryptosystems”, Communications of the ACM, 21 (1978), 120-126.

[5]. Wang (2012). "Enterprise cloud service architectures". Information Technology and Management. 13 (4): 445–454. doi:10.1007/s10799-012-0139-4. S2CID 8251298 [6]. "Arthur Clarke's 2001 Diary". visual-memory. Archived from the original on 10 May 2015. Retrieved 2 July 2015.

[7]. Evaluating 2-dnf formulas on ciphertexts. In Theory of Cryptography, Second Theory of Cryptography Conference, TCC 2005, Cambridge, MA, USA, February 10- 12, 2005, Proceedings, pages 325-341.

[8]. Christof Paar and Jan Pelzl. Understanding Cryptography. Springer-Verlag, second edition, 2010

[9]. Kristin Lauter. Practical applications of homomorphic encryption, 2015

[10]. Arjan Jeckmans, Andreas Peter, and Pieter H. Hartel. Efficient privacyenhanced familiarity-based recommender system. In Jason Crampton et al., editors, Computer Security - ESORICS 2013, volume 8134 of Lecture Notes in Computer Science, pages 400 - 417. Springer, 2013

[11]. Frederik Armknecht and Thorsten Strufe. An efficient distributed privacypreserving recommendation system. In The 10th IFIP Annual Mediterranean Ad Hoc Networking Workshop, Med-Hoc-Net 2011, pages 65-70. IEEE, 2011

[12]. Michael Naehrig, Kristin E. Lauter, and Vinod Vaikuntanathan. Can homomorphic encryption be practical? In Christian Cachin and Thomas Ristenpart, editors, Proceedings of the 3rd ACM Cloud Computing Security Workshop, CCSW, pages 113-124. ACM, 2011.

[13]. Handbook of Research on Cloud Infrastructures for Big Data Analytics. Chapter: Medical Data Analytics in the Cloud Using Homomorphic Encryption. Publisher: IGI Global. Editors: Pethuru Raj Chelliah, Ganesh Deka. Page 472-488, 2014

[14]. HealthDL - Một hệ thống thu thập, lưu trữ dữ liệu y tế lớn, Phan Tân, Trần Việt Trung, Nguyễn Hữu Đức, Nguyễn Thanh Tùng. Khoa học Kỹ thuật và Công nghệ, 2017.

[15]. Mohammed Ikram, Farookh Khadeer Hussain, Software as a Service (SaaS) Service Selection based on Measuring the Shortest Distance to the Consumer's

55

Preferences, Cloud computing service selection and service composition (Software as a Service - SaaS level) (2019).

[16]. Serena Pastore, The Platform as a Service (PaaS) Cloud Model: Opportunity or Complexity for a Web Developer? November 2013, International Journal of Computer Applications 81(18):29-37. DOI: 10.5120/14225-2435

[17]. Sonia Shahzadi, Muddesar Iqbal, Zia Ul Qayyum, Tasos Dagiuklas, Infrastructure as a Service (IaaS): A Comparative Performance Analysis of Open-

Source Cloud Platforms, 22nd IEEE International Workshop on Computer Aided Modeling and Design of Communication Links and Networks (CAMAD), 2017, DOI: 10.1109/CAMAD.2017.8031522

[18]. Abbas Acar, Hidayet Aksu, A. Selcuk Uluagac, and Mauro Conti, 2018. A survey on homomorphic encryption schemes: theory and implementation. ACM Comput. Surv. 1, 1, Article 1 (January 2018), 35 pages.

[19]. Daniele Micciancio and Oded Regev. 2009. Lattice-based cryptography. In Post- quantum cryptography. Springer, 147–191.

[20]. Hermann Minkowski. 1968. Geometrie der zahlen. Vol. 40.

[21]. Miklós Ajtai. 1996. Generating hard instances of lattice problems. In Proceedings of the twenty-eighth annual ACM symposium on Theory of computing. ACM, 99–108. [22]. Chris Peikert. 2015. A decade of lattice cryptography. Technical Report.

Một phần của tài liệu MÃ hóa ĐỒNG cấu đầy đủ VÀ ỨNG DỤNG TRONG THEO dõi sức KHỎE AN TOÀN dựa TRÊN điện TOÁN đám mây (Trang 52)

Tải bản đầy đủ (PDF)

(67 trang)