Pay-to-Script Hash là gì? Tìm hiểu về khái niệm P2SH là gì trong Bitcoin

loading...

Pay-to-Script Hash là gì? Tìm hiểu về khái niệm P2SH là gì trong Bitcoin. Bài viết này Thời Đại Blockchain giới thiệu đến các bạn về thuật ngữ P2SH trong tiền ảo Bitcoin. Nào hãy cùng tìm hiểu với chúng tôi ngay bên dưới đây nhé.

Pay-to-Script Hash là gì?
Pay-to-Script Hash là gì?

Pay-to-Script Hash là gì?

Pay-to-Script Hash được viết tắt là P2SH. Là một cách đơn giản để đại diện cho một scriptPubKey như là một địa chỉ ví BitcoinScriptAddress đơn giản.

Sử dụng P2SH, bạn có thể gửi Bitcoin đến một địa chỉ được bảo mật theo nhiều cách khác nhau mà không biết bất kỳ điều gì về các chi tiết và cách thiết lập bảo mật. Bạn chỉ cần gửi bitcoin đến địa chỉ P2SH ~ khoảng 34 ký tự. Người nhận có thể cần chữ ký của một số người khác để chi tiêu các bitcoin này hoặc cần có một mật khẩu được yêu cầu, hoặc các yêu cầu có thể hoàn toàn độc lập.

Đánh giá về P2SH

Vậy thông tin nào sẽ được mã hóa trong địa chỉ P2SH? Một Bitcoin không cụ thể thực sự có thể có một phạm vi toàn bộ các điều kiện chi tiêu khác nhau gắn liền với nó, phổ biến nhất là một P2PKH điển hình mà chỉ yêu cầu người nhận cung cấp chữ ký khớp với khóa hash công khai. Nhà phát triển Bitcoin Core đã nhận ra rằng mọi người đang xem xét khả năng của ngôn ngữ Script của Bitcoin và nhìn thấy một loạt các khả năng về điều kiện chi tiêu bạn có thể đính kèm với số lượng bitcoin, để tạo ra các giao dịch phức tạp hơn so với giao dịch P2PKH. 

Các nhà phát triển cốt lõi quyết định rằng thay vì cho phép người gửi đặt các kịch bản lệnh dài vào scriptPubKey của họ (nơi các điều kiện chi tiêu thường đi kèm), họ sẽ để cho mỗi người gửi đặt một hash trong điều kiện chi tiêu của họ thay thế. Các điều kiện chi tiêu này được gọi là tập lệnh đổi quà và giao dịch tài trợ P2SH chỉ chứa một mã hash của tập lệnh quy đổi này trong scriptPubKey của giao dịch tài trợ. Bản thân mã quy đổi chỉ được tiết lộ, được kiểm tra so với mã hash của lệnh mua lại và được đánh giá trong giao dịch chi tiêu Bitcoin.

Địa chỉ của P2SH

BIP 13 là định dạng địa chỉ mặc định. Các định dạng địa chỉ bitcoin P2SH bắt đầu bằng số 3 và có thể giống như sau:3J98t1WpEZ73CNmQviecrnyiWrnqRhWNLy

Ví dụ về P2SH

Giao dịch 40eee3ae1760e3a8532263678cdf64569e6ad06abc133af64f735e52562bccc8 sẽ thanh toán cho địa chỉ P2SH 3P14159f73E4gFr7JterCCQh9QjiTjiZrG.

Bạn có thể xem tập lệnh mua lại trong giao dịch 7edb32d4ffd7a385b763c7a8e56b6358bcd729e747290624e18acdbe6209fc45mà chi tiêu đầu ra đó, sử dụng OP_FALSE <sig> { OP_1 <pubkey> OP_1 OP_CHECKMULTISIG }.

Lịch sử trong P2SH

342ftSRCvFHfCeFFBuz4xwbeqnDw6BGUeylà địa chỉ Bitcoin đáng chú ý vì là địa chỉ tương thích P2SH đầu tiên nhận bitcoin trên mạng sản xuất. Thanh toán của nó được khai thác trong khối 160720; lưu ý rằng nó đã được chi trước khi thực thi BIP 16, vì vậy nó không phải là một ví dụ tốt để hiểu về P2SH.

P2SH hoạt động như thế nào?

Pay-to-Script Hash (P2SH) đã được chuẩn hóa trong BIP 16 và được Gavin Andresen giới thiệu và kết quả là một loại giao dịch ‘chuẩn’ mới cho hệ thống giao dịch trong Bitcoin. Mục đích của P2SH, theo Andresen: “Là để di chuyển trách nhiệm cung cấp các điều kiện để mua lại một giao dịch từ người gửi tiền cho người nhận”.

Với các giao dịch P2SH, tập lệnh khóa được thay thế bằng mã hash của lệnh mua lại. Hash này có nguồn gốc từ một mã lệnh mua lại, có chức năng tương tự như Tập lệnh PubKey ở chỗ nó cũng chứa các điều kiện phải được thỏa mãn trước khi đầu ra có thể được sử dụng. Khi một giao dịch cố gắng chi tiêu UTXO sau đó được khởi tạo, đầu vào phải chứa Tập lệnh PubKey (có chứa mã hash lệnh mua lại) và tập lệnh mở khóa. 

