BTC
$96,000
5.73%
ETH
$3,521.91
3.97%
HTX
$0.{5}2273
5.23%
SOL
$198.17
3.05%
BNB
$710
3.05%
lang
简体中文
繁體中文
English
Tiếng Việt
한국어
日本語
ภาษาไทย
Türkçe
Trang chủ
AI AI
Tin nhanh
Bài viết
Sự kiện
BlockBeats Pro
Thêm
Thông tin tài chính
Chuyên đề
Hệ sinh thái chuỗi khối
Mục nhập
Podcast
Data
OPRR
Partnered With:

Chuỗi bên có được tính là Lớp 2 không?

Đọc bài viết này mất 37 phút
Tính bảo mật của L2 dựa vào Ethereum; tính bảo mật của sidechain không liên quan đến Ethereum
Tiêu đề gốc: " Tranh cãi trong cộng đồng: Chuỗi bên có được tính là L2 không? 》
Nguồn gốc: Trang web ETH Trung Quốc

Bài viết này tóm tắt các cuộc thảo luận trong cộng đồng về các tranh chấp liên quan giữa Polygon sidechains và L2, đồng thời dịch bài viết "Mọi người đều sai về cuộc tấn công 51%" của Dankrad Feist để độc giả tham khảo để có câu trả lời cho những tranh chấp này.

 

Vào ngày 16 tháng 5, giá trị thị trường của Polygon, một giải pháp mở rộng Ethereum , được xếp hạng trong số 20 loại tiền điện tử hàng đầu theo vốn hóa thị trường, Uri Kolodny, đồng sáng lập StarkWare, sau đó đã tweet lại lời chúc mừng, nhưng đồng thời ông nhấn mạnh: "Polygon là một chuỗi bên, không phải Lớp 2. Tính bảo mật của L2 dựa vào Ethereum; và tính bảo mật của chuỗi bên Nó không liên quan đến Ethereum (hoặc thậm chí thấp hơn).” Do đó, cộng đồng đã bắt đầu một cuộc thảo luận sôi nổi xung quanh việc liệu Polygon có phải là L2 hay không.

 

Đáp lại nhận xét của Uri Kolodny, Mihailo Bjelic đã đưa ra câu trả lời sau  [1]:

 

Trước hết, Đa giác không phải là một chuỗi bên ; Nó là một tập hợp các giải pháp mở rộng. Thứ hai (và quan trọng nhất), việc mặc định L2 an toàn hơn chuỗi bên PoS là hoàn toàn sai lầm (của chúng tôi là chuỗi cam kết). Để giải thích lý do, tôi sẽ so sánh ngắn gọn chuỗi PoS của Polygon với zkRollup hoặc Validium của StarkWare.

 

Chuỗi PoS của chúng tôi có bộ trình xác thực riêng, nhưng đây là hoàn toàn không được phép và số tiền cam kết đã lên tới 2,8 tỷ USD. Ngoài ra, việc triển khai đã được thử nghiệm thực tế (14 triệu khối và không có sự cố nào).

 

Tuy nhiên, StarkWare Rollup chỉ có một toán tử PoA. Toán tử này có thể ngừng hoạt động, bắt đầu lại, xem xét các giao dịch của người dùng, v.v. Và nó được bảo mật bằng STARK, một loại mật mã mới chưa được chứng minh. Về phần Validium, tình hình còn đáng lo ngại hơn. Giải pháp Validium được DeversiFi sử dụng cũng dựa trên một tập hợp nhỏ các nút khả dụng dữ liệu PoA. Các nút này có thể thông đồng để ngăn chặn bất kỳ hoặc tất cả người dùng rút tiền bằng cách từ chối quyền truy cập vào dữ liệu.

 

Xét tình huống trên, tôi nghĩ L2 mặc định tốt hơn L2 chuỗi bên Ý tưởng cho rằng chuỗi cam kết an toàn hơn là sai.

 

Đáp lại câu trả lời của Mihailo Bjelic, cộng đồng đã phản hồi từ ba quan điểm Thảo luận : 1) Sự khác biệt về bảo mật giữa Lớp-2 và chuỗi bên; 2) Liệu Lớp-2 có thể đạt được mức bảo mật tương tự như Lớp-1 hay không; 3) Sự khác biệt về bảo mật giữa Eth2 và chuỗi bên. Liên quan đến sự nhầm lẫn trong cộng đồng, nhà phát triển Dankrad Feist của Ethereum Foundation đã xuất bản bài báo “Tấn công khoảng 51%, mọi người đều hiểu sai” [2] (xem bên dưới), về cơ bản đề cập đến các vấn đề được thảo luận ở trên kèm theo câu trả lời.

 

