Từ lý thuyết đến thực hành: Based Rollup có thể hiện thực hóa giải pháp Rollup theo định hướng sắp xếp L1 không?
Tác giả gốc: YBB Capital Researcher Ac-Core
Lời nói đầu:
Ethereum hoạt động theo nguyên tắc mỗi nút lưu trữ và thực hiện mọi giao dịch do người dùng gửi. Để mở rộng toàn bộ mạng, Ethereum áp dụng giải pháp Rollup. Nói một cách đơn giản, nó di chuyển hầu hết quá trình xử lý giao dịch sang chuỗi ngoài (L2), do đó giảm gánh nặng cho mạng chính Ethereum (L1) và giảm phí giao dịch. Nghĩa là Rollup = một tập hợp các hợp đồng thông minh trong L1 + các nút mạng trong L2, tức là các hợp đồng thông minh trên chuỗi và các trình tổng hợp ngoài chuỗi. Việc giải quyết, sự đồng thuận và tính khả dụng của dữ liệu của riêng nó dựa vào chính Ethereum và nó chỉ chịu trách nhiệm thực hiện các giao dịch. Các nút mạng L2 bao gồm nhiều phần, trong đó quan trọng nhất là bộ sắp xếp, nhưng hiện tại các bộ sắp xếp của Rollup đang phải đối mặt với vấn đề tập trung hóa.
Cuộn và sắp xếp
Rollup là giải pháp mở rộng quy mô cho Ethereum (L1) thực hiện các giao dịch ngoài chuỗi và đóng gói chúng thành các khối. Đối với mỗi khối, Rollup sẽ công bố dữ liệu cần thiết để tái tạo trạng thái chuỗi (như một nguồn dữ liệu khả dụng) lên lớp dữ liệu khả dụng và công bố bằng chứng về tính chính xác của việc thực hiện ngoài chuỗi lên lớp thanh toán (có hai loại Rollup. Trong trường hợp của ZK-rollup, mỗi khối sẽ công bố một bằng chứng không có kiến thức; trong trường hợp của Optimistic rollup, bằng chứng gian lận chỉ được công bố trong trường hợp có tranh chấp). Sau EIP-4844, khi việc công bố dữ liệu chuyển sang blob, lớp này có thể được gọi là lớp công bố dữ liệu. Hợp đồng thông minh của Rollup sẽ xác minh bằng chứng đã công bố trên L1 và mỗi Rollup sẽ có một hoặc nhiều cầu nối để cho phép truyền dữ liệu giữa các chuỗi cũng như gửi và rút tiền.
Trong logic triển khai của Rollup, Sequencer là một thành phần chính. Nó chủ yếu chịu trách nhiệm tiếp nhận các yêu cầu giao dịch trên L2, xác định thứ tự thực hiện của chúng và đóng gói các giao dịch thành các đợt và cuối cùng truyền chúng đến hợp đồng thông minh Rollup trên L1. Nó đóng vai trò quan trọng trong việc cải thiện hiệu quả xử lý giao dịch và giảm chi phí.
Chức năng và nguyên lý hoạt động của máy giải trình tự chủ yếu bao gồm bốn phần.
1. Nhận giao dịch: Bộ sắp xếp nhận yêu cầu giao dịch từ người dùng hoặc ứng dụng. Các giao dịch này trước tiên được xử lý trên L2, thay vì trực tiếp trên mạng chính Ethereum;
2. Sắp xếp giao dịch: Người sắp xếp chịu trách nhiệm sắp xếp các giao dịch đã nhận và xác định thứ tự thực hiện chúng. Quá trình này tương tự như những gì thợ đào Ethereum làm trước khi đóng gói các giao dịch thành các khối;
3. Đóng gói giao dịch: Bộ phân loại đóng gói các giao dịch đã phân loại thành các lô, chứa thông tin tóm tắt của nhiều giao dịch;
4 Gửi đến L1: Cuối cùng, bộ sắp xếp gửi lô giao dịch được đóng gói đến mạng chính Ethereum (L1) để thanh toán và lưu trữ dữ liệu. Theo cách này, L1 có thể xác minh và lưu trữ các bản cập nhật trạng thái trên L2.
Mặc dù công nghệ Rollup cung cấp giải pháp mở rộng hiệu quả, vẫn còn một số vấn đề trong thiết kế và triển khai máy phân loại. Đầu tiên và quan trọng nhất là vấn đề tập trung hóa. Hầu hết các dự án Rollup hiện nay đều dựa vào máy phân loại tập trung, thường do một hoặc một vài thực thể kiểm soát. Rủi ro trực quan mà chúng mang lại là thiếu minh bạch và lỗi điểm đơn.
Bỏ qua lời giải thích cứng nhắc ở trên, cuộc thảo luận về giải pháp phân loại phi tập trung L2, cho dù đó là giải pháp L2 của staking node pool phân loại do Metis trực tiếp mở ra thị trường, hay giải pháp Espresso của dự án độc lập được đề cập trong các bài viết trước của YBB Capital, về cơ bản là sự phân phối của chiếc bánh lợi nhuận phân loại và kỳ vọng về không gian đầu cơ thị trường trong tương lai, vì vậy tính đúng đắn của lợi ích và tính chính thống là chìa khóa khó có thể tránh khỏi.
Bối cảnh lịch sử và thiết kế của Rollup dựa trên
Nguồn hình ảnh: @drakefjustin
Khái niệm Rollup lần đầu tiên được đề xuất bởi nhà sáng lập Ethereum Vitalik Buterin, người có ý tưởng ban đầu là đạt được trạng thái Total Anarchy hoàn toàn không bị ràng buộc để cho phép bất kỳ ai mở rộng giao dịch mà không bị hạn chế. Theo quan điểm về các vấn đề nêu trên với trình sắp xếp hiện tại, vào năm 2023, Nhà nghiên cứu Ethereum: Justin Drake đã đề xuất một giải pháp dựa trên Rollup để quản lý trình sắp xếp bằng chính Ethereum L1, nội dung của giải pháp như sau (xem liên kết mở rộng 1 để biết nguồn):
sự định nghĩa:
“Khi thứ tự của các rollup được điều khiển bởi lớp cơ sở (L1), chúng tôi gọi chúng là rollup dựa trên L1 hoặc rollup được sắp xếp theo L1. Cụ thể, rollup dựa trên L1 là khi người đề xuất L1 tiếp theo có thể hợp tác với người tìm kiếm và người xây dựng L1 để bao gồm khối Rollup tiếp theo mà không cần xin phép vào khối L1 tiếp theo.”
lợi thế:
-
Liveness: Based Rollup được hưởng cùng các đảm bảo về độ sống như L1. Xin lưu ý rằng độ sống của Non-Based Rollup có cửa thoát hiểm sẽ bị giảm (cửa thoát hiểm là cơ chế an toàn trong Rollup cho phép người dùng rút tài sản an toàn từ L2 trở lại chuỗi chính L1 khi có sự cố xảy ra trong hệ thống Rollup. Nó tương tự như lối thoát hiểm khẩn cấp);
Đảm bảo thanh toán yếu hơn: Các giao dịch Escape Pod phải chờ hết thời gian trước khi đảm bảo thanh toán;
MEV dựa trên kiểm duyệt: Các bản cuộn có cửa thoát hiểm dễ bị MEV bất lợi do kiểm duyệt trình tự ngắn hạn trong thời gian chờ;
Hiệu ứng mạng đang gặp rủi ro: Các lần thoát hàng loạt được kích hoạt bởi lỗi sorter liveness (chẳng hạn như cuộc tấn công 51% vào cơ chế phân loại PoS phi tập trung) sẽ phá hủy các hiệu ứng mạng của Rollup. Lưu ý rằng không giống như L1, Rollup không thể sử dụng sự đồng thuận xã hội để phục hồi một cách bình thường sau các lỗi sorter liveness. Các lần thoát hàng loạt là thanh kiếm Damocles trong tất cả các thiết kế Rollup không dựa trên đã biết;
Hình phạt gas: Các giao dịch được giải quyết thông qua một lối thoát thường phải chịu hình phạt gas cho người dùng (ví dụ do nén dữ liệu không tối ưu khi các giao dịch không được nhóm lại).
-
Phi tập trung: Rollup dựa trên kế thừa phi tập trung của L1 và tự nhiên tái sử dụng cơ sở hạ tầng tìm kiếm-xây dựng-đề xuất L1. Người tìm kiếm và xây dựng L1 được khuyến khích đưa các khối rollup vào các khối L1 của họ để trích xuất MEV rollup. Điều này đến lượt nó khuyến khích những người đề xuất khối L1 đóng gói các khối rollup trên L1.
-
Tính đơn giản: Sắp xếp Based Rollup là cách đơn giản nhất, thậm chí còn đơn giản hơn nhiều so với sắp xếp tập trung. Based Rollup không yêu cầu xác minh chữ ký của người sắp xếp, không yêu cầu lối thoát và không yêu cầu sự đồng thuận PoS bên ngoài.
Ghi chú lịch sử: Vào tháng 1 năm 2021, Vitalik đã gọi các lược đồ dựa trên thứ tự L1 là hoàn toàn hỗn loạn, có nguy cơ gửi nhiều khối rollup cùng một lúc, dẫn đến lãng phí gas và công sức. Lược đồ Proposer-Builder Separation (PBS) hiện tại cho phép sắp xếp thứ tự L1 được kiểm soát chặt chẽ, với tối đa một khối rollup cho mỗi khối L1 và không lãng phí gas. Khi các khối rollup n+1 (hoặc n+k đối với k >= 1) chứa bằng chứng SNARK cho khối n, có thể tránh được lãng phí công sức bằng chứng ZK-rollup.
-
Chi phí: Based Rollup không tốn phí gas — không cần xác minh chữ ký từ các bộ sắp xếp phi tập trung hoặc tập trung. Tính đơn giản của Based Rollup giúp giảm chi phí phát triển, rút ngắn thời gian phát hành và giảm khả năng bị lộ lỗ hổng mã. Việc sắp xếp Based Rollup cũng không yêu cầu mã thông báo, tránh được gánh nặng quản lý của các bộ sắp xếp dựa trên mã thông báo.
-
Sự liên kết kinh tế L1: MEV bắt nguồn từ Based Rollup tự nhiên chảy đến L1 mà nó dựa trên. Luồng này tăng cường an ninh kinh tế L1 và, trong trường hợp MEV bị phá hủy, làm tăng sự khan hiếm kinh tế của các token gốc L1. Sự liên kết kinh tế chặt chẽ này với L1 có thể giúp xây dựng tính hợp pháp của Based Rollup. Quan trọng là, mặc dù phải hy sinh doanh thu MEV, Based Rollup vẫn giữ nguyên tùy chọn tạo doanh thu từ phí tắc nghẽn L2 (chẳng hạn như phí cơ sở L2 dưới dạng EIP-1559).
-
Chủ quyền: Mặc dù ủy quyền ra lệnh cho L1, Based Rollup vẫn giữ chủ quyền. Based Rollup có thể có mã thông báo quản trị, thu phí cơ sở và có thể sử dụng số tiền thu được từ các khoản phí cơ sở này khi thích hợp (chẳng hạn như Optimism để tài trợ cho các hàng hóa công cộng).
khuyết điểm:
-
Không có doanh thu MEV: Based Rollup từ bỏ MEV cho L1, giới hạn doanh thu của mình ở mức phí cơ bản. Ngược lại với trực giác, điều này có thể làm tăng tổng doanh thu của Based Rollup. Lý do là bối cảnh rollup có vẻ như là người chiến thắng sẽ giành được tất cả và rollup chiến thắng có thể tận dụng tính bảo mật, phi tập trung, đơn giản và nhất quán của Based Rollup để đạt được sự thống trị và cuối cùng là tối đa hóa doanh thu.
-
Đặt hàng bị hạn chế: Việc giao phó việc đặt hàng cho L1 làm giảm tính linh hoạt của việc đặt hàng. Điều này khiến một số dịch vụ đặt hàng khó thực hiện hơn hoặc thậm chí không thể thực hiện được:
Xác nhận trước: Xác nhận trước nhanh không phải là vấn đề đối với việc sắp xếp tập trung và có thể đạt được với sự đồng thuận PoS bên ngoài. Xác nhận trước nhanh với việc sắp xếp L1 là một vấn đề mở với nhiều hướng nghiên cứu đầy hứa hẹn, bao gồm EigenL, Inclusion Lists và Builder Bonds.
First Come First Served (FCFS): Không chắc chắn liệu việc sắp xếp FCFS theo kiểu Arbitrum có thể được triển khai trên Based Rollup hay không. EigenL có thể cung cấp lớp phủ FCFS cho Based Rollup theo thứ tự L1.
tên:
Tên “Based Rollup” xuất phát từ sự gần gũi của nó với chuỗi cơ sở (Base L1). Điều này xung đột với chuỗi cơ sở mới được Coinbase công bố gần đây, đây là một sự trùng hợp kỳ lạ. Trên thực tế, Coinbase đã chia sẻ hai mục tiêu thiết kế trong thông báo về Base của họ:
-
Không có mã thông báo: “Chúng tôi không có kế hoạch phát hành mã thông báo mạng mới”.
-
Phi tập trung: “Chúng tôi […] có kế hoạch phi tập trung hóa blockchain dần dần theo thời gian.”
Base có thể đạt được sự phân cấp không cần mã thông báo bằng cách trở thành Based Rollup.
Nguồn hình ảnh: @jchaskin 22
Về mặt lý thuyết, Based Rollup cho phép bất kỳ ai mở rộng đến khối Rollup và công bố các thay đổi trạng thái giao dịch đã sắp xếp vào L1 để trích xuất MEV từ L2, do đó, mọi sắp xếp và bảo mật đều được Ethereum L1 cung cấp. Điều này có thể tránh được sự đồng thuận bằng chứng cổ phần bên ngoài và các yêu cầu về mã thông báo của một Rollup cụ thể. Đồng thời, so với các Rollup khác cần thiết để giữ an toàn cho tài sản, chức năng cửa thoát hiểm khẩn cấp có thể bị loại bỏ trong tầm nhìn của Based Rollup. Quy trình chỉ yêu cầu các giao dịch trên Rollup được hoàn thành suôn sẻ trong khi vẫn đảm bảo Ethereum chạy an toàn.
Taiko Labs trên Dựa trên Rollup
Nguồn hình ảnh: Trang web chính thức của Taiko
Taiko Labs là nhóm chính phát triển và thúc đẩy Based Rollup, đây là dự án Taiko Labs trong giải pháp mở rộng lớp thứ hai của Ethereum. Tầm nhìn của họ là giải quyết vấn đề khả năng mở rộng của mạng chính Ethereum thông qua các công nghệ tiên tiến như Based Rollup. Nó có ba tính năng chính:
1. Hoàn toàn tương đương với ZK-EVM EVM (Loại 1) của Ethereum: ZkEVM (Loại 1) được sử dụng có khả năng tương thích hoàn toàn với Ethereum và các nhà phát triển có thể di chuyển liền mạch các ứng dụng phi tập trung (dApp) giữa Ethereum và Taiko mà không phải lo lắng về rủi ro thực hiện hợp đồng thông minh không thành công;
2. Mã nguồn mở: Tất cả mã nguồn Taiko đều có sẵn công khai trên GitHub và bất kỳ ai cũng có thể xem, xây dựng hoặc sửa đổi. Mô hình mã nguồn mở này đảm bảo rằng sự phát triển của công nghệ blockchain không chỉ giới hạn ở nỗ lực của một nhóm nhỏ mà còn bao gồm các cộng đồng và nhà phát triển trên toàn thế giới;
3. Phân quyền hoàn toàn: Ngoài việc đảm bảo khả năng tương thích cao với EVM, Taiko cũng cam kết đạt được sự phân quyền hoàn toàn của giao thức. Taiko có kế hoạch gửi các khối và tạo zkP thông qua các nhà đề xuất và trình xác thực phi tập trung để đảm bảo bản chất phi tập trung của hệ thống.
Taiko nỗ lực xây dựng một Type 1 hoàn toàn tương đương với Ethereum
ZK-EVM, là sự theo đuổi sự tương đương hoàn toàn và không khoan nhượng với Ethereum được Vitalik Buterin đề cập trong Các loại ZK-EVM khác nhau (xem liên kết mở rộng 2). Mục đích của nó là tương thích hoàn toàn với Ethereum để xác minh các khối Ethereum (ít nhất là lớp thực thi có thể xác minh, không bao gồm sự đồng thuận của chuỗi beacon nhưng bao gồm tất cả các giao dịch, hợp đồng thông minh và logic tài khoản, và sẽ không thay thế các hàm băm, cây trạng thái/giao dịch và logic đồng thuận khác), do đó so với các loại khác, Loại 1 là loại phức tạp và đầy thách thức nhất để gần với giải pháp gốc.
Nguồn hình ảnh: Vitalik Buterin: Các loại ZK-EVM khác nhau
Các cấu trúc cốt lõi khác:
Tổng hợp cạnh tranh (BCR – Tổng hợp cạnh tranh cơ bản)
Đây là giải pháp mở rộng blockchain sáng tạo do Taiko Labs phát triển. BCR hướng đến mục tiêu cải thiện hiệu quả và bảo mật của Rollup thông qua cơ chế cạnh tranh, cho phép những người tham gia khác nhau tự do cạnh tranh để gửi khối và tạo bằng chứng, qua đó cải thiện hiệu suất và tính phi tập trung của toàn bộ mạng. Tóm tắt chung như sau.
-
Đặc trưng
Cạnh tranh mở: Cho phép bất kỳ người tham gia đủ điều kiện nào cạnh tranh để gửi khối và tạo bằng chứng. Cơ chế mở này làm giảm sự kiểm soát tập trung và cải thiện tính phi tập trung của mạng. Người cạnh tranh giành được phần thưởng và phí giao dịch bằng cách cung cấp dịch vụ tốt hơn;
Mở rộng hiệu quả: Có thể cải thiện hiệu quả việc tạo khối và xác minh. Nhiều đối thủ cạnh tranh có thể hoạt động song song, tránh tắc nghẽn điểm đơn, cải thiện tốc độ xử lý giao dịch và khả năng mở rộng mạng lưới;
Bảo mật: Khả năng chống lại các cuộc tấn công của hệ thống được cải thiện thông qua cơ chế cạnh tranh nhiều bên. Các khối và bằng chứng được tạo ra bởi sự cạnh tranh nhiều bên làm tăng tính minh bạch và bảo mật của hệ thống, khiến hệ thống khó bị kiểm soát hoặc tấn công bởi một thực thể duy nhất.
-
Lợi thế
Khả năng tương thích EVM: BCR hoàn toàn tương thích với Máy ảo Ethereum (EVM), cho phép các hợp đồng thông minh Ethereum hiện có và các ứng dụng phi tập trung (DApp) dễ dàng được di chuyển sang BCR mà không cần sửa đổi lớn;
Thông lượng cao: Vì BCR có thể xử lý giao dịch và tạo khối song song nên thông lượng của mạng được cải thiện đáng kể, có khả năng xử lý khối lượng giao dịch cao hơn, giảm chi phí giao dịch và độ trễ;
Phi tập trung: Thông qua cơ chế tạo khối và chứng minh phi tập trung, bản chất phi tập trung của mạng được đảm bảo, giảm nguy cơ bị các thực thể tập trung kiểm soát.
-
Nhược điểm
Tăng độ phức tạp: Độ phức tạp của hệ thống đòi hỏi các thuật toán và giao thức phức tạp để phối hợp tạo khối và xác minh giữa nhiều đối thủ cạnh tranh. Độ phức tạp của hợp đồng thông minh có thể yêu cầu logic bổ sung để xử lý kết quả cạnh tranh.
Các vấn đề tiềm ẩn: Theo cơ chế cạnh tranh của BCR, khi nhiều đối thủ tính toán và gửi khối cùng lúc, phí có thể tăng. Người dùng có thể phải đối mặt với phí giao dịch cao hơn khi sử dụng BCR để giao dịch, đặc biệt là khi mạng bận hoặc cạnh tranh khốc liệt. Đồng thời, các nút lớn với nguồn tài nguyên dồi dào có thể có lợi thế trong cuộc cạnh tranh, dẫn đến tập trung hóa.
Rollup Booster dựa trên BBR
Booster là một bên tham gia đặc biệt trong BBR. Nó chịu trách nhiệm tối ưu hóa các lô giao dịch, nén dữ liệu giao dịch và xử lý nhiều lô giao dịch song song. Vai trò thực tế của nó là tách biệt việc thực hiện và lưu trữ, duy trì việc thực hiện L2 trong khi L1 vẫn phi tập trung và giữ cho địa chỉ của các hợp đồng thông minh trên L1 và tất cả BBR đều nhất quán.
Đồng thời, nó cũng phải đối mặt với những thách thức như sự phức tạp của hệ thống, tiêu thụ tài nguyên và khả năng tập trung hóa. Trong tương lai, BBR vẫn cần được tối ưu hóa và mở rộng hơn nữa để đáp ứng nhu cầu của công nghệ blockchain đang phát triển.
Nguồn hình ảnh: Taiko Labs
Phần kết luận
Theo quan sát chung hiện tại, Based Rollup có thể được coi là một thay đổi lớn trong phương pháp mở rộng của lớp thứ hai của Ethereum. Việc sắp xếp Rollup được giao trực tiếp cho người đề xuất lớp đầu tiên và thiết kế tách biệt của người đề xuất và người xây dựng được sử dụng để cho phép lớp đầu tiên thực hiện tất cả các vai trò sắp xếp cho Rollup. Đồng thời, MEV cũng được mở rộng, để những người tìm kiếm L2 có thể gửi các gói giao dịch cho những người xây dựng L2, những người cũng là những người tìm kiếm L1 và các khối L2 hoàn chỉnh này sau đó trở thành một phần của các khối L1 và cuối cùng được xử lý bởi những người xây dựng L1 và mạng chính Ethereum.
Liệu Based Rollup có thể được coi là giải pháp cuối cùng cho Rollup hay không vẫn còn phải được xác minh, nhưng không thể phủ nhận rằng đây là một cải tiến lớn trong quá trình mở rộng lớp thứ hai của Ethereum ở giai đoạn này, cung cấp một giải pháp an toàn hơn và phi tập trung hơn cho việc mở rộng. Nếu cùng một suy nghĩ được đưa vào hệ sinh thái Bitcoin, so với VM gốc và phi tập trung được Ethereum triển khai với khả năng mở rộng mạnh mẽ, thì khó khăn trong việc triển khai của nó là điều dễ hiểu, vì vậy toàn bộ ngành công nghiệp vẫn còn một chặng đường dài để giải quyết vấn đề mở rộng phi tập trung thực sự.
Liên kết mở rộng:
【 1 】 Dựa trên các cuộn lên—siêu năng lực từ trình tự L1 https://ethresear.ch/t/based-rollups-superpowers-from-l1-sequencing/15016/1
【2】Các loại ZK-EVM khác nhau https://vitalik.eth.limo/general/2022/08/04/zkevm.html
Bài viết tham khảo:
【1】Trò chơi tín dụng: Rollups được kiểm soát bởi nhiều chữ ký và ủy banhttps ://mp.weixin.qq.com/s?__biz =Mzk0OTYwMDM1Mg==giữa=2247486544idx=1sn=7a0ee8eb1d32e6ef0bd08354986c0a1fsource=41#wechat_redirect
【2】Báo cáo nghiên cứu Taiko: Giải pháp Ethereum Layer 2 cho khả năng mở rộng liền mạch và tương thích hoàn toànhttps ://www.panewslab.com/zh/articledetails/id09jfto.html
Bài viết này có nguồn từ internet: Từ lý thuyết đến thực hành: Based Rollup có thể hiện thực hóa giải pháp Rollup dựa trên phân loại L1 không?
Có liên quan: ZetaChain sẽ phân phối 10 triệu ZETA trong đợt Airdrop XP Vòng 1
Vòng đầu tiên của chương trình tặng thưởng XP ZetaChain sẽ sớm diễn ra. Các ứng dụng trong hệ sinh thái có thể gửi Yêu cầu đề xuất phần thưởng ZETA trước 00:00 (UTC) ngày 1 tháng 7, đây cũng là thời điểm bắt đầu đợt phân phối phần thưởng tặng thưởng đầu tiên cho các ứng dụng. Sự kiện ra mắt XP kéo dài 90 ngày đã kết thúc. Vòng đầu tiên của phần thưởng mainnet chủ yếu dựa trên ảnh chụp nhanh người dùng XP đầu tiên vào ngày 1 tháng 5 năm 2024. Để hỗ trợ sự phát triển liên tục của mạng ZetaChain, sự kiện tặng thưởng này trao quyền cho các ứng dụng trong hệ sinh thái ZetaChain để xác định tốt hơn phần thưởng ZETA mà người dùng có thể nhận được dựa trên lớp dữ liệu XP. Phương pháp này đảm bảo rằng phần thưởng tặng thưởng được phân phối cho hầu hết người dùng cốt lõi và các hoạt động XP, đồng thời cho phép toàn bộ hệ sinh thái tham gia. Nếu bạn…