Reference ========= This is the class and function reference. For more usage information see the :ref:`usage` page. Functions --------- .. autofunction:: rsa.encrypt .. autofunction:: rsa.decrypt .. autofunction:: rsa.sign .. autofunction:: rsa.verify .. autofunction:: rsa.find_signature_hash .. autofunction:: rsa.newkeys(keysize) Classes ------- .. note:: Storing public and private keys via the `pickle` module is possible. However, it is insecure to load a key from an untrusted source. The pickle module is not secure against erroneous or maliciously constructed data. Never unpickle data received from an untrusted or unauthenticated source. .. autoclass:: rsa.PublicKey :members: :inherited-members: .. autoclass:: rsa.PrivateKey :members: :inherited-members: Exceptions ---------- .. autoclass:: rsa.pkcs1.CryptoError(Exception) .. autoclass:: rsa.pkcs1.DecryptionError(CryptoError) .. autoclass:: rsa.pkcs1.VerificationError(CryptoError) .. index:: VARBLOCK (file format) The VARBLOCK file format ++++++++++++++++++++++++ .. warning:: The VARBLOCK format is NOT recommended for general use, has been deprecated since Python-RSA 3.4, and was removed in version 4.0. It's vulnerable to a number of attacks. See :ref:`bigfiles` for more information. The VARBLOCK file format allows us to encrypt files that are larger than the RSA key. The format is as follows; || denotes byte string concatenation:: VARBLOCK := VERSION || BLOCK || BLOCK || ... VERSION := 1 BLOCK := LENGTH || DATA LENGTH := varint-encoded length of the following data, in bytes DATA := the data to store in the block The varint-format was taken from Google's Protobuf_, and allows us to efficiently encode an arbitrarily long integer. .. _Protobuf: https://code.google.com/apis/protocolbuffers/docs/encoding.html#varints Module: rsa.core ---------------- At the core of the RSA encryption method lie these functions. They both operate on (arbitrarily long) integers only. They probably aren't of much use to you, but I wanted to document them anyway as they are the core of the entire library. .. autofunction:: rsa.core.encrypt_int .. autofunction:: rsa.core.decrypt_int