1. Trước hết, về câu hỏi đầu tiên, Dankrad Feist đã nói không Đồng ý, anh ấy nói rằng L2 thực sự an toàn hơn vì giống như L2, nó phải cung cấp mức bảo mật tương tự như lớp cơ sở. Sidechain PoS có tính bảo mật của các chuỗi yếu hơn (thường là sidechain). [3]

 

James Prestwich cũng tham gia vào cuộc thảo luận [4] : "So với chuỗi bên, L2 yêu cầu ít giả định bảo mật mới hơn, nhưng tính bảo mật của nó không hoàn toàn giống với mạng chính." Ông chỉ ra rằng L2 có các đặc điểm khác biệt sau so với chuỗi bên:

 

 ^ Dựa vào việc không kiểm duyệt (bằng chứng gian lận) 

 ^ Dựa vào mật mã mới và cài đặt đáng tin cậy (bằng chứng xác thực) Ngoài ra, Starks không cần phải dựa vào cài đặt đáng tin cậy

 ^ Yêu cầu về phần cứng và băng thông cao hơn

 


 

Trong phần sau, Dankrad Feist chỉ ra rằng "sidechains không xác minh tính hợp lệ, chỉ có sự đồng thuận nhất về các điều kiện và nó không có kiểm tra tính khả dụng của dữ liệu." Về vấn đề bảo mật của chuỗi bên, vui lòng xem phần "Chuỗi bên hoạt động như thế nào?" của bài viết.

 

2. Về việc liệu L2 có thể đạt được mức bảo mật tương tự như L1 hay không. Patrick McCorry tin rằng [5] rằng mục tiêu của L2 là gần giống với mức độ bảo mật của L1 nhất có thể, nhưng không thể giống hệt như vậy:

 

 ^ Bằng chứng gian lận không phải là thanh gươm trí tuệ, đặc biệt khi chi phí phát hành bằng chứng gian lận quá cao thì tính bảo mật của nó lại càng kém

 ^ Tương tự, bằng chứng không có kiến thức không phải là toàn năng. Sẽ có những trường hợp người đặt hàng ngoại tuyến và L1 không thể đối phó với việc rút tiền quy mô lớn

 

Ông cũng đề cập rằng nghiệm L2 có thể được rút gọn thành bốn điểm sau:

 

 ^ Tính sẵn có của dữ liệu (ủy ban/tổng hợp/v.v.) 

 ^ Tính toàn vẹn của quá trình chuyển đổi trạng thái (bằng chứng không có kiến thức/bằng chứng gian lận) 

 ^ Tính toàn vẹn khi rút tiền (Đảm bảo thoát) 

 ^ Hoạt động giao thức (Lựa chọn người đặt hàng)

 

Giải pháp kết hợp này khó thực hiện hoàn toàn Đạt được bảo mật L1.

 



Trở lại bài viết bên dưới, Dankrad Feist giải thích "mô hình bảo mật của blockchain" để nêu bật lý do tại sao bảo mật L1 lại như vậy khó đạt được.

 

3. Sau đó, chuỗi PoS của Polygon và PoS của Eth2 thì sao so sánh cơ chế? Trong cuộc thảo luận, Dankrad Feist đã chỉ ra [5] rằng trong quá trình phát triển lâu dài, sidechain PoS sẽ là một mối nguy hiểm tiềm ẩn lớn. Trong Eth2, chúng tôi cố gắng loại bỏ hầu hết các giả định trung thực, tuy nhiên, cầu nối PoS không thể thực hiện được điều này.

 

Sau đây là nội dung bài viết:


Tấn công khoảng 51%, mọi người đều có lỗi xảy ra

 

Xin hãy tha thứ tiêu đề có ý nghĩa khiêu khích. Rõ ràng, không phải ai cũng hiểu sai về cuộc tấn công 51%, nhưng vẫn có khá nhiều người không hiểu lầm nên viết một bài về nó cũng chẳng có hại gì.

 

