1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Bitcoin whitepaper dao duy tung translate

14 7 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 14
Dung lượng 451,87 KB

Nội dung

BITCOIN : HỆ THỐNG TIỀN TỆ ĐIỆN TỬ NGANG HÀNG Satoshi Nakamoto satoshin@gmx.com www.bitcoin.org TÓM TẮT NỘI DUNG Hệ thống tiền tệ điện tử ngang hàng hệ thống cho phép khoản toán gửi trực tiếp từ thành viên tới thành viên khác không cần thơng qua định chế tài Các chữ ký số phần giải pháp, lợi ích cốt lõi bị cần phải có bên thứ tín nhiệm đứng để chống việc lặp chi (double-spending - khoản tốn tiêu nhiều lần) Chúng tơi đề xuất giải pháp để giải vấn đề lặp chi cách sử dụng mạng lưới ngang hàng Mạng lưới gán nhãn thời gian cho giao dịch cách băm chúng thành chuỗi liên tục “bằng chứng cơng việc – POW” dựa hàm băm (hash), hình thành nên ghi bị thay đổi không làm lại “bằng chứng công việc” Chuỗi dài không xem chứng kiện liên tục chứng thực, mà cịn thể sinh từ tập hợp node tạo nên sức mạnh CPU lớn Cho đến phần lớn sức mạnh CPU kiểm soát node trung thực, mà node không liên kết với để cơng mạng lưới, node sinh chuỗi dài chống lại kẻ công mạng lưới Bản thân mạng lưới tự yêu cầu phải có cấu trúc tối thiểu Các thơng điệp truyền rộng rãi mạng lưới với nỗ lực cao nhất, node rời tham gia trở lại mạng lưới theo ý muốn, chấp nhận chuỗi "bằng chứng công việc" dài làm chứng cho diễn thời gian chúng nằm mạng lưới Giới thiệu Thương mại điện tử gần phải dựa hồn tồn vào bên thứ ba tín nhiệm - định chế tài - q trình xử lý khoản toán điện tử Hệ thống làm việc tốt hầu hết giao dịch, tồn điểm yếu cố hữu mơ hình tín nhiệm Thực giao dịch khơng thể đảo ngược dựa mơ hình việc khơng thực khả thi, tranh chấp trung gian điều tránh khỏi sử dụng định chế tài Phí trung gian làm tăng phí giao dịch, làm cho việc thực giao dịch nhỏ thông thường trở nên khơng khả thi, phí cao khơng có khả thực tốn đảo ngược cho dịch vụ đảo ngược Do có khả bị đảo ngược nên nhu cầu phải có tín nhiệm bên tăng cao Các thương gia phải thận trọng với khách hàng họ, làm phiền nhiễu khách hàng để có nhiều thơng tin thực cần Gian lận xem điều tránh khỏi, người ta phải chấp nhận sống chung với gian lận tỷ lệ định Giao dịch tiền mặt tránh chi phí rủi ro trên, chưa có hệ thống tồn để đảm bảo việc tốn qua kênh thơng tin liên lạc mà khơng cần đến bên trung gian thứ ba Vì thứ cần hệ thống toán điện tử xây dựng dựa chứng mật mã thay dựa tín nhiệm, hệ thống cho phép hai bên giao dịch trực tiếp với mà không cần đến bên trung gian thứ ba Các giao dịch tính tốn để bị đảo ngược nhằm bảo vệ người bán khỏi gian lận, chế ký quỹ dễ dàng thực nhằm bảo vệ người mua Trong viết này, đề xuất giải pháp để giải vấn đề lặp chi cách sử dụng mạng máy chủ nhãn thời gian phân phối ngang hàng để tạo chứng theo trình tự thời gian giao dịch dựa sức mạnh tính tốn Người dịch: Đào Duy Tùng Facebook: https://www.facebook.com/daoduytung0902 máy tính Hệ thống đảm bảo an toàn, node trung thực tập hợp với kiểm soát phần lớn sức mạnh CPU so với tập nợp node kẻ công phá hoại Các giao dịch Chúng định nghĩa đồng tiền điện tử chuỗi chữ ký số Mỗi chủ sở hữu chuyển đồng tiền cho người cách ký số vào mã băm giao dịch trước khóa cơng khai người sở hữu thêm chúng vào phía cuối đồng tiền Người nhận tiền xác nhận chữ ký để xác nhận chuỗi quyền sở hữu Tất nhiên, vấn đề người nhận tiền xác nhận người sở hữu có gian lận cách lặp chi đồng tiền họ hay không Giải pháp thông thường dùng quan có quyền lực tập trung để đảm bảo tín nhiệm bên dùng nhà phát hành để kiểm tra giao dịch Sau giao dịch, đồng tiền phải trả lại nơi phát hành để tạo đồng tiền mới, có đồng tiền tạo trực tiếp từ nguồn phát hành tin không gian lận Vấn đề với giải pháp số phận toàn hệ thống tiền tệ phụ thuộc vào nhà phát hành, tức tất giao dịch phải qua đó, ngân hàng Chúng ta cần cách để người nhận tiền biết người sở hữu phía trước khơng dùng số tiền vào giao dịch trước Giải pháp giao dịch tính, nên chúng tơi khơng quan tâm đến nỗ lực để thực việc lặp chi sau Cách để xác nhận giao dịch khống phải nhận biết tất giao dịch hệ thống Trong mơ hình dựa nguồn phát hành, nhà phát hành nắm tất giao dịch định giao dịch Để làm điều mà khơng cần bên thứ ba tín nhiệm, giao dịch phải cơng bố công khai [1], cần hệ thống để người tham gia đồng thuận với bảng lịch sử thứ tự mà họ nhận tiền Người dịch: Đào Duy Tùng Facebook: https://www.facebook.com/daoduytung0902 Người nhận tiền cần có chứng thể rằng, thời điểm giao dịch, số đơng node đồng thuận giao dịch Máy chủ nhãn thời gian Giải pháp đưa bắt đầu với máy chủ nhãn thời gian Máy chủ nhãn thời gian làm việc cách lấy mã băm khối chứa phần tử để gán nhãn thời gian cho cơng bố rộng rãi mã băm đó, giống cơng bố thơng tin qua tờ báo đăng thông tin lên Usenet (Unix User Network) chẳng hạn Nhãn thời gian chứng tỏ liệu phải tồn xác thời điểm định để đưa vào mã băm Mỗi nhãn thời gian gồm nhãn thời gian liền trước mã băm nó, tạo thành chuỗi, nhãn thời gian thêm vào phía sau lại củng cố thêm cho nhãn thời gian trước Bằng chứng công việc - PoW Để vận hành máy chủ nhãn thời gian phân tán sở mạng ngang hàng, cần sử dụng hệ thống “bằng chứng công việc” tương tự Hashcash Adam Back [6], khơng đơn hệ thống báo chí hay Usenet Bằng chứng công việc liên quan đến việc qt tìm giá trị mà giá trị băm, ví dụ với SHA-256, mã băm bắt đầu với số lượng định chữ số Mức cơng việc trung bình cần thiết cấp số mũ số lượng chữ số xác nhận cách thi hành mã băm đơn lẻ Với mạng lưới nhãn thời gian, thi hành chứng công việc cách gia tăng dần số ngẫu nhiên khối tìm thấy giá trị làm cho mã băm khối đạt yêu cầu số lượng chữ số phía đầu Một sức mạnh CPU sử dụng để đáp ứng yêu cầu chứng cơng việc, khối khơng thể bị thay đổi mà không thực lại công việc Khi khối sau nối thêm vào, muốn thay đổi khối phải làm lại tất khối phía sau Người dịch: Đào Duy Tùng Facebook: https://www.facebook.com/daoduytung0902 Chú thích thêm: Tx = Transaction: Giao dịch Bằng chứng công việc giải vấn đề xác định đại diện việc đưa định theo chế đa số Nếu dựa vào chế mỗi-địa-chỉ-IP-một-phiếu, chứng cơng việc bị lật đổ có khả sử dụng nhiều địa IP lúc Về chất, chứng công việc dựa chế CPU – phiếu bầu Quyết định đa số đại diện chuỗi khối dài nhất, tức chuỗi đầu tư nhiều tài nguyên máy tính để giải chứng công việc Nếu phần đa số sức mạnh CPU kiểm soát node trung thực (hay node “chân chính”), chuỗi thật phát triển nhanh vượt qua chuỗi cạnh tranh khác Để thay đổi khối khứ, kẻ công phải làm lại chứng công việc khối tất khối sau bắt kịp vượt qua cơng việc node trung thực Sau chứng minh khả để kẻ công chậm bắt kịp giảm dần theo cấp số mũ khối thêm vào (Xem mục 11) Để bù cho việc tốc độ phần cứng ngày tăng lợi ích khác việc vận hành node, độ khó chứng cơng việc xác định số khối trung bình tiềm sinh Nếu khối sinh nhanh độ khó tăng Mạng Dưới bước vận hành mạng: Các giao dịch lan truyền rộng rãi đến tất node; Mỗi node tập hợp giao dịch vào khối; Mỗi node tìm chứng cơng việc cho khối nó; Khi node tìm chứng cơng việc, thơng báo đến tất node khác; Các node khác chấp nhận khối tất giao dịch khối hợp lệ chưa sử dụng; Các node thể chấp nhận với khối cách tạo khối chuỗi sử dụng mã băm khối việc tạo khối Các node xem chuỗi dài chuỗi làm việc để mở rộng chuỗi Nếu hai node thông báo hai phiên khác khối lúc, số node nhận hai trước Trong trường hợp đó, chúng làm việc với phiên mà chúng nhận được, lưu nhánh lại để phịng trường hợp nhánh trở nên dài Trạng thái bị phá vỡ chứng công việc tìm thấy nhánh trở nên dài hơn; node làm việc nhánh lại chuyển sang nhánh dài Người dịch: Đào Duy Tùng Facebook: https://www.facebook.com/daoduytung0902 Các giao dịch không thiết phải truyền đến tất node Miễn giao dịch đến nhiều node, chúng thêm vào khối Các khối truyền khơng đến vài node Nếu node khơng nhận khối, nhận khối nhận thiếu khối, yêu cầu lại khối bị thiếu Cơ chế khích lệ phần thưởng Theo quy ước, giao dịch khối giao dịch đặc biệt, tạo lượng tiền thuộc quyền sở hữu người tạo khối Điều tạo phần thưởng khích lệ cho node tham gia vận hành mạng lưới, cách để phát hành thêm lượng tiền định đưa vào lưu thông, khơng có trung tâm chịu tránh nhiệm phát hành Việc phát hành thêm lượng tiền định tương tự việc thợ đào vàng sử dụng nguồn lực để khai thác vào đưa thêm vàng vào lưu thông Trong trường hợp này, nguồn lực thời gian vận hành CPU điện bị tiêu tốn Phần thưởng lấy từ phí giao dịch Nếu giá trị đầu giao dịch nhỏ giá trị đầu vào phần bị giảm phí giao dịch, phí thêm vào để tăng giá trị phần thưởng cho khối chứa giao dịch Khi mà lượng tiền định phát hành (ND: Bitcoin 21 triệu đồng BTC vào năm 2140) tồn phần thưởng cho thợ đào lấy từ phí giao dịch, đồng tiền hồn tồn khơng bị lạm phát Phần thưởng khuyến khích node trì trực (khơng làm giả giao dịch, khối) Nếu kẻ cơng tham lam tập hợp lượng sức mạnh CPU lớn tất node trung thực cộng lại, phải chọn việc sử dụng sức mạnh để lừa đảo người cách đánh cắp lại khoản tốn hay sử dụng sức mạnh để tạo đồng tiền (đào thêm) Hắn ta nên thấy chơi luật có lợi phá hoại hệ thống giàu có mình, luật tạo lợi mang lại cho nhiều đồng coin tất người khác Cải thiện không gian lưu trữ Một giao dịch cuối đồng tiền “vùi lấp” số lượng khối vừa đủ giao dịch diễn trước loại bỏ để tiết kiệm khơng gian lưu trữ Để thực thi việc mà không phá vỡ mã băm khối, giao dịch băm theo mơ hình Merkle [7][2][5], theo đó, có phần gốc nằm mã băm khối Các khối cũ sau nén lại cách cắt nhánh Các mã băm nằm phía block khơng cần phải lưu trữ (ND: Theo hình ảnh bên dưới, để cắt nhánh mã băm mã băm 1, người ta dùng hàm băm để băm hai mã này, tạo mã băm 01, tương tự với mã băm 23, sau đó, người ta tiếp tục dùng hàm băm để băm mã băm 01 mã băm 23 để tạo mã băm 0123 ) Người dịch: Đào Duy Tùng Facebook: https://www.facebook.com/daoduytung0902 Mã băm khối không chứa giao dịch có kích cỡ khoảng 80 byte Với tốc độ sinh khối dự kiến 10 phút năm tiêu tốn 80 bytes * * 24 * 365 = 4,2 MB tài ngun nhớ Hệ thống máy tính thơng thường năm 2008 có nhớ RAM 2GB, theo định luật Moore, tốc độ phát triển 1,2GB/năm, khơng gian lưu trữ khơng phải vấn đề cho dù tất mã băm khối phải lưu nhớ Đơn giản hóa q trình xác nhận tốn Ta xác thực khoản tốn mà khơng cần chạy node mạng đầy đủ Người dùng cần giữ mã băm khối ứng với chuỗi chứng công việc dài nhất, lấy chuỗi cách truy vấn node mạng bị thuyết phục chắn có chuỗi dài nhất, có nhánh Merkle liên kết giao dịch với khối mà giao dịch gắn nhãn thời gian vào Anh ta tự kiểm tra giao dịch, cách liên kết giao dịch tới vị trí chuỗi, thấy node mạng chấp nhận nó, khối thêm vào sau xác nhận mạnh mạng lưới chấp nhận giao dịch Người dịch: Đào Duy Tùng Facebook: https://www.facebook.com/daoduytung0902 Như vậy, việc xác thực đáng tin cậy miễn node trung thực kiểm soát mạng lưới, việc xác thực bị cơng mạng lưới nằm chế ngự kẻ công Trong node mạng tự xác nhận giao dịch, phương pháp rút gọn lại bị đánh lừa giao dịch giả mạo kẻ cơng tạo tiếp tục kiểm sốt mạng lưới Chiến lược để chống lại việc làm chấp nhận cảnh báo từ node mạng họ phát khối khơng hợp lệ, khuyến khích phần mềm người dùng tải toàn khối giao dịch bị cảnh báo để xác minh mâu thuẫn Các doanh nghiệp thường xuyên nhận toán hẳn muốn tự chạy node riêng để tăng tính bảo mật độc lập thúc đẩy trình xác thực nhanh Hợp tách giá trị Mặc dù hồn tồn sử dụng đồng coin riêng lẻ, khó để tạo giao dịch riêng lẻ cho cent gửi Để cho phép giá trị giao dịch tách hợp lại, giao dịch chứa nhiều đầu vào đầu Thông thường, có đầu vào từ giao dịch lớn trước có nhiều đầu vào gộp từ lượng tiền nhỏ lại, đa số trường hợp có hai đầu ra: đầu khoản toán cho người nhận, đầu phần dư, có, trả lại cho người gửi Người dịch: Đào Duy Tùng Facebook: https://www.facebook.com/daoduytung0902 Lưu ý rằng, giao dịch dựa vào số giao dịch khác, giao dịch lại dựa nhiều giao dịch khác nữa, việc chia tách gộp giá trị vấn đề Việc trích xuất lịch sử hồn chỉnh giao dịch điều khơng cần thiết 10 Sự riêng tư Mơ hình ngân hàng truyền thống đảm bảo mức độ riêng tư cách hạn chế tiếp cận thơng tin bên liên quan bên tín nhiệm thứ ba Sự cần thiết phải công bố tất giao dịch cách công khai khiến phương pháp trở nên vô dụng, riêng tư trì cách ngắt dịng chảy thơng tin nơi khác: giữ khóa cơng khai trạng thái ẩn danh Mọi người thấy gửi lượng tiền định cho người đó, họ khơng thực biết giao dịch liên quan đến chủ sở hữu cụ thể đời Điều tương tự mức độ công bố thông tin việc giao dịch chứng khốn, thời điểm kích thước giao dịch công bố, bên tham gia vào giao dịch không công bố Người dịch: Đào Duy Tùng Facebook: https://www.facebook.com/daoduytung0902 Giống tường lửa bổ sung, cặp khóa sử dụng cho giao dịch để đảm bảo chìa khóa khơng làm lộ danh tính chủ sở hữu Một số “dấu vết liên quan” tránh khỏi giao dịch có nhiều đầu vào, giao dịch này thiết tiết lộ rằng đầu vào chúng sở hữu người Rủi ro tình người sở hữu khóa bị tiết lộ, liên kết để lộ giao dịch khác người 11 Tính tốn Chúng tơi xem xét kịch mà kẻ công nỗ lực tạo chuỗi thay nhanh chuỗi thật Ngay điều thực thi xong, hệ thống không bị mở để bị thay đổi tùy ý, bí mật tạo giá trị khống lấy tiền người khác Các node không chấp nhận giao dịch không hợp lệ khoản tốn, node trung thực khơng chấp nhận khối chứa giao dịch Một kẻ cơng cố gắng để thay đổi giao dịch nhằm lấy lại số tiền tiêu xài Cuộc đua chuỗi thật chuỗi gian lận kẻ cơng mơ tả toán bước ngẫu nhiên hai chiều (Binomial Random Walk) Sự kiện thành công chuỗi thật mở rộng thêm khối, khoảng dẫn trước chuỗi thật tăng thêm điểm nữa; kiện thất bại chuỗi gian lận kẻ cơng mở rộng thêm khối, khoảng cách hai chuỗi bị giảm điểm Xác suất kẻ cơng bắt kịp từ khoảng cách cho trước tương tự toán phá sản bạc Giả sử có bạc với mức tín dụng không giới hạn bắt đầu chơi với mức thua lỗ chơi vơ vàn ván bạc để cố gắng hịa vốn Chúng ta tính xác suất mà bạc hòa vốn, giống xác suất mà chuỗi gian lận kẻ cơng bắt kịp chuỗi thật, [8]: p = xác suất node trung thực tìm thấy khối q = xác suất node cơng tìm thấy khối qz = xác suất kẻ cơng bắt kịp từ khoảng cách z khối chậm so với chuỗi thật Với giả định p > q, xác suất bắt kịp ngày giảm theo cấp số mũ số khối mà kẻ công cần phải băt kịp ngày tăng Với bất lợi thế, từ đầu kẻ cơng khơng may mắn lao phía trước thật nhanh hội tiêu tan dần ngày bị tụt sâu lại phía sau Người dịch: Đào Duy Tùng Facebook: https://www.facebook.com/daoduytung0902 Bây xem xét xem người nhận giao dịch phải đợi trước chắn người gửi thay đổi giao dịch Giả sử người gửi kẻ công, kẻ muốn người nhận tin toán cho anh lúc (trong khoảng x giây chẳng hạn), sau chuyển sang tốn lại cho (kẻ cơng thực việc khoảng thời gian x giây đó) Người nhận cảnh báo điều xảy ra, người gửi (kẻ cơng) hi vọng thơng tin cảnh báo đến muộn Người nhận sinh cặp khóa trao khóa cơng khai tới người gửi trước thực việc ký số Điều giúp ngăn chặn việc người gửi chuẩn bị trước chuỗi khối phía sau cách làm việc liên tục chuỗi may mắn đủ xa, sau thực giao dịch thời điểm Một giao dịch gửi đi, kẻ lừa đảo bắt đầu bí mật làm việc chuỗi song song tương tự chứa thay giao dịch ta Người nhận đợi giao dịch thêm vào khối z khối khác liên kết phía sau Anh ta khơng biết kẻ công tiến lên bao nhiêu, giả sử khối thật cần khoảng thời gian trung bình để sinh ra, tiến độ tiềm kẻ công phải hàm phân phối Poisson với giá trị mong đợi phải là: Để có xác suất mà kẻ cơng bắt kịp lúc bây giờ, nhân mật độ Poisson bước tiến mà thực với xác suất bắt kịp từ điểm đó: Biến đổi biểu thức, ta có Chuyển sang ngơn ngữ C #include double AttackerSuccessProbability(double q, int z) Người dịch: Đào Duy Tùng Facebook: https://www.facebook.com/daoduytung0902 { double p = 1.0 - q; double lambda = z * (q / p); double sum = 1.0; int i, k; for (k = 0; k

Ngày đăng: 16/04/2022, 09:57

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN