Dữ liệu ngày càng tăng lên một cách chóng mặt trong các lĩnh vực khác nhau do sự phát triển nhanh chóng của mạng máy tính. Điều này đã dẫn đến sự phát triển của cơ sở dữ liệu và nhu cầu quản lý lượng lớn dữ liệu. Tuy nhiên, việc sử dụng cơ sở dữ liệu tập trung trong một trung tâm duy nhất gặp nhiều vấn đề như chi phí cao, hiệu suất giảm thiểu và độ tin cậy không được đảm bảo. Để giải quyết vấn đề này, hệ thống cơ sở dữ liệu phân tán đã xuất hiện, cho phép thực hiện nhiều truy vấn tại các vị trí khác nhau và mở rộng dễ dàng.
Tuy nhiên, các hệ thống cơ sở dữ liệu phân tán cũng phải đối mặt với nhiều thách thức, rủi ro và mối đe dọa bảo mật. Các mô hình hiện tại không đủ để đảm bảo tính toàn vẹn và an ninh của dữ liệu trong hệ thống phân tán. Mất tính toàn vẹn dữ liệu [1] là một trong những vấn đề cần được giải quyết trong hệ thống cơ sở dữ liệu phân tán. Dữ liệu trong hệ thống phân tán được phân mảnh và phân phối trên các vị trí khác nhau. Khi một cuộc tấn công xảy ra và gây thay đổi bất hợp pháp tới một hoặc nhiều bản sao của dữ liệu, người dùng không thể xác minh tính toàn vẹn của dữ liệu và có thể tiếp tục sử dụng dữ liệu bị tấn công mà không hề hay biết. Vì vậy, cần có một cơ chế liên tục kiểm tra tính toàn vẹn của dữ liệu và phải đối phó với các mối đe dọa bảo mật.
Cơ sở dữ liệu phân tán có thể được phân loại thành hai môi trường chính: cơ sở dữ liệu phân tán đồng nhất và không đồng nhất được thể hiện trong Hình 1. Trong cơ sở dữ liệu phân tán đồng nhất, các site sử dụng cùng một hệ điều hành và hệ quản trị cơ sở dữ liệu (DBMS), đồng thời họ có khả năng liên lạc và hợp tác với nhau để xử lý yêu cầu của người dùng. Cơ sở dữ liệu phân tán đồng nhất cho phép truy cập dữ liệu thông qua một giao diện duy nhất.
Hình 1. Phân loại cơ sở dữ liệu phân tán
Trong cơ sở dữ liệu phân tán, phân mảnh và phân phối [2] là hai khái niệm quan trọng để quản lý và tổ chức dữ liệu tại các vị trí khác nhau. Phân mảnh dữ liệu (data fragmentation) là quá trình chia một bảng hoặc tập dữ liệu lớn thành các phân đoạn nhỏ hơn. Mỗi phân đoạn chứa một phần của dữ liệu và có thể được lưu trữ trên các vị trí khác nhau trong cơ sở dữ liệu phân tán. Trong khi đó, phân phối liên quan điều phối dữ liệu được phân mảnh đến các vị trí thích hợp.
Phân mảnh và phân phối mang lại cho hệ thống phân tán những ưu điểm chính sau:
- Dữ liệu được truy xuất từ vị trí gần nhất dẫn đến hiệu suất của hệ thống tăng lên.
- Các kỹ thuật tối ưu hóa truy vấn cục bộ là đủ cho hầu hết các các truy vấn vì dữ liệu thường có sẵn cục bộ.
- Bảo mật và quyền riêng tư của hệ thống có thể được duy trì do dữ liệu không liên quan không có tại các vị trí cục bộ.
Tuy nhiên phân mảnh và phân phối cũng tồn tại các nhược điểm sau:
- Khi dữ liệu liên quan đến nhiều vị trí, tốc độ truy cập có thể rất thấp.
- Trong trường hợp phân mảnh đệ quy, công việc tái tạo sẽ cần những kỹ thuật tốn kém chi phí.
- Thiếu các bản sao dự phòng của dữ liệu tại các vị trí khác nhau có thể làm cho cơ sở dữ liệu không hiệu quả trong trường hợp các vị trí bị lỗi.
Trong cơ sở dữ liệu phân tán, vấn đề bảo mật đối với dữ liệu liên quan chặt chẽ đến phân mảnh và phân phối dữ liệu [3, 4]. Trong đó, vấn đề bảo mật dữ liệu cục bộ cần đặc biệt chú ý để tránh việc dữ liệu cục bộ bị truy cập hoặc thay đổi trái phép.
Để giải quyết vấn đề đã đề cập ở trên, công nghệ Blockchain [5, 6, 7] là lựa chọn hàng đầu với khả năng chống giả mạo của nó. Tuy nhiên, công nghệ này đối mặt với những giới hạn riêng của nó [13]. Để đảm bảo tiết kiệm tài nguyên tính toán và thời gian, cấu trúc dữ liệu cây Merkle [8, 9] được sử dụng để kiểm tra tính toàn vẹn của dữ liệu [10].
Với một đầu vào là dữ liệu X qua hàm băm ta được Y=h(X) là duy nhất. Khi X bị thay đổi thành X’ thì h(X’) khác h(X). Như vậy, để biết dữ liệu có bị thay đổi hay không ta có thể băm dữ liệu và so sánh với giá trị băm ban đầu. Blockchain được lựa chọn để lưu trữ giá trị băm đó bởi tính chất không thể sửa đổi của dữ liệu lưu trên nó. Tuy nhiên, khi đối mặt với lượng dữ liệu lớn, Blockchain không thể đáp ứng lưu tất cả giá trị băm của dữ liệu do giới hạn lưu trữ của nó. Do đó, cấu trúc cây Merkle được sử dụng để giải quyết vấn đề này.
Cây Merkle là một cấu trúc dữ liệu được sử dụng để kiểm tra tính toàn vẹn của dữ liệu bằng cách sử dụng giá trị băm của dữ liệu để xây dựng lên cây, nút gốc của cây đóng vai trò là một bản băm đối với toàn bộ cây. Như vậy khi một nút dữ liệu bị thay đổi, nút gốc của cây sẽ bị thay đổi. Do đó, kiểm tra giá trị nút gốc ta có thể biết được dữ liệu có bị thay đổi hay không. Ngoài ra, ta cũng có thể biết được nút dữ liệu nào bị thay đổi nhờ tính chất cấu trúc của cây Merkle.
Lưu trữ
Dữ liệu trong cơ sở dữ liệu phân tán sẽ được băm để sinh ra mã hash sau đó đưa vào cây Merkle. Cây Merkle sẽ sinh ra root hash và lưu trên Blockchain. Nhờ vậy, tính toàn vẹn sẽ có thể kiểm tra được bằng cách so khớp root hash của cây Merkle và giá trị root hash của cây được lưu trên Blockchain, đồng thời đảm bảo được tài nguyên dành cho Blockchain là hợp lý. Quá trình này được mô tả trong Hình 2.
Hình 2. Quá trình lưu sinh root hash và lưu trữ trên Blockchain
Mô hình hệ thống đề xuất
Hình 3. Kiến trúc của hệ thống
Mô hình hệ thống được đề xuất được mô tả trong Hình 3. Các thành phần chính của mô hình đề xuất bao gồm: Database Storage: Cung cấp khả năng lưu trữ phân tán; Blockchain: Lưu trữ root hash của cây; Gateway: Cung cấp cơ chế kiểm tra xác minh toàn vẹn; WebApp: Cung cấp giao diện tương tác giữa người dùng và hệ thống
Mô hình hệ thống này cung cấp cơ chế xác minh toàn vẹn của dữ liệu như sau:
- Đầu tiên, người dùng tạo ra một bản ghi để lưu vào Database Storage. Song song với việc tạo ra một bản ghi, hệ thống băm bản ghi và lưu trên cây Merkle thông qua Gateway.
- Gateway đảm nhận quá trình xây dựng cây Merkle, lưu root của cây lên Blockchain một cách tự động.
- Khi người dùng muốn kiểm tra dữ liệu có toàn vẹn hay không thì hệ thống sẽ lấy các bản ghi liên quan, băm ra và sinh root hash của cây Merkle, so sánh nó với giá trị lưu trên Blockchain. Nhờ vậy, nếu dữ liệu thay đổi ta có thể kiểm chứng được một cách tin cậy.
Kết quả thử nghiệm
Thử nghiệm kiểm tra hệ thống thử nghiệm được xây dựng trên một máy vật lý có tài nguyên cụ thể: CPU - Intel(R) Core(TM) i5-7300HQ CPU @ 2.50GHz 2.50 GHz; RAM - 8GB; Database Storage: MongoDB cluster; Blockchain: sử dụng Ganache xây dựng Private Blockchain. Kết quả thử nghiệm được thể hiện trong Bảng 1.
Bảng 1. Kết quả thử nghiệm hệ thống
Số lượng Document |
Số lượng Collection |
Kích thước mỗi Document (KB) |
Thời gian xác minh (ms) |
100 |
2 |
100 |
289 |
1000 |
3 |
100 |
3284 |
10000 |
3 |
100 |
17901 |
Dữ liệu thử nghiệm được sử dụng là các khối văn bản có kích thước 100KB. Trong các thử nghiệm, nhóm nghiên cứu sử dụng các tập dữ liệu với số lượng document và collection khác nhau, từ đó tính toán thời gian cần thiết để xác minh sự toàn vẹn của khối dữ liệu. Kết quả, thời gian xác minh cho khối dữ liệu 10000 document trên 3 collection khác nhau là xấp xỉ 18 giây. Đây được coi là thời gian chấp nhận được do kích thước lớn của khối dữ liệu (1GB). Hiệu năng tính toán có thể cải thiện khi áp dụng thêm các giải pháp tính toán song song.
Trong nghiên cứu này, nhóm tác giả đã đề xuất mô hình xác minh sự toàn vẹn của dữ liệu phân tán nhờ ứng dụng công nghệ Blockchain. Cụ thể, bằng cách kết hợp kỹ thuật cây Merkle và công nghệ Blockchain, các thay đổi trên dữ liệu được đảm bảo tính toàn vẹn cũng như minh bạch trong quá trình tìm kiếm xác minh.
TÀI LIỆU THAM KHẢO [1]. Mittal, M., et al. (2015). "Testing data integrity in distributed systems." Procedia Computer Science 45: 446-452. [2]. Özsu, M. T. (January 2002). "Distributed Database Systems". [3]. Sawiris, B. S. M. and M. A. Abdel-Fattah (2020). "A Novel Solution for Distributed Database Problems." International Journal of Advanced Computer Science and Applications 11(10). [4]. Contributors, W. (25 February 2002). "Data integrity." [5]. Nakamoto, S. (2008). "Bitcoin whitepaper." URL: https://bitcoin. org/bitcoin.pdf - (17.07. 2019). [6]. Hassani, K. (9 October 2014). "Blockchain." [7]. Yaga, D., et al. (2019). "Blockchain technology overview." arXiv preprint arXiv:1906.11078. [8]. Vaughan, W., et al. (2016). Chainpoint: A scalable protocol for anchoring data in the blockchain and generating blockchain receipts, Jun. [9]. Davidgothberg (20 August 2005). "Merkle tree". [10]. Firdhous, M. (2012). "Implementation of security in distributed systems-a comparative study." arXiv preprint arXiv:1211.2032. |
TS. Đặng Lê Đình Trang, Nguyễn Quốc Khánh (Học viện Kỹ thuật quân sự)
09:00 | 09/03/2023
10:00 | 17/05/2024
16:00 | 19/10/2022
16:00 | 03/05/2021
22:00 | 25/01/2025
09:00 | 24/02/2025
Sự phát triển nhanh chóng của mạng xã hội, đặc biệt là các nền tảng mạng xã hội xuyên biên giới kéo theo việc tăng nguy cơ khiến người dùng thường xuyên phải tiếp xúc với tin đồn, tin giả. Việc này đã tác động tiêu cực tới nhà nước, doanh nghiệp và công chúng trên nhiều khía cạnh khác nhau, dẫn tới hậu quả rất nghiêm trọng. Nhiều kỹ thuật, giải pháp và công cụ giám sát, phát hiện tin đồn, tin giả đã được nghiên cứu, phát triển và triển khai trên thực tế. Tuy vậy, một số giải pháp chỉ hoạt động bằng hình thức phân loại tin thủ công hoặc phân loại tin tự động nhưng yêu cầu cao về tài nguyên tính toán hoặc có tỷ lệ phát hiện thấp. Bài viết này đề xuất một mô hình học sâu cho phát hiện tin đồn, tin giả trên mạng xã hội đạt hiệu quả cao.
17:00 | 14/01/2025
Máy in hiện đại, với các tính năng vượt trội, không chỉ đơn thuần là công cụ hỗ trợ làm việc mà còn tiềm ẩn nhiều rủi ro an ninh mạng. Khả năng lưu trữ dữ liệu nhạy cảm trong bộ nhớ trong của chúng khiến máy in trở thành mục tiêu tấn công của tin tặc. Bài viết này trình bày về các nguy cơ liên quan đến rò rỉ dữ liệu từ bộ nhớ máy in. Đồng thời, đề xuất các chiến lược hiệu quả nhằm giảm thiểu rủi ro khi sử dụng máy in trong các tổ chức, cơ quan Đảng và Nhà nước, góp phần bảo vệ dữ liệu quan trọng trong các hệ thống trọng yếu, góp phần đảm bảo an ninh quốc gia.
13:00 | 02/12/2024
Trí tuệ nhân tạo (AI) đang ngày càng phát triển và được áp dụng trong nhiều lĩnh vực của đời sống. Thậm chí đối với những lĩnh vực đòi hỏi trình độ cao của con người như lập trình hay bảo mật, AI cũng đang chứng minh khả năng vượt trội của mình. Với sự trợ giúp của AI, Google đã phát hiện một lỗ hổng bảo mật tồn tại hơn 20 năm trong dự án phần mềm mã nguồn mở được sử dụng rộng rãi.
16:00 | 09/08/2024
Hiện nay, lĩnh vực thương mại điện tử đang trở nên phổ biến và phát triển mạnh mẽ, phục vụ nhu cầu mua sắm, trao đổi hàng hóa và dịch vụ cho hàng tỉ người dùng trên toàn cầu thông qua phương tiện điện tử và Internet. Những thách thức chính mà thương mại điện tử phải đối mặt hiện nay đó là các hình thức lừa đảo qua mạng và đánh cắp thông tin người dùng. Bài báo này trình bày những thách thức, yêu cầu đặt ra và những giải pháp an toàn cơ bản cho hệ thống thương mại điện tử hiện nay.
Báo cáo của Lineaje AI Labs đã đặt ra một câu hỏi quan trọng về tính minh bạch trong chuỗi cung ứng phần mềm quan trọng trên toàn cầu, đặc biệt trong bối cảnh phần mềm nguồn mở đang ngày càng được ứng dụng rộng rãi dẫn đến những nguy cơ tiềm ẩn về bảo mật, nhất là khi các đóng góp vào các dự án mã nguồn mở từ những nguồn không xác định.
08:00 | 27/02/2025
Điện thoại di động ngày nay không chỉ là thiết bị liên lạc mà còn là "kho chứa thông tin" cá nhân quan trọng như dữ liệu tài khoản ngân hàng, hình ảnh, email và các ứng dụng mạng xã hội. Vì vậy, việc mất điện thoại hoặc bị đánh cắp không chỉ gây thiệt hại về vật chất mà còn đe dọa nghiêm trọng đến bảo mật thông tin cá nhân của chủ sở hữu thiết bị. Bài viết dưới đây sẽ cung cấp hướng dẫn chi tiết về cách bảo vệ dữ liệu trong tình huống này.
14:00 | 10/03/2025