Mô-đun 3 / 8

Lịch sử kỹ thuật của Bitcoin

3.0 Giới thiệu

Tóm tắt Sách Trắng Bitcoin

Một phiên bản tiền điện tử hoàn toàn ngang hàng sẽ cho phép các khoản thanh toán trực tuyến được gửi trực tiếp từ người này sang người khác mà không cần thông qua một tổ chức tài chính.Chữ ký số cung cấp một phần giải pháp, nhưng lợi ích chính sẽ bị mất nếu vẫn cần một bên thứ ba đáng tin cậy để ngăn chặn việc chi tiêu hai lần. Chúng tôi đề xuất một giải pháp cho vấn đề chi tiêu hai lần bằng cách sử dụng một mạng ngang hàng. Mạng sẽ đánh dấu thời gian cho các giao dịch bằng cách băm chúng vào một chuỗi liên tục của bằng chứng công việc dựa trên hàm băm, tạo thành một bản ghi không thể thay đổi nếu không thực hiện lại bằng chứng công việc. Chuỗi dài nhất không chỉ là bằng chứng về trình tự các sự kiện đã được xác nhận, mà còn là bằng chứng rằng nó xuất phát từ nhóm sức mạnh xử lý lớn nhất. Miễn là phần lớn sức mạnh xử lý được kiểm soát bởi các nút không hợp tác để tấn công mạng, họ sẽ tạo ra chuỗi dài nhất và vượt qua những kẻ tấn công.Bản thân mạng lưới yêu cầu cấu trúc tối thiểu. Các thông điệp được phát sóng dựa trên nỗ lực tốt nhất, và các nút có thể rời khỏi hoặc tham gia lại mạng bất cứ lúc nào, chấp nhận chuỗi bằng chứng công việc dài nhất như là bằng chứng về những gì đã xảy ra trong thời gian họ vắng mặt.

Bitcoin không xuất hiện một cách ngẫu nhiên mà được xây dựng dựa trên thành quả của nhiều người trong các thập kỷ trước đó. Phần này sẽ khám phá nền tảng của internet mà Bitcoin dựa vào, cũng như các nghiên cứu và phát triển được ghi nhận trong sách trắng.

Vào những năm 70, một nhóm cá nhân đã nhận thấy chính phủ Hoa Kỳ, đặc biệt là, đang cố gắng hạn chế quyền truy cập vào mật mã học, và họ đã nỗ lực để đảm bảo công nghệ này sẽ được phổ biến cho tất cả mọi người nhằm bảo vệ quyền riêng tư trực tuyến. Một số người tiên phong này cũng tập trung vào tiềm năng của một hệ thống 'tiền tệ lành mạnh' kỹ thuật số có thể được sử dụng để lưu trữ và trao đổi giá trị trên internet mới nổi. Friedrich Hayek – một nhà đóng góp hàng đầu cho kinh tế học Áo – đã hình dung ra một loại tiền tệ lý tưởng dựa trên cạnh tranh thị trường tự do từ trước thời internet, nhưng ông cho rằng điều đó là không khả thi về mặt kỹ thuật và chính trị. Bên cạnh quyền riêng tư kỹ thuật số, nhóm này, sau này phát triển thành Cypherpunks, đã cố gắng hiện thực hóa tầm nhìn của Hayek về tiền kỹ thuật số, nhưng những nỗ lực này đều thất bại cho đến khi Satoshi công bố ý tưởng của mình trên danh sách thư điện tử.

  • Giao thức TCP/IP (1976)
  • Giao thức cho Hệ mật mã Khóa công khai - Ralph Merkle (1980)
  • Digicash - David Chaum (1989)
  • Đánh dấu thời gian kỹ thuật số (những năm 90)
  • Hashcash - Adam Back (1997)
  • BitTorrent - Bram Cohen (2001)
  • POW có thể tái sử dụng - Hal Finney (2004)
  • Sách Trắng Bitcoin - Satoshi Nakamoto (2008)

Một ảnh hưởng quan trọng đến sự phát triển của Bitcoin là sự xuất hiện của phong trào Cypherpunk vào những năm 1990. Họ đã phát triển nhiều công nghệ mật mã, bao gồm mật mã khóa công khai để cho phép người dùng giao tiếp và chia sẻ thông tin một cách an toàn, riêng tư. Nhiều phát triển được mô tả ở đây và những người tham gia đều là thành viên của nhóm này.

Nhu cầu về tiền kỹ thuật số cũng đã được nhận ra và nhiều nỗ lực đã được thực hiện để tạo ra nó, nhưng đều có những hạn chế khiến chúng không thành công. Sự thiên tài của Satoshi Nakamoto là đã kết hợp những khả năng này lại, cùng với một số đổi mới của riêng mình, xây dựng trên đó để tạo ra giao thức Bitcoin như ngày nay. Trong các phần tiếp theo, chúng ta sẽ khám phá một số phát triển này và giải thích cách chúng đã giúp định hình thiết kế của Bitcoin. Chúng ta cũng sẽ thảo luận về những mảnh ghép còn thiếu mà Satoshi đã giải quyết được.

