Skip to main content
Files added late

2 files were added to this release more than 14 days after its initial publication. Inspect the release files before installing.

Latest Version https://travis-ci.org/pyca/pynacl.svg?branch=master https://codecov.io/github/pyca/pynacl/coverage.svg?branch=master Compatible Python Versions

PyNaCl is a Python binding to libsodium, which is a fork of the Networking and Cryptography library. These libraries have a stated goal of improving usability, security and speed. It supports Python 2.7 and 3.5+ as well as PyPy 2.6+.

Features

  • Digital signatures

  • Secret-key encryption

  • Public-key encryption

  • Hashing and message authentication

  • Password based key derivation and password hashing

Changelog

Installation

Binary wheel install

PyNaCl ships as a binary wheel on macOS, Windows and Linux manylinux1 [1] , so all dependencies are included. Make sure you have an up-to-date pip and run:

$ pip install pynacl

Linux source build

PyNaCl relies on libsodium, a portable C library. A copy is bundled with PyNaCl so to install you can run:

$ pip install pynacl

If you’d prefer to use the version of libsodium provided by your distribution, you can disable the bundled copy during install by running:

$ SODIUM_INSTALL=system pip install pynacl

Changelog

1.4.0 (2020-05-25)

  • Update libsodium to 1.0.18.

  • BACKWARDS INCOMPATIBLE: We no longer distribute 32-bit manylinux1 wheels. Continuing to produce them was a maintenance burden.

  • Added support for Python 3.8, and removed support for Python 3.4.

  • Add low level bindings for extracting the seed and the public key from crypto_sign_ed25519 secret key

  • Add low level bindings for deterministic random generation.

  • Add wheel and setuptools setup_requirements in setup.py (#485)

  • Fix checks on very slow builders (#481, #495)

  • Add low-level bindings to ed25519 arithmetic functions

  • Update low-level blake2b state implementation

  • Fix wrong short-input behavior of SealedBox.decrypt() (#517)

  • Raise CryptPrefixError exception instead of InvalidkeyError when trying to check a password against a verifier stored in a unknown format (#519)

  • Add support for minimal builds of libsodium. Trying to call functions not available in a minimal build will raise an UnavailableError exception. To compile a minimal build of the bundled libsodium, set the SODIUM_INSTALL_MINIMAL environment variable to any non-empty string (e.g. SODIUM_INSTALL_MINIMAL=1) for setup.

1.3.0 2018-09-26

  • Added support for Python 3.7.

  • Update libsodium to 1.0.16.

  • Run and test all code examples in PyNaCl docs through sphinx’s doctest builder.

  • Add low-level bindings for chacha20-poly1305 AEAD constructions.

  • Add low-level bindings for the chacha20-poly1305 secretstream constructions.

  • Add low-level bindings for ed25519ph pre-hashed signing construction.

  • Add low-level bindings for constant-time increment and addition on fixed-precision big integers represented as little-endian byte sequences.

  • Add low-level bindings for the ISO/IEC 7816-4 compatible padding API.

  • Add low-level bindings for libsodium’s crypto_kx… key exchange construction.

  • Set hypothesis deadline to None in tests/test_pwhash.py to avoid incorrect test failures on slower processor architectures. GitHub issue #370

1.2.1 - 2017-12-04

  • Update hypothesis minimum allowed version.

  • Infrastructure: add proper configuration for readthedocs builder runtime environment.

1.2.0 - 2017-11-01

  • Update libsodium to 1.0.15.

  • Infrastructure: add jenkins support for automatic build of manylinux1 binary wheels

  • Added support for SealedBox construction.

  • Added support for argon2i and argon2id password hashing constructs and restructured high-level password hashing implementation to expose the same interface for all hashers.

  • Added support for 128 bit siphashx24 variant of siphash24.

  • Added support for from_seed APIs for X25519 keypair generation.

  • Dropped support for Python 3.3.

1.1.2 - 2017-03-31

  • reorder link time library search path when using bundled libsodium

1.1.1 - 2017-03-15

  • Fixed a circular import bug in nacl.utils.

1.1.0 - 2017-03-14

  • Dropped support for Python 2.6.

  • Added shared_key() method on Box.

  • You can now pass None to nonce when encrypting with Box or SecretBox and it will automatically generate a random nonce.

  • Added support for siphash24.

  • Added support for blake2b.

  • Added support for scrypt.

  • Update libsodium to 1.0.11.

  • Default to the bundled libsodium when compiling.

  • All raised exceptions are defined mixing-in nacl.exceptions.CryptoError

1.0.1 - 2016-01-24

  • Fix an issue with absolute paths that prevented the creation of wheels.

1.0 - 2016-01-23

  • PyNaCl has been ported to use the new APIs available in cffi 1.0+. Due to this change we no longer support PyPy releases older than 2.6.

  • Python 3.2 support has been dropped.

  • Functions to convert between Ed25519 and Curve25519 keys have been added.

0.3.0 - 2015-03-04

  • The low-level API (nacl.c.*) has been changed to match the upstream NaCl C/C++ conventions (as well as those of other NaCl bindings). The order of arguments and return values has changed significantly. To avoid silent failures, nacl.c has been removed, and replaced with nacl.bindings (with the new argument ordering). If you have code which calls these functions (e.g. nacl.c.crypto_box_keypair()), you must review the new docstrings and update your code/imports to match the new conventions.

Metadata

Release files for PyNaCl 1.4.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Files added late

2 files were uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release files before installing.

Source distribution (sdist)

Source distribution for PyNaCl 1.4.0
File Size Uploaded
PyNaCl-1.4.0.tar.gz 3.4 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for PyNaCl 1.4.0
File
PyNaCl-1.4.0-cp38-cp38-win_amd64.whl CPython 3.8 CPython 3.8 Windows x86-64 Details
PyNaCl-1.4.0-cp38-cp38-win32.whl CPython 3.8 CPython 3.8 Windows x86-32 Details
PyNaCl-1.4.0-cp37-cp37m-win_amd64.whl CPython 3.7 CPython 3.7 pymalloc Windows x86-64 Details
PyNaCl-1.4.0-cp37-cp37m-win32.whl CPython 3.7 CPython 3.7 pymalloc Windows x86-32 Details
PyNaCl-1.4.0-cp36-cp36m-win_amd64.whl CPython 3.6 CPython 3.6 pymalloc Windows x86-64 Details
PyNaCl-1.4.0-cp36-cp36m-win32.whl CPython 3.6 CPython 3.6 pymalloc Windows x86-32 Details
PyNaCl-1.4.0-cp35-cp35m-win_amd64.whl CPython 3.5 CPython 3.5 pymalloc Windows x86-64 Details
PyNaCl-1.4.0-cp35-cp35m-win32.whl CPython 3.5 CPython 3.5 pymalloc Windows x86-32 Details
PyNaCl-1.4.0-cp35-abi3-win_amd64.whl CPython 3.5 abi3 Windows x86-64 Details
PyNaCl-1.4.0-cp35-abi3-win32.whl CPython 3.5 abi3 Windows x86-32 Details
PyNaCl-1.4.0-cp35-abi3-manylinux1_x86_64.whl CPython 3.5 abi3 Linux glibc 2.5+ x86-64 Details
PyNaCl-1.4.0-cp35-abi3-macosx_10_10_x86_64.whl CPython 3.5 abi3 macOS 10.10+ x86-64 Details
PyNaCl-1.4.0-cp27-cp27mu-manylinux1_x86_64.whl CPython 2.7 CPython 2.7 pymalloc wide-unicode Linux glibc 2.5+ x86-64 Details
PyNaCl-1.4.0-cp27-cp27m-win_amd64.whl CPython 2.7 CPython 2.7 pymalloc Windows x86-64 Details
PyNaCl-1.4.0-cp27-cp27m-win32.whl CPython 2.7 CPython 2.7 pymalloc Windows x86-32 Details
PyNaCl-1.4.0-cp27-cp27m-manylinux1_x86_64.whl CPython 2.7 CPython 2.7 pymalloc Linux glibc 2.5+ x86-64 Details
PyNaCl-1.4.0-cp27-cp27m-macosx_10_10_x86_64.whl CPython 2.7 CPython 2.7 pymalloc macOS 10.10+ x86-64 Details

Total release size: 9.5 MB

Release files / PyNaCl-1.4.0.tar.gz

Download URL PyNaCl-1.4.0.tar.gz
Size 3.4 MB
Tags Source
SHA-256 checksum
How to use checksums
54e9a2c849c742006516ad56a88f5c74bf2ce92c9f67435187c3c5953b346505
BLAKE2b-256 checksum
How to use checksums
cf5a25aeb636baeceab15c8e57e66b8aa930c011ec1c035f284170cacb05025e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.0

Release files / PyNaCl-1.4.0-cp38-cp38-win_amd64.whl

Download URL PyNaCl-1.4.0-cp38-cp38-win_amd64.whl
Size 206.2 kB
Tags CPython 3.8 Windows x86-64
SHA-256 checksum
How to use checksums
7c6092102219f59ff29788860ccb021e80fffd953920c4a8653889c029b2d420
BLAKE2b-256 checksum
How to use checksums
4bae5f94eaee82f9636c17e714f161f3bd3f53282ff48672f9e372e0632abbc0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.0

Release files / PyNaCl-1.4.0-cp38-cp38-win32.whl

Download URL PyNaCl-1.4.0-cp38-cp38-win32.whl
Size 193.7 kB
Tags CPython 3.8 Windows x86-32
SHA-256 checksum
How to use checksums
9c4a7ea4fb81536c1b1f5cc44d54a296f96ae78c1ebd2311bd0b60be45a48d96
BLAKE2b-256 checksum
How to use checksums
142a185f30a9a4a0f5cff27617ce5bb8bfcd9ec59c1a057459b2224f0bf73e3a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.0

Release files / PyNaCl-1.4.0-cp37-cp37m-win_amd64.whl

Download URL PyNaCl-1.4.0-cp37-cp37m-win_amd64.whl
Size 206.2 kB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
537a7ccbea22905a0ab36ea58577b39d1fa9b1884869d173b5cf111f006f689f
BLAKE2b-256 checksum
How to use checksums
6dd9e07edb489aacc819ff76cab97d7de751c6d00f48c6a600a9f4b7745080c4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.0

Release files / PyNaCl-1.4.0-cp37-cp37m-win32.whl

Download URL PyNaCl-1.4.0-cp37-cp37m-win32.whl
Size 193.7 kB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
8122ba5f2a2169ca5da936b2e5a511740ffb73979381b4229d9188f6dcb22f1f
BLAKE2b-256 checksum
How to use checksums
18f3e4424147cffbd80f0034b60d9e438ce6b78b3e285174656296353a398ba6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.0

Release files / PyNaCl-1.4.0-cp36-cp36m-win_amd64.whl

Download URL PyNaCl-1.4.0-cp36-cp36m-win_amd64.whl
Size 206.2 kB
Tags CPython 3.6 CPython 3.6 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
cd401ccbc2a249a47a3a1724c2918fcd04be1f7b54eb2a5a71ff915db0ac51c6
BLAKE2b-256 checksum
How to use checksums
720ac489e5fd7ed00993f0d7e96faa1b1ecbec6cb64e6fdeba1f200d3f7be410
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.0

Release files / PyNaCl-1.4.0-cp36-cp36m-win32.whl

Download URL PyNaCl-1.4.0-cp36-cp36m-win32.whl
Size 193.7 kB
Tags CPython 3.6 CPython 3.6 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
11335f09060af52c97137d4ac54285bcb7df0cef29014a1a4efe64ac065434c4
BLAKE2b-256 checksum
How to use checksums
c39bc13053cba246d309a1c7739cc4d21d25088007f5ca43d16ee43a6916e789
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.0

Release files / PyNaCl-1.4.0-cp35-cp35m-win_amd64.whl

Download URL PyNaCl-1.4.0-cp35-cp35m-win_amd64.whl
Size 206.2 kB
Tags CPython 3.5 CPython 3.5 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
511d269ee845037b95c9781aa702f90ccc36036f95d0f31373a6a79bd8242e25
BLAKE2b-256 checksum
How to use checksums
ac2a9053b4f121d2f99b7e9ae7cfb6e838d04aa824dd954b90693dc11417cd6b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.0

Release files / PyNaCl-1.4.0-cp35-cp35m-win32.whl

Download URL PyNaCl-1.4.0-cp35-cp35m-win32.whl
Size 193.7 kB
Tags CPython 3.5 CPython 3.5 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
06cbb4d9b2c4bd3c8dc0d267416aaed79906e7b33f114ddbf0911969794b1cc4
BLAKE2b-256 checksum
How to use checksums
0a1f284efd64abcbfc433cd931324fefa70159bb5b2b0672537099453f8be34e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.0

Release files / PyNaCl-1.4.0-cp35-abi3-win_amd64.whl

File added late

This file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release file before installing.

Download URL PyNaCl-1.4.0-cp35-abi3-win_amd64.whl
Size 206.2 kB
Tags CPython 3.5 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
c914f78da4953b33d4685e3cdc7ce63401247a21425c16a39760e282075ac4a6
BLAKE2b-256 checksum
How to use checksums
8ca61e94dd44f8b4a1be93a7cf5f61e5998475acd44b30cb49aee0beb5b62cc7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.1 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.3

Release files / PyNaCl-1.4.0-cp35-abi3-win32.whl

File added late

This file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release file before installing.

Download URL PyNaCl-1.4.0-cp35-abi3-win32.whl
Size 193.7 kB
Tags CPython 3.5 Windows x86-32 abi3
SHA-256 checksum
How to use checksums
4e10569f8cbed81cb7526ae137049759d2a8d57726d52c1a000a3ce366779634
BLAKE2b-256 checksum
How to use checksums
50b80918da3835e72a81dfe5da23e7f00b0bf6bafa44ff8e61d68d3789b72050
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.1 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.3

Release files / PyNaCl-1.4.0-cp35-abi3-manylinux1_x86_64.whl

Download URL PyNaCl-1.4.0-cp35-abi3-manylinux1_x86_64.whl
Size 961.1 kB
Tags CPython 3.5 Linux glibc 2.5+ x86-64 abi3
SHA-256 checksum
How to use checksums
30f9b96db44e09b3304f9ea95079b1b7316b2b4f3744fe3aaecccd95d547063d
BLAKE2b-256 checksum
How to use checksums
9d572f5e6226a674b2bcb6db531e8b383079b678df5b10cdaa610d6cf20d77ba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.0

Release files / PyNaCl-1.4.0-cp35-abi3-macosx_10_10_x86_64.whl

Download URL PyNaCl-1.4.0-cp35-abi3-macosx_10_10_x86_64.whl
Size 380.1 kB
Tags CPython 3.5 abi3 macOS 10.10+ x86-64
SHA-256 checksum
How to use checksums
757250ddb3bff1eecd7e41e65f7f833a8405fede0194319f87899690624f2122
BLAKE2b-256 checksum
How to use checksums
d468a84e1cc99e4b08f857f148ba5ff6653afb954e121e8362c7a6242d8755ef
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.0

Release files / PyNaCl-1.4.0-cp27-cp27mu-manylinux1_x86_64.whl

Download URL PyNaCl-1.4.0-cp27-cp27mu-manylinux1_x86_64.whl
Size 964.9 kB
Tags CPython 2.7 CPython 2.7 pymalloc wide-unicode Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
7757ae33dae81c300487591c68790dfb5145c7d03324000433d9a2c141f82af7
BLAKE2b-256 checksum
How to use checksums
de63bb36279da38df643c6df3a8a389f29a6ff4a8854468f4c9b9d925b27d57d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.0

Release files / PyNaCl-1.4.0-cp27-cp27m-win_amd64.whl

Download URL PyNaCl-1.4.0-cp27-cp27m-win_amd64.whl
Size 192.4 kB
Tags CPython 2.7 CPython 2.7 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
f8851ab9041756003119368c1e6cd0b9c631f46d686b3904b18c0139f4419f80
BLAKE2b-256 checksum
How to use checksums
d84cb9911c363e9d69b7de636a435d44b49d113df98a064df7386a8ad57c342b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.0

Release files / PyNaCl-1.4.0-cp27-cp27m-win32.whl

Download URL PyNaCl-1.4.0-cp27-cp27m-win32.whl
Size 196.6 kB
Tags CPython 2.7 CPython 2.7 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
2fe0fc5a2480361dcaf4e6e7cea00e078fcda07ba45f811b167e3f99e8cff574
BLAKE2b-256 checksum
How to use checksums
b25c666409c551f413a95ef57ed949122c32c4464e60d06c13c32ae007f2a9f9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.0

Release files / PyNaCl-1.4.0-cp27-cp27m-manylinux1_x86_64.whl

Download URL PyNaCl-1.4.0-cp27-cp27m-manylinux1_x86_64.whl
Size 964.9 kB
Tags CPython 2.7 CPython 2.7 pymalloc Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
d452a6746f0a7e11121e64625109bc4468fc3100452817001dbe018bb8b08514
BLAKE2b-256 checksum
How to use checksums
6d5006b72d6e1ad9718219d2e2d73362496f6907d1ff6590e9e3664bd4324750
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.0

Release files / PyNaCl-1.4.0-cp27-cp27m-macosx_10_10_x86_64.whl

Download URL PyNaCl-1.4.0-cp27-cp27m-macosx_10_10_x86_64.whl
Size 380.0 kB
Tags CPython 2.7 CPython 2.7 pymalloc macOS 10.10+ x86-64
SHA-256 checksum
How to use checksums
ea6841bc3a76fa4942ce00f3bda7d436fda21e2d91602b9e21b7ca9ecab8f3ff
BLAKE2b-256 checksum
How to use checksums
8c17251c05c818e4e6142a035895b1ff88b8b15afc50d481ee77d020ceaffb58
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.0

Release history Release notifications | RSS feed

1.6.1

27 release files

1.6.0

27 release files

This release

1.4.0 This release

18 release files

1.3.0

21 release files

1.1.2

28 release files

1.1.1

16 release files

1.1.0

16 release files

1.0.1

16 release files

1.0

1 release file

0.3.0

1 release file

0.2.3

1 release file

0.2.2

1 release file

0.2.1

1 release file

0.2.0

1 release file

0.1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page