### Function

# Gcr fingerprint_from_subject_public_key_info

#### Declaration [src]

    guchar*
    gcr_fingerprint_from_subject_public_key_info (
      const guchar* key_info,
      gsize n_key_info,
      GChecksumType checksum_type,
      gsize* n_fingerprint
    )

#### Description [src]

Create a key fingerprint for a DER encoded subjectPublicKeyInfo. The fingerprint is created so that it will be identical for a key and its corresponding certificate.

Note that in the case of certificates this is not a fingerprint of the actual certificate data, but rather of the public key contained in a certificate.

#### Parameters

`key_info`

  Type: An array of `guchar`

  DER encoded subjectPublicKeyInfo structure.

  The length of the array is specified in the `n_key_info` argument.
  The data is owned by the caller of the function.

`n_key_info`

  Type: `gsize`

  Length of DER encoded structure.

`checksum_type`

  Type: `GChecksumType`

  The type of fingerprint to create.

`n_fingerprint`

  Type: `gsize*`

  The length of fingerprint returned.

  The argument will be set by the function.

#### Return value

Type: An array of `guchar`

The fingerprint or `NULL` if the input was invalid.

The length of the array is in the `n_fingerprint` argument.
The caller of the function takes ownership of the data, and is responsible for freeing it.
The return value can be `NULL`.