3.1 Sự phát triển của TCP/IP

Hầu hết chúng ta đều quen thuộc với các giao thức TCP/IP đang được sử dụng ngày nay như là nền tảng cho internet. Nguồn gốc của chúng bắt đầu từ cuối những năm 70 khi các nhà khoa học đang nghiên cứu các thiết kế thay thế cho Arpanet – một mạng lưới còn sớm hơn nữa được Bộ Quốc phòng Hoa Kỳ phát triển nhằm cho phép chia sẻ tài nguyên giữa các máy tính ở xa. TCP/IP trở thành tiêu chuẩn giao thức cho Arpanet vào năm 1983, điều này đã dẫn đến việc nó trở thành mô hình mạng chiếm ưu thế vào cuối những năm 1990 và là nền tảng cho internet mà Bitcoin đang hoạt động ngày nay.

Mô hình OSI TCP/IP
Ứng dụng Ứng dụng
Trình bày Ứng dụng
Phiên Ứng dụng
Vận chuyển Vận chuyển
Mạng Mạng
Liên kết dữ liệu Liên kết dữ liệu
Vật lý Vật lý

Cùng thời điểm mô hình TCP/IP được phát triển, một khuôn khổ tương tự nhưng toàn diện hơn cũng đang được Tổ chức Tiêu chuẩn hóa Quốc tế (ISO) và ngành viễn thông (CCITT) phát triển. Quá trình phát triển các giao thức mới hoặc đề xuất thay đổi diễn ra chậm và cồng kềnh hơn so với cách tiếp cận phi tập trung hơn được sử dụng để phát triển TCP/IP, dẫn đến sự thống trị của phương pháp này ngày nay.

Yêu cầu thay đổi

Bất kỳ phát triển nào được đề xuất cho các giao thức hiện có hoặc ý tưởng cho giao thức mới đều có thể được đề xuất trong mô hình TCP/IP thông qua một Yêu cầu thay đổi quy trình. Những đề xuất này sẽ trải qua một quy trình phê duyệt, được quản lý bởi Nhóm Đặc trách Kỹ thuật Internet (IETF), và sẽ trở thành mã nguồn mở sau khi được phê duyệt để bất kỳ ai cũng có thể triển khai và áp dụng. Một số ví dụ đáng chú ý:

  • 1969 RFC 1 Tài liệu hóa cách các gói tin sẽ được gửi trong Arpanet
  • 1981 RFC791 định nghĩa giao thức Internet V4 – vẫn được sử dụng rộng rãi ngày nay
  • 1982 RFC 821 Giao thức chuyển thư đơn giản (SMTP)
  • 1987 Hệ thống tên miền – cách tên miền được phân giải thành địa chỉ IP
  • 1999 RDC 2616 Giao thức truyền siêu văn bản – thiết yếu cho việc duyệt web

Đề xuất cải tiến Bitcoin (BIP) tuân theo cách tiếp cận tương tự như RFC, nhưng chỉ tập trung vào việc cải tiến chính Bitcoin thay vì phát triển các giao thức mới hoặc thay thế. Bitcoin cũng vay mượn từ mô hình phân lớp này, và bạn sẽ thấy các giao thức bổ sung được mô tả là lớp hai hoặc ba.

Cũng giống như các lớp cơ sở của mô hình TCP/IP đã thay đổi rất ít trong vài thập kỷ qua, với sự đổi mới diễn ra ở các lớp cao hơn, lớp cơ sở của Bitcoin cũng được kỳ vọng sẽ thay đổi rất chậm ở thời điểm này, với các giải pháp mở rộng như Lightning và Liquid diễn ra ở các lớp trên.

Một ví dụ điển hình về việc các giao thức lớp cơ sở trở nên khó thay đổi theo thời gian là IPv6. Việc dự đoán cạn kiệt không gian địa chỉ trong IPv4 đã tạo ra nhu cầu cho một giao thức mới. Bản dự thảo tiêu chuẩn đầu tiên được tạo ra vào năm 1998, nhưng mãi đến năm 2017 mới được phê duyệt là tiêu chuẩn internet. Dù nó đã giải quyết nhiều vấn đề của IPv4 và có tính tương lai cao hơn nhiều, nhưng việc áp dụng trong ngành vẫn rất chậm. Trong thời gian này, nhiều giao thức mới đã được định nghĩa ở các lớp trên để hỗ trợ đa phương tiện, email, v.v.

Các khối xây dựng được Bitcoin sử dụng

Việc tách biệt các vấn đề về khả năng kết nối này cho phép các giao thức được phát triển độc lập với các lớp phía trên và phía dưới nó. Thay vì phải phát minh lại giải pháp cho từng lớp, mạng lưới Bitcoin có thể dựa vào các khả năng cơ bản của mạng được cung cấp ở các lớp vật lý và liên kết dữ liệu.

