Node là gì? 5 bước chạy node cơ bản của blockchain

Nói theo một cách khác các Blockchain Node đây là hạ tầng của Blockchain, trong nội dung bài viết hôm nay, tất cả chúng ta sẽ tìm hiểu Blockchain Node là gì, cách hoạt động, cũng như những loại node chính trong Blockchain.

Node là gì?

Node là các nút giúp lưu trữ, truyền tải và dữ gìn và bảo vệ tài liệu blockchain, vì vậy về mặt lý thuyết, một blockchain tồn tại trên các node. Cốt lõi của Blockchain dựa trên các nguyên tắc của mạng P2P (Peer to Peer). Trong hồ hết các mạng, không có sever trung tâm, mà là sự việc đồng thuận giữa những node.

node là gì

Node có thể là bất kỳ loại thiết bị nào, nó có thể là PC, Máy tính cá nhân, các sever to hơn,… Các node tạo thành hạ tầng của một blockchain. Tất cả những node trên một blockchain được kết nối với nhau, chúng liên tục trao đổi tài liệu tiên tiến nhất với nhau để tất cả những node luôn luôn được update.

Node trong Blockchain hoạt động thế nào?

Khi một thợ đào hay Validator (người xác thực) nỗ lực thêm một block thanh toán giao dịch mới vào blockchain, họ sẽ truyền block tới tất cả (hoặc một phần, tùy vào thuật toán đồng thuận của blockchain sử dụng) các node trên mạng.

Dựa trên tính hợp pháp của block (tính hợp thức của chữ ký và thanh toán giao dịch), các node có thể đồng ý chấp thuận hoặc từ chối block đó. Khi một node đồng ý chấp thuận một block thanh toán giao dịch mới, nó sẽ lưu trữ block đó trên đầu các block còn sót lại mà nó đã lưu trữ. Tóm lại, đây là những gì các node làm:

  • Các node kiểm tra xem một block thanh toán giao dịch có hợp thức không và đồng ý chấp thuận hoặc từ chối nó.
  • Nếu đồng ý chấp thuận, các node sẽ lưu trữ các block thanh toán giao dịch (lưu trữ lịch sử vẻ vang thanh toán giao dịch blockchain).
  • Các node phát và Viral lịch sử vẻ vang thanh toán giao dịch này tới những node khác để đồng bộ hóa với blockchain (update về lịch sử vẻ vang thanh toán giao dịch).

Phân loại Node trong Blockchain

Có hai loại node chính:

  • Full nodes (node đầy đủ).
  • Lightweight nodes (node nhẹ).
full node light node
Full Node & Light Node (Lightweight Node)

Full Node

Full Node hoạt động như một sever trong một mạng phi tập trung. Nhiệm vụ chính của nó gồm có duy trì sự đồng thuận giữa các node khác và xác minh các thanh toán giao dịch.

Nó cũng lưu trữ một bản sao của blockchain, do đó an toàn hơn và được chấp nhận các chức năng nâng cao như quyền biểu quyết cho những đề xuất trong mạng. Một số đặc điểm chính của một Full Node:

  • Lưu trữ đầy đủ tài liệu blockchain.
  • Tham gia xác nhận block, xác minh tất cả những block và trạng thái.
  • Tất cả những trạng thái có thể bắt nguồn từ node đầy đủ.
  • Cung cấp tài liệu theo yêu cầu cho những node nhẹ.

Lightweight nodes

Một loại node khác được sử dụng trong những hoạt động tiền điện tử hàng ngày, là Lightweight nodes, hay nút xác minh tính sổ đơn giản (SPV – Simple Payment Verification).

Các loại node này giao tiếp với blockchain trong những lúc dựa vào các nút đầy đủ để cung cấp cho chúng thông tin cấp thiết. Vì chúng không lưu trữ bản sao của toàn bộ blockchain, chúng chỉ truy vấn trạng thái ngày nay để xử lý các thanh toán giao dịch.

Việc chạy Lightweight nodes không yêu cầu nhiều tài nguyên, nhưng nó hy sinh tính bảo mật thông tin vì lợi ích thuận tiện.

Ai có thể chạy một Blockchain Node?

Về mặt lý thuyết, bất kỳ ai cũng luôn có thể chạy một blockchain node, nhưng tùy vào thuật toán đồng thuận của blockchain này mà có có một số yêu cầu nhất định:

