This file is indexed.

/usr/share/doc/python-pycryptodome-doc/html/_sources/src/api.rst.txt is in python-pycryptodome-doc 3.4.7-1ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
API documentation
-----------------

.. toctree::
    :hidden:

    cipher/cipher
    signature/signature
    hash/hash
    public_key/public_key
    protocol/protocol
    io/io
    random/random
    util/util

All cryptographic functionalities are organized in sub-packages;
each sub-package is dedicated to solving a specific class of problems.

.. csv-table:: 
    :header: Package, Description
    :widths: 20, 80

    :doc:`Crypto.Cipher <cipher/cipher>`, "Modules for protecting **confidentiality**
    that is, for encrypting and decrypting data (example: AES)."
    :doc:`Crypto.Signature <signature/signature>`, "Modules for assuring **authenticity**,
    that is, for creating and verifying digital signatures of messages
    (example: PKCS#1 v1.5)."
    :doc:`Crypto.Hash <hash/hash>`, "Modules for creating cryptographic **digests**
    (example: SHA-256)."
    :doc:`Crypto.PublicKey <public_key/public_key>`, "Modules for generating, exporting or importing
    *public keys* (example: RSA or ECC)."
    :doc:`Crypto.Protocol <protocol/protocol>`, "Modules for faciliting secure communications
    between parties, in most cases by leveraging cryptograpic primitives
    from other modules (example: Shamir's Secret Sharing scheme)."
    :doc:`Crypto.IO <io/io>`, "Modules for dealing with encodings commonly used
    for cryptographic data (example: PEM)."
    :doc:`Crypto.Random <random/random>`, "Modules for generating random data."
    :doc:`Crypto.Util <util/util>`, "General purpose routines (example: XOR for byte
    strings)."

In certain cases, there is some overlap between these categories.
For instance, **authenticity** is also provided by *Message Authentication Codes*,
and some can be built using digests, so they are included in the ``Crypto.Hash``
package (example: HMAC).
Also, cryptographers have over time realized that encryption without
**authentication** is often of limited value so recent ciphers found in the
``Crypto.Cipher`` package embed it (example: GCM).

*PyCryptodome* strives to maintain strong backward compatibility with the old
*PyCrypto*'s API (except for those few cases where that is harmful to security)
so a few modules don't appear where they should (example: the ASN.1 module
is under ``Crypto.Util`` as opposed to ``Crypto.IO``).