Chữ Ký Schnorr Có Ý Nghĩa Gì Đối Với Bitcoin?
Trang chủ
Bài viết
Chữ Ký Schnorr Có Ý Nghĩa Gì Đối Với Bitcoin?

Chữ Ký Schnorr Có Ý Nghĩa Gì Đối Với Bitcoin?

Nâng cao
Đã đăng Jul 8, 2020Đã cập nhật Dec 28, 2022
6m

Nội dung

Giới thiệu

Có thể bạn chưa biết, Bitcoin thực thi quyền sở hữu bằng một thuật toán gọi là Chữ ký kỹ thuật số đường cong Elliptic (Elliptic Curve Digital Signature Algorithm, gọi tắt là ECDSA). Thuật toán này cho phép bạn lấy một số (tức khóa riêng tư) và tạo ra một khóa công khai từ đó.
Điều đặc biệt là bạn có thể dễ dàng lấy được khóa công khai từ khóa riêng tư, nhưng không thể thực hiện điều ngược lại. Khóa riêng tư là tấm là hộ chiếu để bạn tham gia vào mạng Bitcoin. Nó là thứ giúp bạn tạo địa chỉ để nhận tiền mã hóa và bạn cũng được phép sử dụng tiền mã hóa từ địa chỉ này. 

Trong bài viết này, chúng ta sẽ cùng tìm hiểu về thuật toán chữ ký Schnorr, một giải pháp thay thế cho ECDSA có thể mang lại một số thay đổi thú vị cho Bitcoin.


Tóm tắt về chữ ký điện tử

Chữ ký điện tử hoạt động giống như chữ ký chúng ta viết bằng bút và giấy, nhưng chúng an toàn hơn rất nhiều. Bất cứ ai cũng có thể giả mạo chữ ký bằng bút và giấy nếu bỏ thời gian và công sức. Nhưng bạn không thể làm điều tương tự với một chữ ký số mạnh mẽ, ngay cả khi bạn có hàng trăm nghìn năm theo ý của mình.

Chữ ký điện tử có rất nhiều ứng dụng. Phổ biến nhất là chứng minh cho mọi người thấy rằng bạn đã viết một thông điệp cụ thể. Như đã đề cập, bạn có thể tạo khóa công khai từ khóa riêng tư (một con số khá lớn mà bạn nên giữ bí mật). Bạn thực hiện điều này bằng cách thực hiện một số phép toán ưa thích trên đường cong secp256k1. Từ đó, bạn cũng có thể tạo địa chỉ công khai từ khóa công khai của mình.

Lưu ý, việc hiển thị khóa công khai của bạn cho bất kỳ ai là hoàn toàn an toàn. Bạn có thể thêm nó vào trang web hoặc tiểu sử Twitter của mình để những người khác có thể xác minh danh tính của bạn. Tương tự như vậy, bạn có thể chia sẻ địa chỉ công khai của mình với những người khác để họ có thể gửi tiền mã hóa cho bạn.

Tóm lại, khóa riêng tư cho phép bạn tạo ra chữ ký điện tử. Bằng cách viết một tin nhắn và thực hiện thao tác trên nó bằng khóa riêng tư, bạn sẽ tạo ra một tin nhắn có chữ ký. Bất kỳ ai cũng có thể lấy chuỗi thông tin này và so sánh với khóa công khai của bạn để kiểm tra xem nó có thực sự được bạn ký hay không.

Điều này liên quan như thế nào tới Bitcoin? Chà, bất cứ khi nào bạn thực hiện một giao dịch Bitcoin, bạn đang ký điện tử vào một tin nhắn nói rằng tôi đang gửi những đồng tiền đã từng được gửi cho tôi. Sau đó, tin nhắn sẽ được gửi đến các node khác trên mạng, họ có thể kiểm tra xem chữ ký ECDSA có khớp với tin nhắn hay không. Nếu không, họ sẽ từ chối nó.


Chữ ký Schnorr là gì?

Chữ ký Schnorr hoạt động theo một cách khác. Nó hoạt động tương tự như Thuật toán Chữ ký Kỹ thuật số Đường cong Elliptic mà chúng ta đang sử dụng hiện tại, nhưng có một số lợi thế hơn. Chữ ký Schnorr đã tồn tại trước ECDSA, điều này khiến nhiều người tự hỏi tại sao chúng không được tích hợp vào Bitcoin ngay từ đầu. 

Có thể giải thích rằng Claus P. Schnorr – người tạo ra loại chữ ký này – đã cấp bằng sáng chế cho chúng. Các bằng sáng chế này đã hết hạn vào đầu năm 2008, vài tháng trước khi sách trắng Bitcoin được phát hành, nhưng phát minh này vẫn chưa được tiêu chuẩn hóa trên toàn diện. Do đó, Satoshi Nakamoto đã chọn ECDSA (với mã nguồn mở) và được chấp nhận rộng rãi hơn.


Chữ ký Schnorr là gì?

