doc/features.rst | 14 ++++++++++---- diff --git a/doc/features.rst b/doc/features.rst index 1d9afae1c83669dce95350f5b6f84defde30b92994f2ab56e54c9cb1fa1d59a8..3136a5a2f091678d0fd8c70dc405273bd18846fda650266a535f07d5395f6046 100644 --- a/doc/features.rst +++ b/doc/features.rst @@ -48,10 +48,6 @@ automatically set required tags) * Descriptive errors, like ``pyderasn.DecodeError: UTCTime (tbsCertificate:validity:notAfter:utcTime) (at 328) invalid UTCTime format`` * ``__slots__`` friendliness -* :ref:`Pretty printer ` and - :ref:`command-line decoder `, that could - conveniently replace utilities like either ``dumpasn1`` or - ``openssl asn1parse`` * Could be significantly faster and have lower memory usage. For example parsing of CACert.org's CRL (8.48 MiB) on FreeBSD 12.0 amd64, Intel Core i5-6200U 2.3 GHz machine, Python 3.5.5/2.7.15: @@ -77,6 +73,16 @@ - ``CertificateList().decode(data)`` (CertificateList is converted ``pyasn1`` scheme definition) - 27.6 / 32.5 - 498 / 488 +* :ref:`Pretty printer ` and + :ref:`command-line decoder `, that could + conveniently replace utilities like either ``dumpasn1`` or + ``openssl asn1parse`` + + .. figure:: pprinting.png + :alt: Pretty printing example output + + An example of pretty printed X.509 certificate with automatically + parsed DEFINED BY fields. There are drawbacks: