< Quay lại Tin tức

API SSP Wallet cho lập trình viên — v1.15.0 biến SSP Connect thành bề mặt tích hợp đầy đủ

·5 phút đọc·Bởi SSP Editorial Team
Bìa thương hiệu SSP với biểu tượng chip, tia chớp, khiên xác thực và ví; tiêu đề: «API SSP Wallet cho lập trình viên».

SSP Wallet v1.15.0 mở rộng cánh cửa cho các dApp. Bản phát hành mở rộng API SSP Wallet thành một bề mặt đa năng mà bất kỳ trang web nào cũng có thể đối thoại: hỏi ví thông tin cần có và đề xuất cho người dùng các hành động ví có thể thực thi — và không bao giờ chạm vào khóa. Thứ từng chỉ là một hành động pay duy nhất bên trong SSP Connect nay trở thành một nền tảng tích hợp thực sự, với một đặc tả công khai trong SSP_Wallet_API.md mà các nhà phát triển có thể bắt tay vào xây dựng ngay hôm nay.

Từ Pay đến một API đầy đủ

Phiên bản đầu tiên của SSP Connect, ra mắt cùng v1.1.0, thêm vỏn vẹn một hành động đi ra: pay. Một dApp có thể yêu cầu một khoản thanh toán trên một chuỗi, đến một địa chỉ, với một số tiền cho trước; ví xử lý luồng ký trên hai thiết bị của người dùng. Phạm vi được cố tình thu hẹp. Nó chứng minh ranh giới — ví sở hữu việc ký, dApp sở hữu yêu cầu — và cho chúng tôi thứ có thể tôi luyện trong thực tế.

v1.15.0 đi bước tiếp theo. Ví nay phơi bày một API rộng hơn cho phép một trang ghép cặp với một người dùng SSP, đọc thông tin có chọn lọc mà người dùng đồng ý rõ ràng, và yêu cầu các hành động mà ví hỗ trợ. Mô hình vẫn vậy: ví là người có thẩm quyền, trang web là người gọi, người dùng là người bấm nút xanh. Cái mới là bề mặt không còn là một hàm duy nhất — nó là một giao diện được tài liệu hóa.

API phơi bày những gì

API mở rộng tập trung vào những điều mà gần như mọi dApp cần biết để có ích cho người dùng ví, và vào những hành động mà ví có thể đề xuất mà không phá vỡ mô hình bảo mật của nó.

Về phía đọc, API cho phép một trang hỏi ví những thông tin như định danh tài khoản của người dùng đang kết nối, các chuỗi mà ví hỗ trợ, và các địa chỉ mà người dùng đồng ý chia sẻ với chính trang đó. Quan trọng: «hỏi» không bao giờ có nghĩa là «nhận tự động». Mỗi yêu cầu đọc kích hoạt một lời nhắc trong giao diện ví, và người dùng có thể cho phép, thu hẹp phạm vi hoặc từ chối.

Về phía hành động, API giữ nguyên ranh giới như luồng pay ban đầu. Ví có thể được yêu cầu dựng, xem lại và đồng ký một giao dịch; dApp không bao giờ thấy chất liệu ký. Đa chữ ký là bất khả thương lượng: mọi khoản chi tiêu chạm đến quỹ vẫn được ký bởi hai nửa của thiết lập SSP — tiện ích trình duyệt và SSP Key trên điện thoại người dùng — y hệt như một lần gửi khởi tạo thủ công. Không có lời gọi API nào cho phép một trang bỏ qua luồng đó, và không có «phê duyệt phiên» nào biến ví thành con dấu tự động.

Chữ ký phương thức đầy đủ, hình dạng yêu cầu và ngữ nghĩa sự kiện đều nằm trong đặc tả SSP_Wallet_API.md, là nguồn sự thật cho người tích hợp.

Mô hình bảo mật

Một API ví chỉ tốt bằng mô hình bảo mật của nó, nên rất đáng nói rõ những gì v1.15.0 thực thi.

Kiểm tra origin. Mỗi lời gọi API mang theo origin của trang phát yêu cầu, và ví coi origin đó là danh tính của người gọi. Quyền được khoanh vùng theo origin; một quyền cấp cho một trang không phải là quyền cấp cho hàng xóm của nó trong cùng trình duyệt. Nếu một trang độc hại cố tái sử dụng phiên của trang khác, yêu cầu bị từ chối trước cả khi đến tay người dùng.

Phê duyệt rõ ràng của người dùng. Cả đọc lẫn hành động đều cần một lời nhắc trong ví ngay lần đầu xảy ra, và các hành động vật chất — bất cứ thứ gì ký hoặc chi tiêu — cần một lời nhắc mới mỗi lần. Ví không lặng lẽ phê duyệt giao dịch, kể cả với những trang mà người dùng đã kết nối trước đó. dApp không được phép quyết định cái gì là «đủ đáng tin».

Việc ký vẫn cục bộ. Thứ luôn khiến SSP là một ví SSP — việc ký diễn ra cục bộ trên hai thiết bị và không một dịch vụ từ xa nào giữ một khóa chưa ký nhưng có thể chi tiêu — không thay đổi. API cho trang web một con đường có cấu trúc để xin ví một chữ ký; nó không cho trang bất cứ con đường nào để có được chữ ký mà không có người dùng, hay để bỏ qua một khóa.

Bất biến đa chữ ký vẫn là bất biến đã đi cùng ví từ ngày đầu. API là người gõ cửa lịch sự; nó không phải chìa khóa vạn năng.

Xây dựng dựa trên nó

Đặc tả SSP_Wallet_API.md là điểm xuất phát chuẩn. Nó mô tả các phương thức sẵn có, các sự kiện mà ví phát ra khi trạng thái thay đổi, và các mã lỗi mà dApp nên kỳ vọng. Hãy kết hợp với ghi chú phát hành v1.15.0 trên GitHub để có toàn bộ bối cảnh những gì đã ra mắt.

Với các nhà phát triển đến từ hệ sinh thái ví khác, mô hình rất quen: ghép cặp theo phiên, quyền được lập chỉ mục theo origin, trạng thái được điều khiển bởi sự kiện. Cái khác là thứ thiếu vắng — không có «cửa hậu» để phê duyệt mọi giao dịch tương lai của một dApp, và không có chất liệu khóa nào có thể rời khỏi hai thiết bị của người dùng.

Tiếp theo cho SSP Connect

SSP Connect không còn là một giao thức đơn lẻ mà là một chiếc ô bao trùm bề mặt hướng ra ngoài của ví. Hãy mong đợi nhiều phương thức được tài liệu hơn, nhiều sự kiện hơn và các ví dụ sắc nét hơn cho những mẫu tích hợp phổ biến nhất. Mục tiêu đầu tiên không phải là API lớn nhất trong crypto: đó là API nhàm chán nhất, theo nghĩa tốt nhất — dự đoán được, được khoanh vùng tốt và thận trọng về những gì một trang web có thể yêu cầu ở ví.

Nếu bạn đang xây dựng thứ gì đó và muốn nói chuyện với SSP, đặc tả là cánh cửa.

Chia sẻ bài viết này

Bài viết liên quan