SOLANA: Kiến trúc mới cho một blockchain hiệu suất caoAdmin02/05/2019Dự án blockchain0 Comments 0 Tổng quanSolana đề xuất một kiến trúc blockchain mới dựa trên bằng chứng Lịch sử (PoH) – một bằng chứng để xác minh trật tự và thời gian trôi qua giữa các sự kiện. PoH được sử dụng để mã hóa thời gian trôi qua (không cần tin tưởng) vào sổ kế toán – chỉ nối thêm cấu trúc dữ liệu. Khi được sử dụng cùng với thuật toán đồng thuận như Proof of Work (PoW) hoặc Proof of Stake (PoS), PoH có thể giảm chi phí thông tin trong một máy trạng thái nhân bản lỗi Byzantine Fault Tolerant, kết quả là thời gian thực hiện dưới mức giây. Solana cũng đề xuất hai thuật toán tận dụng thời gian lưu giữ tài sản của sổ kế toán PoH – một thuật toán PoS có thể phục hồi từ các phân vùng có kích thước bất kỳ và bằng chứng sao chép trực tuyến hiệu quả (PoRep). Sự kết hợp giữa PoRep và PoH mang lại khả năng phòng thủ chống lại sự giả mạo của sổ kế toán liên quan đến thời gian (đặt hàng) và lưu trữ. Giao thức được phân tích trên mạng 1 gbps và cáo bạch này cho thấy rằng thông lượng lên đến 710k giao dịch mỗi giây là có thể với phần cứng hiện nay.1. Giới thiệu Blockchain là một sự thực hiện của một máy trạng thái nhân bản dung sai lỗi (fault tolerant replicated state machine). Hiện tại blockchains công khai không dựa vào thời gian, hoặc làm một giả định yếu về khả năng của người tham gia giữ thời gian. Mỗi nút trong mạng thường dựa trên giờ địa phương của riêng họ mà không biết bất kỳ những người tham gia có đồng hồ khác trong mạng. Việc thiếu một nguồn đáng tin cậy của thời gian có nghĩa là khi dấu mốc thời gian được sử dụng để chấp nhận hoặc từ chối thông tin, không đảm bảo rằng mọi người tham gia khác trong mạng sẽ thực hiện sự lựa chọn chính xác tương tự. Các PoH trình bày ở đây được thiết kế để tạo ra một sổ cái với thời gian có thể xác minh được, tức là khoảng thời gian giữa các sự kiện và tin nhắn đặt hàng. Khi đó (dự đoán) mọi nút trong mạng có thể dựa vào thông tin được ghi lại trong sổ kế toán mà không cần tin tưởng.2. Outline WP được tổ chức như sau. Thiết kế hệ thống tổng thể là được mô tả trong Phần 3. Mô tả chi tiết về Proof of History được mô tả trong Phần 4. Chi tiết về sự đồng thuận PoS được mô tả trong Phần 5. Trong mô tả chiều sâu của PoRep ở trong Phần 6. Kiến trúc hệ thống và giới hạn hiệu năng được phân tích trong Phần 7. Bộ máy đồng thông minh thân thiện GPU hiệu suất cao được mô tả trong Phần 7.5.3 Thiết kế mạng Như trong Hình 1, tại bất kỳ thời điểm nào, một nút hệ thống được chỉ định là Leader để tạo trình tự Proof of History, cung cấp cho mạng toàn cầu đọc được sự nhất quán và thông tin về thời gian có thể kiểm chứng được. Leader sắp xếp thông tin và đặt hàng của người dùng sao cho chúng có thể được xử lý hiệu quả bằng các nút khác trong hệ thống, tối đa hóa thông lượng. Nó thực thi các giao dịch về trạng thái hiện tại được lưu trữ trong RAM và xuất bản các giao dịch và một chữ ký của trạng thái cuối cùng cho các nút sao chép được gọi là Verifiers. Verifiers thực thi cùng các giao dịch trên các bản sao trạng thái của chúng và xuất bản các chữ ký được tính toán của chúng về trạng thái như các xác nhận. Xác nhận được công bố đóng vai trò như là bình chọn cho đồng thuận. Trong trạng thái không được phân đoạn, tại bất kỳ thời điểm nào, có một Leader trong mạng. Mỗi nút Verifier có cùng khả năng phần cứng như Leader và có thể được bầu làm Leader, điều này được thực hiện thông qua các cuộc bầu cử dựa trên PoS. Các cuộc bầu cử cho thuật toán PoS được trình bày chi tiết trong Phần 5.6. Theo định lý CAP, tính nhất quán (và ổn định) hầu như luôn được chọn trong trạng thái sẵn sàng trong một sự kiện của phân vùng. Trong trường hợp của sự phân vùng lớn, WP này đề xuất một cơ chế để phục hồi sự kiểm soát của mạng từ một phân vùng với bất kỳ kích thước nào. Điều này được trình bày chi tiết trong Phần 5.12.4 Bằng chứng Lịch sử (PoH) Bằng chứng về lịch sử là một chuỗi các tính toán có thể cung cấp một cách để xác minh (bằng mã hóa) thông tin thời gian giữa hai sự kiện. Nó sử dụng một hàm bảo an mã hóa được viết để không thể dự đoán đầu ra từ đầu vào và phải được thực thi hoàn toàn để tạo đầu ra. Hàm được chạy theo trình tự trên một lõi đơn, đầu ra trước đó của nó là đầu vào hiện tại, định kỳ ghi lại đầu ra hiện tại và bao nhiêu lần nó được gọi. Đầu ra sau đó có thể được tính toán lại và xác minh bởi máy tính bên ngoài theo cách song song bằng cách kiểm tra từng phân đoạn chuỗi trên một lõi riêng biệt.Dữ liệu có thể được đánh dấu thời gian vào chuỗi này bằng cách nối thêm dữ liệu (hoặc hash của một số dữ liệu) vào trạng thái của hàm. Việc ghi lại trạng thái, chỉ mục và dữ liệu khi nó được thêm vào các chuỗi cung cấp một nhãn thời gian có thể đảm bảo rằng dữ liệu được tạo ra trước lần hash tiếp theo là được tạo theo trình tự. Thiết kế này cũng hỗ trợ mở rộng theo chiều ngang vì nhiều máy phát (multiple generators) có thể đồng bộ hóa với nhau bằng cách trộn trạng thái vào mỗi trình tự khác. Mở rộng theo chiều ngang được thảo luận chi tiết trong Phần 4.4.Bạn đọc vui lòng xem các phần dưới đây trong WP.Phần 4.1: Mô tảPhần 4.2: Nhãn thời gian cho Sự kiệnPhần 4.3: Xác thựcPhần 4.4: Mở rộng theo chiều ngangPhần 4.5: Tính ổn định nhất quán4.6 Chi phí đầu tư 4000 hash mỗi giây sẽ tạo thêm 160 kilobyte dữ liệu, và sẽ yêu cầu quyền truy cập vào GPU với 4000 core và khoảng 0.25-0.75 mili giây để xác minh.4.7 Các cuộc tấn côngMục này trình bày khả năng bảo vệ và chống các tấn công Reversal (đảo ngược giao dịch), Speed (vấn đề tốc độ) và Long Range Attacks (tấn công tầm xa lâu dài), của PoRep & PoH trong mạng lưới của Solana.5 Sự đồng thuận Bằng chứng cổ phần PoS được thiết kế để xác nhận nhanh chóng trình tự hiện tại được tạo bởi trình tạo PoH, để bỏ phiếu và chọn trình tạo PoH tiếp theo và để trừng phạt bất kỳ trình xác nhận sai nào. Thuật toán này phụ thuộc vào thông điệp mà sau cùng đến với tất cả các nút tham gia trong một thời gian chờ nhất định.Đọc thêm về Bonding, Voting, Unbonding, Elections, Election Triggers (Forked Proof of History generator, Runtime Exceptions, Network Timeouts), Slashing, Secondary Elections, Availability, Recovery, Finality, Attacks (Tragedy of Commons, Collusion with the PoH generator, Censorship, Long Range Attacks, ASIC Attacks) trong WP.6 Bằng chứng sao chép trực tuyến (Streaming Proof of Replication)Filecoin đã đề xuất một phiên bản Bằng chứng lặp. Mục tiêu của việc này phiên bản là để có xác minh nhanh và trực tuyến của Proof of Replication (PoRep), được bật bằng cách theo dõi thời gian trong PoH đã tạo ra trình tự. Sao chép không được sử dụng như là một thuật toán đồng thuận, nhưng là một công cụ hữu ích để tính toán chi phí lưu trữ lịch sử blockchain hoặc trạng thái tại nơi mà tính khả dụng cao.Đọc thêm về Algorithm, Verification, Key Rotation, Hash Selection, Proof Validation, Attacks (Spam, Partial Erasure, Collusion with PoH generator, Denial of Service, Tragedy of Commons) trong WP.7 System ArchitectureĐọc thêm về Components (Leader, Proof of History generator, Verifier, State Replication, Validators, High Performance Smart Contracts) trong WP.7.2 Giới hạn mạng Leader được mong đợi có thể nhận các gói người dùng gửi đến, sắp xếp chúng theo cách hiệu quả nhất có thể, và thành một chuỗi bằng chứng về lịch sử được xuất bản tới Verifiers (người xác minh) bên dưới. Hiệu quả dựa trên các mẫu truy cập bộ nhớ của các giao dịch, vì vậy các giao dịch được đặt hàng để giảm thiểu lỗi và tối đa hóa việc tìm nạp trước.Trên kết nối mạng 1gbps, số lượng giao dịch tối đa có thể là 1 gigabit / giây / 176 byte = 710k tps max. Có thể hụt mất 1-4% do khung Ethernet. Công suất dự phòng so với mục tiêu cho mạng có thể được sử dụng để tăng tính khả dụng bằng cách mã hóa đầu ra với mã Reed-Solomon và phân chia nó đến Verifiers bên dưới đang có sẵn.7.3 Giới hạn tính toán Mỗi giao dịch yêu cầu sự xác minh sơ bộ. Thao tác này không sử dụng bất kỳ bộ nhớ nào bên ngoài thông điệp giao dịch và có thể chạy song song một cách độc lập. Vì vậy, thông lượng dự kiến sẽ bị giới hạn bởi số lượng lõi có sẵn trên hệ thống. Các máy chủ xác minh ECDSA dựa trên GPU đã có kết quả thử nghiệm 900k thao tác mỗi giây.7.4 Giới hạn bộ nhớ Thực hiện đơn giản của trạng thái với 50% hashtable, 32 byte cho mỗi tài khoản, về mặt lý thuyết sẽ đóng 10 tỷ tài khoản vào 640GB. Truy cập ngẫu nhiên trạng thái ổn định vào bảng này được đo tại 1.1 ∗ 107 ghi hoặc đọc mỗi giây. Dựa trên 2 lần đọc và hai lần ghi trên mỗi giao dịch, bộ nhớ thông lượng có thể xử lý 2.75 triệu giao dịch mỗi giây. Điều này đã được đo trên Amazon Web Services 1TB x1.16x large instance. OVERVIEWCăn bản Solona kiến trúc blockchain của nó dựa nhân ba cơ chế cốt lõi: Bằng chứng lịch sử (PoH), Bằng chứng lặp (PoRep) và Bằng chứng cổ phần (PoS). Trong đó PoH và PoRep là 2 cơ chế độc đáo mà chưa có dự án nào thực hiện. Riêng về PoH, đây bản chất là việc dán nhãn thời gian (timestamp) mà toán học tính toán và lý thuyết máy tính đã nghiên cứu từ lâu. Hiểu đơn giản, thời gian là thứ trôi đi mà không ai có thể làm nó nhanh hơn hay chậm đi, hoặc quay lại quá khứ. Đo đó, nhãn thời gian không thể bị thay đổi. Nhưng cái khó là làm sao để lấy được mốc thời gian thống nhất cho một mạng lưới trải khắp toàn cầu (với nhiều múi giờ khác nhau), trong khi còn phải tính đến các sai số thời gian của mỗi máy tính. Vấn đề này, Googlemaps và các hệ định vị vệ tinh khác đã giải quyết rất tốt từ nhiều năm nay bằng đồng hồ ánh sáng và đồng hồ nguyên tử, từ đó ứng dụng vào việc chỉ đường trên khắp thế giới dù cho máy chủ của Google chỉ đặt ở vài nơi. Như vậy, đã có một tiền đề lý thuyết và ứng dụng thành công cho việc gắn nhãn thời gian cho giao dịch của mạng lưới Solana. PoRep là vấn đề không quá khó (Filecoin cũng làm) so với PoH và PoS. Cuối cùng PoS thì đã có nhiều dự án làm theo nhiều cách khác nhau. Solana đã tham khảo Casper FFG (của Ethereum), Tendermint, Hedera, BitShares DPoS để phát triển cơ chế PoS phù hợp với PoH và PoRep.ROADMAPTháng 2/2018 chạy single node testnetTháng 6/2018 chạy multinode testnetTháng 9/2018 Public beta & SDKQ4/2018 live mainnetQ1/2019 token distributionMỘT VÀI ỨNG DỤNG: Decentralized exchanges, Payments, Distributed Web Services and Storage, Distributed Ad ExchangesTRỤ SỞ: San Fansico USAICO info: chưa công bố gì kể cả soft/hard-caps, sale.TEAMAnatoly Yakovenko, CEO, là người tạo ra Solana. Ông đã lãnh đạo phát triển hệ điều hành tại Qualcomm, các hệ thống phân phối tại Mesosphere và hệ nén tại Dropbox. Ông nắm giữ 2 bằng sáng chế cho các giao thức hệ điều hành hiệu suất cao, là một nhà phát triển nòng cốt cho BREW, hỗ trợ mọi CDMA flip phone (100m + thiết bị), và led việc phát triển công nghệ đã tạo ra Project Tango (VR / AR) trên điện thoại Qualcomm.Greg Fitzgerald, CTO, là kiến trúc sư chính của Solana. Trước đây là trưởng phòng khoa học của Qualcomm, Greg đã khám phá toàn cảnh các hệ thống nhúng. Ông đã tạo ra một cầu nối RPC hai chiều giữa C và Lua cho hệ điều hành BREW, đã giúp khởi chạy chương trình phụ trợ ARM cho chuỗi công cụ biên dịch LLVM và xuất bản nhiều dự án mã nguồn mở khác nhau bao gồm trình tối ưu hóa LLVM trực tuyến trong Haskell, công cụ phân tích license bằng Python, và một khung công tác web phản ứng trong TypeScript. If you have time to burn, ask him “Why Rust?” We dare you.Raj Gokal COO, phụ trách tổ chức hoạt động, sản phẩm và tài chính. Ông đã dành 10 năm trong quản lý sản phẩm và tài chính. Ông là một nhà đầu tư mạo hiểm tại General Catalyst, bắt đầu công ty thiết bị y tế tiêu dùng Sano thu hút hơn 20 triệu đô la đầu tư, và lãnh đạo quản lý sản phẩm tại Omada Health làm nó tăng gấp 10 lần.Eric Williams, PhD, Data Science, token economics. Ông nghiên cứu vật lý hạt tại Berkeley và nhận bằng tiến sĩ từ Columbia trong khi truy tìm hạt Higgs (hạt của Chúa) tại CERN. Ông đã hoàn thành postdoc (nghiên cứu sau tiến sĩ) tại Medical Physics ở Memorial Sloan Kettering Cancer Center và sau đó phụ trách data science ở Omada Health.Stephen Akridge, kĩ sư, dành toàn bộ thời gian của mình trong codebase. Anh có 10 năm chuyên gia tối ưu hóa GPU quan trọng tại Qualcomm và Intel. Ông dẫn đầu GPU backend liên tục đánh bại Nvidia.Alan Yu, quan hệ đối tác, Biz Dev, ông phụ trách quan hệ đối tác và cộng đồng. Anh đã dành 10 năm làm việc tại Google trong lĩnh vực bán hàng và tiếp thị, giành được nhiều giải thưởng trong nhiệm kỳ của mình. Ông đã hoạt động trong cộng đồng crypto nhiều năm, tham gia và xác định tương lai của các dự án.Published on: https://vnctalk.com/forum/threads/solana-kien-truc-moi-cho-mot-blockchain-hieu-suat-cao.2444/#post-4573 English source: https://solana.com/solana-whitepaper.pdf