TỔNG QUAN VỀ CÔNG NGHỆ BLOCKCHAIN VÀ ỨNG DỤNG

Phạm Thị Lan Anh*

Khoa Công nghệ thông tin, Học viện Nông nghiệp Việt Nam

TÓM TẮT

Trong những năm gần đây, công nghệ Blockchain trở nên được quan tâm và phát triển ứng dụng ngày càng nhiều. Việt Nam là một trong số các quốc gia trên thế giới cho phép kết nối và phát triển các ứng dụng dựa trên công nghệ Blockchain. Nội dung của bài tổng quan sẽ trình bày cấu trúc của Blockchain, phân loại Blockchain, những ưu điểm nổi bật của Blockchain và một số ứng dụng của công nghệ này.

Từ khóa: Chuỗi khối, Mạng ngang hàng, Toàn vẹn thông tin, Tiền điện tử.

OVERVIEW OF THE BLOCKCHAIN TECHNOLOGY AND APPLICATIONS

ABSTRACT

In recent years, Blockchain technology has gained more and more attention and application development. Vietnam is one of the countries in the world that allows the connection and development of applications based on Blockchain technology. The content of the review will present the structure of Blockchain, classification of Blockchain, outstanding advantages of Blockchain and some applications.

Keywords: Blockchain, Peer-to-peer (P2P) computer network, Cryptocurrency.

  1. ĐẶT VẤN ĐỀ

Blockchain là danh sách các bản ghi ngày càng tăng, được liên kết với nhau bằng mật mã và được chia sẻ bình đẳng tới các thiết bị, máy tính kết nối vào hệ thống. Dữ liệu trong Blockchain là bất biến, tạo điều kiện thuận lợi cho quá trình ghi lại các giao dịch và theo dõi tài sản trong một mạng lưới kinh doanh. Một tài sản có thể là hữu hình (nhà, xe hơi, tiền mặt,…) hoặc vô hình (sở hữu trí tuệ, bằng sáng chế, thương hiệu,…). Mỗi khối (block) được tạo ra đều có chứa một hàm băm mật mã của khối trước đó cùng với dấu thời gian và dữ liệu giao dịch (thường được biểu diễn dưới dạng cây Merkle) [1]. Dấu thời gian đáng tin cậy minh chứng rằng dữ liệu giao dịch tồn tại khi khối được xuất bản để đi vào hàm băm của nó. Các khối chứa hàm băm của khối trước, tạo thành một chuỗi khối, khối sau được bổ sung vào sẽ củng cố chắc chắn hơn cho thông tin của khối trước đó. Do đó, các Blockchains có khả năng chống lại việc sửa đổi dữ liệu trong hệ thống và minh bạch thông tin do dữ liệu chia sẻ trong toàn hệ thống mạng ngang hàng. Đây được coi là một đặc trưng nổi bật của công nghệ Blockchain cho phép người dùng theo dõi được các giao dịch tài chính một cách chủ động và đáng tin cậy. Ứng dụng được biết đến nhiều nhất dựa trên công nghệ Blockchain là các đồng tiền kỹ thuật số như Bitcoin. Ngoài ra, giới nghiên cứu và các nhà phát triển ứng dụng công nghệ Blockchain đang mong muốn mở rộng hơn khả năng tiếp cận các bài toán thực tế từ các lĩnh vực khác nhau như truy xuất nguồn gốc, hợp đồng thông minh, chăm sóc sức khỏe,…

Công nghệ Blockchain được công nhận là một cuộc cách mạng phát minh cho thấy sự phát triển của năm đổi mới [2]:

  • Sự đổi mới đầu tiên của Blockchain là Bitcoin – thử nghiệm của tiền kỹ thuật số;
  • Sự đổi mới thứ hai là bản thân công nghệ Chuỗi khối (Blockchain) – khi các nhà phát triển hiểu rằng công nghệ có thể được sử dụng cho mục đích khác;
  • Sự đổi mới thứ ba là một hợp đồng thông minh, hiện thân trong thế hệ thứ hai của Blockchain và được gọi là Ethereum;
  • Đổi mới lớn thứ tư là Proof of Stake, nơi các trung tâm dữ liệu được thay thế bằng công cụ tài chính phức tạp có mức độ bảo mật cao hơn;
  • Đổi mới cuối cùng sẽ là Blockchain mở rộng quy mô – tăng tốc quá trình của giao dịch mà không làm suy yếu an ninh.

Công nghệ Blockchain mặc dù có lịch sử phát triển từ lâu, hứa hẹn nhiều thành công trong tương lai nhưng còn khá mới mẻ với giới nghiên cứu học thuật và phát triển ứng dụng tại Việt Nam. Vì vậy, phần tiếp theo của bài tổng quan sẽ giới thiệu về một số đặc điểm cốt lõi của công nghệ Blockchain cùng một số ứng dụng dựa trên công nghệ này.

  1. CÔNG NGHỆ BLOCKCHAIN
    • Giới thiệu lịch sử hình thành và phát triển