Lớp TCP/IP Gốc
Ứng dụng Sử dụng Hệ thống tên miền (DNS) để xác định các nút lân cận. Cổng 8333 báo hiệu giao thức Bitcoin.
Vận chuyển UDP cho giao tiếp FIBRE giữa các thợ đào để giảm độ trễ. TCP cho giao tiếp ngang hàng giữa các nút.
Vận chuyển Định tuyến TOR: Cho phép ẩn danh và bảo mật. Giao thức phát sóng: Định tuyến lưu lượng trên toàn mạng.
Liên kết Hoạt động trên bất kỳ phương tiện nào (ví dụ: Ethernet, Wi-Fi, v.v.)
Vật lý Truyền vật lý qua không dây, Ethernet hoặc các giao diện phần cứng khác.
Bitcoin là một giao thức trung lập để chuyển giá trị giống như HTTPS là một giao thức để truyền thông tin
  • HTTPS: Trang web bảo mật
  • SMTP: Gửi Email
  • FTP: Chuyển tập tin
  • DNS: Quản lý tên miền
  • BTC: Lưu trữ và chuyển giá trị

Bitcoin cho phép giá trị được chuyển giao một cách đáng tin cậy và không cần bên thứ ba giữa mọi người hoặc thiết bị qua Internet. Điều này được kỳ vọng sẽ mở ra giá trị to lớn.

3.2 Mật mã khóa công khai và các giao thức

Ngày nay, Internet và hầu hết các hệ thống máy tính hiện đại đều dựa vào mật mã học, một phương pháp làm mờ thông tin để chỉ người nhận thông tin mới có thể giải mã được. Nền tảng của mật mã học dùng để bảo vệ Bitcoin có thể được truy ngược về những năm 70.

Vấn đề đầu tiên cần giải quyết là – làm thế nào để gửi một bí mật chung qua một môi trường không an toàn.

Điều này lần đầu tiên được nghiên cứu bởi Whitfield Diffie và Martin Hellman.

Vấn đề đặt ra: hai bên – thường được gọi là An và Bình – muốn chia sẻ thông tin bí mật qua một mạng mà người khác có thể nghe lén. Để đạt được điều này, họ đã tạo ra quy trình trao đổi khóa Diffie-Hellman.

Bí mật chung này sau đó có thể được sử dụng làm giá trị hạt giống để tạo ra nhiều khóa đối xứng nhằm mã hóa và giải mã các tin nhắn gửi cho nhau mà không cần chia sẻ khóa công khai.

Vì khóa riêng tư không bao giờ phải chia sẻ, và các khóa khác nhau được sử dụng ở mỗi đầu để mã hóa và giải mã, nên đây được gọi là thuật toán mã hóa bất đối xứng.

Các trường hợp sử dụng:

  • An ký một tin nhắn bằng khóa công khai của Bình – người duy nhất có thể giải mã nó bằng khóa riêng tư của mình
  • An ký một tin nhắn bằng khóa riêng tư của mình – bằng cách giải mã với khóa công khai của An, bất kỳ ai cũng có thể xác minh rằng tin nhắn được gửi bởi An, mà không cần biết khóa riêng tư của cô ấy
  • Kết hợp hai phương pháp này với hai lớp mã hóa, một tin nhắn có thể được gửi mã hóa để chỉ Bình có thể giải mã, và anh ấy có thể xác minh người gửi thực sự là An

Mặc dù không được ghi nhận trên bài báo, Ralph Merkle đã đóng vai trò quan trọng trong việc giúp giải quyết điều mà trước đó được coi là câu đố không thể giải – làm thế nào để thiết lập hoặc tái thiết lập liên lạc riêng tư qua một mạng mở và có thể thù địch.

Phương pháp này tự nó dễ bị tấn công brute force, khi kẻ tấn công có thể lấy các số đã chia sẻ và cuối cùng tạo lại khóa chung nếu có đủ thời gian và tài nguyên, vì vậy nó không phải là câu trả lời hoàn chỉnh nếu chỉ dùng riêng lẻ.

Các giao thức cho hệ mật mã khóa công khai

Bên cạnh việc đóng góp vào hệ thống khóa công khai Diffie-Hellman được mô tả ở trên, Ralph Merkle tiếp tục đóng góp cho lĩnh vực này trong nhiều năm, và đã đóng vai trò quan trọng trong việc phát triển một số thành phần then chốt được sử dụng bởi Bitcoin.