Chữ ký Schnorr khá đơn giản so với các chương trình chữ ký khác. Do đó, chúng an toàn hơn các lựa chọn thay thế khác. Thoạt nhìn, nó có thể không có nhiều ý nghĩa đối với bạn, nhưng loại chữ ký này sở hữu một đặc tính mạnh mẽ: độ tuyến tính
Dễ hiểu hơn, điều này làm cho loại chữ ký này này đặc biệt phù hợp với các giao dịch đa chữ ký. Bạn có thể biết rằng Bitcoin đã hỗ trợ đa chữ ký, nhưng nó vẫn chưa được tối ưu.

Khi bạn tạo một địa chỉ đa chữ ký, bất kỳ ai gửi tiền cho bạn không biết rừng bạn đã đặt điều kiện gì cho các đầu vào. Họ thậm chí có thể không biết mình đang gửi tiền đến một thiết lập đa chữ ký – điều duy nhất khiến người gửi có thể nhận ra là địa chỉ đa chữ ký bắt đầu bằng số “3”. 

Tuy nhiên, bạn sẽ không muốn tiết lộ bản chất của nó khi bạn muốn chuyển tiền. Giả sử bạn đã sử dụng thiết lập 3/3 cùng với Alice và Bob. Để chi tiêu, ví dụ, với 5 BTC, ba người trong số các bạn phải cung cấp khóa công khai và các chữ ký hợp lệ. Khi bạn chuyển tiền ra khỏi địa chỉ, toàn bộ mạng có thể tìm hiểu những gì đã xảy ra bằng cách nhìn vào blockchain

Từ quan điểm bảo mật, điều này không phải là một điều có ích. Để giải quyết vào điều này, nếu chúng ta tạo ra một đa chữ ký lớn hơn (ví dụ: 8/10), chúng lại chiếm khá nhiều không gian trên blockchain. Điều đó còn dẫn tới sự tốn kém, vì nó là một giao dịch khá dài – hãy nhớ rằng càng tốn nhiều byte trong giao dịch, bạn càng cần phải trả nhiều tiền hơn.

Chữ ký Schnorr đã được xem là một giải pháp cho những vấn đề về quyền riêng tư và khả năng mở rộng này. Bạn thấy đấy, chúng cho phép tạo ra những thứ như chữ ký tổng hợp, kết hợp chữ ký của nhiều người ký thành một chữ ký duy nhất. “Chữ ký chính” thu được sẽ vẫn có cùng độ dài với chữ ký một người thông thường, dẫn đến tiết kiệm không gian đáng kể. 
Ngoài ra, các chữ ký kết hợp làm cho việc quan sát ai đã ký (hoặc không ký) một giao dịch khó khăn hơn rất nhiều. Với các chữ ký m/m (trong đó tất cả những người tham gia phải ký để chi tiêu tiền), bạn thậm chí sẽ không thể phân biệt giữa các giao dịch của từng bên và với các giao dịch đa chữ ký.
Điều quan trọng, chữ ký Schnorr là một mảnh ghép cho những bước tiến xa hơn. Sau khi được triển khai, chúng có thể được tận dụng để cải thiện các công nghệ trong tiền mã hóa chẳng hạn như hoán đổi nguyên tử và Lightning Network.



Khi nào chữ ký Schnorr sẽ được triển khai thành Bitcoin?

Không có câu trả lời chắc chắn. Như phần lớn các bản nâng cấp của giao thức Bitcoin, sẽ mất rất nhiều thời gian để cộng đồng người dùng Bitcoin cùng đồng ý với các thay đổi, bao gồm cả chữ ký Schnorr. Những người đóng góp cho Bitcoin Core là Pieter Wuille, Jonas Nick và Tim Ruffing đã gửi dự thảo Đề xuất cải tiến Bitcoin (BIP), nhưng vẫn còn kha khá việc phải làm.
Blockstream đã phát hành một bản cài đặt– MuSig. Nó cho phép tổng hợp chữ ký và khóa, đóng vai trò là nền tảng cho lược đồ chữ ký Schnorr của riêng Bitcoin.
Chữ ký Schnorr có thể được hợp nhất vào code dưới dạng một soft fork, có nghĩa là một thay đổi không gây chia tách mạng. Cho nên nó sẽ là một nâng cấp "tùy chọn tham gia". Tuy nhiên, sẽ rất lạc quan nếu cho rằng chữ ký Schnorr sẽ được tích hợp trong tương lai gần – luôn mất vài năm để đạt được một sự đồng thuận.


Tổng kết

Hiện tại, chữ ký Schnorr là một trong những cột mốc được mong đợi nhất trên lộ trình phát triển Bitcoin. Chỉ với một lần nâng cấp duy nhất, chúng có thể mang lại những lợi ích đáng kể về quyền riêng tư và khả năng mở rộng. Và xa hơn nữa, chữ ký này sẽ tạo tiền đề cho sự phát triển tiếp theo của hợp đồng thông minh Bitcoin và các cấu trúc nâng cao hơn như Taproot.