Những đặc điểm kỹ thuật trong Blockchain được hình thành và phát triển từ rất sớm thay vì mốc thời gian 2008 như nhiều người vẫn ấn tượng. Ý tưởng về một chuỗi thông tin bất biến được liên kết chặt chẽ với một hàm băm mật mã trong một luận văn năm 1979 của Ralp Merkle [3] tại Stanford, trong đó Merkle giải thích cách thông tin có thể được liên kết trong một cấu trúc cây được gọi là cây băm Merkle. Sau đó năm 1990, Haber và Stornetta đã áp dụng những ý tưởng này vào các tài liệu đóng dấu thời gian năm 1994 [3]. Năm 1992, Dwork và Naor đề xuất bằng chứng tính toán để chống lại thư rác tương tự như Proof of Work (PoW) [3]. Tuy nhiên, với PoW, ảnh hưởng của một nút đối với quá trình đồng thuận tỷ lệ thuận với sức mạnh tính toán của nút đó. Để thích ứng với số lượng tài nguyên tính toán khác nhau trong toàn bộ hệ thống, PoW được điều chỉnh động cho độ khó của bài toán cần giải quyết để đạt được một tỷ lệ mục tiêu nhất định. Một khái niệm về sao chép trạng thái của hệ thống cho phép chỉ định một giao dịch được thêm vào là giao dịch như thế nào, chúng được xử lý theo thứ tự nào ngay cả khi có lỗi (Byzantine) và thông tin liên lạc không đáng tin cậy được đề xuất năm 1978 và chính thức hóa bởi Schneider năm 1990 [3]. Ngoài ra, nhiều yếu tố của Blockchain được thể hiện trong một hệ thống của David Chaum năm 1979 và được mô tả cụ thể trong luận văn của ông năm 1982 tại Berkeley bao gồm các thông số kỹ thuật chi tiết được coi là tiền thân quan trọng của công nghệ Blockchain hiện đại [3]. Chaum mô tả thiết kế của một hệ thống máy tính phân tán có thể được thành lập, duy trì và tin cậy bởi các nhóm không ràng buộc tin cậy lẫn nhau. Hệ thống là một hồ sơ lưu trữ công cộng với tính nhất quán của thành viên nhóm và tính toán giao dịch riêng tư để bảo vệ quyền riêng tư cá nhân thông qua bảo mật vật lý. Tác phẩm năm 1982 của Chaum hầu như không được chú ý, trong tác phẩm này, ông cũng không trình bày ý tưởng về bằng chứng công việc cũng như khả năng điều chỉnh linh hoạt độ khó công việc cần được giải quyết. Năm 1991, Stuart Haber và W. Scott Stornetta đã trình bày những nghiên cứu sâu hơn về chuỗi khối được bảo mật bằng mật mã trong bài viết “Cách đánh dấu thời gian cho một tài liệu kỹ thuật số” đăng trong tạp chí Mật mã học [4]. Năm 2008, một người (hoặc một nhóm người) được gọi là Satoshi Nakamoto đã cải tiến thiết kế theo cách quan trọng bằng cách sử dụng phương pháp giống như Hashcash để các khối được đánh dấu thời gian mà không yêu cầu chúng phải ký bởi một bên đáng tin cậy và giới thiệu một tham số độ khó để ổn định tốc độ mà các khối được thêm vào chuỗi [5]. Thiết kế được Nakamoto triển khai thực tế vào năm sau đó như một thành phần cốt lõi của tiền điện tử Bitcoin. Các từ “Block” (khối) và “Chain” (chuỗi) được sử dụng riêng biệt trong bài báo gốc của Satoshi Nakamoto, nhưng cuối cùng được phổ biến thành một từ duy nhất “Blockchain” vào năm 2016 [3]. Từ đó đến nay, nhiều đồng tiền điện tử ra đời dựa trên công nghệ Blockchain và cũng có những kỹ thuật thay thế, phát triển giúp Blockchain có khả năng mở rộng tốt hơn, giảm bớt chi phí tính toán để phù hợp hơn với thời đại mới. Điểm lại các mốc lịch sử quan trọng trong quá trình hình thành và phát triển công nghệ Blockchain được tổng hợp lại trong bảng 1iúp các nhà nghiên cứu cũng như các nhà phát triển ứng dụng thấy được rõ ràng hơn những thăng trầm của công nghệ này (có những thời điểm không được quan tâm đến) trước khi trở thành từ khóa nổi bật được tìm hiểu ngày nay.

Bảng 1. Mốc thời gian về một số khám phá quan trọng về Blockchain

NămSự kiện1974Ralp Merkle, các câu đố về mật mã (bài báo xuất bản năm 1978)1976Diffie và Hellman, mật mã khóa công khai được phát hiện tại Stanford1977Rivest, Shamir, Adleman, mã hóa RSA được phát minh tại MIT1979David Chaum, hầm và chia sẻ bí mật (luận văn 1982)1982Lamport, Shostak, Pease, vấn đề tổng quan về Byzantine1991Stuart Haber và W. Scott Stornetta, nghiên cứu sâu hơn về chuỗi khối được bảo mật bằng mật mã1992Dwork và Naor, chống lại thư rác2002Adam Bach, Hashcash2008Satoshi Nakamoto, Bitcoin2017Wright and Savanah, Văn phòng Sáng chế Châu Âu đã cấp bằng sáng chế đầu tiên về Blockchain

Vào tháng 8 năm 2014, kích thước tệp Blockchain Bitcoin chứa các bản ghi của tất cả các giao dịch đã xảy ra trên mạng đạt 20 GB (gigabyte). Vào tháng 1 năm 2015, kích thước tăng lên gần 30 GB và từ tháng 1 năm 2016 đến tháng 1 năm 2017, Blockchain Bitcoin đã tăng kích thước từ 50 GB lên 100 GB. Kích thước sổ cái đã vượt quá 200 GB vào đầu năm 2020 và tiếp tục gia tăng với lượng giao dịch tiếp tục tăng trong năm 2021 (hình 1.1) [3].

       

Hình 1. Giao dịch Bitcoin, Ethereum và Litecoin mỗi ngày (tháng 1 năm 2011 – tháng 1 năm 2021).

  • Đặc điểm, cấu trúc

Blockchain là một sổ cái kỹ thuật số phân tán, đôi khi là công khai bao gồm các bản ghi được gọi là khối được sử dụng để ghi lại các giao dịch trên nhiều máy tính trong đó bất kỳ khối nào tồn tại trong hệ thống đều không thể bị thay đổi mà không ảnh hưởng tới các khối tiếp sau đó. Điều này cho phép những người tham gia xác minh và kiểm toán các giao dịch một cách độc lập và tương đối rẻ. Cơ sở dữ liệu Blockchain được quản lý độc lập bằng cách sử dụng mạng ngang hàng và máy chủ đánh dấu thời gian phân tán. Các khối được xác thực bằng sự cộng tác hàng loạt do các máy tính trong hệ thống thông qua lợi ích tập thể. Để hiểu rõ hơn cách thức hình thành và hoạt động của Blockchain, nội dung tiếp theo của bài tổng quan sẽ trình bày chi tiết về cấu trúc khối, cấu trúc mạng phân tán cùng với khả năng mở rộng và bảo mật của công nghệ Blockchain.

  • Cấu trúc khối và chuỗi khối