Trong giao dịch P2SH, tập lệnh chứa các điều kiện để chi tiêu đầu ra, là tập lệnh cho người nhận, không được trình bày trong tập lệnh khóa. Thay vào đó, chỉ hash (mã băm của lệnh mua lại) được bao gồm trong tập lệnh khóa, bản thân mã quy đổi được trình bày như là một phần của tập lệnh mở khóa khi đầu ra được sử dụng. Điều này có tác dụng, như Andresen đã lưu ý trong BIP 16, về việc chuyển trách nhiệm cung cấp các điều kiện để quy đổi một giao dịch từ người gửi tiền cho người nhận tiền.

Trong ví dụ, Bob tạo ra một tập lệnh mua lại, hash tập lệnh quy đổi để tạo mã hash của lệnh mua lại và cung cấp hàm hash cho Alice. Giờ đây, Alice có thể tạo ra một đầu ra kiểu P2SH có chứa mã hash của lệnh mua lại Bob.

P2SH so với P2PKH

Một địa chỉ Bitcoin điển hình trông giống như 15Cytz9sHqeqtKCw2vnpEyNQ8teKtrTPjplà một loại địa chỉ Bitcoin cụ thể được gọi là địa chỉ Hash-to-PubKey Hash (P2PKH). Để chi tiêu tiền Bitcoin được gửi tới loại địa chỉ này, người nhận phải sử dụng khóa riêng được liên kết với mã khóa công khai được chỉ định trong địa chỉ đó để tạo chữ ký số, được đặt vào scriptSig của giao dịch chi tiêu, mở khóa tiền.

Một Hash-to-Script Hash (P2SH) địa chỉ Bitcoin trông và hoạt động khá khác nhau. Một địa chỉ P2SH điển hình trông như thế nào 347N1Thc213QqfYCz3PZkjoJpNv5b14kBd. Địa chỉ P2SH luôn bắt đầu bằng ‘3’ thay vì ‘1’ như trong địa chỉ P2PKH. Điều này là do các địa chỉ P2SH có tiền tố byte phiên bản là 0x05, thay vì tiền tố 0x00 trong địa chỉ P2PKH và chúng xuất hiện dưới dạng mã ‘3’ và ‘1’ sau khi mã hóa base58check.

XEM THÊM: P2PKH LÀ GÌ?

Ưu điểm của P2SH

Điều này đặt trách nhiệm cung cấp toàn bộ mã quy đổi cho người nhận các khoản tiền P2SH. Điều này có một số lợi thế:

  • Người gửi có thể tài trợ cho bất kỳ tập lệnh đổi quà bất kỳ nào mà không biết điều kiện chi tiêu đó là gì. Điều này có ý nghĩa bởi vì người gửi phần lớn không quan tâm đến tiền của họ sẽ được chi tiêu như thế nào trong tương lai – đây là vấn đề cho người nhận, những người quan tâm đến các điều kiện chi tiêu tiếp theo. Trong trường hợp giao dịch multisig, người gửi có thể gửi tiền mà không biết khóa công khai yêu cầu (thuộc cho người nhận) của một địa chỉ multisignature, được tiết lộ chỉ khi người nhận được chi tiêu các quỹ. Điều này làm tăng tính bảo mật cho người nhận.
  • Người gửi có thể sử dụng một địa chỉ ngắn, 34 ký tự giống như địa chỉ trên, thay vì một địa chỉ dài, khó sử dụng có chứa các chi tiết của một tập lệnh đổi đầy đủ. Điều này cho phép người nhận chỉ đưa ra một địa chỉ ngắn trên trang thanh toán hoặc tin nhắn của họ, làm giảm nguy cơ lỗi của con người trong mã hash.
  • Nó làm giảm phí giao dịch cho người gửi tiền. Phí giao dịch tỷ lệ thuận với kích thước của giao dịch và giá trị hash cố định cho phép người gửi gửi tiền tới bất kỳ tập lệnh mua lại tùy ý nào mà không phải lo lắng về việc trả phí cao hơn. Đó là trách nhiệm của người nhận tạo tập lệnh nhận tiền để xác định giao dịch chi tiêu của họ sẽ lớn bao nhiêu và chi phí sẽ là bao nhiêu. Đây là một vấn đề nhỏ tại thời điểm này vì chi phí giao dịch khá nhỏ, nhưng chúng có thể quan trọng hơn trong tương lai vì phần thưởng khối sẽ nhỏ hơn trong Bitcoin.

Việc triển khai phổ biến chức năng P2SH là tập lệnh địa chỉ đa chữ ký. Tập lệnh này yêu cầu giao dịch có nhiều chữ ký số để chứng minh quyền sở hữu và bằng tiền chi tiêu mở rộng.

Lời kết:

Trên là những kiến thức và ưu điểm của P2SH – Pay-to-Script Hash. Nếu bạn có góp ý hoặc thắc mắc thì hãy bình luận ngay bên dưới đây nhé. Thời Đại Blockchain xin chân thành cảm ơn!

Biên soạn bởi ThoiDaiBlockchain.Com

Pay-to-Script Hash là gì? Tìm hiểu về khái niệm P2SH là gì trong Bitcoin
4.1 (82.5%) 8 votes
loading...

BÌNH LUẬN

Vui lòng nhập bình luận của bạn!
Vui lòng nhập tên của bạn tại đây