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
10:00 | 07/06/2024
Bảo đảm an ninh mạng rất đóng vai trò quan trọng, giúp bảo vệ dữ liệu, hệ thống và mạng của tổ chức, doanh nghiệp khỏi các cuộc tấn công của tội phạm mạng. Các cuộc tấn công này có thể làm gián đoạn, gây tổn thất về dữ liệu và chi phí cho doanh nghiệp. Các chuyên gia bảo mật thuộc Công ty An ninh mạng Viettel đã đưa ra khuyến nghị về năm cách bảo vệ hệ thống dành cho doanh nghiệp, nếu áp dụng chính xác có thể giảm thiểu tới 90% các cuộc tấn công mạng.
10:00 | 17/05/2024
Mã độc không sử dụng tệp (fileless malware hay mã độc fileless) còn có tên gọi khác là “non-malware”, “memory-based malware”. Đây là mối đe dọa không xuất hiện ở một tệp cụ thể, mà thường nằm ở các đoạn mã được lưu trữ trên RAM, do vậy các phần mềm anti-virus hầu như không thể phát hiện được. Thay vào đó, kẻ tấn công sử dụng các kỹ thuật như tiêm lỗi vào bộ nhớ, lợi dụng các công cụ hệ thống tích hợp và sử dụng các ngôn ngữ kịch bản để thực hiện các hoạt động độc hại trực tiếp trong bộ nhớ của hệ thống. Bài báo tìm hiểu về hình thức tấn công bằng mã độc fileless và đề xuất một số giải pháp phòng chống mối đe dọa tinh vi này.
13:00 | 19/03/2024
Hiện nay, khi mức độ phổ biến của Hệ thống tệp liên mạng (Interplanetary File System - IPFS) ngày càng phát triển thì cũng kéo theo những rủi ro và mối đe dọa bởi tội phạm mạng nhanh chóng phát triển các kỹ thuật tấn công và lợi dụng công nghệ IPFS để mở rộng hoạt động phạm tội của chúng. Các cuộc tấn công này thậm chí còn trở nên nguy hiểm hơn khi nhiều dịch vụ lưu trữ tệp, lưu trữ web và đám mây hiện đang sử dụng IPFS. Xu hướng gần đây cho thấy sự gia tăng đáng lo ngại về các cuộc tấn công lừa đảo tận dụng IPFS, trong đó kẻ tấn công lạm dụng tính chất phi tập trung của công nghệ này để lưu trữ và phân phối nội dung độc hại. Bài báo trình bày tổng quan và thực trạng tấn công lừa đảo IPFS, từ đó đưa ra phương pháp phù hợp để phòng tránh trước các cuộc tấn công lừa đảo IPFS.
10:00 | 26/10/2023
Trong thời gian gần đây, các trường hợp lừa đảo qua mã QR ngày càng nở rộ với các hình thức tinh vi. Bên cạnh hình thức lừa đảo cũ là dán đè mã QR thanh toán tại các cửa hàng khiến tiền chuyển về tài khoản kẻ gian, vừa qua còn xuất hiện các hình thức lừa đảo mới.
Bộ nhớ RAM là một trong những nơi chứa các thông tin quý báu như mật khẩu, khóa mã, khóa phiên và nhiều dữ liệu quan trọng khác khiến nó trở thành một trong những mục tiêu quan trọng đối với tin tặc. Tấn công phân tích RAM có thể gây tiết lộ thông tin, thay đổi dữ liệu hoặc khai thác các lỗ hổng bảo mật trong hệ thống, đây đang là một hình thức tấn công bảo mật nguy hiểm đối với dữ liệu, chúng tập trung vào việc truy cập, sửa đổi hoặc đánh cắp thông tin người dùng. Bài báo sau đây sẽ trình bày về các nguy cơ, phương pháp tấn công phân tích RAM và những biện pháp bảo vệ để ngăn chặn hoạt động tấn công này.
13:00 | 30/09/2024
Quy định Bảo vệ Dữ liệu chung (GDPR) của Liên minh châu Âu là văn bản pháp lý quan trọng, hình mẫu cho các nước, khu vực khác trong việc bảo vệ dữ liệu. Tuy nhiên, việc tuân thủ GDPR sẽ đòi hỏi các tổ chức phải đầu tư kinh phí bổ sung, tăng cường nhân lực dành cho xử lý dữ liệu. Dưới đây là hướng dẫn 12 bước triển khai GDPR cho tổ chức do Ủy ban Bảo vệ Dữ liệu công bố.
16:00 | 23/09/2024