Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Funktionen
Gäller för: 
 Databricks SQL 
 Databricks Runtime 10.4 LTS och senare
Krypterar en binär fil med hjälp av AES-kryptering.
Syntax
aes_encrypt(expr, key [, mode [, padding[, iv[, aad]]]])
Argument
expr: UttrycketBINARYsom ska krypteras.key: EttBINARYuttryck. Nyckeln som ska användas för att krypteraexpr. Den måste vara 16, 24 eller 32 byte lång.mode: Ett valfrittSTRINGuttryck som beskriver krypteringsläget.padding: Ett valfrittSTRINGuttryck som beskriver hur kryptering hanterar utfyllnad av värdet till nyckellängd.iv: Ett valfrittSTRINGuttryck som tillhandahåller en initieringsvektor (IV) förGCMellerCBClägen. Gäller för Databricks SQL och Databricks Runtime 13.3 LTS och senare.aad: Ett valfrittSTRINGuttryck som tillhandahåller autentiserade ytterligare data (AAD) iGCMläge. Gäller för Databricks SQL och Databricks Runtime 13.3 LTS och senare.
Returer
En BINARY.
mode måste vara något av (skiftlägesokänsligt):
'CBC': Använd CBC-läge (Cipher-Block Chaining). Gäller för Databricks SQL, Databricks Runtime 13.3 LTS och senare.'ECB': Använd läget Electronic CodeBook (ECB).'GCM': Använd Galois/Counter Mode (GCM). Det här är standardinställningen.
padding måste vara något av (skiftlägesokänsligt):
'NONE': Använder ingen utfyllnad. Endast giltigt för'GCM'.'PKCS': Använder PKCS-utfyllnad (Public Key Cryptography Standards). Endast giltigt för'ECB'och'CBC'. PKCS-utfyllnad lägger till mellan 1 och nyckellängds antal byte att fyllaexprtill en multipel avkeylängden. Värdet för varje pad byte är antalet byte som vadderas.'DEFAULT': Använder'NONE'för'GCM'och'PKCS'för'ECB', och'CBC'läge.
iv, när det anges, måste vara 12 byte långt för GCM och 16 byte för CBC.
Algoritmen beror på nyckelns längd:
16: AES-12824: AES-19232: AES-256
Exempel
> SELECT base64(aes_encrypt('Spark', 'abcdefghijklmnop'));
  4A5jOAh9FNGwoMeuJukfllrLdHEZxA2DyuSQAWz77dfn
> SELECT cast(aes_decrypt(unbase64('4A5jOAh9FNGwoMeuJukfllrLdHEZxA2DyuSQAWz77dfn'),
                          'abcdefghijklmnop') AS STRING);
  Spark
> SELECT base64(aes_encrypt('Spark SQL', '1234567890abcdef', 'ECB', 'PKCS'));
  3lmwu+Mw0H3fi5NDvcu9lg==
> SELECT cast(aes_decrypt(unbase64('3lmwu+Mw0H3fi5NDvcu9lg=='),
                          '1234567890abcdef', 'ECB', 'PKCS') AS STRING);
  Spark SQL
> SELECT base64(aes_encrypt('Spark SQL', '1234567890abcdef', 'GCM'));
  2sXi+jZd/ws+qFC1Tnzvvde5lz+8Haryz9HHBiyrVohXUG7LHA==
> SELECT cast(aes_decrypt(unbase64('2sXi+jZd/ws+qFC1Tnzvvde5lz+8Haryz9HHBiyrVohXUG7LHA=='),
                          '1234567890abcdef', 'GCM') AS STRING);
  Spark SQL
> SELECT base64(aes_encrypt('Spark SQL', '1234567890abcdef', 'GCM', 'DEFAULT', '123456789012', 'Some AAD'));
  MTIzNDU2Nzg5MDEyMdXvR41sJqwZ6hnTU8FRTTtXbL8yeChIZA==
> SELECT cast(aes_decrypt(unbase64('MTIzNDU2Nzg5MDEyMdXvR41sJqwZ6hnTU8FRTTtXbL8yeChIZA=='),
                          '1234567890abcdef', 'GCM', 'DEFAULT', 'Some AAD') AS STRING);
  Spark SQL