Skip to main content

Python Wrapper Library for Microchip Security Products

Project description

Python CryptoAuthLib module

Introduction

This module provides a thin python ctypes layer to evaluate the cryptoauthlib interface to Microchip CryptoAuthentication devices.

Code Examples

Code examples for python are available on github as part of CryptoAuthTools under the python/examples directory

Installation

CryptoAuthLib python module can be installed through Python's pip tool:

    pip install cryptoauthlib

To upgrade your installation when new releases are made:

    pip install -U cryptoauthlib

If you ever need to remove your installation:

    pip uninstall cryptoauthlib

What does python CryptoAuthLib package do?

CryptoAuthLib module gives access to most functions available as part of standard cryptoauthlib (which is written in 'C'). These python functions for the most part are very similar to 'C' functions. The module in short acts as a wrapper over the 'C' cryptoauth library functions.

Microchip cryptoauthlib product page: Link

Supported hardware

Supported devices

The family of devices supported currently are:

Using cryptoauthlib python module

The following is a 'C' code made using cryptoauthlib 'C' library.

#include "cryptoauthlib.h"

void main()
{
    ATCA_STATUS status;
    uint8_t revision[4];
    uint8_t randomnum[32];

    status = atcab_init(cfg_ateccx08a_kitcdc_default);
    if (status != ATCA_SUCCESS)
    {
        printf("Error");
        exit();
    }

    status = atcab_info(revision);
    if (status != ATCA_SUCCESS)
    {
        printf("Error");
        exit();
    }

    status = atcab_random(randomnum);
    if (status != ATCA_SUCCESS)
    {
        printf("Error");
        exit();
    }
}

The same code in python would be:

from cryptoauthlib import *

ATCA_SUCCESS = 0x00
revision = bytearray(4)
randomnum = bytearray(32)

# Locate and load the compiled library
load_cryptoauthlib()

assert ATCA_SUCCESS == atcab_init(cfg_ateccx08a_kithid_default())

assert ATCA_SUCCESS == atcab_info(revision)
print(''.join(['%02X ' % x for x in revision]))

assert ATCA_SUCCESS == atcab_random(randomnum)
print(''.join(['%02X ' % x for x in randomnum]))

In the above python code, "import cryptoauthlib" imports the python module. load_cryptoauthlib() function loads the compiled library. The load_cryptoauthlib() is a function that you will not see in the 'C' library, this is a python specific utility function and is required for python scripts to locate and load the compiled library.

In Summary

Step I: Import the module

from cryptoauthlib import *

Step II: Initilize the module

load_cryptoauthlib()

assert ATCA_SUCCESS == atcab_init(cfg_ateccx08a_kithid_default())

Step III: Use Cryptoauthlib APIs

Call library APIs of your choice

Code portability

Microchip's CryptoAuthentication products can now be evaluated with the power and flexibility of python. Once the evaluation stage is done the python code can be ported to 'C' code.

As seen above the python API maintains a 1 to 1 equivalence to the 'C' API in order to easy the transition between the two.

Cryptoauthlib module API documentation

help() command

All of the python function's documentation can be viewed through python's built in help() function.

For example, to get the documentation of atcab_info() function:

    >>> help(cryptoauthlib.atcab_info)
    Help on function atcab_info in module cryptoauthlib.atcab:

    atcab_info(revision)
    Used to get the device revision number. (DevRev)

    Args:
        revision            4-byte bytearray receiving the revision number
                            from the device. (Expects bytearray)

    Returns:
        Status code

dir() command

The dir command without arguments, return the list of names in the current local scope. With an argument, attempt to return a list of valid attributes for that object. For example dir(cryptoauthlib) will return all the methods available in the cryptoauthlib module.

Code Examples

Code examples for python are available on github as part of CryptoAuthTools under the python/examples directory

Tests

Module tests can be located in the python/tests of the main cryptoauthlib repository. The README.md has details for how to run the tests. The module tests are not comprehensive for the entire functionality of cryptoauthlib but rather are meant to test the python module code only against the library to ensure the interfaces are correct and ctypes structures match the platform.

Release notes

