explicitClick to confirm you are 18+

Cơ bản về công nghệ Blockchain

Tran Hoang TuNov 13, 2019, 5:04:54 PM
thumb_up4thumb_downmore_vert

Nếu bạn thường xuyên theo dõi các lĩnh vực như ngân hàng, đầu tư hoặc tiền ảo trong vòng 10 năm trở lại đây, ắt hẳn bạn đã từng nghe qua “blockchain” – một công nghệ lưu trữ thông tin đứng đằng sau Bitcoin. Khi bạn cố tìm hiểu nhiều hơn về nó, bạn sẽ tìm thấy các cụ từ như “phân tán", "phi tập trung", "sổ cái công khai".

Nghe qua có vẻ hơi khó hiểu, nhưng thực sự blockchain dễ hiểu hơn nhiều.

Vậy, Blockchain là gì?

Nếu công nghệ này thực sự phức tạp, tại sao lại gọi nó là “blockchain” (chuỗi khối). Ở mức độ đơn giản nhất, blockchain thực sự chỉ là một chuỗi các khối thông tin, nhưng ý nghĩa thực sự không đơn thuần chỉ dừng lại ở đó. Khi chúng ta nói về khối và chuỗi trong trường hợp này, ta đang nói đến thông tin kĩ thuật số (các block) được lưu trữ trên một cơ sở dữ liệu công khai (chain).

Các khối trong blockchain là các mảnh nhỏ của thông tin. 

Cụ thể, chúng ta có 3 phần:

1. Các khối lưu trữ thông tin về các giao dịch như ngày giờ và số tiền bạn mua một món hàng nào đó trên một website X.

2. Các khối cũng lưu trữ thông tin về những người tham gia giao dịch. Một khối ghi lại thông tin giao dịch của bạn từ website X sẽ ghi lại tên bạn và website X. Tuy nhiên, tên thật của bạn, cuộc giao dịch của bạn sẽ được lưu lại mà không có một dấu hiệu nhận dạng nào về bạn. Thay vào đó, chữ ký kĩ thuật số sẽ được sử dụng như là username của bạn.

3. Các khối lưu trữ thông tin giúp phân biệt chúng với các khối khác. Mỗi khối lưu trữ một mã gọi là hash. Mã hash là độc nhất, cho phép ta phân biệt một khối với những khối khác. Giả sử bạn mua một món hàng trên website X, sau đó suy nghĩ lại và muốn mua thêm một món y hệt. Mặc dù các chi tiết về giao dịch mới của bạn trông gần giống với giao dịch mua trước đó, ta vẫn có thể phân biệt các khối vì các mã duy nhất của chúng.

Trong ví dụ trên, một khối chỉ lưu trữ một giao dịch của bạn khi mua hàng trên website X nhưng thực tế một khối có thể lưu trữ lên đến 1 Megabyte dữ liệu. Có nghĩa là tùy thuộc vào quy mô của các giao dịch, một khối có thể chứa cùng lúc thông tin của hàng nghìn giao dịch.

Cách thức hoạt động của Blockchain

Khi có một dữ liệu mới, nó sẽ được đưa vào một khối và thêm vào blockchain. Blockchain, như tên gọi của nó: “bao gồm nhiều khối được xâu chuỗi lại với nhau”. Tuy nhiên, để một khối được thêm vào blockchain, 4 điều kiện sau phải thỏa mãn:

1. Một giao dịch phải xảy ra: Tương tự như khi mua hàng trên website X, bạn phải thanh toán để hoàn tất việc mua món hàng.

