igpapi — Instagram private API Simulator for Node.js (API reference) 4.18.0
    Preparing search index...

    Interface AdsKey

    The install's ads key: the X25519 key pair the app mints once on the device and names in RegisterGeckoPkForAdsMutation and IGEnigmaEncryptedConversionQuery (pk_b64url), the key the server encrypts the install's conversion events to.

    The app mints it from its native HPKE library (libsodium's, DHKEM(X25519, HKDF-SHA256)): a 32-byte public key and a 32-byte secret key. The public key goes on the wire as unpadded base64url (43 characters), the secret key stays on the device. It is minted lazily, at the first use, and kept for the install's life, so every request that names it names the same key; the registration is recorded against the key it registered, and a key the app mints anew is registered anew. The recordings and the decompiled app behind these facts are in “The recordings and captures behind the facts the @igpapi/core doc comments state are kept here”.

    interface AdsKey {
        publicKeyB64Url: string;
        registered: boolean;
        secretKeyB64Url: string;
    }
    Index

    Properties

    publicKeyB64Url: string

    The 32-byte X25519 public key, unpadded base64url (43 characters): the wire's pk_b64url.

    registered: boolean

    Whether RegisterGeckoPkForAdsMutation was answered for this key.

    secretKeyB64Url: string

    The 32-byte X25519 secret key, unpadded base64url. It never leaves the device.