Anar al contingut

API de protecció de senyes

De L'Enciclopèdia, la wikipedia en valencià

DPAPI (Interfaç de programació d'aplicacions de protecció de senyes) és una senzilla interfaç de programació d'aplicacions criptográfiques disponible com un component integrat en Windows 2000 i versions posteriors dels sistemes operatius Microsoft Windows. En teoria, la API de protecció de senyes pot permetre el sifrat simètric de qualsevol tipo de senyes; en la pràctica, el seu us principal en el sistema operatiu Windows és realisar un sifrat simètric de claus privades asimètriques, utilisant un usuari o sistema secret com una contribució significativa d'entropía. Un anàlisis detallat del funcionament intern de DPAPI va ser publicat en 2011 per Bursztein et al.[1]

Para casi tots els criptosistemas, un dels desafius més difícils és la "administració de claus", en part, cóm almagasenar de forma segura la clau de dessifrat. Si la clau s'almagasena en un text sense format, qualsevol usuari que puga accedir a la clau pot accedir a les senyes sifrades. Si la clau es va a sifrar, es necessita una atra clau, i aixina successivament. DPAPI permet als desenrolladors sifrar claus utilisant una clau simètrica derivada dels secrets d'inici de sessió de l'usuari o, en el cas del sifrat del sistema, utilisant els secrets d'autenticació de domini del sistema.

Les claus DPAPI utilisades per a sifrar les claus RSA de l'usuari s'almagasenen en el directori %APPDATA%MicrosoftProtect{SID}, a on {SID} és l'identificador de seguritat d'eixe usuari. La clau DPAPI s'almagasena en el mateix archiu que la clau mestra que protegix les claus privades dels usuaris. Sol ser 64 bytes de senyes aleatòries.

Propietats de seguritat

DPAPI no almagasena cap senya persistent per sí mateixa; en el seu lloc, simplement rep un text sense format i torna un text sifrat (o viceversa).

La seguritat de DPAPI es basa en la capacitat del sistema operatiu Windows per a protegir la clau mestra i les claus privades RSA del risc, que en la majoria dels escenaris d'atac depén en gran mida de la seguritat de les credencials de l'usuari final. Una clau principal de sifrat/dessifrat es deriva de la contrasenya de l'usuari per mig de la funció PBKDF2.[2] Els objectes binaris grans de senyes particulars es poden sifrar de manera que s'agregue sal i/o es requerixca una contrasenya externa solicitada per l'usuari (també coneguda com "Protecció de clau segura"). L'us d'una sal és una opció per implementació, és dir, baix el control del desenrollador de l'aplicació, i no és controlable per l'usuari final o l'administrador del sistema.

Es pot otorgar accés delegat a les claus per mig de l'us d'un objecte COM+. Açò permet que els servidors web d'IIS utilisen DPAPI.

Us de DPAPI per software de Microsoft

Si ben no es va implementar universalment en tots els productes de Microsoft, l'us de DPAPI pels productes de Microsoft ha aumentat en cada versió successiva de Windows. No obstant, moltes aplicacions de Microsoft i desenrolladors de tercers encara preferixen usar el seu propi enfocament de protecció o solament recentment han canviat per a usar DPAPI. Per eixemple, les versions 4.0-6.0 d'Internet Explorer, Outlook Express i MSN Explorer varen utilisar la API d'almagasenament protegit (PStore) anterior per a almagasenar les credencials guardades, com a contrasenyes, etc. Internet Explorer 7 ara protegix les credencials d'usuari almagasenades per mig de DPAPI.[3]

Referències

  1. ↑ Bursztein, Elie; Picod, Jean-Michel(2010-07-31).«Recovering windows secrets and efs certificates offline | Workshop On Offensive Technologies publication».Consultat el 2026-04-12.(en en)
  2. ↑ «Windows Password Recovery - DPAPI Master Key analysis». Passcape.com. Consultat el 2013-05-06.
  3. ↑ Mikhael Felker (2006-12-08). «Password Management Concerns with IE and Firefox, part one». SecurityFocus.com, Symantec.com. Consultat el 2010-03-28.
  4. ↑ «Encryption Hierarchy». Msdn.microsoft.com. Consultat el 2017-10-14.
  5. ↑ «What's New in Security for Windows XP Professional and Windows XP Home Edition». Technet.microsoft.com. Consultat el 2017-10-14.
  6. ↑ «ProtectedData Class (System.Security.Cryptography)». Msdn2.microsoft.com. Consultat el 2017-10-14.
  7. ↑ «CookieAuthenticationOptions.TicketDataFormat Property (Microsoft.Owin.Security.Cookies)». Consultat el 2015-01-15.
  8. ↑ «OAuthAuthorizationServerOptions.AccessTokenFormat Property (Microsoft.Owin.Security.OAuth)». Consultat el 2018-11-26.


Referències