Hàm băm mật mã là một thuật toán toán học nhận đầu vào với kích thước bất kỳ và xử lý các phép tính phức tạp để trả về một giá trị băm dưới dạng bit, thường được biểu diễn bằng một chuỗi ký tự chữ và số có độ dài cố định sử dụng định dạng thập lục phân.

  • Đầu vào có thể có kích thước bất kỳ
  • Đầu ra luôn có độ dài cố định và xác định (cùng một đầu vào sẽ tạo ra cùng một giá trị băm mỗi lần)
  • Việc xác minh rất dễ dàng nhưng cực kỳ khó để đảo ngược quá trình nhằm xác định đầu vào
  • Chỉ cần thay đổi nhỏ dữ liệu cũng hoàn toàn thay đổi đầu ra
Hash function

Băm là một phần không thể thiếu của giao thức Bitcoin. SHA-256, được sử dụng trong Bitcoin, do NSA tạo ra và là một ví dụ về thuật toán băm mật mã.

  • Mỗi khối trong chuỗi đều được băm để dữ liệu không thể bị thay đổi – đảm bảo tính toàn vẹn của sổ cái phân tán
  • Giá trị băm được tạo ra cần đáp ứng tiêu chí ‘Bằng chứng công việc’ để được coi là một khối hợp lệ
  • Cây Merkle – bằng cách sử dụng các nhánh và băm của các giá trị băm, cây băm có thể cho phép xác minh các tập dữ liệu lớn với dung lượng lưu trữ tối thiểu
  • Chữ ký và khóa dựa trên băm có thể được sử dụng cho ví, địa chỉ và xác thực giao dịch

Việc xác minh phân tán trạng thái blockchain và mô hình sổ cái chỉ ghi bổ sung, chống sửa đổi được thực hiện nhờ vào hàm băm một chiều. Các hàm băm cung cấp phương pháp xác minh sự kiện trên sổ cái công khai như Bitcoin một cách đáng tin cậy, xác định mà không cần mô hình tin cậy tập trung.

Những khả năng mới trong lĩnh vực mật mã học này được các nhà sáng tạo kỳ vọng sẽ mở ra một làn sóng đổi mới mới trong lĩnh vực này.

Mật mã đường cong elliptic

Một trong những đổi mới sau này xuất hiện dưới dạng mật mã đường cong elliptic.

Mật mã đường cong elliptic được giới thiệu vào năm 1985 bởi hai nhà khoa học, N. Koblitz và V. Miller. Họ đề xuất ý tưởng sử dụng các điểm được xác định bởi đường cong elliptic thay vì các trường số nguyên tố hữu hạn sao cho giả định bài toán Logarit rời rạc vẫn đúng, như thường được sử dụng trong giao thức trao đổi khóa Diffie-Hellman tiêu chuẩn. Chi tiết về cách hoạt động của nó vượt ra ngoài phạm vi của phần này, nhưng ở mức độ tổng quan, một đường cong elliptic là tập hợp các điểm thỏa mãn một phương trình toán học cụ thể.

Phương trình cho một đường cong elliptic trông như sau:

Elliptic curve

Điều này có một số tính chất hữu ích:

  • Đối xứng theo chiều ngang. Bất kỳ điểm nào trên đường cong đều có thể phản chiếu qua trục x và vẫn nằm trên cùng một đường cong.
  • bất kỳ đường thẳng nào không thẳng đứng sẽ cắt đường cong tại tối đa ba điểm.
  • Kích thước khóa nhỏ gọn là điều cần thiết để lưu trữ và truyền tải khóa công khai hiệu quả trên blockchain.

Những tính chất này có thể được sử dụng để tạo cặp khóa theo cách tương tự như thuật toán Diffie-Hellman. Bitcoin sử dụng ECDSA, viết tắt của Elliptic Curve Digital Signature Algorithm. Đây là một quy trình sử dụng đường cong elliptic và trường hữu hạn để “ký” dữ liệu theo cách mà bên thứ ba có thể xác minh tính xác thực của chữ ký trong khi người ký vẫn giữ quyền duy nhất tạo ra chữ ký đó. Với bitcoin, dữ liệu được ký là giao dịch chuyển quyền sở hữu.

Phần 'hữu hạn' tương tự như cách dùng 'mod' trong Diffie-Hellman, nơi đầu ra của phương trình được chia lấy phần dư để đảm bảo nó nằm trong một phạm vi số nhất định.

3.3 DigiCash

Một trong những người tham gia sớm vào ‘làn sóng quan tâm mới’ đối với mật mã học là David Chaum. Ông đã dành những năm đầu đời để học cách phá vỡ các hệ thống máy tính và thành công của ông đã tạo nên sự nghi ngờ đối với các hệ thống được cho là ‘an toàn’. Ông cũng nhận ra một vấn đề chưa từng được xem xét trước đây: "làm thế nào để giữ bí mật thông tin về ai đang trò chuyện với ai và khi nào".

Ông đã thiết kế một giao thức gửi thư ẩn danh sử dụng mật mã khóa công khai, ‘trộn’ các tin nhắn để giữ bí mật nguồn gửi và đích đến. Đây chính là nền tảng cho mạng TOR.

