X7ROOT File Manager
Current Path:
/usr/lib64/python3.6/site-packages/cryptography/hazmat/primitives/asymmetric
usr
/
lib64
/
python3.6
/
site-packages
/
cryptography
/
hazmat
/
primitives
/
asymmetric
/
??
..
??
__init__.py
(1020 B)
??
__pycache__
??
dh.py
(5.53 KB)
??
dsa.py
(7.01 KB)
??
ec.py
(13.68 KB)
??
ed25519.py
(2.34 KB)
??
ed448.py
(2.27 KB)
??
padding.py
(2.2 KB)
??
rsa.py
(10.25 KB)
??
utils.py
(1.33 KB)
??
x25519.py
(2.22 KB)
??
x448.py
(2.2 KB)
Editing: x25519.py
# This file is dual licensed under the terms of the Apache License, Version # 2.0, and the BSD License. See the LICENSE file in the root of this repository # for complete details. from __future__ import absolute_import, division, print_function import abc import six from cryptography.exceptions import UnsupportedAlgorithm, _Reasons @six.add_metaclass(abc.ABCMeta) class X25519PublicKey(object): @classmethod def from_public_bytes(cls, data): from cryptography.hazmat.backends.openssl.backend import backend if not backend.x25519_supported(): raise UnsupportedAlgorithm( "X25519 is not supported by this version of OpenSSL.", _Reasons.UNSUPPORTED_EXCHANGE_ALGORITHM, ) return backend.x25519_load_public_bytes(data) @abc.abstractmethod def public_bytes(self, encoding, format): """ The serialized bytes of the public key. """ @six.add_metaclass(abc.ABCMeta) class X25519PrivateKey(object): @classmethod def generate(cls): from cryptography.hazmat.backends.openssl.backend import backend if not backend.x25519_supported(): raise UnsupportedAlgorithm( "X25519 is not supported by this version of OpenSSL.", _Reasons.UNSUPPORTED_EXCHANGE_ALGORITHM, ) return backend.x25519_generate_key() @classmethod def from_private_bytes(cls, data): from cryptography.hazmat.backends.openssl.backend import backend if not backend.x25519_supported(): raise UnsupportedAlgorithm( "X25519 is not supported by this version of OpenSSL.", _Reasons.UNSUPPORTED_EXCHANGE_ALGORITHM, ) return backend.x25519_load_private_bytes(data) @abc.abstractmethod def public_key(self): """ The serialized bytes of the public key. """ @abc.abstractmethod def private_bytes(self, encoding, format, encryption_algorithm): """ The serialized bytes of the private key. """ @abc.abstractmethod def exchange(self, peer_public_key): """ Performs a key exchange operation using the provided peer's public key. """
Upload File
Create Folder