Эта функция возвращает alist алгоритмов хеширования GnuTLS.
Каждая запись содержит ключ, представляющий алгоритм, за которым следует
plist с внутренней информацией об алгоритме. В plist будет присутствовать
:type gnutls-digest-algorithm, а также ключ
:digest-algorithm-length 64 для указания размера, в байтах,
результирующего хеша.
Существует параллелизм имен между алгоритмами MAC и хеширования GnuTLS, но они внутренне являются отдельными сущностями и не должны смешиваться.
Аргумент digest-method может быть полным plist из
gnutls-digests, или только символьным ключом, или строкой с
именем этого символа.
Аргумент input может быть указан как буфер или строка, или другими способами (см. Формат входных данных криптографии GnuTLS).
Эта функция возвращает nil в случае ошибки и вызывает
ошибку Lisp, если digest-method или input
недействительны. В случае успеха она возвращает список бинарной строки
(результат) и использованный IV.
Эта функция возвращает alist алгоритмов MAC GnuTLS.
Каждая запись содержит ключ, представляющий алгоритм, за которым следует
plist с внутренней информацией об алгоритме. В plist будет присутствовать
:type gnutls-mac-algorithm, а также ключи
:mac-algorithm-length, :mac-algorithm-keysize
:mac-algorithm-noncesize для указания размера, в байтах,
результирующего хеша, ключа и nonce соответственно.
Nonce в настоящее время не используется, и только некоторые MAC его поддерживают.
Существует параллелизм имен между алгоритмами MAC и хеширования GnuTLS, но они внутренне являются отдельными сущностями и не должны смешиваться.
Аргумент hash-method может быть полным plist из
gnutls-macs, или только символьным ключом, или строкой с
именем этого символа.
Аргумент key может быть указан как буфер или строка, или другими способами (см. Формат входных данных криптографии GnuTLS). Аргумент key будет очищен после использования, если это строка.
Аргумент input может быть указан как буфер или строка, или другими способами (см. Формат входных данных криптографии GnuTLS).
Эта функция возвращает nil в случае ошибки и вызывает
ошибку Lisp, если hash-method, key или
input недействительны.
В случае успеха она возвращает список бинарной строки (результат) и использованный IV.
Эта функция возвращает alist шифров GnuTLS.
Каждая запись содержит ключ, представляющий шифр, за которым следует
plist с внутренней информацией об алгоритме. В plist будет присутствовать
:type gnutls-symmetric-cipher, а также ключи
:cipher-aead-capable, установленный в nil или
t для указания возможности AEAD; и :cipher-tagsize,
:cipher-blocksize, :cipher-keysize, :cipher-ivsize
для указания размера, в байтах, тега, размера блока результирующих данных,
ключа и IV соответственно.
Аргумент cipher может быть полным plist из
gnutls-ciphers, или только символьным ключом, или строкой с
именем этого символа.
Аргумент key может быть указан как буфер или строка, или другими способами (см. Формат входных данных криптографии GnuTLS). Аргумент key будет очищен после использования, если это строка.
Аргументы iv, input и необязательный aead_auth могут быть указаны как буфер или строка, или другими способами (см. Формат входных данных криптографии GnuTLS).
aead_auth проверяется только с шифрами AEAD, то есть шифрами,
чей plist содержит :cipher-aead-capable t. В противном
случае он игнорируется.
Эта функция возвращает nil в случае ошибки и вызывает
ошибку Lisp, если cipher или key,
iv или input недействительны, или если
aead_auth был указан с шифром AEAD и оказался недействительным.
В случае успеха она возвращает список бинарной строки (результат) и использованный IV.
Аргумент cipher может быть полным plist из
gnutls-ciphers, или только символьным ключом, или строкой с
именем этого символа.
Аргумент key может быть указан как буфер или строка, или другими способами (см. Формат входных данных криптографии GnuTLS). Аргумент key будет очищен после использования, если это строка.
Аргументы iv, input и необязательный aead_auth могут быть указаны как буфер или строка, или другими способами (см. Формат входных данных криптографии GnuTLS).
aead_auth проверяется только с шифрами AEAD, то есть шифрами,
чей plist содержит :cipher-aead-capable t. В противном
случае он игнорируется.
Эта функция возвращает nil в случае ошибки дешифрования и
вызывает ошибку Lisp, если cipher или key,
iv или input недействительны, или если
aead_auth был указан с шифром AEAD и оказался недействительным.
В случае успеха она возвращает список бинарной строки (результат) и использованный IV.