Chaum nhìn nhận các khoản thanh toán số dưới cùng một góc độ – nhận ra rằng ‘các giao dịch tài chính có thể truy vết được của một cá nhân có thể tiết lộ rất nhiều về nơi ở, các mối quan hệ và lối sống của người đó’. Năm 1980, ông đã đăng ký bằng sáng chế cho một hệ thống tiền số được bảo mật bằng mật mã học, đặt nền móng cho tiền mã hóa. Ông cũng bắt đầu khám phá ý tưởng sử dụng mật mã học để tạo ra một nền kinh tế hoàn toàn phi tập trung dựa trên việc phi tập trung hóa nhắn tin và thanh toán.

Chính phủ rất giỏi trong việc triệt phá các mạng lưới tập trung như Napster, nhưng các mạng P2P thuần túy như Gnutella và TOR dường như vẫn đứng vững.Satoshi Nakamoto

Các hệ thống phi tập trung không có cơ quan trung ương – ngang hàng (peer-to-peer) – mang lại nhiều lợi thế:

  • Chúng có thể phát triển nhanh chóng vì bất kỳ ai cũng có thể mở rộng hệ thống chỉ bằng cách chạy một nút mới mà không cần đăng ký hay phê duyệt
  • Các nút đều như nhau nên có thể chuyển hướng khi có sự cố
  • Không có cơ quan trung ương để chiếm đoạt và làm tổn hại hệ thống
  • Khó bị kiểm soát, điều tiết, đánh thuế hoặc giám sát hơn nếu không có các điểm kiểm soát tập trung

Mười năm sau, ông thành lập công ty Digicash để tạo ra ‘ecash’ – hệ thống tiền số đầu tiên trên thế giới. Nhiều tên tuổi nổi tiếng đã từng tham gia Digicash, công ty đã đạt được một số thành công nhưng cuối cùng thất bại và tuyên bố phá sản.

Những phát triển tiếp theo về tiền số

Trong một bài đăng trên diễn đàn vào tháng 7 năm 2010, Satoshi Nakamoto nói: “Bitcoin là một hiện thực hóa đề xuất b-money của Wei Dai trên Cypherpunks năm 1998 và đề xuất Bit Gold của Nick Szabo.”

Mặc dù cả hai ý tưởng này đều không vượt qua giai đoạn đề xuất, một số ý tưởng trong đó rõ ràng đã ảnh hưởng đến sự phát triển của Bitcoin:

  • Sử dụng ‘Bằng chứng công việc’ (Proof of work) để gán giá trị tiền tệ cho công việc tính toán
  • Khái niệm rằng chi phí tính toán thay đổi theo thời gian và cần được tính đến

Nhưng trước tiên chúng ta sẽ tìm hiểu về Hashcash.

3.4 Hashcash

Hashcash được tạo ra bởi Adam Back, một trong những nhà đổi mới tiên phong trong lĩnh vực này. Adam rất quan tâm đến thị trường tự do và quyền riêng tư trên internet, và đã tình cờ biết đến danh sách thư Cypherpunks, nơi anh tham gia và trở thành một thành viên tích cực.

Anh rất quan tâm đến tiền kỹ thuật số, và đã đưa ra một số đề xuất về cách nhóm có thể hợp tác chặt chẽ hơn với Chaum về DigiCash, nhưng những ý tưởng này không đi đến đâu. Sau đó, anh chuyển sự chú ý sang một vấn đề mới nổi khác – thư rác email. Anh và các thành viên Cypherpunks khác muốn tìm ra giải pháp cho vấn đề thư rác, nơi mà những kẻ gửi thư rác có thể dễ dàng tạo và gửi hàng ngàn email làm tắc nghẽn mạng lưới. Giải pháp sáng tạo của anh dựa trên hashing – khả năng của mật mã học để biến bất kỳ dữ liệu nào thành một chuỗi ký tự ngẫu nhiên và duy nhất với độ dài xác định, nhằm tạo ra một loại 'tem' kỹ thuật số cần được thêm vào email để nó được coi là hợp lệ và truyền qua mạng lưới. Một chi phí nhỏ đối với email thật, nhưng lại là rào cản lớn đối với kẻ gửi thư rác.

Điểm đổi mới quan trọng mà Hashcash mang lại là gắn tài nguyên thực – sức mạnh tính toán – vào một mạng lưới kỹ thuật số. Trong khi các tài nguyên kỹ thuật số trước đó có thể được sao chép không giới hạn, số lượng 'hashcash' được tạo ra bị giới hạn bởi mức năng lượng mà mọi người sẵn sàng đầu tư vào nó.

Mặc dù giải pháp này đáp ứng một số tiêu chí mà Adam tin rằng cần có trong một hệ thống tiền kỹ thuật số; nó ẩn danh, bền vững và không cần tin tưởng, mỗi hashcash lại không thể tái sử dụng và không thực sự khan hiếm. Anh đã đề xuất những cách khác để giải quyết các vấn đề này bằng cách sử dụng các bên thứ ba bên ngoài.

