Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (722.79 KB, 25 trang )
<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">
1
BỘ GIÁO DỤC VÀ ĐÀO TẠO
<b>TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP. HCM </b>
2
BỘ GIÁO DỤC VÀ ĐÀO TẠO
<b>TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP. HCM </b>
3
<b>LỜI CẢM ƠN </b>
Trước tiên với tình cảm sâu sắc và chân thành nhất, cho phép em được bày tỏ
<i><b>lòng biết ơn đến Thầy Nguyễn Minh Thắng đã giúp đỡ em trong suốt quá trình học </b></i>
tập và nghiên cứu đề tài này. Trong suốt thời gian từ khi bắt đầu đồ án này, em đã nhận được rất nhiều sự quan tâm, giúp đỡ của Thầy.
Với lòng biết ơn sâu sắc nhất, em xin gửi đến thầy cô ở khoa Công Nghệ Thông Tin đã truyền đạt vốn kiến thức quý báu cho chúng em trong suốt thời gian học tập tại trường. Nhờ có những lời hướng dẫn, dạy bảo của các thầy cô nên đề tài nghiên cứu của em mới có thể hồn thiện tốt đẹp.
Một lần nữa, em xin chân thành cảm ơn thầy người đã trực tiếp giúp đỡ, quan tâm, hướng dẫn em hoàn thành tốt bài báo cáo này trong thời gian qua.
Bài báo cáo đồ án thực hiện trong khoảng thời gian gần 10 tuần. Bước đầu đi vào thực tế của em còn hạn chế và còn nhiều bỡ ngỡ nên khơng tránh khỏi những thiếu sót, em rất mong nhận được những ý kiến đóng góp quý báu của quý Thầy Cô để kiến thức của em trong lĩnh vực này được hoàn thiện hơn đồng thời có điều kiện bổ sung, nâng cao ý thức của mình.
Em xin chân thành cảm ơn!
<i> TP. Hồ Chí Minh, tháng 04 năm 2024 </i>
</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4"><b>CHƯƠNG 2: CƠ SỞ LÝ THUYẾT ... 8</b>
1. Khái quát về Blockchain ... 8
1.1 Blockchain là gì ... 8
1.2 Lịch sử ra đời ... 8
1.3 Cách thức hoạt động của Blockchain ... 9
1.4 Ưu nhược điểm của Blockchain ... 10
1.5 Phân loại Blockchain ... 12
2. Kiến trúc hạ tầng an toàn của Blockchain ... 13
2.1 Định nghĩa ... 13
2.2 Các yếu tố xây dựng kiến trúc hạ tầng an toàn của blockchain ... 13
3. Các vấn đề an ninh phổ biến trong mạng lưới Blockchain ... 14
3.1 51% Attack (Tấn công 51%) ... 14
3.2 Tấn công Double Spending (Tiêu tiền hai lần) ... 14
3.3 Tấn công Sybil ... 14
3.4 Rủi ro về Smart Contract (Hợp đồng thông minh) ... 15
3.5 Rủi ro về Privilege Escalation (Nâng cao quyền hạn) ... 15
3.6 Rủi ro về Quản lý Khóa Bảo mật ... 15
4. Nghiên cứu và đánh giá các phương pháp để cải thiện an ninh của hạ tầng blockchain. ... 15
4.1 Mật mã hóa mạnh mẽ ... 15
4.2 Mạng lưới phân tán ... 15
4.3 Cơ chế xác thực ... 16
4.4 Kiểm soát quyền truy cập ... 16
4.5 Kiểm thử bảo mật và audit ... 16
4.6 Giáo dục và đào tạo ... 16
<b>CHƯƠNG 3: KẾT QUẢ THỰC NGHIỆM ... 17</b>
</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">6
Đồ án "Nghiên cứu về kiến trúc hạ tầng an toàn của Blockchain" tập trung vào việc nghiên cứu các phương pháp, kỹ thuật và công nghệ để xây dựng một hạ tầng Blockchain an toàn và bảo mật. Mục tiêu của đồ án là cung cấp một cái nhìn tổng quan về thị trường blockchain, xu hướng phát triển, cũng như những tác động của blockchain đến đời sống xã hội.
2. Tìm hiểu về hợp đồng thông minh (Smart Contract): là các chương trình được lưu trữ trên blockchain chạy khi đáp ứng các điều kiện xác định trước. Chúng thường được sử dụng để tự động hóa việc thực hiện một thỏa thuận để tất cả những người tham gia có thể chắc chắn về kết luận ngay lập tức mà khơng có sự tham gia của một bên trung gian hoặc sự chậm trễ bổ sung nào. Họ cũng có thể tự động hóa quy trình làm việc bằng cách tự động thực hiện hành động tiếp theo khi đáp ứng một số điều kiện nhất định..
Đồ án gồm có 4 chương chính:
<i>- Chương 1: Tổng quan (Phần này sẽ giới thiệu tổng quan của đồ án gồm mô </i>
tả nền tảng sẽ đề cập trong đồ án, mục đích của đồ án giúp chúng ta có thể hiểu rõ hơn về mục đích và phạm vi của đồ án).
<i>- Chương 2: Cơ sở lý thuyết (Phần này sẽ giới thiệu về khái niệm cơ bản của </i>
Blockchain, bao gồm khái niệm, ưu và nhược điểm của Blockchain, tìm hiểu về đánh giá hạ tầng bao gồm cấu trúc, các tính năng chính, ưu và nhược điểm
</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">7
nhằm giúp người đọc hiểu rõ hơn về công nghệ chuỗi khối một cách tổng quan).
<i>- Chương 3: Kết quả thực nghiệm (Phần này sẽ đưa ra mục tiêu khi thực hiện </i>
demo, đưa ra mơ hình muốn triển khai khi demo, các công cụ cần thiết khi thực hiện và các bước thực hiện khi triển khai demo, đánh giá kết quả khi demo với các giải pháp đám mây khác).
<i>- Chương 4: Kết luận và kiến nghị (Phần này sẽ rút ra những sai sót và lưu ý </i>
trong quá trình xây dựng hệ thống Blockchain trong quá trình thực hiện và đưa ra hướng phát triển để chương trình hồn thiện hơn theo góc nhìn khách quan).
</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">Mục tiêu của cryptography gồm nâng cao độ bảo mật và tính minh bạch trong hệ thống máy tính, tương đồng với mục tiêu của blockchain.
Năm 1982, nhà mật mã học David Chum đề xuất một mạng lưới mà người dùng không cần tin tưởng lẫn nhau vẫn có thể xây dựng nên một hệ thống, ý tưởng có tên gọi “Computer Systems Established, Maintained, and Trusted by Mutually Suspicious Groups”. Mặc dù đây chỉ là một ý tưởng (không hơn không kém), thế hệ sau đã sử dụng đề xuất này để tạo ra một mạng lưới blockchain.
Kể từ đó, cơng nghệ blockchain đã trải qua nhiều giai đoạn hình thành và phát triển để đạt được sự mở rộng như hiện nay.
Sơ lược lịch sử phát triển của blockchain:
</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">Nhiều người dùng vẫn luôn thắc mắc cách hoạt động của Blockchain như thế nào mà có thể tạo ra được tính bảo mật rất cao. Phần lớn Blockchain phân thành các cấp hoạt động:
1.3.1 Nguyên lý mã hóa
Với các vấn đề đã đề cập bên trên và cách thức hoạt động của Blockchain, bạn sẽ thấy Blockchain được duy trì dựa trên hệ thống hàng ngang có mối liên kết chặt chẽ với nhau. Vì thế nó sẽ tạo ra một số điểm khác biệt:
• Bạn có thể xem được tồn bộ các giao dịch, trao đổi của người dùng. • Giao dịch khơng cần có sự can thiệp của bên thứ 3 xử lý.
• Cơng nghệ lưỡi khối được mã hóa qua các hàm tốn học đặc biệt.
Ngồi ra để thực hiện giao dịch trên Blockchain càn có sự trao đổi thơng qua ví điện tử. Tất cả sẽ được bảo mật bằng các phương pháp mã hóa đặc biệt nhờ khóa riêng tư và khóa cơng khai.
Có nghĩa là khi bạn mã hóa bằng khóa Public thì chủ sở hữu Private mới là người giải mã được các nội dung và dữ liệu gửi đến. Còn khi bạn sử dụng mã riêng tư thì bạn cần tạo nên một ký tự đặc biệt như chữ ký điện tử. Từ đó các mạng Blockchain mới có thể kiểm sốt và tiến hành kiểm tra chủ thể để xác định giao dịch.
1.3.2 Quy tắc cuốn sổ cái
Mỗi nút trên hệ thống mạng lưới đều lưu trữ một bản sao của cuốn sổ kế tốn. Vì vậy thơng qua các nút bạn sẽ nắm được số dư tài khoản của mình. Cách thức
</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">Tuy nhiên với cách thức hoạt động của Blockchain, bạn cần lưu ý bảo vệ mật khẩu và khóa riêng tư thật sự an tồn. Bởi khi đã đánh mất “chìa khóa” sẽ khơng có một đơn vị nào có thể giúp bạn phục hồi hay lấy lại mật khẩu ví điện tử.
1.3.3 Nguyên lý tạo khối
Sau khi phát sinh giao dịch trên mạng lưới Blockchain, nhờ vào cách thức hoạt động của Blockchain, chúng sẽ được gom vào một nhóm các khối trong cùng 1 block vào 1 thời điểm đồng nhất. Mỗi một nút sẽ trở thành một khối và báo về hệ thống như một hàm ý để tạo các khối liên kết tiếp theo. Khi được cập nhật vào Blockchain, mỗi khối sẽ tích hợp lại 1 đoạn mật mã cho một hàm toán phức tạp. Để giải được bài toán này, bạn sẽ phải lựa chọn xác suất giữa các con số ngẫu nhiên.
Quy trình trong hệ thống mà 1 chuỗi sẽ được tạo ra trong khoảng thời gian là 10 phút. Nút nào giải được bài toán sẽ gắn tiếp quyền với khối tiếp theo vào chuỗi và được gửi đến toàn bộ mạng lưới.
Với cách thức hoạt động của Blockchain như thế này sẽ có ít khả năng các khối được xây dựng cùng nhau. Vì vậy sẽ khơng thể xuất hiện trường hợp các khối đồng loạt giải quyết 1 lúc và tạo ra các khối nối đuôi khác nhau. Do đó bạn hồn tồn n tâm bởi sự đồng thuận giữa toàn bộ chuỗi các khối.
1.4.1 Ưu điểm
• Dữ liệu khơng bị mất:
o Dữ liệu blockchain được lưu trữ trên hàng ngàn thiết bị trên một mạng lưới gồm nhiều node phân tán, hệ thống và dữ liệu có khả năng chống lại lỗi kỹ thuật và các cuộc tấn công.
</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">11
o Mỗi node trong mạng có khả năng sao chép và lưu trữ một bản sao của cơ sở dữ liệu nên dữ liệu sẽ không bị mất mà vẫn được bảo tồn. • Tính ổn định: Các khối khơng thể bị đảo ngược, có nghĩa là dữ liệu đã được ghi vào blockchain, thì đồng nghĩa với việc loại bỏ hoặc thay đổi là vơ cùng khó khăn. Chính điều này đã khiến blockchain trở thành công nghệ tuyệt vời cho các lĩnh vực lưu trữ hồ sơ tài chính hoặc các giao dịch, dữ liệu được ghi lại vĩnh viễn trên một sổ cái phân tán và công khai.
• Hệ thống khơng cần sự tin tưởng:
o Hiện nay trong hầu hết các phương thức thanh toán truyền thống, các giao dịch sẽ được bảo chứng bởi một bên trung gian ví dụ như ngân hàng, cơng ty thẻ tín dụng….
o Nhưng khi sử dụng cơng nghệ Blockchain sẽ loại bỏ q trình trung gian này thông qua việc các nút phân tán xác minh các giao dịch thơng qua q trình đào.
o Với một hệ thống blockchain thì sẽ loại bỏ tối đa được rủi ro từ việc tin tưởng vào một tổ chức duy nhất và giảm chi phí chung và chi phí giao dịch bằng cách loại bỏ các bên trung gian hoặc bên thứ ba. • Dữ liệu chất lượng cao: Dữ liệu lưu trữ trên Blockchain sẽ được hồn thiện,
thích hợp, kịp thời chính xác và phổ biến rộng rãi.
• Tính minh bạch và không thể thay đổi: Tất cả các dữ liệu lưu trữ trên blockchain có thể được xem xét công khai bởi các bên, tạo sự minh bạch. Các giao dịch là bất biến nghĩa là chúng không thể bị thay đổi hoặc bị xóa đi.
• Các giao dịch nhanh hơn: Các giao dịch liên ngân hàng có thể mất tới một tới vài ngày để thực hiện xong. Nhưng với giao dịch Blockchain thì có thể giảm xuống còn vài phút, hoặc vài giây và được xử lý 24/7.
• Giao dịch xuyên biên giới: Nếu như trước đây các giao dịch bị hạn chế bởi múi giờ và cần có sự xác nhận của tất cả các bên thì Blockchain khi tham gia sẽ xử lý quá trình này cho các giao dịch xuyên biên giới nhanh chóng.
</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">12
• Tiết kiệm chi phí: Tiết kiệm chi phí nhờ việc cắt giảm được các quy trình xác minh khơng cần thiết, giảm thiểu các lỗi và giảm tải việc lưu trữ bằng giấy truyền thống.
1.4.2 Nhược điểm
• Hiệu suất: Blockchain sẽ luôn chậm hơn so với các cơ sở dữ liệu tập trung. Khi một giao dịch được xử lý một blockchain cần được xử lý độc lập bởi mọi node trong mạng lưới, xác nhận chữ ký và cần đạt được sự đồng thuận giữa các node trong mạng.
• Vấn đề tích hợp: Để ứng dụng công nghệ Blockchain vào thực tế sẽ cần các cơng ty phải có chiến lược thay đổi phần lớn hoặc hồn tồn các hệ thống hiện có.
• Mức độ tiêu thụ năng lượng lớn: Các nhà khai thác mạng lưới Bitcoin Blockchain cố gắng 450 nghìn tỷ giải pháp mỗi giây trong việc xác nhận giao dịch sử dụng nguồn năng lượng tương đối lớn.
• Chi phí: Blockchain tiết kiệm rất nhiều chi phí giao dịch và thời gian nhưng sẽ tốn nhiều chi phí đầu tư ban đầu.
Hiện nay hệ thống Blockchain được phân chia ra làm 4 loại chính: 1.5.1 Public
Một ưu điểm cho cách thức hoạt động của Blockchain chính là cho phép mọi người có quyền đọc và điền các dữ liệu lên hệ thống. Vì vậy mà quá trình xác thực sẽ xuất hiện nhiều nút tham gia. Do đó nếu như các hacker muốn tấn công vào hệ thống sẽ phải bỏ ra một khoản chi phí khổng lồ, khơng hề tối ưu.
Ngồi ra, mỗi chuỗi cơng khai đều có một Token được gắn vào. Với đặc điểm này đã tạo ra một ưu điểm khuyến khích, tặng thưởng cho mọi người khi tham gia mạng lưới.
1.5.2 Private Blockchain
</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">13
Chuỗi phối riêng tư sẽ hỗ trợ cho mọi người có quyền đọc mọi thơng tin. Tuy nhiên, họ sẽ không được cấp quyền ghi dữ liệu. Do đó thao tác trên Private được duyệt rất tốc độ và hầu hết không cần quá nhiều thiết bị tham gia xác thực các trao đổi. Có thể nói chuỗi phối riêng tư được ứng dụng rộng rãi trong các doanh nghiệp do tập trung hóa hơn so với Public.
1.5.3 Consortium
Chuỗi khối doanh nghiệp mang lại lợi ích tương tự như chuỗi khối riêng tư và được xếp vào một phân loại nhỏ hơn của chuỗi riêng tư. Đối tượng tham gia Permissioned thường là các ngân hàng trung ương, chính phủ và các chuỗi cung ứng.
1.5.4 Chuỗi khối hỗn hợp
Bản chất là dạng Private nhưng có sự khác biệt bởi tích hợp thêm 1 số tính năng hồn chỉnh hơn. Hiểu rõ đó là sự kết hợp giữa chuỗi khối riêng tư và chuỗi khối công khai. Dự án này là sự kết hợp tổng thể giữa lợi ích của private và sự minh bạch từ public. Như thế sẽ giúp công ty linh hoạt hơn giữa các dữ liệu muốn công khai hoặc thông tin nội bộ.
Kiến trúc hạ tầng an toàn của blockchain là cách thức tổ chức và xây dựng hệ thống blockchain để đảm bảo tính bảo mật, tồn vẹn và phân quyền của dữ liệu và giao dịch. Nó bao gồm các phương pháp, cơng nghệ và quy trình được thiết kế để ngăn chặn và giảm thiểu các rủi ro liên quan đến việc truy cập trái phép, sửa đổi dữ liệu, hoặc gian lận trong mạng lưới blockchain.
Kiến trúc hạ tầng an toàn của blockchain thường bao gồm các yếu tố sau: • Mật mã hóa: Sử dụng các thuật tốn mật mã hóa mạnh mẽ để bảo vệ dữ liệu
và giao dịch.
• Mạng lưới phân tán: Dữ liệu được phân tán trên nhiều nút (nodes) trên một mạng lưới phân tán, giúp tăng tính bền vững và an tồn của hệ thống.
</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">14
• Cơ chế xác thực: Sử dụng các cơ chế như chứng minh công việc (Proof of Work) hoặc chứng minh cổ phần (Proof of Stake) để xác thực và xác định các giao dịch.
• Cấu trúc dữ liệu khơng thể thay đổi: Sử dụng cấu trúc dữ liệu chuỗi khối để ghi nhớ dữ liệu và đảm bảo rằng các thông tin đã được xác thực không thể bị sửa đổi.
• Quản lý quyền truy cập: Cung cấp cơ chế để quản lý quyền truy cập vào dữ liệu và tài sản trên blockchain, đảm bảo tính riêng tư và an tồn cho người dùng.
• Các biện pháp bảo mật phụ trợ: Bao gồm các biện pháp như mã hóa đầu cuối, giao thức mạng an tồn, kiểm soát truy cập, và giám sát hệ thống để ngăn chặn các cuộc tấn công và đảm bảo an toàn của hệ thống.
Trong mạng lưới blockchain, có một số vấn đề an ninh phổ biến mà cần được quan tâm và giải quyết để đảm bảo tính bảo mật và tin cậy của hệ thống. Dưới đây là một số vấn đề an ninh phổ biến trong mạng lưới Blockchain:
Đây là tình huống khi một nhóm người dùng hoặc một tổ chức kiểm sốt hơn 50% sức mạnh tính tốn của mạng lưới blockchain, có thể cho phép họ kiểm sốt quyết định của hệ thống, thậm chí là sửa đổi hoặc phủ nhận các giao dịch.
Đây là khi một người dùng sử dụng một đồng tiền kỹ thuật số để thực hiện nhiều giao dịch khác nhau trong cùng một khoảng thời gian, mà không cần phải trả lại số tiền đã chi tiêu ban đầu. Mặc dù các blockchain như Bitcoin có các biện pháp ngăn chặn double spending, nhưng vẫn cần phải cảnh giác trước các biến thể của tấn công này.