Khối (Block) là một đơn vị lưu trữ dữ liệu trong chuỗi khối (Blockchain), các khối được liên kết với nhau thông qua các giá trị định danh đặc trưng của khối. Kiến trúc lưu trữ này giúp dữ liệu trong mỗi khối được toàn vẹn và không thể sửa đổi [6].

Về cơ bản, một khối sẽ có 2 thành phần: Block header (phần tiêu đề) và Block data (phần dữ liệu) [1,6,7,8,9]. Trong đó phần tiêu đề chứa ít nhất các thông tin đặc tả về Block (Meta data) và chứa danh sách các thông tin giao dịch (transaction) được mô tả trong bảng 2.

Bảng 2. Cấu trúc cơ bản của một Block [9]

Phần đầu thông tin của một Block (Block header) đặc tả các nội dung thông tin quan trọng như giá trị băm của Block trước đó (Block nằm trong cùng một Blockchain); Giá trị nhãn thời gian Timestamp ghi lại thời gian tạo ra Block cùng với giá trị Nonce (Giá trị biến thiên để tìm ra giá trị băm thỏa mãn yêu cầu của mỗi Blockchain, giá trị này cần phải được tính toán hay cần được “đào” bởi các “thợ đào”); Giá trị băm của dữ liệu trong Block hoặc Merkle root (là một cấu trúc được đặc tả theo hình cây) [6, 9].

Bảng 3. Cấu trúc Block header của một Block [9].

Phần dữ liệu là danh sách các giao dịch hoặc trạng thái dữ liệu được ghi vào sổ cái Blockchain trong một khoảng thời gian nhất định [6]. Một giao dịch thường bao gồm địa chỉ người nhận, địa chỉ người gửi và giá trị, nội dung giao dịch. Trên Blockchain một giao dịch Bitcoin thực hiện việc chuyển sở hữu của một số Bitcoin từ địa chỉ này sang địa chỉ khác [6]. Các giao dịch được đóng gói và gửi đến từng nút trong hệ thống dưới dạng một khối, sau đó được xác minh độc lập thông qua giao thức đồng thuận. Một số Blockchain tạo một khối mới sau khoảng 5 giây, thời gian đối với Ethereum được đặt từ 14 đến 15 giây, trong khi với Bitcoin, trung bình là 10 phút [1]. Các khối liên kết với nhau thông qua các giá trị băm và được chấp nhận trong mạng để tạo thành một chuỗi khối [1, 6, 7, 9].

Hình 2. Minh họa về các khối nối với nhau bởi giá trị băm [6].

Hầu hết các khối được thêm vào để mở rộng Blockchain chính. Chúng được gọi là các “khối nhánh chính”. Tuy nhiên, cũng có những khối tham chiếu cùng đến một khối trước đó (khối cha) và phát triển cùng với hệ thống trở thành “khối nhánh bên”. Khối này có thể trở thành nhánh chính khi sự đồng thuận trên mạng lưới thay đổi. Trong hệ thống còn có những khối “mồ côi” hay gọi là “orphan block” là các khối tham chiếu đến một khối cha không được biết đến với các nút xử lý khối đó [6]. Khối đầu tiên phát sinh ra giao dịch đầu tiên của hệ thống không chứa con trỏ đến khối trước nó, khối này gọi là khối khởi nguồn hay “genesis block”. Mỗi nút trong mạng luôn có khả năng nhận ra cấu trúc và giá trị băm của khối genesis.

Hình 3. Minh họa về sự phát triển chuỗi khối [6].

Việc xác minh khối nào được đóng gói, khai thác phải thông qua các giao thức đồng thuận và được các nút phân tán trong mạng thực hiện. Do đó, Blockchain có thể tạo ra các hệ thống không phụ thuộc vào bất kỳ một thực thể đáng tin cậy tập trung nào để quyết định trạng thái của mạng.

  • Cấu trúc mạng

Như đã trình bày ở phần 2.2.1, cấu trúc mạng của Blockchain là mạng phân tán (có đặc điểm như được mô tả ở hình 4), các nút trong mạng có quyền phát hành giao dịch, xác minh giao dịch, lưu trữ trạng thái của hệ thống là như nhau.

Hình 4. Cấu trúc mạng tập trung, phi tập trung và phân tán [10].

Khác với mạng tập trung khi mọi dữ liệu được lưu trữ tập trung trên một máy chủ, mạng phân tán của Blockchain cho phép mọi người dùng trong hệ thống đều có một bản sao đầy đủ các dữ liệu trong mạng và được đồng bộ liên tục theo thời gian. Mỗi người dùng trở thành một kho lưu trữ dữ liệu nên toàn bộ hệ thống không có mắt xích nào yếu để trở thành mục tiêu tấn công của tin tặc. Kể cả khi một mắt xích nào đó bị tấn công, ngưng hoạt động thì các nút khác trong mạng lưới vẫn hoạt động bình thường mà không hề bị ảnh hưởng.

  • Cơ chế đồng thuận

Khi một giao dịch mới được phát sinh, các nút trong mạng Blockchain đều có thể xác minh tính trung thực của giao dịch đó.

