# 8. windows.wintrust – Checking signature — PythonForWindows 1.0.4 documentation

# 8. `windows.wintrust` – Checking signature

Note

See sample windows.wintrust

The `wintrust` module offers wrapper around `wintrust.dll`. It allows to check the signature of a file.

The signature of a file can be at two differents place:

> - In the file itself (`check_signature()`)

> - In a catalog file (`full_signature_information()`)

Note

Explanation about catalog files

## 8.1. API

windows.wintrust.is_signed(filename)

  Check if `filename` is signed:

  > - File embeds a valid signature

  > - File is part of a signed catalog file

  Returns:

    `bool`

windows.wintrust.full_signature_information(filename)

  Returns more information about the signature of `filename`

  Returns:

    `SignatureData`

windows.wintrust.check_signature(filename)

  Check if `filename` embeds a valid signature.

  Returns:

    `int`: `0` if `filename` have a valid signature else the error

### 8.1.1. SignatureData

class windows.wintrust.SignatureData(signed, catalog, catalogsigned, additionalinfo)

  Signature information for `FILENAME`:

  > - `signed`: True if `FILENAME` embeds a valide signature

  > - `catalog`: The filename of the catalog `FILENAME` is part of (if any)

  > - `catalogsigned`: True if `catalog` embeds a valide signature

  > - `additionalinfo`: The return error of `check_signature(FILENAME)`

  `additionalinfo` is useful to know if `FILENAME` signature was rejected for an invalid root / expired cert.

  additionalinfo

    Alias for field number 3

  catalog

    Alias for field number 1

  catalogsigned

    Alias for field number 2

  signed

    Alias for field number 0