pamoja for TypeScript - v0.2.0
    Preparing search index...

    Variable multicastConst

    multicast: {
        appSKey: (mcKey: Buffer, mcAddr: number) => Buffer;
        keKey: (mcRootKey: Buffer) => Buffer;
        key: (mcKeKey: Buffer, wrapped: Buffer) => Buffer;
        nwkSKey: (mcKey: Buffer, mcAddr: number) => Buffer;
        PORT: number;
        rootKey: (rootKey: Buffer, lorawan11?: boolean | null) => Buffer;
        wrapKey: (mcKeKey: Buffer, mcKey: Buffer) => Buffer;
    } = ...

    Remote multicast setup, TS005-2.0.0, on port 200.

    A group of devices is given one address and one key, so a firmware image goes out once rather than once per device. The group key travels wrapped under a key each device derives from its own root key and never transmits.

    Type Declaration

    • ReadonlyappSKey: (mcKey: Buffer, mcAddr: number) => Buffer

      Derives the key that reads a group's payloads.

    • ReadonlykeKey: (mcRootKey: Buffer) => Buffer

      Derives the key a group's key travels under.

    • Readonlykey: (mcKeKey: Buffer, wrapped: Buffer) => Buffer

      Unwraps the group key a setup command carried.

    • ReadonlynwkSKey: (mcKey: Buffer, mcAddr: number) => Buffer

      Derives the key that verifies a group's frames.

    • ReadonlyPORT: number

      The port this package is spoken on.

    • ReadonlyrootKey: (rootKey: Buffer, lorawan11?: boolean | null) => Buffer

      Derives a device's multicast root key.

    • ReadonlywrapKey: (mcKeKey: Buffer, mcKey: Buffer) => Buffer

      Wraps a group key for a device, which is what a server does.

    const ke = multicast.keKey(multicast.rootKey(appKey))
    const groupKey = multicast.key(ke, wrappedFromTheServer)
    const payloadKey = multicast.appSKey(groupKey, groupAddr)