У меня сейчас проблема, и я не знаю, как ее решить.
Я написал контроллер для управления своими пользователями.Следующий код является выдержкой из моей функции регистрации, где генерируется ключ для шифрования пользовательских данных, которые впоследствии сохраняются в базе данных.Ключ (ekey) также хранится в базе данных.Поэтому мне нужно зашифровать ключ, и поэтому я использую хэш пароля пользователя.
Я получаю эту ошибку в последней строке:
Error: AES256GCM.encrypt: expression type 'Data' is ambiguous without more context
Я не знаю, чтоэто неправильно.
// generate key for encrypting data
let ekey = try URandom().generateData(count: 32).base64EncodedString()
// generate digest for password and encrypt 'ekey'
let key: Data = try SHA256.hash(user.password)
let iv: Data = try URandom().generateData(count: 12)
let (encrKey, tag) = try AES256GCM.encrypt(ekey, key: key, iv: iv)