BitGold

Nick Szabo đã phát triển dựa trên ý tưởng của Hashcash và bằng chứng công việc để đề xuất một giải pháp thay thế, mà anh mô tả trên một danh sách thư một năm sau khi Hashcash được công bố, vào năm 1998.

Mặc dù đã tiến gần hơn đến một giải pháp, đề xuất này vẫn còn một số thách thức.

  • Ai sẽ vận hành Sổ đăng ký quyền sở hữu hash và làm sao có thể tin tưởng họ?
  • Việc hashing nhìn chung sẽ ngày càng rẻ hơn theo thời gian, đây cũng là một thách thức đối với HashCash.

Vì các hash được liên kết sẽ được đóng dấu thời gian, anh đề xuất một hình thức theo dõi lịch sử độ khó của hashing tại thời điểm đó; một hash được tạo sớm sẽ đòi hỏi chi phí xử lý cao hơn so với hash được tạo sau này khi chi phí đã giảm xuống. Đáng tiếc, điều này có nghĩa là các hash sẽ không 'có thể thay thế lẫn nhau', tức là không có giá trị ngang nhau, trong khi đây lại là một thuộc tính quan trọng của tiền kỹ thuật số. Để giải quyết vấn đề này, Nick đề xuất một hình thức 'ngân hàng tự do' hoạt động trên nền tảng BitGold, có thể tổng hợp các nhóm hash khác nhau để chúng được định giá như nhau.

B-Money

Ngay sau đề xuất Bit Gold, Wei Dai đã đề xuất một giải pháp tương tự. Anh đã phát triển một số công cụ khác cho nhóm Cypherpunks, và có những ý tưởng riêng về tiền kỹ thuật số.

Đề xuất của anh giống với Bit Gold ở chỗ sử dụng chữ ký số để chuyển tiền, và các bản ghi giao dịch sẽ được lưu trữ trên một sổ cái, chứa các khóa công khai và số lượng đơn vị tiền tệ được gán cho mỗi khóa. Cũng như Bit-Gold, các bên thứ ba đáng tin cậy được coi là lỗ hổng bảo mật, và quan điểm là một hệ thống tiền điện tử không nên dựa vào một thực thể duy nhất để theo dõi số dư, giao dịch hoặc ngăn chặn chi tiêu hai lần.

Wei Dai đã đề xuất một số giải pháp cho những vấn đề này, trong đó có một ý tưởng là thay vì một thực thể trung tâm duy trì sổ cái, TẤT CẢ các nút sẽ duy trì một bản sao. Nếu tất cả người dùng kiểm tra sổ cái của mình và tính hợp lệ của từng giao dịch, miễn là tất cả các nút đều được cập nhật thì các sổ cái sẽ được đồng bộ hóa trên toàn mạng. Hệ thống phân tán cao này sẽ rất khó bị làm sai lệch.

Wei Dai nhận ra rằng điều này không giải quyết được vấn đề các vị tướng Byzantine (1), vì các nút có thể dễ dàng mất đồng bộ hoặc đơn giản là nói dối. Anh đề xuất các phương pháp thay thế như có một tập hợp các máy chủ 'đáng tin cậy' duy trì sổ cái, và tạo ra các động lực tài chính để giữ cho các máy chủ này trung thực.

Về chính sách tiền tệ, anh đề xuất gắn sức mua của B-Money với một dạng chỉ số giá tiêu dùng bên ngoài. Anh muốn cùng một lượng B-Money có thể mua được một phần tương đương của chỉ số này theo thời gian, nhằm mang lại sự ổn định giá cả. Như vậy, bất kỳ ai cũng có thể tạo ra đơn vị tiền tệ mới bằng cách cung cấp một hash hợp lệ, nhưng độ khó của việc tạo hash có thể thay đổi theo thời gian dựa trên chi phí CPU và chỉ số giá, để mỗi đơn vị là 'bất biến'.

3.5 BitTorrent

Một dự án khác đã đóng vai trò quan trọng trong việc hình thành các loại tiền mã hóa trước khi bitcoin ra đời là BitTorrent.