2. Giao dịch phải được xác thực: Sau khi bạn hoàn tất đặt hàng, giao dịch của bạn sẽ được xác nhận. Đối với cách lưu trữ dữ liệu cũ như chứng khoán, Wikipedia hoặc thông tin của thư viện, có một người nào đó chịu trách nhiệm kiểm tra các dữ liệu mới. Đối với blockchain, công việc đó là trách nhiệm của một mạng lưới máy tính. Các mạng này thường bao gồm hàng ngàn (hoặc đối với Bitcoin, con số lên đến khoảng 5 triệu) máy tính trải rộng trên toàn cầu. Khi bạn mua hàng từ website X, mạng máy tính đó sẽ kiểm tra xem giao dịch của bạn có thực sự đã xảy ra hay chưa. Chúng sẽ xác thực các chi tiết trong giao dịch của bạn như thời gian, số tiền, người tham gia giao dịch.

3. Giao dịch đó cần phải được lưu trữ trong một khối: sau khi các thông tin đều được xác nhận chính xác, đèn xanh sẽ được bật. Các thông tin về giao dịch như số tiền, chữ ký kĩ thuật số của bạn và chữ kí kỹ thuật số của website X sẽ được lưu trữ trong một block và có thể sẽ có đến hàng trăm hoặc hàng ngàn block như vậy.

4. Khối đó phải đưa ra được một hash: Khi tất cả thông tin của một khối đã được xác minh, khối đó phải cung cấp được một mã nhận dạng duy nhất để phân biệt nó với các khối khác. Nó cũng lưu trữ mã hash của khối gần nhất được thêm vào blockchain (khối trước nó).

Sau khi khối mới được thêm vào blockchain, nó sẽ công khai cho mọi người cùng xem, kể cả bạn. Nếu bạn nhìn qua blockchain của Bitcoin, bạn sẽ thấy rằng mình có quyền truy cập vào dữ liệu giao dịch và biết được các thông tin về chúng.

Blockchain có riêng tư không?

Mọi người đều có thể xem nội dung của blockchain. Người dùng cũng có thể chọn kết nối máy tính của họ với mạng blockchain. Khi làm như vậy, máy tính của họ sẽ nhận được một bản sao của blockchain được cập nhật tự động mỗi khi có một khối mới được thêm vào, giống như newsfeed của Facebook cập nhật các status mới được đăng.

Mỗi máy tính trong mạng blockchain có các bản sao riêng của blockchain, có nghĩa là hàng ngàn hoặc hàng triệu (đối với Bitcoin) bản sao của blockchain trên khắp thế giới. Mặc dù các nội dung của chúng là giống hết nhau, nhưng việc chuyển các thông tin đó qua một mạng máy tính khiến thông tin khó tương tác hơn. Không có một tài khoản duy nhất nào có thể thao túng blockchain, thay vào đó, bạn cần phải thao túng mọi bản sao của blockchain để có thể kiểm soát nó.

Tuy nhiên, nhìn qua blockchain của Bitcoin. Bạn sẽ nhận thấy rằng mình không có quyền truy cập để xác định thông tin về người thực hiện giao dịch. Mặc dù các giao dịch trên blockchain không hoàn toàn ẩn danh, thông tin cá nhân về người dùng sẽ ẩn và được đại diện bằng chữ ký số hoặc username của họ.

Điều này đặt ra một câu hỏi quan trọng: nếu ta không thế biết ai đang thêm các khối vào blockchain thì làm sao ta có thể tin tưởng vào blockchain hoặc mạng lưới máy tính duy trì nó?

Block chain có an toàn không?

Đều tiên, các khối luôn được thêm vào một cách có thứ tự và theo thời gian. Chúng luôn được thêm vào cuối blockchain. Nếu nhìn qua blockchain của Bitcoin, mỗi khối sẽ có thông tin về vị trí của nó trên chuỗi, gọi là “height” (chiều cao). Tới tháng 2/2019, chiều cao của các block đã lên đến 562.000.

Sau khi một block được thêm vào cuối blockchain. Sẽ cực kì khó để đảo ngược hoặc sửa đổi nội dung của một block. Đó là bởi vì một khối có một mã hash riêng, và nó cũng lưu trữ mã hash của khối trước nó. Mã hash được tạo ra mởi một thuật toán không thể đảo ngược (giải mã). Nếu thông tin bị thay đổi bằng một cách nào đó, mã hash cũng sẽ thay đổi theo.

