_mm_aesdeclast_si128

[Diese Dokumentation ist nur eine Vorschau und wird in späteren Versionen ggf. geändert. Blank topics are included as placeholders.]

Microsoft-spezifisch

Gibt die aesdeclastAES (Advanced Encryption Standard) - Anweisung aus. Diese Anweisung führt die endgültige öffnende von AES-Entschlüsselung aus.

__m128i _mm_aesdeclast_si128 (
   __m128i v,
   __m128i rkey
);

Parameter

Parameter

Beschreibung

[in] v

Der Parameter Zustand, der die Daten enthält, sodass die Anweisung entschlüsselt.

[in] rkey

Die linke Schlüssel, der diese Anweisung verwendet, um die Daten aus vzu entschlüsseln.

Rückgabewert

Die entschlüsselten Daten für v.

Anforderungen

Intrinsisch

Architektur

_mm_aesdeclast_si128

x86, x64

Headerdatei <wmmintrin.h>

Hinweise

Diese Anweisung entschlüsselt Daten, indem eine entsprechende umgekehrte Verschlüsselung mit einem Schlüssel mit 128 Bits verwendet. AES-Entschlüsselung erfordert 10 Iterationen der Entschlüsselung und verwendet eine verschlüsselten Schlüssels, der aus 128 Bits besteht. Die letzte Iteration muss durch diese Anweisung ausgeführt werden. Die vorherige Verwendung _mm_aesdec_si128mit neun Iterationen.

Um die letzten öffnende der Verschlüsselung ausführen und mit dem AES, verwenden Sie _mm_aesenclast_si128kompatibel sein.

Beispiel

#include <wmmintrin.h>
#include <stdio.h>

int main()
{
    __m128i a;
    __m128i res;
    __m128i key;

    a.m128i_u64[1] = 0x8899AABBCCDDEEFF;
    a.m128i_u64[0] = 0x0123456789ABCDEF;
    key.m128i_u64[1] = 0x0022446688AACCEE;
    key.m128i_u64[0] = 0x1133557799BBDDFF;

    res = _mm_aesdeclast_si128( a, key );

    printf_s("Original data: 0x%016I64x%016I64x\n",
        a.m128i_u64[1], a.m128i_u64[0]);
    printf_s("Decoded data: 0x%016I64x%016I64x\n",
        res.m128i_u64[1], res.m128i_u64[0]);

    return 0;
}
          
        

Siehe auch

Referenz

Systeminterne Funktionen des Compilers

_mm_aesdec_si128

_mm_aesenclast_si128

AES-systeminterne Komponenten