See Release Notes

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cryptoauthlib-20250510.tar.gz (565.6 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

cryptoauthlib-20250510-pp311-pypy311_pp73-win_amd64.whl (155.0 kB view details)

Uploaded PyPyWindows x86-64

cryptoauthlib-20250510-pp311-pypy311_pp73-manylinux_2_28_x86_64.whl (1.3 MB view details)

Uploaded PyPymanylinux: glibc 2.28+ x86-64

cryptoauthlib-20250510-pp310-pypy310_pp73-win_amd64.whl (155.0 kB view details)

Uploaded PyPyWindows x86-64

cryptoauthlib-20250510-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl (1.3 MB view details)

Uploaded PyPymanylinux: glibc 2.28+ x86-64

cryptoauthlib-20250510-pp39-pypy39_pp73-win_amd64.whl (155.0 kB view details)

Uploaded PyPyWindows x86-64

cryptoauthlib-20250510-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl (1.3 MB view details)

Uploaded PyPymanylinux: glibc 2.28+ x86-64

cryptoauthlib-20250510-cp313-cp313-win_amd64.whl (155.0 kB view details)

Uploaded CPython 3.13Windows x86-64

cryptoauthlib-20250510-cp313-cp313-win32.whl (134.2 kB view details)

Uploaded CPython 3.13Windows x86

cryptoauthlib-20250510-cp313-cp313-manylinux_2_28_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

cryptoauthlib-20250510-cp313-cp313-macosx_10_13_universal2.whl (430.3 kB view details)

Uploaded CPython 3.13macOS 10.13+ universal2 (ARM64, x86-64)

cryptoauthlib-20250510-cp312-cp312-win_amd64.whl (155.0 kB view details)

Uploaded CPython 3.12Windows x86-64

cryptoauthlib-20250510-cp312-cp312-win32.whl (134.2 kB view details)

Uploaded CPython 3.12Windows x86

cryptoauthlib-20250510-cp312-cp312-manylinux_2_28_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

cryptoauthlib-20250510-cp312-cp312-macosx_10_13_universal2.whl (430.3 kB view details)

Uploaded CPython 3.12macOS 10.13+ universal2 (ARM64, x86-64)

cryptoauthlib-20250510-cp311-cp311-win_amd64.whl (155.0 kB view details)

Uploaded CPython 3.11Windows x86-64

cryptoauthlib-20250510-cp311-cp311-win32.whl (134.2 kB view details)

Uploaded CPython 3.11Windows x86

cryptoauthlib-20250510-cp311-cp311-manylinux_2_28_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

cryptoauthlib-20250510-cp311-cp311-macosx_10_9_universal2.whl (430.3 kB view details)

Uploaded CPython 3.11macOS 10.9+ universal2 (ARM64, x86-64)

cryptoauthlib-20250510-cp310-cp310-win_amd64.whl (155.0 kB view details)

Uploaded CPython 3.10Windows x86-64

cryptoauthlib-20250510-cp310-cp310-win32.whl (134.2 kB view details)

Uploaded CPython 3.10Windows x86

cryptoauthlib-20250510-cp310-cp310-manylinux_2_28_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

cryptoauthlib-20250510-cp310-cp310-macosx_10_9_universal2.whl (430.3 kB view details)

Uploaded CPython 3.10macOS 10.9+ universal2 (ARM64, x86-64)

cryptoauthlib-20250510-cp39-cp39-win_amd64.whl (155.0 kB view details)

Uploaded CPython 3.9Windows x86-64

cryptoauthlib-20250510-cp39-cp39-win32.whl (134.2 kB view details)

Uploaded CPython 3.9Windows x86

cryptoauthlib-20250510-cp39-cp39-manylinux_2_28_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ x86-64

cryptoauthlib-20250510-cp39-cp39-macosx_10_9_universal2.whl (430.3 kB view details)

Uploaded CPython 3.9macOS 10.9+ universal2 (ARM64, x86-64)

File details

Details for the file cryptoauthlib-20250510.tar.gz.

File metadata

  • Download URL: cryptoauthlib-20250510.tar.gz
  • Upload date:
  • Size: 565.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for cryptoauthlib-20250510.tar.gz
Algorithm Hash digest
SHA256 b3e3515233a70eab75b308b490bb46378eab378b62002f614e535d9170a46b24
MD5 fc5d1fc8528d74128ce196381e2b1b19
BLAKE2b-256 b0d206b741dc856e963610c63175f130d0e1c854c4768642594cfdefcf160e07

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-pp311-pypy311_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-pp311-pypy311_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 94651f99c20336db13f972efb6e57042d5d63f9e1449d3d7c22cc9edf2d39040
MD5 d8607982aed7613bd9dad8c0defe4de0
BLAKE2b-256 ddd4820e86e5e1005cf37529437e7aa639f478074be1ed083ba9a7e4ed66b609

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-pp311-pypy311_pp73-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-pp311-pypy311_pp73-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0e9e3993248bed7896a08ae7a923aa38780bba8f70570bc7a029aa4dab34c5e8
MD5 e7c2d36547580173834a8668d6386971
BLAKE2b-256 5d055a8148c4d863e7a4b962a05e12a97ec4424441e053a356ec7200c26cc07b

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-pp310-pypy310_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-pp310-pypy310_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 c02b73395e6358384bd985dd3a85fb12eeb90a1093abe62bd4cf940745eb34c0
MD5 5c3e0ddcb997aa642f145f5e906b0726
BLAKE2b-256 84de9bf20b47ecaa0495dedbfe917ebee8189e35cedec313abcd35c3ab52e497

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6eea72fa37c3e1539b457c659b5b911894137eeb418f1fb21e5de2b4a98a79fa
MD5 23a0a516fddab80d9c1bcbd34ade207f
BLAKE2b-256 ebafdefcd590f51f5e12dd1cc3ec584d0e4f8ba8b6911f5414e1944bb7f7caf3

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-pp39-pypy39_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-pp39-pypy39_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 d3a558d6ed6a650408ba03cd52daa6864957b965833a3302b528453c16b61e48
MD5 34aca9d0fd8f7f83e1f70ecd4ff1b543
BLAKE2b-256 5a80ac6237cef7d67fe5f6ccd1897b70600319bd2bc5b98b70e3a54b05f41fea

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f6d6d59dd1b6ea4ddd2e28e554b12e4b9b54174861d050192a1d63f7b07ecee8
MD5 9c1cbbd75aaf806700a60cc1a516d2a3
BLAKE2b-256 9668c479c73f47f9acd320d4eaba44c8b0fdd9a5a3d9cce0ac8100525b459a44

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 b5f5fb4c1ccc5e9234a775218fc259ca8692ad939e056ea7da92493eb92dc9cf
MD5 4bea573c6db3712d2c2e4bf521159c5a
BLAKE2b-256 e97599d3531162d8d0b859dd11e7924959e9294abaf1d0923afaae79631e9d42

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-cp313-cp313-win32.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 14bd7c1bc981d2a70f52d5f49c50a29b8d7eb6be708e0a69daf490a128a2f6b8
MD5 04642210d8572378ac546fcc7e39fa88
BLAKE2b-256 b26220198929392eadc21e355aed3985579addac1c7ddbf9500d79286d262dc8

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 07522dd5c71fd02d618995e1680d669181887ee5bfaf21ac3d47cebb9956da22
MD5 9edf0c7e98f8dfa3e46cfaed416d2ea2
BLAKE2b-256 7b4caba02d1fd6aada973664dbf433e97c2cc94c6b2c0d874407f843bc0c5bab

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-cp313-cp313-macosx_10_13_universal2.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-cp313-cp313-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 6aa76727b6c322ca47791bbb99f369b6c766db314257824b7e40d44b174afc80
MD5 1273c2c64f0dfdead39324e3c00849f9
BLAKE2b-256 df9b2c2f6df0447a0acca2e62785ae6bdf93c8dde1017e078b3759fe78f23cbe

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 5b7a27e20bcef11157d01c3a332ffa06fb664d92100a8c0185f463881d746528
MD5 aef00b3d48e685d3928b481929df259a
BLAKE2b-256 eb568d21304ad3d7b525aa0469dd31dca2a7ef7c5133c4eb49ddec019883802b

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-cp312-cp312-win32.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 0ddf1174632fcbcf8094fdced4cd8ab129d84df96d4d92b35a3dfbb426db3d3f
MD5 084b203c3ca1eb1f974b5cf77632d26b
BLAKE2b-256 f94e0995672c811fdd1b7bed6aa9558fecc7f84763b1be611150c5dbfd2bda31

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 50080df0952a4c70ce2147d7b25fe2036d0a22379b427856998760c00913a3c3
MD5 3a7317053a3a01543428026bd78a0f8c
BLAKE2b-256 7a9fa49751687f98fa72c28852d3d822712387befb03520471e11cfb2f0b634a

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-cp312-cp312-macosx_10_13_universal2.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-cp312-cp312-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 7fc289b2fe6765d1ea5f900a3b0ddcbae0d05231def9ab2ba3b5f6ae261b6824
MD5 2dfcfd0526ad73bde7411cccae62a023
BLAKE2b-256 87e779338e4344559c6c896b51dd6193ede1d476772e6b158eb1d889476230c9

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 3d403d20754abdeb3b11c06820ac9258ccf130215bee6008dccf04239a0fc468
MD5 28859144e1402cdd8409ce7c44568256
BLAKE2b-256 be6cb318163f58fc1526db993328b942d58f884f77bb3f335c05d43aa26fe518

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-cp311-cp311-win32.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 d7eae4569779b29bafd2954170c692ab4379d2d21cafaae51ef61c4a8b68e736
MD5 9e9cdc34dc598b848dd10d498a2e3c7c
BLAKE2b-256 7eb142f3c781a3976a5b71f8446385a6d4b82426d09354fc2361ff851bb427d7

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2575b55174189bf59c4d4c51a624c9152b40eb04de8064a89d2b269fdb7e489c
MD5 8171f4ab06a9bac6dbdbc7ddbbf39202
BLAKE2b-256 1c73d5ce7ae1cdd5cc49b2d109afd69826b918364561cc5c62fef024cdfb63bd

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-cp311-cp311-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 76d625ce2036889c217b52753b4ee679ebba2e6f549f033e8a1e47508ecd81d4
MD5 f0520ed2a7d5ac459457b780a976880d
BLAKE2b-256 bb0e6147b335aa3dbeae68f7390ca98a548cd42d8e5fcf82dfca42d1e3ef4ecf

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 17c3f668c84fae2efa07bd799ad7148e70e72de1ce5b6abe38d7263cc06a8b54
MD5 e2cc8343dd00ffd245501a03034886ef
BLAKE2b-256 ca1bde2a020be31181cda6d77c1d5ccda0650da1c451b55cf25880212e0174e9

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-cp310-cp310-win32.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 2b9ce6a40cd843adbcd9947b11cce7840b2852446b2968c025f659a1f4aa72dd
MD5 814ffb44405589a07361582aea3bf4fd
BLAKE2b-256 a3788f95245d0424bb834fe49c264c028b1025a95d39121ce42b0fc6dfeb79fd

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5c4eaf6fbe012d84e06b08fa484e2c4d802cc9db7f35bc17482d21046b4a8955
MD5 dbb5a6b8a025d15d98fce15c143bc3e9
BLAKE2b-256 22c41807d9ba86460c2cf121ad53fce7aa18c8a1c62a139bc19d6f5c4e1251ad

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-cp310-cp310-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 e4c1b67632ac9cfd621d976e30eb67102507ee2083df1eb7de3dfffced72ebb8
MD5 4a4093967d3b805c0df45043bc475395
BLAKE2b-256 31364c3bd431df3197007827ea6736204f154f911641ffb3dfcb3b3c5886c48a

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 c1162c7a36c3d98c41c8fbe9f425e85ced03e99b9cbfae75971d55bbeedf1d45
MD5 62ea9ccacb4ea41744f91e1cf01597fc
BLAKE2b-256 d93feaca11d85c082db3f3d8a247c29bdf9d88d40fa9cb814fce9d7132585808

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-cp39-cp39-win32.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 b46cb4e47e6cfa3ab6184fd10563878f50a5653ac8944d7dace0c6c949bf3ab4
MD5 b52fd8afc351c64ae2102b56aa6aed7b
BLAKE2b-256 94d9af1feebed3b087695a24b0a98b925e8134df8f650c4aaae6f2f8909edd7f

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-cp39-cp39-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5e2b9597ea22314439854424a838932c31f4da250d2362c6e127de3404447fb1
MD5 2618b8462becadedc6ac17c6abd2f1a9
BLAKE2b-256 bd58a47baccc77ac865b03bdadde4a5849a2600a5aa4aadfa4c5ee60bc4ec16c

See more details on using hashes here.

File details

Details for the file cryptoauthlib-20250510-cp39-cp39-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for cryptoauthlib-20250510-cp39-cp39-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 5f995746688a7d54a854c37d325a2598c9199a30a20dd5926b1d9a35fe07ccdf
MD5 e1b5944b4907e036df65def5bc8772d9
BLAKE2b-256 b48e51cbab84ae361f5c9dd5a276176739f6891891f13d0a2700576983c54f8f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page