Đây là điều cực kì quan trọng đến bảo mật. Giả sử một hacker muốn thay đổi nội dung giao dịch của bạn với website X để bạn phải trả tiền nhiều hơn. Ngay sau khi họ chỉnh sửa số tiền trong giao dịch của bạn, mã hash của khối sẽ thay đổi. Khối tiếp theo trong chuỗi vẫn chưa hàm băm cũ của khối trước nó (khối bạn thay đổi), và hacker sẽ phải cập nhật thông tin mã hash của khối đó cho trùng khớp, tương tự như vậy cho đến hàng trăm, ngàn khối sau đó.

Tóm lại, để thay đổi nội dung của một khối, một hacker sẽ cần phải thay đổi mọi khối tiếp theo sau khối đó. Việc này sẽ tiêu tốn một lượng chi phí (năng lượng, thời gian, tiền bạc…) khổng lồ và gần như không thực hiện được. Khi một khối được thêm vào blockchain, nó trở nên rất khó chỉnh sửa và không thể xóa.

Để giải quyết vấn đề niềm tin, các mạng blockchain đã triển khai các bài test dành cho các máy tính muốn tham gia vào việc thêm các khối chuỗi. Các bài test này được gọi là “mô hình đồng thuận” (consensus models), nó yêu cầu người dùng phải chứng minh (prove) chính bản thân mình trước khi họ có thể tham gia vào blockchain. Ví dụ phổ biến nhất được sử dụng bởi Bitcoin được gọi là “bằng chứng về công việc” (proof of work).

Đối với “proof of work”, các máy tính phải chứng minh rằng mình đã hoàn thành công việc bằng cách giải một bài toán phức tạp. Nếu một máy tính giải được quyết một máy tính giải quyết được một trong số các vấn đề này, nó sẽ đủ điều kiện để thêm một khối vào blockchain.

Nhưng quá trình thêm các khối vào blockchain, cái mà những người trong cộng đồng tiền kỹ thuật số gọi là “đào” (đào bitcoin…) không hề dễ dàng. Trong thực tế, theo như thông tin từ BlockExplorer, tỉ lệ giải quyết các bài toán này trên mạng Bitcoin là khoảng 1 trên 5,8 nghìn tỉ (số liệu vào tháng 2/2019). Để giải quyết các vấn đề toán học phức tạp ở tỉ lệ đó, người ta phải đầu tư một chi phí đáng kế về sức mạng của máy tính và năng lượng.

"Proof of work" không làm cho các cuộc tấn công của hacker là không thể, nhưng nó làm cho chúng trở nên vô dụng. Nếu một hacker muốn tấn công vào blockchain, họ phải giải các phải toán với tỉ lệ 1 trên 5,8 nghìn tỉ giống như những người khác. Chi phí bỏ ra cho một cuộc tấn công như vậy gần như chắc chắn sẽ vượt xa lợi ích.

Blockchain và Bitcoin

Mục tiêu của blockchain là lưu trữ và phân phối thông tin kĩ thuật số và không được phép chỉnh sửa. Khái niệm đó tương đối khó để chúng ta hiểu được nó hoạt động như thế nào. Vì vậy, hãy xem ứng dụng sớm nhất của công nghệ blockchain hoạt động như thế nào (Bitcoin).

Công nghệ blockchain lần đầu tiên được phát thảo bởi Stuart Haber và W. Scoot Stornetta vào năm 1991. Hai nhà nghiên cứu muốn thực hiện một hệ thống mà các cột mốc thời gian không thể bị can thiệp. Nhưng phải gần hai thập kỷ sau, với sự ra mắt của Bitcoin vào tháng 1 năm 2009, blockchain mới có ứng dụng thực tế đầu tiên.

