#sql-server #encryption #aes
#sql-сервер #шифрование #aes
Вопрос:
Я новичок в шифровании AES и читаю об этом.
Раньше мы отправляли данные в .csv
формате с шифрованием MD5, но на прошлой неделе я получил требование отправлять данные в зашифрованном формате AES клиенту, а не MD5.
Я прочитал какой-то интернет, я выполнил следующий шаг
-- Create database key
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'Password123'
-- Create self-signed certificate
CREATE CERTIFICATE Certificate1
WITH SUBJECT = 'Protect Data';
GO
-- Create symmetric key
CREATE SYMMETRIC KEY SymmetricKey1
WITH ALGORITHM = AES_256
ENCRYPTION BY CERTIFICATE Certificate1;
GO
Затем для шифрования данных, которые я использовал
OPEN SYMMETRIC KEY SymmetricKey1
DECRYPTION BY CERTIFICATE Certificate1;
Select EncryptByKey (Key_GUID('SymmetricKey1'),columnName)
From TableName
CLOSE SYMMETRIC KEY SymmetricKey1;
Я попытался зашифровать и расшифровать, и это работает нормально, и я отправил данные, но у клиента другой сервер, который хочет расшифровать файл, и они просят меня отправить КЛЮЧ
Я полагаю, что ключом является ‘SymmetricKey1’
Но клиент не может его расшифровать. Теперь мой вопрос заключается в том, находится ли сертификат и симметричный ключ на 1 сервере SQL (предположим, в Индии), и клиент хочет расшифровать файл на каком-либо другом сервере, что именно мне нужно ему предоставить.Нужно ли мне создавать тот же сертификат и ключ на клиентском сервере или что-то еще.
Я могу показаться немного глупым, но, к сожалению, я не смог найти много в Интернете