Vấn đề đặt ra là làm thế nào để các nút được phân quyền như nhau đạt được sự đồng thuận cuối cùng cho trạng thái mới của hệ thống khi có thêm giao dịch phát sinh. Với các mạng phân tán như Blockchain cần giải quyết được “Bài toán các vị tướng Byzantine” hay phải có cơ chế chịu lỗi Byzantine [11,12]. Cơ chế này được biết đến là các luật đồng thuận. Trong Blockchain đầu tiên, Bitcoin, Nakamoto Satoshi đã giới thiệu một phương pháp giải quyết bài toán các vị tướng Byzantine thông qua nguyên lý trò chơi và tối đa hóa lợi ích của các bên tham gia khi không gian lận gọi là bằng chứng công việc PoW [11]. Trong PoW, các thợ đào (miner) sẽ sử dụng sức mạnh tính toán của mình để tìm một số Nonce (đã được giới thiệu trong phần 2.2.1) cho khối mới được đề xuất của nó. Do hàm băm là hàm một chiều nên số Nonce chỉ có thể được tìm thấy bằng cách lặp đi lặp lại các phép thử các giá trị Nonce khác nhau cho đến khi đầu ra nằm trong phạm vi mục tiêu (Target) thì khối mới sẽ được đóng gói và phát đi cùng với các giao dịch đến các nút khác trong mạng. Nếu khối mới được xác minh và xác định là khối đầu tiên được tạo ra ngay sau khối cuối cùng trong chuỗi, khối đó sẽ trở thành khối mới nhất trong chuỗi. Để có thể tính toán được ra giá trị Nonce phù hợp và nhanh nhất, năng lượng mà các thợ đào cần đến là rất lớn. Do đó, có một thực tế xảy ra đó là những thợ đào có xu hướng tập hợp nhau lại tạo thành các bể đào, sau đó tự phân chia phần thưởng cho nhau, cũng như chỉ tập trung đào ở một phạm vi cụ thể. Vì vậy, các bể đào thâu tóm quá trình đóng gói các khối trong hầu hết các mạng Blockchain hiện đại. Khiến Blockchain dần bị phá vỡ cấu trúc phân tán. Ngoài ra, một vấn đề nữa của đồng thuận dựa trên PoW là sự chậm trễ. Một khối được coi là hoàn thành chỉ khi nó có sáu khối phía sau được thêm vào. Điều này làm chậm đáng kể sự xác nhận giao dịch trong toàn hệ thống. Đồng thuận dựa trên PoW còn tiêu tốn điện năng rất lớn dẫn đến ảnh hưởng xấu tới môi trường.

Để giảm các yêu cầu tính toán của PoW, một cơ chế đồng thuận khác được phát triển là cơ chế đồng thuận dựa trên cổ phần Proof-of-Stakes (PoS). Trong cơ chế đồng thuận dựa trên PoS, cổ phần của một nút là số lượng mã token kỹ thuật số (ví dụ tiền xu trong ví điện tử). Thay vì dựa vào khả năng tính toán như trong PoW, việc lựa chọn người thực hiện quá trình khai thác và thêm một khối mới vào chuỗi dựa vào cổ phần của họ được minh họa trong hình 5 [13]. Ưu điểm của PoS so với PoW có thể kể đến năng lượng tiêu thụ được giảm đi đáng kể, không yêu cầu cao về phần cứng thiết bị truy cập hệ thống, tốc độ tạo khối cùng với tốc độ xác minh giao dịch nhanh gấp nhiều lần so PoW [13]. Tuy nhiên PoS vẫn chưa được kiểm chứng chắc chắn về độ an toàn của hệ thống.

Hình 5.So sánh cơ chế đồng thuận PoW và PoS [13].

Ngoài hai cơ chế đồng thuận phổ biến trên, có một số cơ chế đồng thuận khác được biết đến như:

–           Cơ chế bằng chứng ủy quyền Delegated Proof of Stake (DPoS) [15]: cơ chế được coi là giải pháp thay thế cho sự đồng thuận tốn kém năng lượng của PoW và khả năng kém an toàn trước các mục đích xấu tấn công vào các bên liên quan của PoS. Đặc điểm cơ bản của DPoS nằm ở việc mỗi người dùng trong hệ thống sở hữu một số lượng phiếu bầu tỷ lệ với lượng đồng coin họ có và có thể ủy thác cổ phần cho nhân chứng (“Witness”) mà họ tin tưởng. Nhân chứng có thể đại diện các cổ đông phê duyệt các giao dịch và nhận phần thưởng từ việc phê duyệt này. Nếu nhân chứng thực hiện sai trách nhiệm của mình hoặc liên tục không tạo ra được khối mới sẽ bị mất uy tín, bị loại bỏ và bị thay thế bởi một người khác. Vì vậy, DPoS hạn chế hành vi gian lận, phá hoại của các nhân chứng khi họ sẽ bị mất cả cổ phần lẫn vai trò của mình trong hệ thống khi bị phát hiện hành vi sai trái.

–           Cơ chế bằng chứng năng lực Proof of Capacity (PoC): cơ chế đồng thuận này cho phép các thiết bị khai thác trong mạng sử dụng dung lượng ổ cứng có sẵn trong từng thiết bị để quyết định quyền khai thác thay vì sử dụng sức mạnh tính toán của thiết bị như trong PoW hay góp cổ phần như trong PoS. Ổ cứng càng lớn, giá trị giải pháp có thể lưu trữ trên ổ cứng càng nhiều, cơ hội người khai thác phải khớp với giá trị băm cần thiết từ danh sách của mình càng lớn, dẫn đến nhiều cơ hội giành được phần thưởng khai thác. PoC được cho là có lợi thế về tiết kiệm năng lượng tính toán, tuy nhiên dễ chịu tổn thương do khả năng nhiễm phần mềm độc hại ảnh hưởng đến hoạt động khai thác [16].

Các cơ chế đồng thuận đều tồn tại những ưu, nhược điểm của riêng nó và vẫn được tiếp tục nghiên cứu cải tiến, phát triển thêm những cơ chế đồng thuận phù hợp hơn với từng hệ thống Blockchain cụ thể.

  • Một số đặc điểm nổi bật

Từ chi tiết cấu trúc khối, cách kết nối các khối với nhau và xây dựng mạng lưới kết nối các thiết bị trong mạng khiến cho hệ sinh thái của Blockchain có những đặc điểm nổi bật và đem đến giải pháp hữu hiệu cho nhiều bài toán thực tế.

  1. a) Tính bất biến, toàn vẹn