Có lẽ có một huyền thoại trong vòng tròn blockchain: miễn là có ai đó kiểm soát Nếu Bitcoin, Ethereum hoặc blockchain khác có hơn 50% khả năng tính toán thì nó có thể làm bất cứ điều gì đối với mạng. Trong cơ chế PoS (Bằng chứng cổ phần), miễn là ai đó thu thập được 2/3 tổng số tiền cam kết, anh ta cũng có thể làm bất cứ điều gì với mạng. Anh ta có thể chuyển tài sản của người khác, phát hành token theo ý muốn, v.v.

 

Ý tưởng này sai. Đây là những gì cuộc tấn công 51% có thể làm:

 

 ^ Những kẻ tấn công có thể ngăn người dùng sử dụng blockchain, tức là chặn bất kỳ giao dịch nào họ không thích. Nó được gọi là kiểm duyệt.

 Ã Họ có thể khôi phục các giao dịch của blockchain, tức là hoàn tác một số khối nhất định và thay đổi thứ tự giao dịch trong đó.

 

Điều họ không thể làm là thay đổi quy tắc của hệ thống. Điều này có nghĩa là:

 

 ^ Họ không thể đơn giản phát hành token mới ngoài quy định của hệ thống blockchain; ví dụ: Bitcoin hiện có 6,25 BTC cho mỗi nhà sản xuất khối mới; họ không thể biến con số đó thành dòng 1 triệu Bitcoin

 ^ Nếu họ không có khóa riêng cho một địa chỉ, họ không thể sử dụng mã thông báo từ địa chỉ đó

 ^ Các khối họ tạo ra không được lớn hơn những gì quy tắc đồng thuận quy định

 

Điều này không có nghĩa là hậu quả của cuộc tấn công 51% không nghiêm trọng. Đây vẫn là một cuộc tấn công rất tồi tệ. Việc sắp xếp lại các giao dịch có thể gây ra chi tiêu gấp đôi, đây là một vấn đề rất nghiêm trọng. Nhưng vẫn còn những giới hạn đối với những gì họ có thể làm.

 

Sau đó, hầu hết các blockchain bao gồm Bitcoin và Ethereum, Làm thế nào để họ đảm bảo điều này bây giờ ? Điều gì xảy ra nếu người khai thác khai thác một khối vi phạm các quy tắc đồng thuận? Hoặc điều gì sẽ xảy ra nếu đại đa số người đặt cược ký vào một khối vi phạm các quy tắc đồng thuận?

 

Mô hình bảo mật blockchain

 

Đôi khi mọi người cho rằng chuỗi dài nhất là chuỗi Bitcoin hoặc Ethereum hợp lệ. Tuyên bố này là không đầy đủ. Định nghĩa chính xác của đầu xích hiện tại là

 

 ^ Chuỗi hợp lệ có tổng độ khó cao nhất.

 

Do đó, khách hàng chấp nhận chuỗi khối nên được sử dụng để ghi lại dữ liệu hiện tại Trước khi áp dụng điều kiện của dữ liệu lịch sử, họ cần xác minh hai thuộc tính:

 

1 .Blockchain phải hợp lệ. Điều này có nghĩa là tất cả các chuyển đổi trạng thái đều hợp lệ. Ví dụ: trên Bitcoin, tất cả các giao dịch chỉ chi tiêu đầu ra giao dịch chưa được chi tiêu trước đó, coinbase chỉ nhận phí giao dịch và phần thưởng khối, v.v.


2. Đây chắc hẳn là chuỗi khó khăn nhất. Theo thuật ngữ thông thường, đây là chuỗi dài nhất. Tuy nhiên, "dài nhất" không được đo bằng số khối mà được đo bằng tổng công suất khai thác dành cho chuỗi này.

 

Điều này nghe có vẻ hơi trừu tượng. Chúng tôi có lý do để đặt câu hỏi, ai sẽ xác minh điều kiện đầu tiên ở trên, tức là ai sẽ xác minh rằng tất cả các khối trên blockchain phải hợp lệ? Bởi vì nếu những người khai thác vẫn xác minh rằng chuỗi là hợp lệ thì đây chỉ là sự trùng lặp công việc và chúng tôi không thực sự thu được gì từ nó.

 

Nhưng blockchain thì khác. Hãy phân tích lý do, bắt đầu với kiến trúc cơ sở dữ liệu máy khách/máy chủ phổ biến:


