本文整理汇总了Python中pyaes.Encrypter方法的典型用法代码示例。如果您正苦于以下问题:Python pyaes.Encrypter方法的具体用法?Python pyaes.Encrypter怎么用?Python pyaes.Encrypter使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pyaes
的用法示例。
在下文中一共展示了pyaes.Encrypter方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: encrypt_aes_cbc
# 需要导入模块: import pyaes [as 别名]
# 或者: from pyaes import Encrypter [as 别名]
def encrypt_aes_cbc(key, plaintext, iv=None):
"""Return AES CBC encrypted string.
Args:
key (bytes): The encryption key.
plaintext (str|bytes): The text to encrypt.
iv (bytes, optional): The CBC initial vector.
Returns:
bytes: The encoded string.
"""
iv = iv or b'\0' * 16
# ensure key is bytes
if isinstance(key, str):
key = key.encode()
# ensure plaintext is bytes
if isinstance(plaintext, str):
plaintext = plaintext.encode()
# ensure iv is bytes
if isinstance(iv, str):
iv = iv.encode()
aes_cbc_encrypt = pyaes.Encrypter(pyaes.AESModeOfOperationCBC(key, iv=iv))
encrypted = aes_cbc_encrypt.feed(plaintext)
encrypted += aes_cbc_encrypt.feed()
return encrypted
示例2: use_slow_bundled_cryptography_module
# 需要导入模块: import pyaes [as 别名]
# 或者: from pyaes import Encrypter [as 别名]
def use_slow_bundled_cryptography_module():
import pyaes
msg = "To make the program a *lot* faster, please install cryptography module: "
msg += "pip install cryptography\n"
print(msg, flush=True, file=sys.stderr)
class BundledEncryptorAdapter:
__slots__ = ('mode', )
def __init__(self, mode):
self.mode = mode
def encrypt(self, data):
encrypter = pyaes.Encrypter(self.mode, pyaes.PADDING_NONE)
return encrypter.feed(data) + encrypter.feed()
def decrypt(self, data):
decrypter = pyaes.Decrypter(self.mode, pyaes.PADDING_NONE)
return decrypter.feed(data) + decrypter.feed()
def create_aes_ctr(key, iv):
ctr = pyaes.Counter(iv)
return pyaes.AESModeOfOperationCTR(key, ctr)
def create_aes_cbc(key, iv):
mode = pyaes.AESModeOfOperationCBC(key, iv)
return BundledEncryptorAdapter(mode)
return create_aes_ctr, create_aes_cbc
示例3: TestIssue15
# 需要导入模块: import pyaes [as 别名]
# 或者: from pyaes import Encrypter [as 别名]
def TestIssue15():
print('Issue #15')
key = b"abcdefghijklmnop"
iv = b"0123456789012345"
encrypter = pyaes.Encrypter(pyaes.AESModeOfOperationCBC(key, iv))
plaintext = b"Hello World!!!!!"
ciphertext = to_bufferable('')
ciphertext += encrypter.feed(plaintext)
ciphertext += encrypter.feed('')
ciphertext += encrypter.feed(plaintext)
ciphertext += encrypter.feed(None)
expected = b'(Ob\xe5\xae"\xdc\xb0\x84\xc5\x04\x04GQ\xd8.\x0e4\xd2b\xc1\x15\xe5\x11M\xfc\x9a\xd2\xd5\xc8xP\x00[\xd57\x92\x01\xbb\xc42\x18\xbc\xbf\x1ay\x19P'
decrypter = pyaes.Decrypter(pyaes.AESModeOfOperationCBC(key, iv))
output = to_bufferable('')
output += decrypter.feed('')
output += decrypter.feed(ciphertext)
output += decrypter.feed('')
output += decrypter.feed(None)
print(" passed=%(passed)s" % dict(passed = (ciphertext == expected and output == (plaintext + plaintext))))
示例4: aes_encrypt_with_iv
# 需要导入模块: import pyaes [as 别名]
# 或者: from pyaes import Encrypter [as 别名]
def aes_encrypt_with_iv(key, iv, data):
aes_cbc = pyaes.AESModeOfOperationCBC(key, iv=iv)
aes = pyaes.Encrypter(aes_cbc)
e = aes.feed(data) + aes.feed() # empty aes.feed() appends pkcs padding
return e
示例5: _encrypt
# 需要导入模块: import pyaes [as 别名]
# 或者: from pyaes import Encrypter [as 别名]
def _encrypt(self, data, iv):
encrypter = pyaes.Encrypter(
pyaes.AESModeOfOperationCBC(self._hash.hash, iv=native(iv)))
enc_data = encrypter.feed(self.MAGIC_DETECT_ENC + data)
enc_data += encrypter.feed()
return enc_data
示例6: encrypt_py
# 需要导入模块: import pyaes [as 别名]
# 或者: from pyaes import Encrypter [as 别名]
def encrypt_py(plain_text, key):
if plain_text:
try:
scraper_key = hashlib.sha256(key).digest()
IV = '\0' * 16
decrypter = pyaes.Encrypter(pyaes.AESModeOfOperationCBC(scraper_key, IV))
cipher_text = decrypter.feed(plain_text)
cipher_text += decrypter.feed()
except Exception as e:
log_utils.log_warning('Exception during Py Encrypt: %s' % (e))
cipher_text = ''
else:
cipher_text = ''
return cipher_text
示例7: aes_cbc_encrypt
# 需要导入模块: import pyaes [as 别名]
# 或者: from pyaes import Encrypter [as 别名]
def aes_cbc_encrypt(key: bytes, iv: bytes, data: str) -> bytes:
encrypter = Encrypter(AESModeOfOperationCBC(key, iv))
encrypted = encrypter.feed(data) + encrypter.feed()
return encrypted