what time is it in los angeles Blockchain hoạt động như thế nào?

Giao dịch được thêm vào blockchain hầu hết Ngay khi họ bước vào. Nhưng chúng tôi không thể thêm mọi giao dịch sẽ không được. Chúng ta cần thêm chúng an toàn.

Để đạt được điều này, Bitcoin buộc bất cứ ai muốn thêm một khối giao dịch vào blockchain để Giải một câu đố Đầu tiên.

Tại sao nhu cầu câu đố?

Tại sao không thêm giao dịch vào blockchain ngay lập tức mà không cần câu đố?

Câu trả lời ngắn gọn là: Câu đố ngăn mọi người thêm các giao dịch gian lận vào blockchain.

Ví dụ nhanh.

Bạn gửi cho ai đó 1 bitcoin và giao dịch đó được thêm vào blockchain.

Nếu có thể thêm vào blockchain một cách nhanh chóng và dễ dàng, bạn có thể Tạo một phiên bản mới mà bạn không gửi chính xác bitcoin đó cho người khác. Và vì phiên bản blockchain của bạn mới hơn và lâu hơn, mọi người trên mạng Bitcoin sẽ cập nhật bản sao blockchain của họ lên phiên bản của bạn và giao dịch Bitcoin ban đầu sẽ biến mất.

Điều này không tốt.

Vì vậy, trước khi một khối giao dịch được thêm vào blockchain và mọi người đều cập nhật bản sao của họ, ai đó cần phải giải câu đố cho khối đó.

Điều này ngăn các phiên bản tinh ranh của blockchain được xây dựng.

Câu đố này là gì?

nó là một Chức năng băm mật mã.

Điều đó có nghĩa là hoàn toàn không có gì với bạn mà tôi biết, vì vậy hãy cho phép tôi giải thích.

Mật mã là nghệ thuật nhầm lẫn các thông điệp để thông điệp ban đầu là khó (hoặc không thể) để giải mã. Ví dụ: nếu tôi muốn gửi một tin nhắn bí mật cho mẹ tôi đến Mua thêm sữa, Tôi có thể sử dụng các kỹ năng mật mã của mình để thay đổi thông điệp thành Yub Erom Klim.

Một hàm bămCách bạn mã hóa một tin nhắn Trong Mật mã. Trong ví dụ về sữa của tôi, tôi đã đảo ngược từng từ, vì vậy hàm băm là "đảo ngược từng từ". Đây sẽ là một hàm băm khủng khiếp trong cuộc sống thực vì thật dễ dàng để tìm ra thông điệp ban đầu, nhưng ít nhất nó cho bạn ý tưởng về chức năng băm là gì.

Mặt khác, Bitcoin sử dụng chức năng băm có tên là SHA-256, phức tạp hơn một chút so với chức năng sữa của tôi. Nếu tôi mã hóa "Mua thêm sữa" bằng SHA-256, tôi sẽ nhận được điều này: 11CB2F8C5D60E666051894788E9D020F69C3B7AAAC41CE6B6EF38B7213BDFD92

Tôi biết, cái quái gì đúng không? Nó thậm chí không có cùng độ dài với tin nhắn ban đầu, và làm thế nào những con số đó có được trong đó?

Điều này chỉ cho thấy SHA-256 phức tạp (tức là an toàn). Hoàn toàn không có cách nào bạn sẽ chặn được mẹ tôi trên đường đến cửa hàng bây giờ.

Làm thế nào điều này được sử dụng như một câu đố trong bitcoin?

Hãy tưởng tượng rằng tôi đã nói với bạn rằng bạn chỉ có thể thêm một khối giao dịch vào blockchain nếu bạn có thể Tìm tin nhắn ban đầu từ 11CB2F8C5D60E666051894788E9D020F69C3B7AAAC41CE6B6EF38B7213BDFD92

Khó khăn, phải không?

Cách duy nhất bạn có thể làm là bằng cách đoán Câu trả lời, lặp đi lặp lại cho đến khi bạn hiểu đúng. Nhưng bạn khá có phương pháp, vì vậy bạn sẽ bắt đầu với:

// Thử "A"
SHA-256 ("A") = XXXXXXXXXXXXXXXXXXXXXXXXXX

Không.

// Thử "B"
SHA-256 ("B") = XXXXXXXXXXXXXXXXXXXXXXXXXX

Không.

6 tháng sau…

// Thử "Mua thêm sữa"
SHA-256 ("Mua thêm sữa") = 11CB2F8C5D60E666051894788E9D020F69C3B7AAAC41CE6B6EF38B7213BDFD92

Yay!

Bitcoin yêu cầu bạn giải một loại câu đố tương tự cho mỗi khối, nhưng đó là một biến thể của câu đố "Tìm thông điệp gốc" này

Ví dụ về một câu đố bitcoin.

Trước hết, hãy tưởng tượng mỗi khối đi kèm với số nhận dạng (ID) của riêng nó và đó là một chuỗi dài các văn bản và số, giống như kết quả của băm chúng tôi vừa làm.

Ví dụ: giả sử khối hiện tại có ID này:

blockid = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Để thêm khối này vào blockchain (còn được gọi là "khai thác" nó), chúng ta phải băm ID này với một số khác Để thử và nhận được kết quả dưới một giá trị nhất định.

Khi tôi nói "nhận được kết quả dưới một giá trị nhất định", hãy nói điều đó có nghĩa là "nhận được kết quả bắt đầu với 8 số không".

Vì vậy, nếu chúng tôi băm ID này với số 1, chúng tôi sẽ nhận được:

SHA-256 (Blockid, 1) = 11CB2F8C5D60E666051894788E9D020F69C3B7AAAC41CE6B6EF38B7213BDFD92

Đó là một nỗ lực tốt, nhưng kết quả không bắt đầu với đủ số không.

Hãy thử số 2:

SHA-256 (Blockid, 2) = 11CB2F8C5D60E666051894788E9D020F69C3B7AAAC41CE6B6EF38B7213BDFD92

Không, vẫn không tốt. Có vẻ như chúng ta sẽ phải tiếp tục làm việc theo cách của chúng ta thông qua các con số cho đến khi chúng ta tìm thấy một số hoạt động.

6 tháng sau…

SHA-256 (Blockid, 2504433986) = 11CB2F8C5D60E666051894788E9D020F69C3B7

Yay!

Và làm thế nào điều này giữ cho blockchain an toàn?

Như bạn có thể tưởng tượng, lặp đi lặp lại tất cả các số này (tức là đi 1, 2, .. 2504433986) cần có thời gian và công sức (tức là sức mạnh xử lý máy tính), vì vậy thật khó để tự mình thực hiện.

Mỗi công cụ khai thác trên mạng Bitcoin đang cố gắng tìm một số hoạt động cho khối hiện tại. Khi ai đó tìm thấy nó, câu trả lời được phát trên mạng và khối được thêm vào bản sao blockchain của mọi người.

Đây là cách blockchain giữ an toàn, bởi vì với tất cả mọi người làm việc chăm chỉ để giải câu đố của mỗi khối, không một người nào sẽ có thể "làm việc" toàn bộ mạng bitcoin đủ lâu để có thể tạo ra một bản sao gian lận của blockchain.