Skip to main content

Decrypt HumanID

Endpoint

POST https://api.verifik.co/v2/human-id/decrypt

Also available as POST /v2/zelf-proof/decrypt (same handler).

Verifies a HumanID by comparing it against a new facial image. This endpoint performs the actual biometric verification without exposing the original facial data.

Headers

NameValue
Content-Typeapplication/json
AuthorizationBearer <token>

Params

NameTypeRequiredDescription
faceBase64stringYesBase64 encoded facial image of the HumanID owner
osstringYesOperating system (DESKTOP, ANDROID, IOS)
zelfProofstringYesHumanID token returned by encrypt
passwordstringNoPassword if one was set at encrypt time
verifierKeystringNoOptional verifier key
livenessLevelstringNoIgnored. Decrypt does not accept or forward livenessLevel

Request

const fetch = require("node-fetch");

async function run() {
const res = await fetch("https://api.verifik.co/v2/zelf-proof/decrypt", {
method: "POST",
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${process.env.VERIFIK_TOKEN}`,
},
body: JSON.stringify({
faceBase64: "<base64_image>",
password: "1234",
os: "DESKTOP",
zelfProof: "A39T6XGv2ld+/lwCeB11tcXKFUE2+4LkYwr2BfVwko8OvAqFCavD2S5o62IsxIH8QuQ6K9z1yJ6qhedWojVAhlMoufcpZLlhSknJTUMsql+FXXECoZ0elw3ZCKm1DHrrn3QoRtv3Pfc1EPB2fSoXan2RjFEnkolmrNA/FvRaEOgPeFLUlOFAVzYRVVsoFfe9N6pNZ9q5uCRti7vUwPz5LnObB5uVxFyNZFxZJKrJmqkEHWI+elEqQR/7KnGtwgyN4TNnVGdbyRUUZ8eTztGal5VHIDwYdKxIbjDb1x+xz/elCShcHr4K2QhG+cefp1hj6GFg8BSLF83Wk5U20Cm5V6G0F3Vjk4yNDc7IQB6OfvEDsD8OEov4xBG51D7pw6ukFrw/FrlHBbR+KV6We8t7pJ5/vzFll1tZKcki4PoOXcu/DzmhEVVb0DoVRcB53sbxpU0G5aT0hRH2rhs1jI0yitSzISqFOTNCb7wm3CQoA2ZGndx4+DLaoKjOb/9RFlRyk2FWpM1QGAPGMbJbDeW1JrZmBTsWQ6vTr6U+JdCZA2ZxEXIsugpzbkbMMnisW8m+ddoYJm2TJTvYI8XX6bLtC6T6dEM0oFPbJkjcYdW6bemsaMm0+evZUdREs7E435jDXEoJEP0LOufTluGYcstrTqcwKtSwM5OKK9qH27WNaWcybYrKw8tA0RBUf1jDc8ChHiKXRtiUQ3JxKzK2qLnlpBYLo/0Kyy0tYP7xK1lhxaJvMks8igH/jOuyjqLL0MmOs9EnCGZayJD/UQcu84XgDQKmVxk2zFUVhol7HlcRgpMisVaSawWhpnZtPFAeV+rpJgYAR8g4NjhZ7d9QGuHTdrxmGhHZcEyTqblMx4Kx4UVdWKzvHgaFjFFYag2w"
}),
});
console.log(await res.json());
}

run();

Response

{
"data": {
"identifier": "613375a1eab2fe08527f81e2_zk_randomid_93558",
"metadata": {
"secretB": "4",
"secretA": "3"
},
"publicData": {
"b": "2",
"a": "1",
"vida": "true"
},
"faceCropBase64": "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",
"difficulty": "EASY"
},
"credits": null,
"charged": false,
"requiredLiveness": false
}

Notes

  • The identifier field contains the unique identifier used when creating the proof
  • metadata contains the private data that was stored with the HumanID
  • publicData contains the public data that was stored with the HumanID
  • faceCropBase64 contains a cropped version of the verified face image
  • difficulty indicates the verification difficulty level (EASY, MEDIUM, HARD)
  • charged indicates whether credits were charged for this verification
  • requiredLiveness indicates if liveness detection was required for this HumanID
  • Credits are charged monthly for active users rather than per verification
  • The verification process compares the new biometric sample (facial image) against the encrypted HumanID without accessing any biometric data, due to our zero biometric template innovation.