Skip to content

POST https://decrypt.nikola-lab.cn/openapi/v1/decrypt/task/create/mfkey32 (Create MFKey32 decryption task)

MFKey32 has v1 and v2 versions, both of which implement decryption using the same algorithm, with only differences in the parameters passed in. Within the PM3 community, MFKey32 is suitable for detection tools such as chameleon

  • MFKey32_V1 is an algorithm used by older versions of chameleon and most low performance detectors (or CPU simulated detection cards). Its characteristic is that the plaintext random number returned is fixed, and is the same no matter how many times it is collected. Therefore, this algorithm only needs to pass in the NT parameter once.
  • MFKey32_v2 is a relatively new version of the algorithm used in chameleon (or extended products) that can simulate whole cards. This algorithm requires the return of plaintext random numbers to be "variable random numbers" rather than fixed "random values".

The above description is the characteristic between the two versions of the algorithm. Therefore, assuming that you need to perform MFKey32 decryption for version v1, you only need to fill in the NT value in the core parameter with the same value

Parameter NameParameter TypeValue TypeNote
uidbodystringThe uint32 value of the valid part of the card number is converted into a string, please refer to Chapter 10.1.3
keyAbodybooleanAre you decrypting key A
blockbodystringThe block currently being decrypted has a maximum of 255 and a minimum of 0. uint8 value to string conversion
coresbodyobjectThe core decryption parameter object contains two objects, 'core1' and 'core2', with the same structure. Please refer to the description below

'core1' & 'core2' (Structure Definition)

Parameter NameParameter TypeValue TypeNote
ntbodystringuint32 to string conversion
nrbodystringuint32 to string conversion
arbodystringuint32 to string conversion

Request Data Example

json
{
    "uid": "305419896",
    "keyA": true,
    "block": "0",
    "cores": {
        "core1": {
            "nt": "450420523",
            "nr": "489775140",
            "ar": "1645146184"
        },
        "core2": {
            "nt": "819383047",
            "nr": "3307239394",
            "ar": "2205861402"
        }
    }
}

Response Data

Parameter NameParameter TypeValue TypeNote
uuidbodystringThe UUID of the task, You can call the Query based on this UUID

Response data example

json
{"uuid": "b2733132-ed10-4f0d-a803-449299c5dbde"}

Power by Nikola-LAB