Chuyển tới nội dung chính

bioMetrics.createSignature

bioMetrics.createSignature là API tạo ra chuỗi signature từ challenge. Tham khảo full luồng xác thực người dùng bằng biometrics

Luồng authentication sử dụng biometrics

  • Device sẽ bật chế độ xác thực bằng biometrics để lấy ra private key đã lưu trữ
  • Nếu xác thực thành công, private key này sẽ dùng để encrypt challenge để tạo ra 1 chuỗi RSA PKCS#1v1.5 SHA 256 gọi là signature.
  • Phía MiniApp, sau khi có signature này, client gửi signature lên cho server để verify.
  • Phía server của MiniApp, nhận được response từ client, dùng public key để verify response và trả về kết quả authentication cho client

Khả dụng: Hỗ trợ từ version 1.96.7 trở lên.

Lưu ý:

  • Việc tạo ra signature đòi hỏi phải có cặp private/public key được tạo ra trước đó bằng JSAPI bioMetrics.createKey

Tham số

Thuộc tínhKiểu dữ liệuBắt buộcMô tả
challengeStringChallenge mà server gửi về cho client hoặc chuỗi data mà client muốn gửi lên server để verify
contentStringContent của popup hiện ra khi xác thực bằng biometrics
successFunctionCallback function khi việc tạo signature thành công
failFunctionCallback function khi việc tạo signature thất bại
completeFunctionCallback function bất kể thành công hay thất bại

Giá trị trong success callback

Khi việc gọi API thành công, framework sẽ trả về payload chứa các thông tin sau

Thuộc tínhKiểu dữ liệuMô tả
signatureStringSignature được sinh ra

Ví dụ

import apis from '@v-miniapp/apis'

function createSignature() {
const payload = `${new Date().getTime()}-${
this.data.username
}/${this.data.password}`;
apis.bioMetrics.createSignature({
content: 'Login using Biometrics',
challenge: payload,
success: (res) => {
apis.alert({
title: 'Success',
content: JSON.stringify(res)
});
},
fail: (res) => {
apis.alert({ title: 'Fail', content: JSON.stringify(res) });
}
});
}