Năm 2001, Bram Cohen đã phát hành một thiết kế cho một giao thức có tên là BitTorrent, được tạo ra để vận hành một hệ thống chia sẻ tệp ngang hàng (peer-to-peer). Anh bắt đầu làm việc tại một công ty tên là MojoNation, được thành lập để cho phép mọi người chia nhỏ các tệp tin bảo mật thành các phần được mã hóa và phân phối trên các máy tính chạy phần mềm này. Một bản sao của tệp sẽ được tải xuống đồng thời từ nhiều máy tính khác nhau. Mặc dù cuối cùng dự án này thất bại, nó đã đưa Cohen đến với lĩnh vực chia sẻ tệp, nơi anh quyết định mình có thể tạo ra một giao thức tốt hơn, bao gồm các yếu tố sau:

  • Swarm: một cộng đồng các máy tính đang tải xuống hoặc tải lên nội dung
  • Tracker: một công cụ chuyên dụng hoạt động tương tự như một công cụ tìm kiếm, nhưng theo dõi các tệp nằm trong swarm. Điều này giúp người dùng dễ dàng xem và truy cập bất kỳ tệp nào họ cần
  • Phần mềm BitTorrent client: được cài đặt trên máy tính để truy cập tracker. Lưu ý rằng swarm là nơi duy nhất các tệp thực sự được lưu trữ
  • Một cơ chế khuyến khích, trong đó người dùng tham gia mạng lưới với vai trò chia sẻ tệp sẽ được tải xuống nhanh hơn

Những điểm tương đồng với Bitcoin:

  • Cả hai giao thức đều hoạt động theo mô hình ngang hàng (peer-to-peer)
  • Thiết kế phi tập trung
  • Các tệp BitTorrent và sổ cái Bitcoin đều được phân phối trên toàn mạng lưới
  • Nguồn gốc mã nguồn mở (BitTorrent sau này trở thành phần mềm mã nguồn đóng)

3.6 Bằng chứng công việc có thể tái sử dụng

Hal Finney là một thành viên nổi tiếng khác của phong trào Cypherpunk, người rất quan tâm đến sự phát triển của tiền điện tử và hoạt động tích cực trên danh sách thư điện tử.

Ông quyết định thử lại việc phát triển một hệ thống tiền điện tử dựa trên bằng chứng công việc (proof-of-work). Cho đến thời điểm này, kết quả băm là duy nhất cho mỗi giao dịch, nhưng ý tưởng của ông là tạo ra 'bằng chứng công việc có thể tái sử dụng'.

Điểm hạn chế của cách tiếp cận này là máy chủ tập trung, cần được tin tưởng để không chi tiêu hai lần hoặc bị tắt. Để khắc phục điều này, Hal đề xuất sử dụng phần mềm tự do và mã nguồn mở có thể được lưu trữ trên phần cứng bảo mật và xác thực độc lập.

Giải pháp này vẫn gặp phải một số vấn đề giống như các đề xuất khác:

  • Vấn đề 'con gà và quả trứng' trong việc thu hút người dùng, khi thiếu động lực để người dùng muốn yêu cầu token, và người bán không muốn kết nối với hệ thống trừ khi người dùng muốn thanh toán bằng các token này.
  • POW cũng có khả năng sẽ trở nên rẻ hơn theo thời gian khi hiệu suất máy tính được cải thiện, điều này cho thấy thị trường cuối cùng sẽ tràn ngập các đơn vị tiền tệ RPOW.
Nếu định luật Moore tiếp tục đúng, chi phí tạo ra một token (POW) sẽ giảm đều đặn theo cấp số nhân. Hãy nhớ rằng đây không phải là tiền và không nhằm mục đích lưu trữ giá trị, mà chỉ là một đại diện dễ trao đổi cho công sức của máy tính.Hal Finney

Những đặc điểm này đã hạn chế sức hấp dẫn và do đó việc áp dụng dự án, và mặc dù đã rất nỗ lực, dự án cuối cùng cũng trở thành một nỗ lực thất bại khác trong việc tạo ra tiền điện tử.

3.7 Bitcoin

Sau nhiều năm và nhiều nỗ lực thất bại, hầu hết các Cypherpunks đã bắt đầu mất dần hứng thú với ý tưởng về một loại tiền kỹ thuật số không cần sự cho phép, thì Adam Back nhận được một email dẫn đến bản nháp white paper có tên ‘electronic cash without a third party’ từ một người ẩn danh tự xưng là Satoshi Nakamoto.

Tóm lại đến thời điểm này, chúng ta đã có ít nhất các ý tưởng sau:

  • Chữ ký mật mã có thể cung cấp một mức độ riêng tư và ẩn danh
  • Khái niệm về một loại tiền không được bảo chứng (B-Money)
  • Các đề xuất (nhưng chưa có cách thực hiện) để giới hạn việc phát hành tiền mới
  • Đồng tiền kỹ thuật số mà quyền sở hữu được xác định bằng khóa công khai (B-Money) và có thể được chuyển đi bằng cách ký và gán lại dựa trên địa chỉ người nhận (RPOW và Hashcash)
  • Tất cả các node đều duy trì một bản sao của sổ cái phân tán hoàn toàn (B-Money) (vào thời điểm đó bị cho là không khả thi)
  • Giao thức đóng dấu thời gian – sử dụng băm cây Merkle để cung cấp một trình tự sự kiện có thể chứng minh bằng toán học và khó bị làm giả nếu tất cả người dùng giữ cùng một bản ghi
  • Bằng chứng công việc để gắn nỗ lực thực tế vào hệ thống (nhưng sử dụng chính hàm băm làm tiền tệ)
  • Mạng lưới hoàn toàn phi tập trung, nơi tất cả các nút đều bình đẳng và có thể tham gia hoặc rời khỏi mạng bất cứ lúc nào (BitTorrent)
  • Khái niệm liên kết các hàm băm mới với các hàm băm trước đó (Bit Gold và đóng dấu thời gian)