Lưu ý rằng với cơ sở dữ liệu thông thường, người dùng tin cậy máy chủ cơ sở dữ liệu. Họ không kiểm tra xem phản hồi có chính xác hay không; khách hàng đảm bảo rằng nó được định dạng hợp lệ theo giao thức và thế là xong. Máy khách (ở đây được biểu thị bằng một hình vuông trống) là "ngu ngốc": nó không thể xác thực bất cứ điều gì.

 

Nhưng trong kiến trúc blockchain, nó giống như thế này:


Đầu tiên tôi xin tóm tắt lại các thành phần có trong hình trên. Những người khai thác đầu tiên (hoặc người đặt cọc) tạo ra chuỗi khối. Mạng P2P (ngang hàng) đảm bảo rằng mọi người đều có thể sử dụng chuỗi hợp lệ, bất chấp sự hiện diện của một số nút không trung thực (bạn cần kết nối với ít nhất một nút P2P trung thực và được kết nối tốt để đảm bảo rằng bạn luôn đồng bộ với chuỗi hợp lệ). Cuối cùng, khách hàng gửi giao dịch đến mạng P2P và nhận các bản cập nhật chuỗi mới nhất (hoặc chuỗi hoàn chỉnh, nếu chúng đang đồng bộ hóa) từ các nút khác trong mạng. Khách hàng thực sự là một phần của mạng, họ cũng sẽ đóng góp bằng cách chuyển tiếp các khối và giao dịch, nhưng điều đó không quan trọng ở đây.

 

Phần quan trọng là người dùng đang chạy một nút đầy đủ, vì hiển thị ở trên được thể hiện bằng một thanh trong máy khách. Bất cứ khi nào máy khách nhận được một khối mới, giống như bất kỳ nút nào khác, dù là nút khai thác hay nút trong mạng P2P, các máy khách này sẽ xác minh rằng khối đó là một chuyển đổi trạng thái hợp lệ.

 

Nếu đây không phải là quá trình chuyển đổi trạng thái hợp lệ, khối sẽ bị bỏ qua . Đây là lý do tại sao việc các thợ mỏ trong mạng cố gắng khai thác các chuyển đổi trạng thái không hợp lệ là vô nghĩa. Mọi người sẽ bỏ qua nó.

 

Nhiều người dùng chạy các nút của riêng họ, tương tự như Ethereum hoặc Bitcoin, v.v. .Tương tác chuỗi khối. Nhiều cộng đồng đã biến mô hình này thành một phần văn hóa của họ và đặc biệt chú trọng đến việc mọi người chạy nút riêng của họ, nhờ đó họ trở thành một phần của quy trình xác thực. Thật vậy, điều rất quan trọng là phải có đa số người dùng (đặc biệt là những người có số tiền đặt cược lớn) chạy các nút đầy đủ; nếu đa số người dùng trở nên lười biếng, các thợ đào có thể đột nhiên bị cám dỗ để tạo ra các khối không hợp lệ, do đó mô hình này sẽ không còn hoạt động.

 

Ví dụ: phân chia quyền lực

  ;

Nó hơi giống sự phân chia quyền lực trong một nền dân chủ - có nhiều nhánh chính quyền khác nhau và chỉ vì bạn có đa số ở một trong số đó (như Cơ quan lập pháp) thì không' t có nghĩa là bạn có thể làm bất cứ điều gì bạn thích và bất chấp mọi luật lệ. Tương tự như vậy, thợ mỏ hoặc người đặt cọc có quyền đặt hàng các giao dịch trong blockchain; họ không có quyền dễ dàng áp đặt các quy tắc mới lên cộng đồng.

Nhưng có phải tất cả các chuỗi khối đều hoạt động như thế này không? Nhưng có phải tất cả các chuỗi khối đều hoạt động như thế này không?

 

Đây là một câu hỏi hay. Một điều quan trọng cần lưu ý là mô hình được mô tả ở trên sẽ chỉ hoạt động nếu dễ chạy trên các nút đầy đủ. Với tư cách là một người dùng bình thường, nếu việc chạy một nút đầy đủ yêu cầu mua một máy tính khác với giá 5000 USD và luôn yêu cầu kết nối mạng 1 GBit/s thì anh ta sẽ không chọn chạy một nút đầy đủ. Mặc dù có thể đáp ứng yêu cầu mạng này ở một số nơi, nhưng có thể sẽ bất tiện nếu tiếp tục chạy nút blockchain của riêng bạn vĩnh viễn. Trong trường hợp này, người dùng bình thường rất có thể sẽ không chọn tự chạy nút (trừ khi giao dịch của họ rất có giá trị), điều đó có nghĩa là họ sẽ tin tưởng người khác thực hiện thao tác này cho họ.

 

