Tại sao satoshi lại chọn 10mins cho một block?
Theo như nguồn Wiki, 10 phút được chọn là ‘sự đánh đổi’ (tradeoff). Đó là sự cân bằng được Satoshi lựa chọn giữa thời gian lan truyền của các khối mới trong các mạng lớn và lượng công việc bị lãng phí do chia tách chuỗi. Quyết định 10 phút được đưa ra với giả định rằng sẽ mất 1 phút để bất kỳ khối mới nào tiếp cận được mọi nút trong mạng. Điều này có nghĩa là sau khi một nút tìm thấy giải pháp, trong khoảng một phút, các nút còn lại đang làm công việc “vô ích”, cố gắng tìm ra giải pháp khi một nút đã được tìm thấy. Sau đó, những người phát minh ra Bitcoin cho biết, đừng lãng phí hơn 10% tài nguyên của mạng để làm những công việc vô ích. Vì vậy, hãy đặt độ khó của câu đố sao cho mất 10 phút để giải câu đố. Lưu ý rằng độ khó là cố định về mặt thời gian. Khi máy tính mạnh hơn, bạn có thể nghĩ rằng câu đố có thể mất ít thời gian hơn để giải. Nhưng giao thức Bitcoin có một quy tắc làm chậm được tích hợp trong đó điều chỉnh độ khó thực sự của câu đố dựa trên thời gian trung bình để giải nó trong hai tuần.
Tuy nhiên trong Paper gốc của Satoshi, 10 phút chỉ được giả định cho mục đích tính toán các yêu cầu về dung lượng ổ đĩa. Với block header có giao dịch sẽ có kích thước khoảng 80 byte (cho node light weight), 1MB (full block) và hiện tại là 2MB . Nếu chúng ta giả sử các khối được tạo sau đúng 10 phút, thì 1MB * 6 * 24 * 365 = 51,32GB mỗi năm.
Mặt khác, 10 phút cho một block chỉ đơn giản là một thỏa hiệp.
Nếu thời gian tạo một block ít hơn 10 phút?
Ưu điểm:
-
Thời gian xác nhận nhanh hơn
-
Phương sai ít hơn cho miner (ít phụ thuộc vào pool lớn để đào hơn)
Nhược điểm:
-
Yêu cầu tăng băng thông (giao tiếp giữa các nút)
-
Khả năng bị forks cao hơn
-
Phần lớn sức mạnh hash sẽ bị lãng phí, dẫn đến bảo mật hiệu quả thấp hơn.
-
Bị giảm trust đi hơn
Nếu thời gian tạo lâu hơn 10 phút thì ngược lại với trên
Lợi ích chính của thời gian đóng block nhanh hơn là giảm thời gian xác nhận. Giao dịch xác nhận của block nhanh hơn có tính toán dùng ít sức mạnh hơn giao dịch xác nhận của block đóng lâu hơn 10 phút, nhưng đồng thời khả năng xảy ra block ko có giao dịch xác nhận (bị huỷ) cũng sẽ có nhiều hơn, và cũng khiến có lãng phí hash.
Tốc độ xác nhận có vẻ là một lợi ích to lớn nhưng trên thực tế đối với hầu hết các giao dịch có giá trị thấp và thời gian nhạy cảm như mua một tách cà phê, trả tiền taxi hoặc sử dụng máy bán hàng tự động, nguy cơ chi tiêu gấp đôi là rất bé. Hãy nhớ rằng chấp nhận thẻ tín dụng không phải là không có rủi ro tuy nhiên các thương gia từ lâu đã chấp nhận rằng họ sẽ phải đối mặt với một số tổn thất tuy nhiên nếu những tổn thất đó là tối thiểu thì nó có thể được coi là chi phí kinh doanh. Vì vậy, nhiều người bán có thể đơn giản chỉ cần chấp nhận các giao dịch không được xác nhận mà không phải chịu nhiều rủi ro hơn họ do gian lận thẻ tín dụng.
Có những yếu tố khác như làm giảm thời gian tạo khối ngắn hơn là có thực sự hiệu quả đối với nhiều người? tuy giúp thời gian xác nhận “nhanh hơn” những vẫn không đủ nhanh. Ví dụ Đối với giao dịch Điểm bán hàng, thời gian xác nhận trung bình là 2 phút vẫn lâu hơn đáng kể so với thời gian mà hầu hết người buôn bán cho là có thể thực hiện được. Giao dịch thẻ tín dụng trung bình mất khoảng 20 giây (bao gồm cả sự chậm trễ của khách hàng). Toàn bộ ngành công nghiệp đã dành nguồn lực đáng kể để rút ngắn thời gian dù chỉ trong vài giây. Những thay đổi như cho phép khách hàng quẹt thẻ, vuốt trước khi tất cả các mặt hàng được chuyển lên và không yêu cầu chữ ký với giá trị thấp, tất cả chỉ nhằm loại bỏ một vài giây trong quy trình vốn đã nhanh chóng và chi phí của những thay đổi đó được coi là có thể chấp nhận được để cải thiện một chút hiệu quả của thanh toán.
Với vấn đề bị giảm Trust của hệ thống, bitcoin có thể giảm thời gian tạo blockchain được nhưng sẽ gây ra giảm trust. Đơn giản nếu để 5 phút tạo ra một block mới, thì trong 5 phút sẽ tìm ra được một thằng proof. Nhưng nếu để 10 phút thì lỡ đâu có được 2 blockchain do 2 thằng tạo ra và có khả năng thằng 2 uy tín hơn thằng 1 cũng sẽ giúp hệ thống an toàn hơn, cạnh tranh hơn.
Tóm lại sau một hồi tính toán tốt xấu thì bitcoin chọn 10mins cho 1 blockchain và đủ 6 block trước thì được chọn cũng là do rất nhiều yếu tố. Tuy nhiên không có gì là hoàn hảo, cũng là PoW nhưng rõ ràng ETH hoạt động khác hẳn PoW của bitcoin mà.
Quan điểm của mọi người thế nào về tại sao 10mins cho 1 block nhỉ? Thực ra nếu làm về core, chúng ta đều phải giải thích tại sao lại thế và có các tính toán với blockchain do chính mình tạo ra, vì thời gian tạo một block là do mình quy định. Thích có thể tạo 1s một block thay vì 10mins, nhưng WHY? =))
Có rất nhiều câu hỏi linh tinh như thế này nhưng nếu muốn xây dựng một blockchain riêng cho mình thì cần phải trả lời được những câu hỏi bullshit này.
Ví dụ: (Làm cách nào để bạn tạo ra một loại tiền điện tử dành cho liên hành tinh không?) Đơn giản như sau này chính phủ bắt đặt máy đào trên Sao Hoả để bảo vệ môi trường Trái Đất thì 10mins còn khả thi không khi mà cần 20mins để truyền tin từ Trái đất lên Sao Hoả?
(Trích Nguòn FB:Hoang Minh Tri)