Tuy nhiên, với những Blockchain như BSC, Okexchain, HECO,… Chúng sử dụng thuật toán đồng thuận Proof of Authority (PoA), một thuật toán đồng thuận dựa trên tăm tiếng. Có tức là, ai cũng luôn có thể chạy node, nhưng để xác thực cho những chain PoA thì bạn phải thực sự là người dân có tăm tiếng trong cộng đồng đó, điều này sẽ không phù phù hợp với đại phần nhiều người dùng phổ thông.

proof of authority node
Thuật toán đồng thuận Proof Of Authority

Hay với blockchain sử dụng thuật toán đồng thuận Delegated Proof of Stake (DPoS), đây là thuật toán dựa trên giá trị số token mà người dùng nắm giữa, nói cách khác, chỉ có “top holder” mới có quyền để chạy các node cho những blockchain này, điều này cũng không phù phù hợp với đại phần nhiều người dùng phổ thông.

dpos node
Thuật toán đồng thuận DPoS

Chưa dừng lại ở đó cũng luôn có những blockchain phân quyền hơn, giới hạn gia nhập thấp hơn đáng kể như Ethereum. Ethereum khuyến khích người dùng tự chạy node riêng để được chấp nhận họ sử dụng Ethereum một cách tin cậy và riêng tư, trong những lúc vẫn tương trợ cho hệ sinh thái xanh.

Một số lợi ích của việc tự chạy một Ethereum Full Node:

  • Node của bạn tự xác minh tất cả những thanh toán giao dịch theo những quy tắc đồng thuận. Điều này còn có tức là bạn không phải nhờ vào bất kỳ node nào khác trong mạng hoặc hoàn toàn tin vào chúng.
  • Các bạn sẽ không phải rò rỉ địa chỉ và số dư ví của mình cho những node tình cờ.
  • Dapp của bạn cũng có thể an toàn và riêng tư hơn nếu khách hàng sử dụng node của riêng mình.
  • Chúng ta có thể lập trình các RPC endpoints tùy chỉnh của riêng mình.

Một số lợi ích đem lại cho Ethereum Network:

  • Một tập hợp các node đa dạng rất quan trọng khi đối chiếu với sự bảo mật thông tin và khả năng phục hồi hoạt động của Ethereum.
  • Các node đầy đủ cung cấp quyền truy cập vào tài liệu blockchain cho những node nhẹ phụ thuộc vào nó.

5 bước chạy Node cơ bản cho những người mới

Ngoài việc stake token/coin để trở thành Node, có một dạng nữa là chạy Node thông qua Node. Cách này thường kén người làm vì đa phần người chơi trong crypto không rành về Node.

Thông thường chạy Node bằng code giành cho testnet, vì lúc đó dự án chưa ra mắt token. Nhưng cũng chính vì chưa xuất hiện token, nên thời cơ nhận Retroactive là lớn.

Có rất nhiều trang cung cấp dịch vụ thuê VPS. Một trong số đó là Contabo. Đa phần các trường hợp chỉ việc mua option rẻ nhất là được. Sau này là các bước mình thường làm:

  • Thuê VPS.
  • Nhận thông tin đăng nhập.
  • Nhập hàm tmux.
  • Tùy dự án mà sau đó nhập các lệnh khác nhau.

Chúng ta có thể xem video phân tích và hướng dẫn chạy node cơ bản một cách trực quan sau đây:

Bước 1: Thuê VPS

VPS (Virtual Private Server) có thể hiểu là máy tính ảo để người dùng chạy code. Việc mua VPS giống như tất cả chúng ta mua một chiếc máy tính khác, nhưng không sở hữu vật lý.

Vậy vì sao phải mua VPS mới chạy được Node? Bởi vì các dự án testnet đa phần không có bảo mật thông tin tốt, nên nếu dùng máy chính có thể ảnh hưởng tác động đến tài liệu.

Trước tiên, truy cập contabo.com/en và chọn VPS rẻ nhất.

Tiếp theo chọn cụ thể VPS, tôi cũng chọn loại rẻ nhất.

Chọn thời kì và địa điểm. Ở đây mình chọn 12 tháng và ASIA.

Update: Bạn KHÔNG CẦN chọn Châu Á Thái Bình Dương, cứ chọn European Union cho tiết kiệm ngân sách và chi phí cũng được.

