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:

Tại sao chữ ký Schnorr được ca ngợi là bản cập nhật kỹ thuật lớn nhất của Bitcoin sau Segwit?

Đọc bài viết này mất 13 phút
Giải thích chi tiết về bản cập nhật phiên bản 0.21.0 của Bitcoin Core.
Tiêu đề gốc: "Sơ đồ đa chữ ký và kiến trúc ví dựa trên thuật toán Schnoor"
Nguồn gốc: Hansheng, Kế hoạch nguồn NPC

Gần đây, ứng dụng khách cốt lõi của Bitcoin đã phát hành một phiên bản chính mới. Bản phát hành này chủ yếu mang đến công nghệ Taproot đặc trưng của Schnorr. Schnorr là một thuật toán chữ ký thanh lịch và ngắn gọn có thể cải thiện tính riêng tư của giao dịch, tiết kiệm không gian và đạt được sự tổng hợp của nhiều chữ ký. Đồng thời, nó khác với công nghệ chữ ký ESDSA truyền thống, nó có những đặc điểm rõ ràng về công nghệ và phương pháp triển khai, đã được sử dụng rộng rãi trong các liên kết khác nhau của các chuỗi công khai khác nhau. Số này rất may mắn được mời chuyên gia mật mã Han Sheng (bút danh) viết bài giới thiệu sơ đồ đa chữ ký và kiến trúc ví dựa trên thuật toán Schnoor. Đồng thời, tôi giới thiệu cho bạn hai bài báo khoa học phổ biến có liên quan ở cuối bài viết, hy vọng các bạn có thể cùng nhau tìm hiểu công nghệ mới này và hiểu được tầm quan trọng của chữ ký Schnorr đối với sự phát triển của Bitcoin và công nghệ chuỗi khối.  

Chỉnh sửa: xy công việc Phòng, NPC


Đánh giá chữ ký ECDSA  


Chữ ký số là sự mô phỏng kỹ thuật số của chữ ký. Thuật toán chữ ký số sớm nhất là thuật toán chữ ký RSA do Rivest, Shamir và Adleman đề xuất vào năm 1978. Tính bảo mật của nó dựa trên tính khó phân tách số nguyên lớn và được sử dụng rộng rãi trong các lĩnh vực như xác thực kỹ thuật số và CA. Tuy nhiên, do kích thước khóa của thuật toán RSA lớn nên hiệu quả lưu trữ không tốt bằng các thuật toán chữ ký dựa trên đường cong elip sau này. Do đó, các chữ ký hiện được sử dụng rộng rãi trong tiền điện tử hầu hết đều là các thuật toán ECDSA, nhưng các đường cong elip cơ bản mà chúng dựa trên là khác nhau. Tính bảo mật của ECDSA dựa trên tính khó điều khiển của logarit rời rạc trên đường cong elip.

 

Thuật toán chữ ký bitcoin - ECDSA dựa trên đường cong SECP256k1

 

Thuật toán chữ ký hiện được Bitcoin sử dụng là thuật toán ECDSA dựa trên đường cong SECP256k1. Sử dụng chi tiết giao dịch làm thông báo tóm tắt thông báo, nghĩa là z=SHA256(m) và sử dụng thông báo z làm thuật toán chữ ký cốt lõi.


Chữ ký số được bảo mật bằng mật mã yêu cầu thêm số ngẫu nhiên để đạt được tính ngẫu nhiên của chữ ký. Tuy nhiên, theo tiêu chuẩn RFC6979, số ngẫu nhiên trong thuật toán chữ ký được trích xuất từ bản tóm tắt thông báo z, đây không phải là số ngẫu nhiên theo nghĩa mật mã. Giải pháp này được tìm thấy trong nhiều thư viện mã mật mã và được sử dụng trong hầu hết các dự án blockchain.




Giải pháp tầm thường đặc trưng của Schnorr

  ;

Chữ ký Schnorr có thể giải quyết vấn đề tiêu thụ tài nguyên của đa chữ ký nêu trên.