Những điều còn thiếu vào thời điểm này bao gồm:

  • Một giải pháp khả thi để giải quyết vấn đề ‘các vị tướng Byzantine’
  • Một phương pháp để giới hạn lượng tiền lưu thông bất chấp sự cải tiến liên tục của phần cứng
  • Cơ chế khuyến khích để mọi người tham gia (vấn đề con gà và quả trứng)

Điểm khác biệt lớn khác giữa các nỗ lực gần đây và Bitcoin là Satoshi đã làm việc trên mã nguồn trong một thời gian dài theo đúng tinh thần ‘Cypherpunks write code’ trước khi công bố trên các danh sách thư, không giống như Bit Gold và B-Money vốn chỉ mang tính ý tưởng.

Đâu là đổi mới đã giúp Bitcoin khác biệt so với các nỗ lực tiền điện tử trước đó?

Bằng chứng công việc sẽ được sử dụng như một cơ chế đồng thuận và là cách để cung cấp tính bảo mật và bất biến: Thay vì sử dụng hàm băm như một dạng tiền, nó sẽ được sử dụng bởi một quy trình khái niệm mới gọi là khai thác, nơi một node sẽ gom một tập hợp các giao dịch, thêm một số ngẫu nhiên và sau đó áp dụng hàm băm cho ‘khối’ dữ liệu đó. Một khối hợp lệ đáp ứng yêu cầu về hàm băm sẽ được quảng bá lên mạng lưới. Các khối này sẽ được liên kết với nhau bằng hàm băm của khối trước đó, và chuỗi khối dài nhất sẽ được sử dụng trong trường hợp có nhiều chuỗi cùng lúc khi các node khác nhau xác thực và quảng bá các khối khác nhau, tạo ra các nhánh chuỗi. Bằng chứng công việc trở thành cơ chế phân tán để giải quyết vấn đề các vị tướng Byzantine.

Những người khai thác này cũng được khuyến khích cung cấp CPU cần thiết để thực hiện bằng chứng công việc bằng cách được phân bổ bitcoin mới cho mỗi khối. Số lượng Bitcoin họ nhận được cũng được lập trình để giảm khoảng mỗi 4 năm cho đến khi toàn bộ Bitcoin được tạo ra, tạo ra giới hạn cứng cho tổng số Bitcoin sẽ lưu thông là 21 triệu.

Ý tưởng độc đáo nhất là cách Satoshi giải quyết vấn đề lượng tiền được tạo ra khi phần cứng ngày càng mạnh và nhiều sức mạnh tính toán hơn có thể được áp dụng vào mạng lưới. Dấu thời gian của một số lượng khối nhất định (2016) sẽ được lấy trung bình, và nếu các khối được tạo ra quá nhanh, độ khó của hàm băm để tạo khối mới sẽ được tăng lên, nếu quá chậm thì sẽ được giảm xuống. Điều này được tích hợp vào giao thức phi tập trung mà tất cả các node đều chạy, nên bất kỳ thợ đào nào bỏ qua nó sẽ tiêu tốn năng lượng để khai thác một khối mà không có lợi ích gì vì nó sẽ bị phần còn lại của mạng từ chối. Sự điều chỉnh này đảm bảo việc tạo ra các khối mới luôn theo đúng lịch trình phát hành dự kiến, và tạo động lực cho thợ đào ‘tuân thủ luật chơi’.


Tóm tắt

Nhiều mảnh ghép của bài toán xây dựng một hệ thống tiền điện tử ngang hàng phi tập trung dựa trên các nguyên tắc tiền tệ vững chắc đã có sẵn trước khi Satoshi phát hành whitepaper và ngay sau khi mã nguồn ban đầu được công bố.

Bản chất của Bitcoin là một khi phiên bản 0.1 được phát hành thì thiết kế cốt lõi đã được cố định cho suốt vòng đời còn lại của nó
Satoshi Nakamoto

Mặc dù nhiều ý tưởng cải tiến (BIP) đã được đề xuất và áp dụng, Bitcoin vẫn hoạt động ổn định kể từ năm 2009 theo đúng giao thức được thiết kế trong bản phát hành ban đầu và hầu như không bị gián đoạn. Tất cả các cải tiến đều được thực hiện trong khi vẫn đảm bảo khả năng tương thích ngược với tất cả các phiên bản trước.

Ghi chú
  1. Để giải thích về vấn đề các vị tướng Byzantine – xem https://vi.wikipedia.org/wiki/L%E1%BB%97i_Byzantine

↑ Quay lại mục lục