Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Devuelve un valor descifrado del uso de input AES en mode con padding. Se admiten longitudes de clave de 16, 24 y 32 bits. Las combinaciones admitidas de (mode, padding) son (ECB, PKCS), (GCM, NONE) y (CBC, PKCS). Los datos autenticados adicionales opcionales (AAD) solo se admiten para GCM. Si se proporciona para el cifrado, se debe proporcionar el valor de AAD idéntico para el descifrado. El modo predeterminado es GCM.
Syntax
from pyspark.sql import functions as sf
sf.aes_decrypt(input, key, mode=None, padding=None, aad=None)
Parámetros
| Parámetro | Tipo | Description |
|---|---|---|
input |
pyspark.sql.Column o str |
Valor binario que se va a descifrar. |
key |
pyspark.sql.Column o str |
Frase de contraseña que se va a usar para descifrar los datos. |
mode |
pyspark.sql.Column o str, opcional |
Especifica el modo de cifrado de bloques que se debe usar para descifrar los mensajes. Modos válidos: ECB, GCM, CBC. |
padding |
pyspark.sql.Column o str, opcional |
Especifica cómo rellenar los mensajes cuya longitud no es un múltiplo del tamaño del bloque. Valores válidos: PKCS, NONE, DEFAULT. El relleno DEFAULT significa PKCS para ECB, NONE para GCM y PKCS para CBC. |
aad |
pyspark.sql.Column o str, opcional |
Datos autenticados adicionales opcionales. Solo se admite para el modo GCM. Puede ser cualquier entrada de forma libre y debe proporcionarse para el cifrado y el descifrado. |
Devoluciones
pyspark.sql.Column: una nueva columna que contiene un valor descifrado.
Examples
Ejemplo 1: Descifrar datos con clave, modo, relleno y aad
from pyspark.sql import functions as sf
df = spark.createDataFrame([(
"AAAAAAAAAAAAAAAAQiYi+sTLm7KD9UcZ2nlRdYDe/PX4",
"abcdefghijklmnop12345678ABCDEFGH", "GCM", "DEFAULT",
"This is an AAD mixed into the input",)],
["input", "key", "mode", "padding", "aad"]
)
df.select(sf.aes_decrypt(
sf.unbase64(df.input), df.key, "mode", df.padding, df.aad
).cast("STRING")).show(truncate=False)
+---------------------------------------------------------------------+
|CAST(aes_decrypt(unbase64(input), key, mode, padding, aad) AS STRING)|
+---------------------------------------------------------------------+
|Spark |
+---------------------------------------------------------------------+
Ejemplo 2: Descifrar datos con clave, modo y relleno
from pyspark.sql import functions as sf
df = spark.createDataFrame([(
"AAAAAAAAAAAAAAAAAAAAAPSd4mWyMZ5mhvjiAPQJnfg=",
"abcdefghijklmnop12345678ABCDEFGH", "CBC", "DEFAULT",)],
["input", "key", "mode", "padding"]
)
df.select(sf.aes_decrypt(
sf.unbase64(df.input), df.key, "mode", df.padding
).cast("STRING")).show(truncate=False)
+------------------------------------------------------------------+
|CAST(aes_decrypt(unbase64(input), key, mode, padding, ) AS STRING)|
+------------------------------------------------------------------+
|Spark |
+------------------------------------------------------------------+
Ejemplo 3: Descifrar datos con clave y modo
from pyspark.sql import functions as sf
df = spark.createDataFrame([(
"AAAAAAAAAAAAAAAAAAAAAPSd4mWyMZ5mhvjiAPQJnfg=",
"abcdefghijklmnop12345678ABCDEFGH", "CBC", "DEFAULT",)],
["input", "key", "mode", "padding"]
)
df.select(sf.aes_decrypt(
sf.unbase64(df.input), df.key, "mode"
).cast("STRING")).show(truncate=False)
+------------------------------------------------------------------+
|CAST(aes_decrypt(unbase64(input), key, mode, DEFAULT, ) AS STRING)|
+------------------------------------------------------------------+
|Spark |
+------------------------------------------------------------------+
Ejemplo 4: Descifrar datos con clave
from pyspark.sql import functions as sf
df = spark.createDataFrame([(
"83F16B2AA704794132802D248E6BFD4E380078182D1544813898AC97E709B28A94",
"0000111122223333",)],
["input", "key"]
)
df.select(sf.aes_decrypt(
sf.unhex(df.input), df.key
).cast("STRING")).show(truncate=False)
+--------------------------------------------------------------+
|CAST(aes_decrypt(unhex(input), key, GCM, DEFAULT, ) AS STRING)|
+--------------------------------------------------------------+
|Spark |
+--------------------------------------------------------------+