Licensing

In this chapter:

Licensing Principles

The FindFace Multi licensing is granted using the following criteria:

  1. The overall number of extracted feature vectors, regardless of the object type (face, body, vehicle).

    Note

    The feature vectors are extracted from objects detected in the video, from images in the record index, and user photos, and when building so-called cluster centroids.

    The licensing scheme is the following:

    • Events: 1 event of video object detection = 1 object in a license.

    • Record Index: 1 photo in a record = 1 object in a license.

    • Clusters: 1 person = 1 object in a license.

    • Users: 1 photo of a user = 1 object in a license.

  2. The number of video sources currently in use (i.e., active video processing jobs for cameras and video files).

  3. The number of model instances in use in the findface-extraction-api service.

  4. Face attribute recognition: gender/age/emotions/glasses/beard/face mask/etc.

  5. Body attribute recognition: clothing color/type/etc.

  6. Vehicle attribute recognition: make/model/color/body style/etc.

  7. License plate recognition.

  8. Face liveness detection.

  9. Video recording.

  10. Integrations with partners.

  11. Integration with external VMS.

You can choose between the following licensing methods:

  • The online licensing is provided by interaction with the NtechLab Global License Manager license.ntechlab.com and requires a stable internet connection, DNS, and open port 443 TCP. Upon being disconnected from the internet, the system will continue working off-grid for 4 hours.

Note

It is possible to prolongate the off-grid period for up to 2 days. Inform your manager if you need that.

  • The offline licensing via a USB dongle requires a USB port on the physical server with the findface-ntls service (license server in the FindFace core).

  • The offline licensing via hardware fingerprint requires Sentinel drivers installed on the physical server with the findface-ntls service.

Important

For the system to function, a single instance of findface-ntls should be enough. If your system requires more license servers, contact your NtechLab manager beforehand to prevent your system from being blocked.

View and Update License

After installing FindFace Multi, upload the license file you obtained from the manager into the system. To do so, navigate to Settings -> License.

license_en

Use the same tab to consult current licensing information and upgrade your license.

Offline Licensing via USB dongle

To implement the licensing via a USB dongle, do the following:

  1. Inform your manager that you intend to apply this licensing method and request your USB dongle and a license file.

  2. Open the /opt/findface-multi/docker-compose.yaml configuration file.

    sudo vi /opt/findface-multi/docker-compose.yaml
    
  3. Add the line privileged: true. Mount the /dev directory into the findface-multi-findface-ntls-1 container by listing it in the volumes of the findface-ntls section. As a result, the entire section will look as follows:

    findface-ntls:
        command: [--config=/etc/findface-ntls.cfg]
        image: docker.int.ntl/ntech/universe/ntls:ffserver-8.221216
        network_mode: service:pause
        privileged: true
        restart: always
        user: root
        volumes: ['./configs/findface-ntls/findface-ntls.yaml:/etc/findface-ntls.cfg:ro',
          './data/findface-ntls:/ntech/license', '/dev:/dev']
    
  4. Create a new udev rule.

    1. Download the 95-grdnt.rules file (e.g., into the /home/username/tmp/ directory).

    2. Copy the 95-grdnt.rules file into the /etc/udev/rules.d/ directory.

      sudo cp /home/username/tmp/95-grdnt.rules /etc/udev/rules.d/
      
  5. Rebuild all FindFace Multi containers.

    cd /opt/findface-multi
    
    sudo docker-compose down
    
    sudo docker-compose up -d
    
  6. Insert the USB dongle into a USB port.

  7. Upload the license file on the License tab.

Offline Licensing via Hardware Fingerprint

Note

Sentinel is a type of offline licenses that, unlike guardant licenses, do not require any physical media for its work.

Glossary:

  • Sentinel is a software protection and licensing system by Thales. It allows you to implement offline licensing without access to a global server.

  • The C2V file is a file, containing data about a hardware fingerprint of the client’s machine, for binding the license only to this machine. This file is generated by the sentinel library. The C2V file is generated on the client’s machine where the license key will be installed later.

To implement the fingerprint licensing, do the following:

  1. Inform your manager that you intend to apply this licensing method and request your unique license id. The manager will also supply you with the findface-sentinel-lib_*.deb package necessary for the FindFace Multi and Sentinel integration.

  2. Install the Sentinel drivers on the physical server with the findface-ntls component.

    Do the following:

    1. Download Sentinel drivers from the official website.

    2. Unzip the downloaded archive and browse to it.

      tar -xvzf Sentinel_LDK_Linux_Runtime_Installer_script.tar.gz
      cd Sentinel_LDK_Linux_Runtime_Installer_script/
      
    3. There is another archive aksusbd-8.31.1.tar.gz inside the archive. Unzip it and browse to the resulting directory.

      tar -xvzf aksusbd-8.31.1.tar.gz
      cd aksusbd-8.31.1/
      
    4. Run the installation command.

      sudo ./dinst
      
    5. Run and check the statuses of the Sentinel services.

      sudo systemctl start aksusbd.service hasplmd.service
      sudo systemctl status aksusbd.service hasplmd.service
      
  3. Mount the /var/hasplm and /etc/hasplm directories into the findface-multi-findface-ntls-1 container. To do so, open the /opt/findface-multi/docker-compose.yaml configuration file and list them in the volumes of the findface-ntls section.

    sudo vi /opt/findface-multi/docker-compose.yaml
    
    findface-ntls:
      ...
      volumes: ['./configs/findface-ntls/findface-ntls.yaml:/etc/findface-ntls.cfg:ro', './data/findface-ntls:/ntech/license', '/var/hasplm:/var/hasplm', '/etc/hasplm:/etc/hasplm']
    
  4. Rebuild all FindFace Multi containers.

    cd /opt/findface-multi
    
    sudo docker-compose down
    
    sudo docker-compose up -d
    
  5. Put the findface-sentinel-lib_*.deb package received from your manager into some directory on the same host. Install the package.

    sudo dpkg -i /path/to/findface-sentinel-lib_*.deb
    
  6. In the FindFace Multi web interface, navigate to Settings -> License. Take a hardware fingerprint (C2V file) by clicking the Download C2V for activation button.

    Tip

    If you prefer working with the console, you can send the following API request to findface-ntls instead:

    curl <findface-ntls-server-ip>:3185/c2v  >my_pc.c2v
    
  7. Send the License ID and the C2V file to your manager and receive your license file in return.

  8. Upload the license file on the License tab.