Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server
Azure SQL Database
Felügyelt Azure SQL-példány
SQL-adatbázis a Microsoft Fabricben
Ez a függvény aszimmetrikus kulmánnyal titkosítja az adatokat.
Transact-SQL szintaxis konvenciók
Szemantika
EncryptByAsymKey ( Asym_Key_ID , { 'plaintext' | @plaintext } )
Arguments
asym_key_ID
Az adatbázisban található aszimmetrikus kulcs azonosítója.
asym_key_IDint adattípussal rendelkezik.
Világos szöveg
Egy adatlánc, amely ENCRYPTBYASYMKEY aszimmetrikus kulmánnyal titkosítható.
A szöveg lehet egy
- binary
- karakteres
- nchar
- nvarchar
- varbinary
vagy
- varchar
adattípus.
@plaintext
Egy változó, amely egy értéket tartalmaz, amely ENCRYPTBYASYMKEY aszimmetrikus kulmánnyal titkosítható.
@plaintext lehet egy
- binary
- karakteres
- nchar
- nvarchar
- varbinary
vagy
- varchar
adattípus.
Visszatérési típusok
varbinary, legfeljebb 8000 bájt mérettel.
Megjegyzések
Az aszimmetrikus kulcsokat használó titkosítási és dekódolási műveletek jelentős erőforrásokat fogyasztanak, ezért drágává válnak a szimmetrikus kulcsos titkosításhoz és dekódoláshoz képest. Javasoljuk, hogy a fejlesztők kerüljék az aszimmetrikus kulcstitkosítást és dekódolási műveleteket nagy adathalmazokon – például adatbázis táblákban tárolt felhasználói adathalmazoknál. Ehelyett azt javasoljuk, hogy a fejlesztők először titkosítsák az adatokat egy erős szimmetrikus kulccsal, majd egy aszimmetrikus kulccsal titkosítsák azt.
Az algoritmustól függően ENCRYPTBYASYMKEYNULL értéket ad, ha a bemenet meghaladja a bizonyos bájtszámot. A konkrét határok:
- egy 512 bites RSA kulcs akár 53 bájtot is képes titkosítani
- Egy 1024-bites kulcs akár 117 bájtot is képes titkosítani
- Egy 2048 bites kulcs akár 245 bájtot is képes titkosítani
Az SQL Serverben mind a tanúsítványok, mind az aszimmetrikus kulcsok az RSA kulcsok fölé borítanak.
Példák
Ez a példa titkosítja a szöveget @cleartext az aszimmetrikus kulmánnyal JanainaAsymKey02. Az utasítás beilleszti a titkosított adatokat a ProtectedData04 táblába.
INSERT INTO AdventureWorks2022.Sales.ProtectedData04
VALUES( N'Data encrypted by asymmetric key ''JanainaAsymKey02''',
EncryptByAsymKey(AsymKey_ID('JanainaAsymKey02'), @cleartext) );
GO
Lásd még:
DECRYPTBYASYMKEY (Transact-SQL)
ASZIMMETRIKUS KULCS LÉTREHOZÁSA (Transact-SQL)
Titkosítási hierarchia