SPIAgent Init unable to acquire cryptographic resources

When trying to start the SPIAgent service or connect to a remote SPIAgent service the connection fails. In the Event Viewer, you see two SPIMsg error messages containing the text:

SPIAgentInit unable to acquire cryptographic resources

and

SPIAgentCrypt Exchange key CryptGenKey error=5 (0x00000005).

Solution

This error indicates that the built-in SYSTEM account on the machine does not have Full Control permission to the Crypto folder. In Windows XP and Windows 2003 this folder is located at C:\Documents and Settings\All Users\Application Data\Microsoft\Crypto. In Windows 2012, Windows 2008, Windows 8, Windows 7 and Windows Vista this folder is located at C:\ProgramData\Microsoft\Crypto. Once the SYSTEM account has the required Full Control permissions to that folder, the SPIAgent service should start as expected.