7#include <QtNetwork/private/qsslkey_p.h>
9#include <QtCore/qbytearray.h>
11#include <CommonCrypto/CommonCrypto.h>
26 CCAlgorithm ccAlgorithm = {};
30 ccAlgorithm = kCCAlgorithmDES;
34 ccAlgorithm = kCCAlgorithm3DES;
38 ccAlgorithm = kCCAlgorithmRC2;
44 ccAlgorithm = kCCAlgorithmAES;
47 std::size_t plainLength = 0;
49 CCCryptorStatus status = CCCrypt(ccOp, ccAlgorithm, kCCOptionPKCS7Padding,
50 key.constData(), std::size_t(
key.size()),
51 iv.constData(),
data.constData(), std::size_t(
data.size()),
52 plain.data(), std::size_t(plain.size()), &plainLength);
53 if (status == kCCSuccess)
54 return plain.left(
int(plainLength));
64 return wrapCCCrypt(kCCDecrypt, cipher,
data,
key, iv);
70 return wrapCCCrypt(kCCEncrypt, cipher,
data,
key, iv);
QByteArray decrypt(Cipher cipher, const QByteArray &data, const QByteArray &key, const QByteArray &iv) const override
QByteArray encrypt(Cipher cipher, const QByteArray &data, const QByteArray &key, const QByteArray &iv) const override
Combined button and popup list for selecting options.
Namespace containing onternal types that TLS backends implement.
GLint GLsizei GLsizei GLenum GLenum GLsizei void * data