Trở lại với cấu trúc của một khối dữ liệu có chứa giao dịch, nội dung trong Blockchain, ngoài ra khối còn chứa dấu thời gian đáng tin cậy (Trusted timestamping) [1,17], và các giá trị băm mật mã. Trong đó dấu thời gian đáng tin cậy có nhiều loại dấu thời gian khác nhau, đặc điểm chung của chúng là quá trình theo dõi an toàn thời gian tạo và sửa đổi tài liệu [17]. Dấu thời gian đáng tin cậy giúp tăng cường tính bất biến và toàn vẹn của dữ liệu khối vì không ai – kể cả chủ sở hữu của tài liệu có thể thay đổi dữ liệu đó trong khi tính toàn vẹn của dấu thời gian được đảm bảo. Dấu thời gian phi tập trung trên Blockchain được tạo ra bởi hàm băm dữ liệu (có kết hợp giữa nội dung giao dịch và thời gian tạo giao dịch). Chỉ một thay đổi nhỏ trong nội dung giao dịch hay thời gian tạo giao dịch cũng khiến dấu thời gian được tạo ra bởi hàm băm bị thay đổi.

Hình 6. Minh họa về sự thay đổi giá trị trả ra của hàm băm SHA-256 [18].

Như ví dụ trong hình 6, một ký tự “T” chuyển thành “t” sẽ khiến kết quả trả ra của hàm băm SHA-256 thay đổi hoàn toàn. Hàm băm lại là hàm một chiều, nên việc lựa chọn lại nội dung sao cho trả ra một giá trị băm giống như cũ là điều gần như không thể thực hiện. Trong trường hợp, tin tặc vẫn cố tình tấn công thay đổi nội dung của một khối nào đó trong chuỗi khối, do thuộc tính của hàm băm, thay đổi nội dung của khối đó sẽ kéo theo việc thay đổi hàm băm được lưu trữ trong khối liền trước nó, dẫn tới thay đổi lưu trữ của toàn bộ chuỗi trước đó. Điều này là không thể xảy ra. Kể cả trong trường hợp có thể thay đổi được chuỗi nội dung nhưng để được cộng đồng xác thực nội dung đã thay đổi này thì kẻ tấn công phải làm chủ sức mạnh tính toán của hơn 51% sức mạnh tính toán của toàn bộ hệ thống, một công việc điên rồ vì chi phí bỏ ra quá lớn so với những gì có thể đạt được. Do đó, một khi dữ liệu đã được đưa vào khối và được xác thực thành công thì nó sẽ là bất biến và toàn vẹn.

  1. b) Tính minh bạch

Bởi cơ chế chia sẻ dữ liệu trong một hệ thống mạng ngang hàng, các giao dịch dữ liệu khi cần được xác thực sẽ gửi tới toàn bộ các nút trong hệ thống và được đồng bộ sau quá trình xác minh hoàn tất để nối khối dữ liệu đó vào chuỗi khối chung. Nội dung chi tiết của giao dịch hay dữ liệu được đẩy lên được hiển thị chung, nút nào cũng có khả năng quyết định xem giao dịch hay dữ liệu đó thật hay giả mạo. Việc đồng bộ lại cơ sở dữ liệu trên các bộ lưu trữ tại các nút diễn ra liên tục nên các nút đều có thể theo dõi tiến trình phát triển chuỗi khối chung trong toàn bộ hệ thống. Vì vậy, dữ liệu trong khối được coi là minh bạch, cho phép khả năng truy cập cho mọi thiết bị thuộc hệ thống theo thời gian thực.

  1. c) Tính bảo mật, quyền riêng tư

Mặc dù thông tin trong khối được phân cấp, chia sẻ tới tất cả các nút, tuy nhiên với sự hoạt động của hàm băm kết hợp với cấu trúc dữ liệu hợp nhất được gọi là Merkle Tree cùng với chữ ký số [20, 21] giúp cho thông tin riêng tư được bảo mật.

Hệ thống chuỗi khối sử dụng mật mã không đối xứng (khóa riêng tư và khóa công khai) để bảo mật các giao dịch giữa người dùng [1]. Trong các hệ thống này, mỗi người dùng có một khóa công khai và riêng tư. Các khóa này là các chuỗi số ngẫu nhiên và có lên quan đến mật mã. Về mặt toán học, người dùng không thể đoán được khóa riêng của người khác thông qua khóa công khai của họ. Khóa công khai có thể được chia sẻ với những người dùng khác trong mạng vì chúng không cung cấp dữ liệu cá nhân. Mỗi người dùng có một địa chỉ được lấy từ khóa công khai bằng cách sử dụng một hàm băm. Những địa chỉ này được sử dụng để gửi và nhận tài sản trên Blockchain, chẳng hạn như tiền điện tử. Người gửi và nhận các giao dịch trong quá khứ được đại diện và ký tên bằng địa chỉ của họ, danh tính của người dùng không được tiết lộ. Địa chỉ công khai không tiết lộ thông tin cá nhân hoặc giấy tờ tùy thân, đúng hơn chúng hoạt động như một danh tính giả [1, 22].

Tuy nhiên, khái niệm “bảo mật” và “quyền riêng tư” còn khá nhiều tranh luận trong quá trình xây dựng và phát triển Blockchain. Điển hình như Bitcoin là sản phẩm ứng dụng nổi tiếng của công nghệ Blockchain, không tránh khỏi sự nhầm lẫn giữa bút danh, quyền riêng tư và ẩn danh. Bitcoin chỉ cung cấp các giao dịch được tạo ra bởi các bút danh không được ẩn danh [22]. Đây là điều hoàn toàn trái ngược với các hệ thống dựa trên tiền điện tử Chaumian tập trung có các thuộc tính quyền riêng tư được xác định rõ ràng, chẳng hạn như thực thi quyền riêng tư giữa người gửi và người nhận chuyển tiền thông qua nguyên tắc như chữ ký mù [22]. Sử dụng giả danh (danh tính người dùng không được tiết lộ) không đảm bảo được quyền riêng tư được bảo vệ nếu các giao dịch có thể liên kết lại được. Một khi tất cả các giao dịch liên quan đến người dùng có thể được liên kết, rất dễ dàng để suy ra các thông tin khác về người dùng, chẳng hạn như số dư tài khoản, tần suất giao dịch [21].