Giả sử có một chuỗi có chi phí vận hành cao đến mức chỉ có những Người đặt cược và trao đổi sẽ chạy các nút đầy đủ. Bạn vừa thay đổi mô hình tin cậy và sau đó phần lớn các nhà đầu tư và sàn giao dịch có thể cùng nhau thay đổi các quy tắc đồng thuận. Không có tranh chấp nào giữa những người dùng về điểm này - nếu người dùng hoàn toàn không có quyền kiểm soát chuỗi thì họ không thể bắt đầu phân nhánh. Tuy nhiên, họ có thể tuân theo các quy tắc cũ, trừ khi họ bắt đầu chạy một nút đầy đủ, họ không biết liệu yêu cầu của họ có được trả lời trên chuỗi mà họ muốn hay không (chuỗi đáp ứng yêu cầu đồng thuận của họ).

 

Đây là lý do tại sao bất cứ khi nào có một khu vực cải thiện Ethereum hoặc Bitcoin. Thảo luận Kích thước khối luôn gây ra nhiều tranh cãi - mỗi khi kích thước khối tăng lên, nó sẽ làm tăng gánh nặng cho các nút của chính mọi người. Đây không phải là vấn đề lớn đối với người khai thác – chi phí chạy nút nhỏ hơn nhiều so với hoạt động khai thác thực tế – vì vậy điều này sẽ chuyển sự cân bằng quyền lực từ người dùng sang người khai thác (hoặc người đặt cược).

 

Ứng dụng nhẹ hoạt động như thế nào?

 

Tuy nhiên, nếu người dùng chỉ muốn sử dụng tiền điện tử để mua cà phê, phải làm gì? Ta có cần chạy full node trên điện thoại di động không?

 

Tất nhiên, không ai muốn cần phải làm điều này và cả làm người dùng. Sau đó, đây là lúc ứng dụng khách nhẹ phát huy tác dụng. Khách hàng nhẹ là những khách hàng đơn giản hơn, không cần xác minh toàn bộ chuỗi - họ chỉ xác minh sự đồng thuận, đó là tổng độ khó hoặc số lượng đặt cược đã được bình chọn.

 

Nói cách khác, các khách hàng nhẹ bị cám dỗ đi theo một dòng có chứa Chuỗi của các khối không hợp lệ. Có nhiều biện pháp khắc phục vấn đề này, chẳng hạn như kiểm tra tính khả dụng của dữ liệu và chống gian lận. Theo như tôi biết, chưa có chuỗi nào triển khai điều này, nhưng ít nhất Ethereum sẽ làm như vậy trong tương lai.

 

Do đó, hãy sử dụng các ứng dụng khách đơn giản có tính năng kiểm tra tính khả dụng của dữ liệu và bằng chứng gian lận , người dùng cũng có thể sử dụng mô hình bảo mật blockchain mà không cần chạy nút đầy đủ. Đây là mục tiêu cuối cùng của chúng tôi, để bất kỳ điện thoại thông minh nào cũng có thể dễ dàng chạy ứng dụng khách nhẹ Ethereum.

 

Sidechain hoạt động như thế nào?

 

Sidechains hiện đang là một chủ đề nóng. Họ dường như cung cấp một giải pháp mở rộng quy mô đơn giản không phức tạp như các bản tổng hợp. Tóm lại:

 

 ^ Tạo chuỗi PoS mới

 ^ Tạo cầu nối hai chiều giữa chính nó và Ethereum

 ^ …

 ^ Vấn đề! Lưu ý rằng bảo mật sidechain hầu như phụ thuộc hoàn toàn vào cầu nối - một cấu trúc cho phép một chuỗi đọc trạng thái của chuỗi khác. Rốt cuộc, nếu kẻ tấn công có thể đánh lừa cây cầu trên chuỗi chính và khiến tất cả tài sản trên chuỗi cầu thuộc về anh ta, thì anh ta không thể làm gì ngay cả khi có các nút đầy đủ trên đối tượng chuỗi PoS. Vì vậy, mọi thứ đều phụ thuộc vào cây cầu.

 