Bitcoin được xây dựng dựa trên blockchain. Trong một bài viết giới thiệu về loại tiền kĩ thuật số này, Satoshi Nakamoto – bút danh của người tạo ra Bitcoin đã nói rằng nó là một hệ thống tiền điện tử mới hoàn tàng ngang hàng (P2P), không có bên thứ ba tham gia vào.

Đây là cách nó hoạt động:

Giả sử bạn biết tất cả người nắm giữ Bitcoin trên thế giới này (vào năm 2017, con số này là khoảng 5,9 triệu người). Một trong số đó sử dụng Bitcoin để thanh toán trong một tiệm tạp hóa. Đây là nơi blockchain của Bitcoin bắt đầu.

Đối với tiền giấy, nó được kiểm định và xác minh bởi các ngân hàng hoặc chính phủ. Nhung Bitcoin không bị kiểm soát bởi bất kì ai. Thay vào đó, các giao dịch Bitcoin được xác minh bởi một mạng máy tính.

Khi một người muốn thanh toán bằng Bitcoin, các máy tính trên mạng sẽ chạy đua để xác minh giao dịch. Để làm như vậy, các máy tính phải chạy một chương trình để giải một bài toán phức tạp. Khi một giao dịch được hoàn thành và được lưu trữ công khai dưới dạng các khối trên blockchain, nó trở nên không thể thay đổi. Trong trường hợp của Bitcoin và hầu hết các blockchain khác, các máy tính xác minh thành công các khối sẽ được thường một khoản thù lao bằng tiền điện tử.

Mặc dù các giao dịch được ghi lại công khai trên blockchain nhưng dữ liệu người dùng sẽ không đầy đủ. Để thực hiện các giao dịch trên mạng Bitcoin, người dùng phải sử dụng một thứ gọi là ví. Mỗi ví có 2 “chìa khóa” độc nhất và khác nhau gọi là public key (khóa công khai) và private key (khóa bí mật). Khóa công khai là vị trí mà số tiền sẽ được nạp vào và rút ra khỏi đó. Đây cũng là khóa xuất hiện trên blockchain và xem như là chữ kí kĩ thuật số của người dùng.

Một khóa công khai là phiên bản rút gọn của của khóa bí mật. Nó được tạo bởi một thuật toán cực kì phức tạp và gần như không thể đảo ngược để biết được khóa bí mật từ khóa công khai. Đây là lí do blockchain được coi là bảo mật.

Khóa công khai (public key) và khóa bí mật (private key) là gì?

Bạn có thể xem khóa công khai như một hộp thư, mọi người đều có thể thêm các bức thư và ghi chú vào các khe của hộp thư. Tuy nhiên, chỉ có một mình bạn (có chìa khóa mở hộp thư) có thể mở khóa và xem nội dung các bức thư.

Chìa khóa ở đây chính là khóa bí mật của bạn, nó là duy nhất, do bạn nắm giữ. Chính vì vậy khi bạn làm mất khóa bí mật, bạn sẽ mất quyền truy cập vào ví Bitcoin và không có cách nào để lấy lại quyền truy cập.

Sự đồng thuận

Trong mạng Bitcoin, khi người dùng tham gia mạng, máy tính của họ sẽ nhận được một bản sao của blockchain được cập nhật liên tục bất cứ khi nào một khối mới được thêm vào.

Điều gì sẽ xảy ra nếu thông qua lỗi của con người hoặc do hacker, một bản sao blockchain của người dùng bị thao túng và sửa đổi khác với mọi bản sao khác trên mạng?

Giao thức blockchain không khuyến khích sự tồn tại của nhiều phiên bản blockchain khác nhau trên mạng, phương pháp loại bỏ các thông tin sai lệch được gọi là “sự đồng thuận”, khi đa số các máy tính trên mạng quyết định rằng thông tin không đúng, thông tin ấy sẽ không được xem là hợp lệ. Nhiều người tham gia blockchain có nghĩa là tốc độ thêm một khối sẽ nhanh hơn. Theo logic đó, dữ liệu của blockchain sẽ luôn đáng tin cậy. Sự “đồng thuận” trong công nghệ blockchain là điểm mạnh lớn nhất nhưng nó cũng là điểm yếu lớn nhất của nó.