Blockchain được xây dựng để đảm bảo một số thuộc tính bảo mật vốn có, chẳng hạn như tính nhất quán, khả năng chống giả mạo, khả năng chống lại cuộc tấn công từ chối dịch vụ phân tán (Distributed Denial-of-Service – DDoS), bút danh và khả năng chống lại các cuộc tấn công chi tiêu gấp đôi. Tuy nhiên, để sử dụng Blockchain an toàn, các thuộc tính bảo mật và quyền riêng tư bắt buộc được bổ sung.

  • Phân loại

Về cơ bản, Blockchain có hai loại: Blockchain công khai (Private Blockchain) và Blockchain riêng tư (Public Blockchain). Tuy nhiên, cũng có những biến thể của hai loại Blockchain này, chúng gọi là Blockchain liên hợp [1, 23].

  • Blockchain công khai

Blockchain công khai là một danh sách các bản ghi được lưu trữ phân tán cho phép mọi người dùng đều có thể truy cập mà không cần đến sự cho phép từ ai. Một nút hoặc người dùng là một phần của chuỗi khối công cộng được phép truy cập các bản ghi hiện tại và quá khứ, xác minh giao dịch hoặc thực hiện bằng chứng công việc cho một khối mới và thực hiện khai thác. Việc sử dụng cơ bản nhất của các Blockchian công khai là để khai thác và trao đổi tiền điện tử. Các Blockchain công khai hầu hết đều an toàn nếu người dùng tuân thủ nghiêm ngặt các quy tắc và phương pháp bảo mật. Tuy nhiên, nó có tính rủi ro khi người tham gia cố tình vi phạm các giao thức bảo mật.

  1. a) Ưu điểm của Blockchain công khai

–           Đáng tin cậy: Các nút hoặc người tham gia không cần yêu cầu phải biết hoặc tin tưởng các nút khác vì quá trình bằng chứng công việc hay các cơ chế đồng thuận khác đảm bảo không có gian lận trong giao dịch. Vì vậy, các giao dịch trong Blockchain công khai có thể được tin tưởng một cách “mù quáng” mà không cảm thấy cần phải tin tưởng vào bất kỳ nút riêng lẻ nào.

–           An toàn: Mạng lưới Blockchain công khai có số lượng các nút hoặc người dùng rất lớn, chính điều này giúp Blockchain công khai trở nên an toàn.

–           Minh bạch: Dữ liệu của các khối được chia sẻ tới tất cả các nút khác trong mạng và được đồng bộ với thời gian thực, cho nên hệ thống hoàn toàn minh bạch.

  1. b) Nhược điểm của Blockchain công khai

–           Tỷ lệ giao dịch mỗi giây (TPS) thấp hơn Blockchain riêng tư: Tỷ lệ giao dịch mỗi giây trong Blockchain công khai là rất thấp do việc xác minh giao dịch và thực hiện bằng chứng công việc cần huy động toàn bộ sức mạnh tính toán của tất cả hệ thống, tốn nhiều thời gian.

–           Giới hạn về khả năng mở rộng: Do tốc độ xử lý giao dịch chậm gây ra các vấn đề về khả năng mở rộng của Blockchain công khai. Khi cố gắng tăng kích thước của hệ thống, việc xác thực giao dịch càng tốn nhiều thời gian, hệ thống đồng bộ càng chậm. Tuy nhiên, các giải pháp như Lightning Network của Bitcoin giúp khắc phục phần nào vấn đề này.

  • Blockchain riêng tư

Blockchain riêng tư là một hệ thống sổ cái hạn chế hoặc cho phép công khai trong một mạng đóng. Các Blockchain riêng tư thường được sử dụng trong một tổ chức hoặc doanh nghiệp nơi chỉ các thành viên hoặc được lựa chọn rõ ràng mới là người tham gia vào mạng. Mức độ bảo mật, quyền hạn, sự cho phép và khả năng truy cập nằm trong tay của tổ chức kiểm soát. Do đó, các Blockchain riêng tư được sử dụng tương tự như một Blockchain công khai nhưng có một mạng lưới nhỏ và hạn chế. Các Blockchain riêng được triển khai để bỏ phiếu, quản lý chuỗi cung ứng, nhận dạng kỹ thuật số, quyền sở hữu tài sản,…

  1. a) Ưu điểm của Blockchain riêng tư

–           Tốc độ: Các giao dịch trong các Blockchain riêng tư diễn ra với tốc độ cao hơn so với Blockchain công khai. Điều này là do có một số lượng hạn chế các nút trong mạng riêng so với mạng công cộng. Ngoài ra, tốc độ thêm các giao dịch mới trong một khối cũng nhanh chóng, tạo điều kiện thuận lợi cho các giao dịch với tốc độ lên đến hàng nghìn hoặc hàng trăm nghìn giao dịch mỗi giây (TPS) cùng một lúc.

–           Khả năng mở rộng: Các Blockchain riêng tư có khả năng mở rộng khá cao. Các tổ chức hoàn toàn có thể linh hoạt lựa chọn kích thước của Blockchain riêng theo nhu cầu riêng. Các Blockchain riêng tư cho phép các tổ chức tăng giảm quy mô mạng mà không cần quá nhiều nỗ lực.

  1. b) Nhược điểm của Blockchain riêng tư

–           Bảo mật thấp hơn: Hầu hết sức mạnh chống lại cuộc tấn công của hệ thống Blockchain đến từ quy mô của hệ thống. Một hệ thống càng nhiều nút tham gia vào thì khả năng bị tấn công thành công càng giảm do chi phí tính toán của kẻ tấn công phải trả lớn hơn 51% khả năng tính toán của toàn bộ hệ thống. Với những hệ thống Blockchain riêng tư, số lượng các nút hạn chế, điều hành tập trung bởi một tổ chức, do đó, dễ dàng trở thành mục tiêu của những kẻ tấn công.