Thật không may, cầu nối ở trạng thái giống như ứng dụng khách nhẹ. Họ không xác minh tính hợp lệ, chỉ có hầu hết các điều kiện đồng thuận. Tuy nhiên, có hai khía cạnh của sidechain kém hơn so với các ứng dụng khách nhẹ:

 

1. Bridge được sử dụng cho các giao dịch có giá trị rất cao, trong đó hầu hết người dùng sẽ chọn một nút đầy đủ nếu có thể


2 . Thật không may, không có cách nào để làm cứng cầu nối, trong khi chúng tôi có thể làm điều này đối với các máy khách hạng nhẹ - lý do là họ không thể xác thực việc kiểm tra tính khả dụng của dữ liệu

  ;

Điểm thứ hai rất tế nhị và có thể được giải thích trong một hoặc hai bài viết. Nhưng nói một cách đơn giản, bridge không thể thực hiện kiểm tra tính sẵn có của dữ liệu và nếu không kiểm tra tính sẵn có của dữ liệu thì bằng chứng gian lận gần như vô dụng. Nếu bạn sử dụng bằng chứng không có kiến thức, bạn có thể yêu cầu bridge đóng gói bằng chứng của tất cả các khối hợp lệ để cải thiện vấn đề này - thật không may, vấn đề này vẫn có thể bị tấn công bởi tính khả dụng của dữ liệu, nhưng đó cũng là một cải tiến.

 

Tóm lại, mô hình bảo mật của sidechains giống như mô hình của Ethereum và các Blockchain như Bitcoin khác nhau và yếu hơn nhiều. Chúng không bảo vệ chống lại sự chuyển đổi trạng thái không hợp lệ.

 

Những vấn đề này có cần được giải quyết bằng sharding không?

 

Thật ra, tất cả những điều này đều liên quan đến sharding Great mối quan hệ. Lý do tại sao chúng ta cần sharding để mở rộng là vì chỉ sharding mới có thể đạt được phương pháp mở rộng như vậy: nó không cần nâng ngưỡng chạy một nút đầy đủ, đồng thời, nó có thể duy trì sự đảm bảo an ninh hoàn toàn của blockchain như nhiều nhất có thể.

 

Nhưng điều gì sẽ xảy ra nếu ai đó thu hồi tất cả dữ liệu lịch sử? Sau đó, anh ta vẫn có thể đánh cắp tất cả Bitcoin/ETH/etc

 

Về mặt lý thuyết, trên chuỗi PoW không có điểm kiểm tra, Bitcoin có thể bị đánh cắp bằng cách hủy bỏ tất cả các giao dịch. Đúng, bạn không thể phát hành một nghìn tỷ Bitcoin, nhưng bạn vẫn có thể đánh cắp tất cả số Bitcoin đang tồn tại, điều đó cũng tốt thôi, phải không?

 

Tôi nghĩ điều này chỉ mang tính lý thuyết. Khả năng cộng đồng sẽ chấp nhận một fork sửa đổi dữ liệu của họ trong vài năm (hoặc thậm chí chỉ vài giờ) gần như bằng không. Trong tất cả các fork có thể xảy ra, sẽ có một cuộc tranh giành lớn và một kết luận sẽ nhanh chóng được đưa ra và fork bị từ chối, chỉ đồng ý rằng chuỗi hợp lệ là chuỗi hiện có.

 

Với PoS và quá trình hoàn thiện, cơ chế này sẽ được chính thức hóa - Khách hàng không bao giờ có thể cuộn lại các khối đã hoàn thiện.


Liên kết gốc


Chào mừng bạn tham gia cộng đồng chính thức của BlockBeats:

Nhóm Telegram đăng ký: https://t.me/theblockbeats

Nhóm Telegram thảo luận: https://t.me/BlockBeats_App

Tài khoản Twitter chính thức: https://twitter.com/BlockBeatsAsia

举报 Báo lỗi/Báo cáo
Chọn thư viện
Thêm mới thư viện
Hủy
Hoàn thành
Thêm mới thư viện
Chỉ mình tôi có thể nhìn thấy
Công khai
Lưu
Báo lỗi/Báo cáo
Gửi