Tech Guides
Hashing là gì?
#
Marketing
5 phút đọc
29/11/2022
2
0
0

Hashing là một trong những thành phần công nghệ quan trọng nhất giúp giữ an toàn cho mạng Bitcoin. Nhưng hashing hoạt động như thế nào?

Một trong những yếu tố công nghệ cốt lõi của crypto là những hệ thống không cần tin cậy (trustless). Nghĩa là người dùng không cần dựa vào bên thứ ba như ngân hàng hoặc chính phủ để chứng minh danh tính người dùng. 

Bằng cách nào mà các dự án crypto làm được điều này? Một hàm băm (hash), một chút mật mã (cryptography) thông minh cho phép người dùng được xác định, mà không cần phải xác minh danh tính. Chúng ta sẽ khám phá điều này chi tiết hơn trong bài dưới đây.

Hàm băm là gì?

Hàm băm là một kỹ thuật theo đó bất kỳ phần dữ liệu nào cũng được chuyển đổi thành một dãy các chữ cái và số lộn xộn để che giấu dữ liệu gốc ban đầu. Một hàm băm rất đặc biệt vì sẽ luôn tạo ra một loạt chữ cái giống nhau cho một tập hợp dữ liệu, nhưng nếu có bất kỳ thay đổi nhỏ nào trong nguồn ban đầu thì dãy chữ số lộn xộn tạo ra sẽ hoàn toàn khác.

Nghĩa là các hàm băm có thể được sử dụng để xác định chủ sở hữu một dữ liệu mà không cần tiết lộ dữ liệu đó là gì. Hãy xem hàm băm như một chìa khóa kỹ thuật số (digital key).

Hàm băm hoạt động như thế nào?

Hashing biến một phần dữ liệu thành mã nhị phân, về cơ bản là một loạt các số 0 và 1. Sau đó sẽ chia nhỏ các con số thành các phần và sử dụng secret jumbling hay còn được biết là một hàm tính toán. Kết quả cuối cùng thường là một chuỗi số và chữ cái gồm 64 ký tự. Chuỗi 64 ký tự này sau đó được sử dụng theo nhiều cách khác nhau mà chúng ta sẽ khám phá bên dưới.

Nhưng trước tìm hiểu sâu hơn cần biết rằng chuỗi 64 ký tự này gần như không thể bị hack. Vì việc chuyển đổi được thực hiện bởi một thuật toán, công thức áp dụng không được tiết lộ. Việc hack sẽ giống như ta cố gắng điều hướng một con đường qua kính vạn hoa. Tuy nhiên, đối với các phần mềm để đọc và kiểm tra xem hàm băm có đến từ đúng nơi hay không sẽ gần như xảy ra ngay lập tức.

Bạn có biết?

Một máy tính có khả năng chạy 15 nghìn tỷ phép tính mỗi giây sẽ mất gần 0.65 tỷ tỷ năm để bẻ khóa hàm băm của một địa chỉ Bitcoin.

Hàm băm được sử dụng để làm gì?

  • Tạo khóa private và public key: Để gửi và nhận crypto hoặc thực hiện giao dịch trên blockchain, ta cần một cặp khóa. Khóa thường đi theo cặp gồm private và public. Private key được kết nối với public key thông qua hàm băm để giữ an toàn thông tin chi tiết của người dùng. Người dùng có thể gửi public key của mình cho bất kỳ ai hoặc để công khai và không ai có thể tìm ra private key nhờ vào hàm băm.

Bạn có biết?

Vào năm 2013, Bitcoin blockchain đã vô tình chia đôi vì một số miner chưa nâng cấp phần mềm. Trong thời gian này double spend có thể xảy ra.

  • Khai thác Bitcoin: Để giữ cho mạng hoạt động công bằng, Bitcoin duy trì sân chơi bình đẳng cho người tham gia giành quyền tạo block tiếp theo. Bitcoin sử dụng một cuộc đua tính toán bắt đầu lại mỗi khi một block được xuất bản. Để giành chiến thắng trong cuộc đua, mỗi miner thu thập một tập hợp các giao dịch, bao gồm một tham chiếu đến block trước đó và sử dụng thông tin đó như một phần dữ liệu để đưa vào một hàm băm. Để giành chiến thắng trong cuộc đua, hàm băm cho kết quả phải bắt đầu bằng một số số 0 nhất định tùy thuộc vào độ khó hiện tại của mạng. Số lượng các số 0 càng cao sẽ càng khó. Về cơ bản, các hàm băm được sử dụng để giải câu đố ở trung tâm (heart) của blockchain.

Bạn có biết?

Vào tháng 10 năm 2018, hashrate Bitcoin là 50 Exa hashrate mỗi giây. Điều này làm cho mạng mạnh gấp 15 triệu lần so với siêu máy tính nhanh nhất thế giới, tianhe-2.

  • Liên kết các block trong blockchain: Nếu các block trong một blockchain không được liên kết, sẽ rất dễ dàng để chèn một block giả vào. Bitcoin ngăn điều này bằng cách liên kết từng block với block trước đó.

  • Việc này được thực hiện bằng cách sử dụng một con trỏ băm (hash pointer). Con trỏ băm là kết quả được tạo ra từ việc băm block trước đó trong chain. Nghĩa là bất kỳ ai cũng có thể kiểm tra xem các giao dịch trong block có được tiếp tục từ giao dịch trước đó hay không.

  • Điều này thực sự cho phép miner đảm bảo toàn bộ chain là hợp lệ và không có một block nào được thêm vào bởi một miner xấu (malicious miner). Nghĩa là lịch sử của mỗi đồng coin có thể được truy xuất ngược lại khi được khai thác.

Tương lai của hàm băm

Không có gì trong thế giới máy tính là không thể hack được nhưng hàm băm làm cho việc hack trở nên cực kỳ khó khăn. Ở thời điểm này, với sức mạnh tính toán hiện tại sẽ mất hàng triệu năm để hack một hàm băm.

Nhưng trong tương lai, những thứ như điện toán lượng tử (quantum computing) có thể rút ngắn thời gian đáng kể. Nhưng các nhà xây dựng blockchain nhận thức được những gì sẽ có thể xảy ra và đang tích cực xây dựng các thuật toán kháng lượng tử. Nhưng ở thời điểm hiện tại hàm băm đã chứng tỏ được vai trò của mình.

Bài viết được FXCE Crypto biên tập từ "What is Hashing?" của Matt Hussey với mục đích cung cấp thông tin và phi lợi nhuận. Chúng tôi không khuyến nghị đầu tư và không chịu trách nhiệm cho các quyết định đầu tư liên quan đến nội dung bài dịch.

#Bitcoin
# blockchain
ic-comment-blueBình luận
#