Kéo xuống và nhập Password. Các thông tin còn sót lại giữ nguyên, gồm có bộ nhớ 200 GB SSD, hệ điều hành Ubuntu… và bấm Next.

Cuối cùng điền thông tin các nhân cùng thẻ tính sổ để hoàn thành thuê VPS.

Bước 2: Nhận thông tin đăng nhập

Sau lúc hoàn thành, khối hệ thống sẽ gửi email cho bạn.

Đợi thêm một lát, sẽ sở hữu email tiếp theo cung cấp tài khoản, mật khẩu đăng nhập như sau:

Sau đó, truy cập my.contabo.com/tài khoản/login để đăng nhập. Tuần tự thực hiện việc đổi mật khẩu theo những bước như sau: Chọn Your services

Tiếp theo bấm Manage → Control.

Bấm Password Reset.

Cuối cùng nhập Password mới là hoàn thành. Sở dĩ có bước đổi mật khẩu là vì mật khẩu cung cấp thuở đầu của Contabo không biết vì lý do gì không thể đăng nhập được.

Bước 3: Nhập thông tin đăng nhập

tin tức đăng nhập gồm có IP tất cả chúng ta có ở email thông tin đăng nhập, cùng với mật khẩu đã đổi ở trên.

Để đăng nhập, tùy vào hệ điều hành mà có những cách khác nhau:

  • Windows: Start + R; sau đó search CMD và Enter.
  • MacOS: Command + Space; sau đó search Terminal và Enter.

Bằng hữu bấm cú pháp sau để đăng nhập vào VPS:

Sau đó bấm Enter. Ví dụ:

Với những VPS lần đầu đăng nhập vào máy, khối hệ thống sẽ hỏi như sau. Tất cả chúng ta bấm yes (lưu ý viết thường, vì có những thời gian sẽ viết hoa) và Enter.

Tiếp theo, bạn hữu nhập Password đã đổi ở trên vào. Lưu ý, các kí tự Password không hiện trên Terminal, nên bạn hữu cứ bấm thường nhật. Sau lúc hoàn thành thì bấm Enter.

Bước 4: Nhập hàm tmux

tmux là hàm để chạy Node khi bạn hữu tắt máy. VPS chỉ là máy tính thông thường, khi tất cả chúng ta tắt Terminal, VPS cũng sẽ tắt, và mọi hoạt động cũng dừng theo. Điều này thao tác chạy Node bị ngừng lại.

Để khắc phục điều này, ta cài thêm tmux vào. Khi chạy Node trong tmux sẽ chạy vĩnh viễn đến khi tất cả chúng ta dữ thế chủ động tạm ngừng, mà không bị ảnh hưởng tác động bởi tắt máy.

Sau lúc đăng nhập thành công, bạn hữu cài tmux bằng lệnh sau:

Sau đó Enter.

Để truy cập vào tmux, bạn hữu bấm lệnh sau:

Sau đó bấm Enter.

Bước 5: Chạy Node

Thông qua các bước trên, tất cả chúng ta đã đi hết các bước cơ bản để chạy Node. Phần còn sót lại tùy thuộc vào từng dự án sử dụng tiếng nói lập trình, thiết kế mà có những lệnh khác nhau.

Bước 6: Reinstall node (không bắt buộc)

Reinstall node là hành động xóa TẤT CẢ tài liệu trong node, dùng khi chúng ta có nhiều tài liệu nhưng không muốn, hoặc không biết xóa thủ công. Sau lúc reinstall, node sẽ thành node mới hoàn toàn. Cách reinstall như sau:

Sau lúc đăng nhập vào VPS, bấm Your services.

Bấm Manage, chọn Reinstall.

Sau đó bạn nhập mật khẩu vào, bấm Star Installation.

Thanh trạng thái sẽ là Pending → Running → Finish. Nếu đợi khoảng chừng 10 phút mà không thấy Finish, bạn cũng có thể bấm Refresh để làm mới trạng thái.

Tổng kết

Như vậy tất cả chúng ta đã tìm hiểu Node là gì, cách hoạt động, những loại Node chính trong một Blockchain và cách đăng nhập vào VPS để chạy Node. Nếu các bạn có những thắc mắc khác liên quan đến chủ đề trên, hãy phản hồi ở phía dưới để Coin98 tương trợ ngay nhé!

You May Also Like

About the Author: v1000