–           Tập trung hóa: Các Blockchain riêng tư bị hạn chế vì chúng cần một hệ thống Quản lý Danh tính và Truy cập (Identity and Access Management – IAM) trung tâm để hoạt động bình thường. Toàn bộ hệ thống này mâu thuẫn với ý tưởng phân quyền vốn là một trong những trụ cột của công nghệ Blockchain.

  • Chuỗi Blockchain liên hợp và lai

Chuỗi Blockchain liên hợp là một loại bán phi tập trung, tức là có nhiều hơn một tổ chức quản lý một mạng lưới chuỗi khối. Điều này trái ngược với những gì chúng ta đã thấy trong một Blockchain riêng tư, chỉ được quản lý bởi một tổ chức duy nhất. Nhiều tổ chức có thể hoạt động như một nút trong loại Blockchain này và trao đổi thông tin hoặc khai thác. Các Blockchain liên hợp thường được sử dụng bởi các ngân hàng, tổ chức chính phủ,…

Ngoài ra, sự kết hợp của một tính năng giữa Blockchain riêng tư và Blockchain công khai vào một hệ thống tạo ra Blockchain lai. Hệ thống này cho phép thiết lập kiểm soát ai có quyền truy cập vào dữ liệu và truy cập ra sao. Chỉ một phần dữ liệu hoặc bản ghi đã chọn từ Blockchain có thể được phép công khai, phần còn lại sẽ được giữ bí mật như một hệ thống Bockchain riêng tư. Hệ thống lai cho phép người dùng linh hoạt tham gia vào một Blockchain riêng tư cũng như Blockchain công khai. Một giao dịch trong mạng riêng của một chuỗi khối lai thường được xác định minh bạch trong mạng đó nhưng cũng có thể phát hành nó trong Blockchain công khai để được xác minh rộng rãi hơn.

  1. MỘT SỐ ỨNG DỤNG CỦA CÔNG NGHỆ BLOCKCHAIN

Nhìn lại lịch sử hình thành và phát triển của công nghệ Blockchain, có thể thấy việc ứng dụng Blockchain vào xây dựng tiền điện tử Bitcoin đã có ý nghĩa quan trọng trong việc tạo mối quan tâm lớn, thúc đẩy những nghiên cứu cho công nghệ này. Chính bởi sự nổi tiếng gần như gắn liền với nhau giữa Bitcoin và Blockchain khiến nhiều người nhầm tưởng Bitcoin chính là BlockchainBlockchain chỉ ứng dụng để tạo ra tiền kỹ thuật số. Thực tế, công nghệ Blockchain đã được nghiên cứu và đưa vào ứng dụng trong rất nhiều bài toán khác, ngày một trở nên đa dạng và gần gũi hơn với mỗi người không chỉ riêng ngành tài chính. Có thể nói tới một số nhóm lĩnh vực như quản lý chính phủ (bỏ phiếu, huy động vốn từ cộng đồng, dịch vụ công, kiểm tra giám sát tham nhũng…), Internet kết nối vạn vật (Internet of Things – IoT), bảo hiểm, nhận dạng kỹ thuật số, nông nghiệp (giấy chứng nhận thực phẩm, truy xuất nguồn gốc, lưu trữ dữ liệu giảm chi phí, chống tham nhũng và gian lận), giáo dục (lưu trữ hồ sơ, bảng điểm, văn bằng, chứng chỉ), năng lượng – khí hậu – môi trường (chuyển giao năng lượng dự trữ ngang hàng), chăm sóc sức khỏe (khám chữa bệnh, cấp thuốc, gói bảo hiểm, hồ sơ y tế bệnh nhân), bất động sản và quyền đất đai, giải trí (bản quyền sản phẩm).

Tuy nhiên, tiền kỹ thuật số và ngành tài chính vẫn là môi trường thúc đẩy ứng dụng công nghệ Blockchain mạnh mẽ nhất tính đến thời điểm hiện tại [24].

Hình 7. Một số lĩnh vực ứng dụng của công nghệ Blockchain [24].

Mặc dù việc khai thác công nghệ Blockchain có thể mang lại những lợi ích to lớn, nhưng không phải tất cả các quốc gia trên thế giới đều có cùng quan điểm về việc áp dụng nó. Có những quốc gia đã chấp nhận sự thay đổi công nghệ, trong khi có những quốc gia khác đang bị tụt hậu. Estonia là một trong những quốc gia đã công khai áp dụng công nghệ này và đem lại những thay đổi tích cực. Blockchain được sử dụng trong các cơ quan đăng ký dữ liệu của Estonia cho các mục đích tư pháp, lập pháp, y tế, an ninh mạng và ngân hàng. Các quốc gia khác như Thụy Sĩ, Thụy Điển, Mỹ và Hàn Quốc dễ dàng tiếp cận với công nghệ Blockchain [14]. Ngược lại, Trung Quốc là một trong số rất ít các quốc gia ngăn cấm việc sử dụng các ứng dụng từ công nghệ Blockchain.

Hình 8. Bản đồ sự chấp nhận công nghệ Blockchain trên toàn thế giới [14]

  1. KẾT LUẬN

Với những ưu điểm của công nghệ như minh bạch, đáng tin cậy, sao chép nhiều giao dịch và sổ cái kỹ thuật số phi tập trung, công nghệ Blockchain là đáng tin cậy và không thể phá hủy. Công nghệ chuỗi khối là hữu ích và linh hoạt cho thế giới của chúng ta, bởi vì nó có thể tạo điều kiện cho hầu hết các hệ thống trong các ngành công nghiệp khác nhau, nhưng nó là mới và việc triển khai nó vẫn còn những khó khăn nhất định trong việc đồng bộ với hạ tầng kỹ thuật hiện có.

Công nghệ Blockchain hứa hẹn cho chúng ta một tương lai tươi sáng mà không có gian lận và lừa dối do những lợi ích của công nghệ chuỗi khối. Các nhà phát triển phải dành nhiều thời gian hơn ứng dụng thực tế và triển khai các chuỗi khối vào các hệ thống đã tồn tại của chính hướng công nghiệp, bởi vì chuỗi khối có thể mang lại hệ thống kinh doanh, chính phủ và hậu cần trung thực và đáng tin cậy.

