Satashi Nakamoto đã gửi một đề xuất về "một hệ thống tiền điện tử mới hoàn toàn ngang hàng, không có bên thứ ba đáng tin cậy", đến một danh sách gửi thư bằng mật mã vào thứ Sáu, ngày 31 tháng 10 năm 2008. Phản hồi đầu tiên - lần đầu tiên bất kỳ ai công khai đã nhận xét về bitcoin - đã đến vào Chủ nhật sau: "Chúng tôi rất, rất cần một hệ thống như vậy", James A. Donald viết, "nhưng theo cách tôi hiểu đề xuất của bạn, nó dường như không mở rộng theo quy mô yêu cầu."
Tiếp tục 10 năm sau, những lời chỉ trích đó vẫn vang lên. Ngay cả những nhà truyền giáo hăng hái nhất của bitcoin cũng thừa nhận rằng việc mua hàng nhỏ, hàng ngày là vô ích. Nhưng Lightning Network, một trong những dự án mở rộng bitcoin hứa hẹn nhất hiện đang được triển khai, có thể thay đổi điều đó.
Mạng sét
Phát biểu tại Hội nghị thượng đỉnh Blockstack vào tháng 7 năm 2017, Giám đốc điều hành Lightning Labs Elizabeth Stark đã trích dẫn rằng bài phê bình đầu tiên về tiền điện tử của Nakamoto, nhưng bày tỏ sự tin tưởng rằng bitcoin trên thực tế có thể mở rộng quy mô. "Về cơ bản, chúng ta lại quay trở lại vào năm 1995 khi nói đến blockchain và các công nghệ phi tập trung", cô nói, đề cập đến thời gian trước khi internet có được HTTP và các lớp TCP / IP vận chuyển và ứng dụng khác.
Trong số các ứng dụng "lớp 2" được nhắc đến nhiều nhất cho blockchain bitcoin là mạng sét. Lần đầu tiên được đề xuất bởi Joseph Poon và Tadge, còn gọi là Thaddeus Dryja vào năm 2015 (phiên bản mới nhất của whitepaper của họ có sẵn ở đây), sét đã được đưa vào một đặc tả chức năng gọi là sét-rfc hoặc "BOLTS" của ba công ty, mỗi công ty đều có triển khai riêng của nó: Lightning Labs có lnd, Blockstream có c-sét và ACINQ có eclair. Ngoài ra còn có các triển khai phi BOTLS đang được phát triển, chẳng hạn như sấm sét.
Mạng sét đã hoạt động, nhưng nó ở giai đoạn cực kỳ mới. Bitcoin thực sự đã được gửi và gần như luôn nhận được bằng cách sử dụng các triển khai của Lightning Labs, của Blockstream và ACINQ và cả ba đều có thể tương tác với nhau. Video dưới đây cho thấy một kỹ sư ACINQ gửi 0, 000001 bitcoin (khoảng 0, 01 đô la) gần như ngay lập tức từ nút eclair đến nút lnd thông qua nút c-sét:
Để xem mức độ cải thiện này thể hiện bao nhiêu, chúng tôi đã thử một giao dịch tương tự trên blockchain bitcoin bằng GreenAddress, một ứng dụng ví di động. Ứng dụng đề nghị trả cho những người khai thác 0, 00001907 BTC (0, 19 đô la): phí 1.907%. Mặc dù không rõ có bao nhiêu khối phí được dự định xác nhận trong đó (chúng tôi đã liên hệ với GreenAddress để tìm hiểu), câu trả lời có thể là sáu khối, hoặc khoảng một giờ.
Tuy nhiên, chúng tôi sẽ không bao giờ tìm hiểu giao dịch cụ thể đó sẽ mất bao lâu: một thông báo lỗi cho chúng tôi biết rằng "đầu ra dưới 546 satoshi được coi là bụi kinh tế bởi Bitcoin. Vui lòng tăng giá trị."
Lightning Labs cũng đã thử nghiệm các giao dịch hoán đổi nguyên tử chuỗi chéo bằng cách sử dụng mạng; đây là những lần chuyển giá trị giữa các blockchain khác nhau, trong trường hợp này là bitcoin và litecoin, có khả năng đánh dấu bước đầu tiên hướng tới việc xây dựng các sàn giao dịch phi tập trung.
Lightning cho phép micropayments mà bitcoin không thể tự mình thực hiện, nhưng việc triển khai hiện tại vẫn còn lỗi. Stark đang kêu gọi người dùng tìm hiểu về sét bằng cách sử dụng "testnet" của bitcoin (nghĩa là sử dụng tiền giả), thay vì "mainnet" trực tiếp. Tuy nhiên, khoảng 50.000 đô la giao dịch đã được thực hiện trên mainnet tại thời điểm viết bài, và một số người đã mất tiền cho một lỗi c-sét. (Christian Decker, kỹ sư công nghệ cốt lõi tại Blockstream, đã nói với tôi qua email rằng tiền cuối cùng đã được phục hồi trong hầu hết các trường hợp.)
Vậy sét hoạt động như thế nào?
Cách thức hoạt động của sét
Giải pháp của Lightning dựa trên các kênh thanh toán hai chiều, ngoài chuỗi. Nói rằng Alice và Bob thường xuyên giao dịch với nhau với số lượng nhỏ. Thanh toán trực tuyến không thực tế trong trường hợp này vì phí và thời gian xác nhận dài có liên quan, vì vậy họ quyết định mở một kênh cho phép họ gửi bitcoin qua lại, ngay lập tức và miễn phí.
Mở kênh
Để mở một kênh, Alice, Bob hoặc cả hai đóng góp một lượng bitcoin nhất định vào một địa chỉ đặc biệt thông qua cái được gọi là giao dịch cấp vốn (hộp màu xanh lục trong sơ đồ bên dưới). Nói Alice đóng góp 1 BTC. Cô gửi tiền đến địa chỉ được gọi là địa chỉ đa năng 2 trong 2, yêu cầu cả Alice và Bob phải "ký" mật mã bất kỳ giao dịch gửi nào với khóa riêng của họ. Một giao dịch bình thường chỉ yêu cầu chữ ký của khóa riêng (đơn) tương ứng với khóa chung của địa chỉ gửi.
Điều quan trọng, giao dịch tài trợ chưa được ký hoặc phát lên mạng.
Tiếp theo, Alice và Bob tạo ra một "giao dịch cam kết" bằng cách sử dụng giao dịch cấp vốn làm "cha mẹ" của mình: họ sử dụng đầu ra chưa được xác nhận là 1 BTC làm đầu vào cho giao dịch "con" gửi 0, 5 BTC cho Alice (đầu ra 0) và 0, 5 BTC đến Bob (đầu ra 1). Nếu bạn phản đối rằng giao thức của bitcoin không cho phép người dùng ký chi tiêu mà không biết chữ ký của đầu vào, khả năng đó đã được cấp thông qua một ngã ba mềm.
Alice sau đó ký kết đầu ra gửi 0, 5 BTC cho Bob; Bob ký kết đầu ra gửi 0, 5 BTC cho Alice. Cả hai sau đó ký và phát sóng giao dịch tài trợ, được cam kết với blockchain bitcoin (và phải chịu phí mạng và thời gian chờ).
Bây giờ họ có một kênh thanh toán mở thông qua đó họ có thể đưa bitcoin qua lại ngay lập tức và miễn phí. Alice hoặc Bob có thể đóng nó bất cứ lúc nào và yêu cầu 0, 5 BTC của họ mỗi lần, hoặc bất kể số dư cập nhật là gì.
Mở một kênh Kênh bằng tiếng Anh
Trừ khi bạn đã biết một chút công bằng về các bộ phận của mạng sét, có lẽ khó có thể tiêu hóa "dấu hiệu ở đây, ban đầu ở đây, chi tiêu này, phát sóng rằng - không phải vậy. "
Đây là một mô tả khái niệm hơn. Giao dịch tài trợ là những gì nó nghe như: nó cung cấp tiền cho kênh. Nó cũng hoạt động như một giới hạn cho kênh: không bên nào có thể kết thúc với số tiền tài trợ ban đầu nhiều hơn và số dư của cả hai bên phải cộng vào số tiền đó. Lý do giao dịch cấp vốn được tạo trước, nhưng phát cuối cùng, là nếu chỉ đơn giản được đăng lên blockchain trong một bước, sẽ không có gì được thực hiện ngoài một giao dịch đơn giản, vanilla. Lightning không làm cho những cái đó nhanh hơn hay rẻ hơn.
Bằng cách để giao dịch cấp vốn mở, chèn một giao dịch cam kết - như được mô tả dưới đây, hoạt động như một loại hợp đồng thông minh - và sau đó đóng giao dịch cấp vốn, sét đánh mở một loại lỗ sâu trong mạng. Nó cho phép bạn di chuyển bitcoin qua lại trên một con đường duy nhất, được xác định. Bạn đang sử dụng giao thức bitcoin, nhưng bỏ qua sự chậm trễ và chi phí do các thợ mỏ áp đặt.
Giữ Lightning không tin tưởng
Nói rằng Bob bây giờ muốn trả cho Alice 0, 1 BTC bằng cách sử dụng kênh mở của họ. Hai bên chỉ cần cập nhật giao dịch cam kết - không cần phải kháng cáo với các thợ mỏ. Số dư, trước đây là 0, 5 BTC, hiện là 0, 6 BTC cho Alice, 0, 4 BTC cho Bob.
Vấn đề duy nhất là, làm thế nào để làm điều đó một cách an toàn? Vì họ đã trao đổi chữ ký cho giao dịch ban đầu, Bob có thể ký tên đó - thay vì gần đây nhất - và bỏ đi với 0, 5 BTC thay vì 0, 4 BTC mà anh ta thực sự nợ. Nói cách khác, anh ta có thể ăn cắp khoảng 1.000 đô la từ Alice, dựa trên giá tại thời điểm viết. Câu trả lời có thể là chỉ mở các kênh với những người bạn tin tưởng. Nhưng sau đó, quan điểm của việc sử dụng bitcoin là gì?
Tìm một giải pháp mật mã cho vấn đề nan giải này tập trung vào một mục tiêu: làm cho không thể ký một giao dịch cũ và đóng kênh theo cách phản ánh trạng thái trước đó. Miễn là làm như vậy là một lựa chọn, sét có vấn đề chi tiêu gấp đôi.
Hãy nhớ rằng Bob ký một nửa giao dịch cam kết (Cam kết Tx 1a bên dưới), chỉ Alice mới có thể phát sóng vì chữ ký của cô ấy là chữ ký bị thiếu. Alice ký tên khác (Cam kết Tx 1b), chỉ sau đó Bob mới có thể phát sóng. Một trong hai người có thể làm như vậy và đóng kênh, nhưng sử dụng khả năng viết hợp đồng thông minh (có giới hạn) của bitcoin, kết quả đầu ra của hai nửa giao dịch cam kết có thể bị hạn chế khác nhau. Cụ thể, một đầu ra có thể cho phép người nhận chi tiêu tiền ngay lập tức, trong khi đầu ra còn lại có thể bị hủy bởi một trong hai bên - thông qua Hợp đồng đáo hạn trình tự có thể hủy bỏ (RSMC) - trong một khoảng thời gian xác định, chẳng hạn như 1000 khối hoặc khoảng một tuần.
Đây là lý do tại sao nó hữu ích. Nếu Bob tỏ ra lệch lạc và không có thiện chí, anh ta chỉ có thể ký và phát Cam kết Tx 1b (ở trên), trả Alice ngay lập tức (Giao hàng 1b) và giữ tiền của mình trong tình trạng lấp lửng trong một tuần (Giao hàng có thể hủy bỏ 1b). Alice, thấy rằng Bob đã cố gắng trao đổi với cô ấy, có thể kích hoạt việc thu hồi và yêu cầu không chỉ 0, 1 BTC mà Bob đã cố gắng đánh cắp, mà là 0, 4 BTC mà anh ta sẽ được hưởng.
Nói cách khác, toàn bộ kênh sẽ chuyển sang Alice nếu cô ấy bắt Bob gian lận. Điều đó có thể bởi vì khi các bên tạo ra một giao dịch cam kết mới (C2a và C2b bên dưới), hứa hẹn sẽ không phát sóng một giao dịch cam kết cũ (C1a hoặc C1b), họ đặt tiền của họ ở nơi miệng của họ. Cùng với giao dịch cam kết mới, họ tạo ra một giao dịch khắc phục vi phạm với hai đầu ra (BR1a và BR1b) áp dụng cho cam kết trước đó. Alice đưa cho Bob khóa riêng của cô cho một nửa giao dịch khắc phục vi phạm và ngược lại. Bây giờ nếu một trong hai cố gắng phát sóng giao dịch cũ, đối tác có thể tận dụng thời gian chờ 1000 khối và vượt lên trước giao dịch đó, lấy toàn bộ số dư của bên vi phạm.
Vấn đề là Alice phải chú ý bán liên tục vào các kênh của mình, kẻo Bob sẽ mất cảnh giác trong 1000 khối. Poon và Dryja đề nghị chỉ định một số bên thứ ba có nhiệm vụ kích hoạt các giao dịch khắc phục vi phạm - những người thưởng cho tất cả các khoản tiền của kênh cho bên bị sai - khi đối tác cố gắng gian lận. Đây có thể được trả một khoản phí từ hình phạt.
Olaoluwa Osuntokun, đồng sáng lập và CTO của Lightning Labs, đang phát triển "tháp canh" để phục vụ như những người thi hành bên thứ ba này. Trong khi những lo ngại đã được đặt ra rằng các nút này có thể hoạt động như các bên đáng tin cậy và đưa sự không an toàn vào mạng, Osuntokun nói với CoinDesk rằng chỉ cần một tháp canh trung thực cho một kênh nhất định.
Ngoài ra, như Christian Decker, kỹ sư công nghệ cốt lõi tại Blockstream, chỉ ra trong một email, gian lận là rủi ro. Đây là một canh bạc đáng kể khi cho rằng bên bạn đang cố gắng cướp sẽ không kiểm tra ít nhất một lần một tuần và nguy cơ mất tất cả số tiền trong kênh của bạn có thể đủ sức răn đe.
Kết nối các kênh
Trong thế giới thực, Alice không muốn giao dịch độc quyền với Bob, hay Bob độc quyền với Alice. Cả hai đều có bất kỳ số lượng đối tác mà họ cần phải trả và được trả tiền. Mở các kênh với mỗi một trong các bên này sẽ không thực tế. Ngay cả khi giao diện người dùng được đơn giản hóa để hoàn thiện, rất ít người dùng sẽ có thanh khoản cần thiết để liên kết bitcoin trong hàng tá kênh mở trở lên.
May mắn thay họ không phải. Như video trên cho thấy, người dùng có thể định tuyến thanh toán qua các kênh của người dùng trung gian, do đó, việc thanh toán cho bất kỳ ai có một hoặc hai kênh mở đều có thể thực hiện được thông qua nguyên tắc phân tách sáu độ. Không giống như các giao dịch trong một kênh, các giao dịch đa kênh này có thể sẽ bao gồm các khoản phí nhỏ để khuyến khích các nút tài trợ cho các kênh và giữ cho chúng mở. Định tuyến hành, kỹ thuật được sử dụng để ngụy trang cho người dùng trình duyệt TOR, ngăn các nút trung gian nhìn thấy toàn bộ đường dẫn được thực hiện bởi một giao dịch, giảm thiểu các mối lo ngại về quyền riêng tư.
Mạng lưới các kênh này hoạt động tốt như thế nào trong thực tế vẫn được nhìn thấy và có thể hình dung rằng nếu các khoản thanh toán phải đi quá phức tạp - với quá nhiều "bước nhảy" qua các kênh trung gian - phí có thể được tính bởi những người dùng đó.
Lightning có thể phân cấp?
Những lo lắng này có liên quan đến một điều, đối với các nhà phê bình, đại diện cho một lỗ hổng không thể vượt qua trong mạng sét. Trong các triển khai ngày nay, một kênh đi kèm với giới hạn: số lượng bitcoin trong giao dịch cấp vốn ban đầu giới hạn tổng số tiền trong kênh.
Tình huống này áp đặt một sự đánh đổi đối với người dùng với nguồn lực hạn chế hợp lý. Họ có thể tài trợ cho các kênh với số lượng lớn bitcoin để đảm bảo rằng họ có tiền để thực hiện bất kỳ khoản thanh toán nào họ cần hoặc họ có thể tài trợ cho các kênh nhỏ hơn và có sẵn bitcoin cho các mục đích sử dụng khác. (Vì thanh toán có thể được định tuyến qua các kênh được liên kết, một người dùng nhất định có thể không cần phải mở nhiều hơn một số kênh và có lẽ chỉ một vài.)
Sự lựa chọn tập trung vào việc có thanh khoản trong các kênh sét hoặc thanh khoản bên ngoài chúng, trên chuỗi. Việc chọn tài trợ cho các kênh thanh toán có thể gặp rủi ro nếu các tháp canh hoặc một số giải pháp khác không ngăn được việc mất tiền thông qua việc không quan tâm. Mặt khác, nếu các kênh thanh toán được đảm bảo an toàn và sét trở thành phương thức chính để sử dụng bitcoin hàng ngày, sẽ có rất ít vấn đề với việc để lại tiền trong các kênh. Chúng sẽ đóng vai trò là "thẻ ghi nợ có thể sạc lại hoặc tiền mặt", như Decker đặt nó, trong khi chuỗi chính hoạt động như một tài khoản tiết kiệm.
Stark đưa ra một lập luận tương tự: tài trợ cho một kênh sét ngăn bạn sử dụng bitcoin đó cho bất cứ điều gì khác, ngoại trừ "một mạng lưới có nhiều nút có khả năng trên multihop sẽ chấp nhận bitcoin ngay lập tức", cô viết qua email. "Chúng tôi hình dung các quỹ trên các kênh Lightning sẽ hữu ích hơn bitcoin trên chuỗi để giao dịch vì tốc độ tức thì và phí thấp", cô nói thêm.
Trung tâm?
Nhưng bạn sẽ thiết lập những kênh này với ai? Chọn Bob cho Alice của bạn là một quyết định kinh tế, không phải là mật mã và đối với các nhà phê bình về mạng sét, câu trả lời rõ ràng sẽ là một loại "trung tâm", một nút có nhiều vốn, cho nó khả năng duy trì các kênh mở được tài trợ tốt với một số bên cùng một lúc.
Ý tưởng rằng số tiền cho một ngành công nghiệp ngân hàng bitcoin ngoài chuỗi có thể phát triển làm xáo trộn những người đam mê bitcoin, những người coi nó là tập trung vào mạng.
Stark tranh chấp dòng tranh luận này. "Hàng ngàn người dùng chạy các nút đầy đủ cho bitcoin", cô viết, "và chúng tôi tin rằng những người đó và những người khác cũng sẽ chạy các nút trên Lightning (dễ dàng hơn vì bạn không cần một nút đầy đủ bitcoin cùng với nó, và không giống như các nút đầy bitcoin của bạn có thể tạo ra những khoản phí nhỏ từ việc định tuyến). " Cô cũng chỉ ra rằng nhóm của cô đang làm việc "ghép nối", điều này sẽ cho phép các kênh được đứng đầu bằng cách sử dụng bitcoin từ chuỗi chính. Khả năng đó có thể làm giảm bớt sự đánh đổi giữa việc đưa bitcoin vào một kênh hoặc để nó trên chuỗi chính, điều này có thể làm giảm xu hướng hình thành các trung tâm.
Decker thấy rằng có khả năng "mạng hai lớp sẽ hình thành, với một số lượng lớn các nút đáng tin cậy và đóng vai trò là xương sống của mạng." Ông hy vọng những người này sẽ là thương nhân, tuy nhiên, thay vì các trung tâm chỉ tồn tại để cung cấp các kênh lỏng. Việc cung cấp các kênh này cho nhiều người dùng, theo ông, sẽ rất tốn kém, đòi hỏi các trung tâm phải trả phí cao và khiến chúng không bị cạnh tranh so với các nút khác.
Giám đốc điều hành ACINQ Pierre-Marie Padiou không tuyên bố muốn biết mạng lưới sét có thể phát triển như thế nào. "Rất khó để dự đoán trạng thái cân bằng sẽ là gì giữa tập trung hóa và phi tập trung hóa", ông viết qua email. "Tất nhiên sẽ có các nút lớn hơn và các nút nhỏ hơn, nhưng ở mức độ nào thì rất khó để nói trước."
Cách đúng để quy mô?
Poon và Dryja khẳng định rằng "sử dụng một mạng lưới các kênh thanh toán vi mô này, Bitcoin có thể mở rộng tới hàng tỷ giao dịch mỗi ngày với sức mạnh tính toán có sẵn trên một máy tính để bàn hiện đại ngày nay". Có lẽ, nhưng đó chắc chắn không phải là trường hợp ngày hôm nay. Ít hơn 1.000 nút sét mainnet được mở tại thời điểm viết.
Cũng không phải là sét đề nghị mở rộng duy nhất ra khỏi đó. Một đối thủ cạnh tranh chính là bitcoin cash, một loại hard fork của bitcoin cho phép tạo ra các khối lớn hơn. Cuộc tranh luận giữa những người ủng hộ bitcoin cash, những người ủng hộ sét và những người ủng hộ các cách thứ ba khác nhau - thậm chí là người chống quy mô thỉnh thoảng - rất sôi nổi, nếu gây tranh cãi. Nó có thể là cái này hoặc cái kia sẽ xuất hiện trên đỉnh, rằng chúng sẽ tiếp tục cùng tồn tại, hoặc tất cả sẽ thất bại.
Trong mọi trường hợp, mạng sét là một nỗ lực đầy hứa hẹn để vượt qua tình trạng khó xử về khả năng mở rộng đã ám ảnh bitcoin kể từ cuối tuần đầu tiên của bitcoin vào năm 2008.