Blockchain có thể bị hack, về mặt lý thuyết

Hacker có thể tận dụng quy tắc của sự đồng thuận (quy tắc đa số), đây gọi là cuộc tấn công 51%. Đây là cách nó xảy ra:

Nếu có đúng 5 triệu máy tính trên mạng Bitcoin, một hacker sẽ cần phải kiểm soát ít nhất 2,5 triệu máy tính + 1 máy tính trong số còn lại. Khi làm được điều ấy, hacker có thể can thiệp vào quá trình ghi lại các giao dịch mới. Họ có thể gửi một bản giao dịch, và sau đó đảo ngược nó như thể rằng mình chưa từng bỏ tiền ra thanh toán.

Một cuộc tấn công như vậy cực kì khó thực hiện bởi vì đối với một blockchain có quy mô toàn cầu như của Bitcoin, kẻ tấn công sẽ phải kiểm soát hàng triệu máy tính. Khi Bitcoin mới xuất hiện vào năm 2009, số người dùng của nó chỉ có vài chục, lúc ấy sẽ cực kì dễ dàng kiểm soát phần lớn sức mạnh tính toán trong mạng blockchain. Đây là một điểm yếu cho các loại tiền điện tử còn non trẻ.

Người dùng có thể hạn chế sự độc quyền hình thành trên blockchain. Một nhóm người, được gọi là Bitfury đã chế tạo ra hàng ngàn máy tính mạnh mẽ giúp “đào” Bitcoin càng nhiều càng tốt.

Bitfury

Đến tháng 3 năm 2014, Bitfury được ghi nhận đã chiếm được quá 50% tổng sức mạnh tính toán của blockchain. Thay vì tiếp tục tăng cường và nắm giữ quyền kiểm soát mạng, họ đã tự điều chỉnh và thề không bao giờ vượt quá 40%. Bitfury biết rằng nếu họ tiếp tục tăng quyền kiểm soát mạng, giá trị của Bitcoin sẽ giảm khi người dùng lo sợ một cuộc tấn công 51% và bán hết Bitcoin của họ.

Ứng dụng thực tế của Blockchain

Các khối trên blockchain lưu trữ dữ liệu về các giao dịch tiền tệ - chúng ta đã biết về chúng. Nhưng blockchain thực sự là một cách lưu trữ dữ liệu đáng tin cậy về các loại giao dịch khác. Trên thực tế, công nghệ blockchain có thể sử dụng để lưu trữ dữ liệu về trao đổi tài sản, thông tin về các hàng hóa trong chuỗi cung ứng hoặc thậm chí lưu trữ thông tin cho một cuộc bầu cử.

Dịch vụ ngân hàng

Không ngành công nghiệp nào hưởng lợi từ việc tích hợp blockchain vào hoạt động của mình nhiều hơn ngân hàng. Các ngân hàng chỉ làm việc từ thứ hai đến thứ sáu. Nếu bạn cố gắng gửi tiền mình vào thứ 7, có thể bạn sẽ phải đợi đến thứ 2 mới thấy số tiền đó được chuyển đến người nhận. Đối với blockchain, không bao giờ có ngày nghỉ.

Với blockchain, các ngân hàng cũng có cơ hội trao đổi tiền với các tổ chức nhanh chóng và an toàn hơn. Ví dụ, trong chứng khoán, quá trình thanh toán và bù trừ có thế mất đến 3 ngày, nghĩa là tiền và cổ phiếu sẽ bị đóng băng trong thời gian đó.

Sử dụng trong tiền điện tử

