X-Git-Url: http://www.git.cypherpunks.ru/?a=blobdiff_plain;f=doc%2Ffeatures.rst;h=76d6830d3913f6872ae1a2f25608f5a9d1916515;hb=7af6ff46e2927030706fc4c0df0ddeadfa55dd79;hp=34fe9419d3b6f4aa30dcc9f19a52c6843d68570c;hpb=13ea772db7870683065ac15197888cd037df78f0;p=pyderasn.git diff --git a/doc/features.rst b/doc/features.rst index 34fe941..76d6830 100644 --- a/doc/features.rst +++ b/doc/features.rst @@ -37,7 +37,7 @@ Also there is `asn1crypto `__. * Extensive and comprehensive `hypothesis `__ driven tests coverage. It also has been fuzzed with - `python-afl `__. + `python-afl `__ * Some kind of strong typing: SEQUENCEs require the exact **type** of settable values, even when they are inherited (assigning ``Integer`` to the field with the type ``CMSVersion(Integer)`` is not allowed) @@ -47,12 +47,9 @@ Also there is `asn1crypto `__. 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. +* ``__slots__``, ``copy.copy()``, ``pickle``, `Cython `__ + friendliness +* 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,8 +74,13 @@ Also there is `asn1crypto `__. 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`` -There are drawbacks: + .. figure:: pprinting.png + :alt: Pretty printing example output -* No old Python versions support -* See :ref:`limitations ` + An example of pretty printed X.509 certificate with automatically + parsed DEFINED BY fields.