Trong tương lai, các nhà phát triển có thể nghĩ về các hệ thống cải tiến để tăng lợi thế của công nghệ Blockchain và giảm bớt những bất lợi. Ví dụ, việc giảm sức mạnh tính toán cho quá trình khai thác và khía cạnh tài chính cho việc triển khai Blockchain có thể là được nhắc đến.

Cuối cùng, nó là cần thiết để giới thiệu các lớp học, các cơ sở giáo dục để đào tạo và xây dựng hệ thống chuỗi khối riêng và để xem toàn bộ quá trình của chuỗi khối ứng dụng và sử dụng công nghệ.

 

TÀI LIỆU THAM KHẢO

[1].  “Blockchain”. https://en.wikipedia.org/wiki/Blockchain. Truy cập vào ngày 01/7/2023.

[2].  Julija Golosova; Andrejs Romanovs (2018). “Overview of the Blockchain Technology Cases”. DOI: 10.1109/ITMS.2018.8552978

[3].    Sherman, Alan T.; Javani, Farid; Zhang, Haibin; Golaszewski, Enis (January 2019). “On the Origins and Variations of Blockchain Technologies”. IEEE Security Privacy. 17 (1): 72–77. arXiv:1810.06130. doi:10.1109/MSEC.2019.2893730. ISSN 1558-4046. S2CID 53114747

[4].       Haber, S.; Stornetta, W. S. (1991). “How to time-stamp a digital document”. Journal of Cryptology. 3 (2): 99–111. CiteSeerX 10.1.1.46.8740. doi:10.1007/BF00196791. S2CID

[5].       Narayanan, Arvind; Bonneau, Joseph; Felten, Edward; Miller, Andrew; Goldfeder, Steven (2016). “Bitcoin and cryptocurrency technologies: a comprehensive introduction”. Princeton: Princeton University Press. ISBN 978-0-691-17169-2.

[6].       “Khối và chuỗi khối trong blockchain”. https://tek4.vn/https-tek4-vn-khoi-va-chuoi-khoi-trong-blockchain/. Truy cập ngày 20/6/2023.

[7].       “Cơ chế hoạt động của công nghệ chuỗi khối Blockchain”. https://aita.gov.vn/co-che-hoat-dong-cua-cong-nghe-chuoi-khoi-blockchain. Truy cập ngày 20/6/2023.

[8].       “Xây dựng blockchain đơn giản với golang. P1-Cấu trúc cơ bản”. https://kipalog.com/posts/Xay-dung-blockchain-don-gian-voi-golang–P1—Cau-truc-co-ban. Truy cập ngày 21/6/2023.

[9].       “Tổng quát Blockchain – Nền tảng ứng dụng trong tương lai”. http://itprotraining.vn/vi/tips-cong-nghe/Tong_quat_BlockChain_Nen_tang_ung_dung_trong_tuong_lai. Truy cập ngày 21/6/2023.

[10].     “Blockchain Architecture Basics: Components, Structure, Benefits & Creation”. https://mlsdev.com/blog/156-how-to-build-your-own-blockchain-architecture. Truy cập ngày 20/6/2023.

[11].     “Luật đồng thuận là gì?”. https://tek4.vn/luat-dong-thuan-la-gi/. Truy cập ngày 22/6/2023.

[12].     “Byzantine fault”. https://en.wikipedia.org/wiki/Byzantine_fault. Truy cập vào ngày 22/6/2023

[13].     Nguyen C. T., Hoang D. T., Nguyen C. T., Nguyen D. N., Niyato D., Nguyen H. T. & Dutkiewicz E. (2019). “Proof-of-Stake Consensus Mechanisms for Future Blockchain Networks: Fundamentals, Applications and Opportunities”. IEEE. 7

[14].     “Future of the Blockchain Technology: Use Cases, Risks and Challenges”. https://mlsdev.com/blog/the-future-of-the-blockchain-technology-use-cases-geographical-expansion-potential-risks-and-challenges. Truy cập ngày 23/6/2023.

[15].     Bach L., Mihaljevic B. & Zagar M. (2018). “Comparative analysis of blockchain consensus algorithms”. International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO). 1545–1550.

[16].     Frankenfield J. (2018). “Proof of Capacity” (Cryptocurrency)

[17].     “Trusted timestamping”. https://en.wikipedia.org/wiki/Trusted_timestamping. Truy cập ngày 22/6/2023.

[18].     “What is Blockchain Technology? A Step-by-Step Guide For Beginners”. https://blockgeeks.com/guides/what-is-blockchain-technology/. Truy cập ngày 24/6/2023.

[19].     “Nghiên cứu, ứng dụng công nghệ blockchain trong thanh toán di động”. Đoàn Ngọc Sơn. Luận văn Thạc sĩ, 2017.

[20].     “How blockchain data is stored and secured”. https://www.euromoney.com/learning/blockchain-explained/how-blockchain-data-is-stored-and-secured. Truy cập ngày 26/6/2023.

[21].     Rui Zhang & et al. “Security and Privacy on Blockchain”. Cryptography and Security (cs.CR), Submitted on 18 Mar 2019 (v1), last revised 16 Aug 2019 (this version, v2).

[22].     Harry Halpin, Marta Piekarska. “Introduction to Security and Privacy on the Blockchain”. EuroS&P 2017 – 2nd IEEE European Symposium on Security and Privacy, Workshops, Apr 2017, Paris, France. IEEE, Security and Privacy Workshops (EuroS&PW), 2017.

[23].     “Types of Blockchains – Decide which one is better for your Investment Needs”. https://data-flair.training/blogs/types-of-blockchain/. Truy cập ngày 27/6/2023.

[24].     “Top 16 Blockchain Applications/Use Cases in 2021”. https://research.aimultiple.com/blockchain-applications/. Truy cập ngày 30/6/2023.