Schnorr được tạo ra bởi Claus-Peter Schnorr Thuật toán chữ ký số được đề xuất tại Hội nghị Mật vụ Mỹ năm 1989 và được áp dụng để bảo vệ bằng sáng chế. Đối với bản thân thuật toán chữ ký, nó có các đặc điểm về tính bảo mật và khả năng mở rộng có thể chứng minh được so với thuật toán ECDSA.


Thuật toán chính được triển khai như sau:



 

Có thể thấy rằng chữ ký Schnorr cũng dựa trên số học đường cong elip. Mô-đun số học cơ bản hiện được triển khai rộng rãi trong các thư viện mã và chip lớn hướng dẫn vẫn có thể được sử dụng một cách hiệu quả, nhưng nó cần đóng gói lại các hướng dẫn từ giao diện cơ bản để thực hiện thuật toán Schnorr. Điều này thuận tiện hơn cho việc nâng cấp ví phần mềm. Nhưng đối với ví phần cứng, chi phí nâng cấp có thể cao hơn.  

 

Thuộc tính tuyến tính của sơ đồ chữ ký Schnorr

 

Giả sử Alice và Bob lần lượt ký vào tin nhắn m. Cụ thể, giả sử rằng cặp khóa chung và khóa riêng của Alice là (x1, X1=x1G) và cặp khóa chung và khóa riêng của Bob là (x2,>


 

Giải pháp trên chỉ nhằm chứng minh tính tuyến tính chữ ký Schnorr và không thể sử dụng trực tiếp trong các ứng dụng thực tế vì giải pháp này có thể dẫn đến Tấn công khóa Rouge.  


Giải pháp đa chữ ký dựa trên chữ ký Schnorr

 

1. Giải pháp đa chữ ký


Lấy giải pháp đa chữ ký n-of-m làm ví dụ .



 

 

2. Kiến trúc dịch vụ ví


Ví được chia thành phía máy chủ (phía S) và phía khách hàng (phía C). Phía C sẽ có nhiều điểm logic tương ứng với nhiều người dùng.



 

Mặt S và mặt C ở đây chỉ mang tính logic. Có thể có cả mặt S và mặt C trên một thiết bị vật lý hoặc có thể trên nhiều thiết bị vật lý . .  



  

Kết luận 

 

Đối với tính chất tuyến tính của Schnorr và tính chất tích lũy của chữ ký, khi thực hiện các giao dịch nhiều chữ ký Bitcoin, không cần quá nhiều dữ liệu chữ ký người dùng, chỉ cần "tổng chữ ký" Với "khóa công khai và" bạn có thể xác minh tính hợp pháp của giao dịch. Điều này sẽ làm giảm đáng kể quy mô giao dịch đa chữ ký của Bitcoin, từ đó làm tăng đáng kể số lượng giao dịch đa chữ ký mà khối có thể đáp ứng. Lấy 2-3 chữ ký đa chữ ký làm ví dụ, tập lệnh khóa đa chữ ký Bitcoin hiện tại yêu cầu 3 địa chỉ khóa công khai, phần này sẽ được nén thành tập lệnh nên kích thước sẽ không thay đổi sau khi nâng cấp, nhưng tập lệnh mở khóa yêu cầu 2 khóa công khai Với 2 chữ ký, sau khi nâng cấp lên Schnorr chỉ cần 1 "khóa chung" và "chữ ký". Đối với đa chữ ký n-m tổng quát hơn, tập lệnh mở khóa hiện tại của đa chữ ký Bitcoin yêu cầu n khóa công khai và chữ ký n. Chữ ký Schnorr vẫn chỉ yêu cầu một "tổng khóa công khai" và một "tổng chữ ký". Nói cách khác, càng có nhiều người ký thì khả năng sử dụng không gian của chữ ký Schnorr càng cao.  


Đọc đề xuất:


Công nghệ Tới: Tại sao chữ ký Schnorr được ca ngợi là bản cập nhật kỹ thuật lớn nhất sau Bitcoin Segwit
Khoa học phổ biến: Chữ ký số phổ biế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