DPAPI - Data Protection Application Programming Interface

Introducción

Es un servicio criptográfico proporcionado por Microsoft Windows el cual es usado para proteger datos sensibles encriptándolos con una clave simétrica que es derivada por la credencial de usuario.

Está basado en la contraseña del usuario, es decir, los datos están cifrados en una cuenta, por lo tanto no se puede descifrar en otra.

Aplicaciones que usan DPAPI

  • Internet explorer

  • Google Chrome

  • Windows Credential Manager

  • Windows Vaul

  • Outlook etc.,

Funciones

  • Encriptar los datos

CryptProtectData()
BOOL WINAPI CryptProtectData(DATA_BLOB* pDataIn, lpcwstr szDataDescr, DATA_BLOB* pOptionalEntropy, PVOID pvREserved, CRYPTOPROTECT_PROMPSTRUCT* pPromptStruct, DWORD dwFlags, DATA_BLOB* pDataOut)
  • Desencriptar los datos

CryptUnProtectData()
BOOL WINAPI CryptUnProtectData(DATA_BLOB* pDataIn, lpcwstr szDataDescr, DATA_BLOB* pOptionalEntropy, PVOID pvREserved, CRYPTOPROTECT_PROMPSTRUCT* pPromptStruct, DWORD dwFlags, DATA_BLOB* pDataOut)

DPAPI-BLOB

Last updated