Các loại tiền tư Đô la Mỹ được kiểm soát bởi các ngân hàng hoặc chính phủ. Nếu ngân hàng hoặc chính phủ không ổn định, giá trị đồng tiền có thể gặp rủi ro. Đây là một trong những lý do Bitcoin được sinh ra để khắc phục.

Bằng các trải rộng các hoạt động của mình trên một mạng máy tính, blockchain cho phép Bitcoin và các loại tiền diện tử khác hoạt động mà không cần phải kiểm soát. Điều này giúp giảm rủi ro và giảm chi phí xử lí giao dịch. Nó cung cấp một loại tiền ổn định cho những người ở các quốc gia có tiền tệ không ổn định.

Lĩnh vực chăm sóc sức khỏe

Ta có thể tận dung blockchain để lưu trữ an toàn hồ sơ y tế của bệnh nhân. Khi một hồ sơ y tế được phê duyệt, nó sẽ được ghi vào blockchain, cung cấp cho bệnh nhân bằng chứng và sự tự tin rằng hồ sơ không thể bị thay đổi. Các hồ sơ này cũng có thể được mã hóa và lưu trữ trên blockchain bằng khóa riêng, do đó chúng chỉ có thể truy cập bởi một số cá nhân để bảo vệ quyền riêng tư.

Quyền sở hữu tài sản

Quy trình kiểm tra quyền sở hữu cực kì khó khăn và kém hiệu quả. Trong các trường hợp tranh chấp, việc xác minh tốn rất nhiều thời gian và công sức. Với blockchain, ta có thể biết ai là người đầu tiên sở hữu một cách nhanh chóng.

Hợp đồng thông minh

Một hợp đồng thông minh là một tập hợp các điều kiện mà người dùng đồng ý. Ví dụ, anh A thuê nhà của anh B anh B yêu cầu đặt cọc, thông tin thỏa thuận này sẽ lưu vào vào một hợp đồng thông minh. Nếu anh B không gửi mã vào nhà cho anh A, tiền cọc của anh B sẽ được hoàn trả một cách tự động.

Trong các chuỗi cung ứng

Các nhà cung cáp sử dụng blockchain để ghi lại nguồn gốc của các nguyên liệu mà họ đã mua. Cho phép các công ty xác minh tính chính xác của các sản phẩm, cũng như về các sản phẩm về sức khỏe, làm đẹp và thực phẩm.

Bỏ phiếu

Với blockchain, số lượng phiếu bầu không thể làm giả. Giúp duy trì tính minh bạch, giảm các nhân sự cần thiết và cung cấp kết quả tức thì.

Ưu và nhược điểm của Blockchain

Với bản chất của mình, tiềm năng của blockchain như một hình thức lưu trữ phi tập trung và gần như không có giới hạn.

Ưu:

- Cải thiện độ chính xác bằng cách loại bỏ sự tham gia của con người

- Giảm chi phí bằng cách loại bỏ xác minh của bên thứ ba

- Phân cấp làm cho nó khó giả mạo

- Giao dịch an toàn, riêng tư và hiệu quả

- Minh bạch

Nhược:

- Chi phí về công nghệ

- Lượng giao dịch mỗi giây còn hạn chế

- Bị lạm dụng cho các giao dịch bất hợp pháp

- Vẫn có khả năng bị tấn công

Tương lai của Blockchain

Sau 27 năm xuất hiện, blockchain đã trở thành cụm từ thông dụng trên đầu lưỡi các công ty công nghệ, một phần không nhỏ nhờ vào sự thành công của Bitcoin. Blockchain giúp cho các hoạt động kinh doanh và lưu trữ dữ liệu an toàn và hiệu quả hơn.

Chúng ta sắp bước vào thập kỉ thứ ba của công nghệ này, sẽ không còn câu “nếu áp dụng blockchain” nữa mà thay vào đó sẽ là “khi nào các công ty sẽ bắt kịp công nghệ và áp dụng nó?”.