Skip to main content

    SafeNet Authentication Client: Setup, PINs, and Fixing Token Errors

    How to install SafeNet Authentication Client, initialize a code signing token, set the PIN, and fix the most common token-not-detected errors.

    MS
    My-SSL Team
    ·
    12 min read
    ·
    Published August 20, 2026
    ·
    Last updated August 20, 2026

    The short answer

    SafeNet Authentication Client, or SAC, is the middleware Windows needs to talk to a SafeNet USB token holding a code signing certificate. Since June 1, 2023, CA/Browser Forum ballot CSC-17 has required publicly trusted code signing keys to live in hardware meeting FIPS 140-2 Level 2 or Common Criteria EAL 4+, so a token plus its middleware is now the ordinary delivery model. Install SAC 10.9 R1 or later, initialise the token once with the code your CA supplied, and change the User and Administrator PINs before you plug it into any build agent. The Administrator PIN is the one to protect: lose it and the certificate on the token is unrecoverable.

    The three secrets on a SafeNet token, and which one causes the most damage if it is lostA single token is shown in the middle with three arrows leading to three separate secrets. On the left, the initialization code, given once by the CA and only used the first time the token is set up; if lost before initialization, the CA can resend it. In the centre, the User PIN, which is what you type every time you sign; if forgotten, it can be reset with the Administrator PIN. On the right, highlighted in gold, the Administrator PIN; if lost, the token is permanently locked and the certificate on it is unrecoverable.Three secrets, three very different consequencesSafeNet 5110 series1. Initialization codeUsed onceSets up the tokenIf lost: CA resendsBefore initialization only2. User PINTyped on every signatureIf lost: reset with Admin PINRecoverable3. Administrator PINNever typed to signOnly manages the tokenIf lost: token diesCertificate unrecoverable
    The Administrator PIN is the only one of the three that ends the token if you lose it. Store it before you plug the token in for the first time.

    What is SafeNet Authentication Client, and why do you need it?

    SafeNet Authentication Client is the software layer that lets Windows talk to a SafeNet USB token. The token holds your private key; SAC is what turns a plugged-in bit of plastic into something SignTool, jarsigner, or a browser can actually use. Without SAC installed, Windows lists the reader but not the certificate on it, and every signing command fails at the first step.

    Physically the package includes four pieces: a Cryptographic Service Provider and a Key Storage Provider that plug into the Windows crypto API, a PKCS#11 library that Linux and Java signing tools call directly, a small monitor service that watches for tokens being inserted and removed, and the Client Tools application you open to change PINs and view certificate details. Most of the time you never look at any of them individually. When something goes wrong you almost always end up in Services.msc looking for one specific monitor, or in Client Tools counting failed PIN attempts.

    The reason so many code signing setups now revolve around this one piece of middleware is a policy change. CA/Browser Forum ballot CSC-17 came into force on June 1, 2023, and requires the private key of every publicly trusted code signing certificate to be generated inside hardware meeting FIPS 140-2 Level 2 or Common Criteria EAL 4+, with the key marked non-exportable. The Baseline Requirements make no exception for OV certificates, which had previously been issued as soft PFX files. That delivered a lot of teams onto USB tokens for the first time, and SAC is the middleware nearly all of them ship with.

    Cloud signing services do not use SAC at all: they replace the token with a network-attached HSM and swap SAC out for a different provider library. Everything below applies to teams still holding a physical token, whether from Certum, DigiCert, Sectigo, or another CA that ships on the SafeNet 5110 family.

    Which SafeNet token model do you have?

    Three models turn up in code signing shipments today, and they are worth telling apart before you plan an algorithm: the SafeNet 5110 CC (the (940) revision), the SafeNet 5110 FIPS, and the SafeNet 5110+ FIPS. The middleware is the same on all three. What differs is the hardware certification and the key algorithms each one will actually store.

    The three SafeNet 5110 code signing token models and how their cryptographic capabilities differThree side-by-side panels compare the SafeNet 5110 CC, SafeNet 5110 FIPS, and SafeNet 5110+ FIPS. The 5110 CC panel is highlighted in gold because it is the one CAs like Certum ship with EV code signing certificates by default. All three protect the key non-exportably in hardware; the difference is which key algorithms each one supports.SafeNet 5110 token variants: which one supports what5110 CC (940)Common Criteria EAL 5+RSA 2048 / 4096ECC P-256Non-exportableThe default for EV code signing tokens.5110 FIPSFIPS 140-2 Level 3ECC P-256 onlyNo RSA 4096Non-exportableElliptic curve only. Confirm your CA supports ECC5110+ FIPSFIPS 140-2 Level 3RSA 2048 / 4096ECC P-256Non-exportableThe RSA-capable FIPS option, less common in Europe.
    Three tokens that look identical from the outside. One of them will not hold an RSA 4096 key, so pick with the algorithm in mind before you order.

    The 5110 CC (940) is certified under Common Criteria EAL 5+, and it stores both RSA (up to 4096 bits) and ECC P-256 keys. CAs that ship EV code signing tokens across Europe, Certum among them, use this model by default, and it is the safest bet if you do not know what your CA will accept. The 5110 FIPS carries FIPS 140-2 Level 3 certification, and stores ECC P-256 keys only — no RSA, in either 2048 or 4096. The 5110+ FIPS extends the FIPS 140-2 Level 3 hardware with RSA support, which is useful when a policy specifically calls for FIPS certification and you cannot use ECC.

    Two things follow from this. If you plan to issue an RSA 4096 certificate, do not order the 5110 FIPS; SAC will initialise the token cheerfully and only fail later when the CSR generation returns an unsupported algorithm error. And if your CA is silent about which model they ship, ask before you buy: a token you cannot use is not a token you can return, because the initialisation flow is a one-way trip.

    How do you install SafeNet Authentication Client on Windows?

    Download SAC from the CA that issued your certificate, or from Thales's DigiCert-hosted knowledge base if your CA points there. As of 2026 the current release is SAC 10.9 R1, and it lists Windows 10, Windows 11, and Windows Server 2019 and 2022 as supported. The installer is a normal MSI, so if you push software with a configuration management tool it deploys the same way as anything else.

    Two setup choices matter more than any other. Choose Typical unless you specifically know you need PKCS#11 exposed — the Custom path adds the PKCS#11 library that Java and Linux signing tools want, and it is easy to forget to tick if you are not planning for jarsigner. And reboot after the install completes: SAC registers a CSP and a KSP, and Windows only picks up new providers when it starts fresh. Skipping the reboot is why a first-time install often looks broken to SignTool while working fine in the SAC Client Tools GUI.

    One trap on Windows 11: a fresh install sometimes leaves the Smart Card credential provider active, and plugging a token into the sign-in screen throws up a PIN prompt that has nothing to do with signing. It is harmless — the token still works — but it is confusing, and Microsoft's own guidance is to disable the credential provider through Group Policy if nobody in your organisation logs on with a smart card. Look under Computer Configuration → Administrative Templates → System → Logon → Turn off picture password sign-in and its neighbours; the specific policy varies by build.

    If a previous SafeNet Minidriver is already on the machine, uninstall it first. SAC and the Minidriver both try to expose the same token to Windows, and having both installed produces duplicate certificate objects that then compete for SignTool's attention. This is one of the most common causes of a signing command that works one day and fails the next after Windows Update quietly reinstalled the Minidriver.

    How do you initialize the token and set the User PIN?

    Initialisation happens once, from the CA's own certificate installer. Do not use SAC's built-in initialise option on a token that arrived with a certificate already on it: that option wipes the token, and on a code signing token the private key was generated during issuance and cannot be regenerated on your side. If in doubt, open SAC Client Tools and check under the token's slot for an existing certificate before you touch anything else.

    The installer will ask for three inputs. The Initialization Code is a one-shot value the CA gave you in the setup email or portal; it is only used during the first setup, and it is not the same thing as either PIN. The Administrator PIN manages the token afterwards — resetting the User PIN, changing policy — and should be set to something long and unique. The User PIN is what you will type on every signature. Both PINs are set during initialisation, and both have retry counters.

    What a fresh User PIN should look like has to satisfy the token's policy, which by default on the 5110 CC is at least eight characters, mixing letters and digits, and rejecting common patterns. Long User PINs are worth the effort here because losing a User PIN is annoying but recoverable, and short ones invite the sort of mistyping that eats the retry counter faster than you would expect. Once both PINs are set, store the Administrator PIN in a password manager the same day. Two people should know how to reach it, ideally in separate vaults, because a single person losing access is the same outcome as losing the PIN altogether.

    Why is the SafeNet token not detected?

    A token that used to work and now does not is almost always one of four things, and the order to check them in is the same whether you are on a laptop or a build agent. The first is whether Windows itself sees the reader, which happens at the driver layer and has nothing to do with SAC yet.

    A four-question decision tree that isolates why a SafeNet token is not detectedThe tree walks four questions in order, each with a plain fix on the no branch. First: is the reader listed in Device Manager as a smart card reader? If not, reseat the token or try another USB port. Second: is the SAC Monitor service running in Services.msc? If not, start it. Third: does SAC Client Tools show the token slot? If not, uninstall any duplicate SafeNet Minidriver or older SAC version. Fourth: does the certificate appear under the slot? If not, run the CA's certificate installer to re-register it. The final step, shown in gold, is the moment SignTool can actually reach the key.Token not detected: four checks, in order1. Device Manager shows a smart card reader?No → reseat the token, try a different USB port, avoid hubs.2. SAC Monitor service is running?No → services.msc → start SAC Monitor and set it to Automatic.3. SAC Client Tools shows the token slot?No → uninstall SafeNet Minidriver or older SAC versions, reboot.4. Certificate appears under the slot?No → run the CA's certificate installer, or import the .cer manually.SignTool can now select the key by /sha1 thumbprint
    Working through the four checks in order beats guessing. Three out of four are fixed outside the signing command.

    The middle checks — SAC Monitor running, and Client Tools showing the slot — are where a normal install goes wrong. SAC Monitor is a Windows service; if it stopped for any reason, no application will see the token even though the hardware is fine. Open services.msc, find SafeNet Authentication Service or SAC Monitor (the name varies slightly by version), and start it. Set the startup type to Automatic while you are there.

    Duplicate installs are the other repeat offender. If you imported the token on this machine before, or if the SafeNet Minidriver ever shipped through Windows Update, you may have two SafeNet stacks on disk. Uninstall both, reboot, and reinstall only the current SAC. It is worth the ten minutes: mixed installs cause exactly the intermittent works, then does not work failures that are impossible to reproduce reliably.

    One environment worth calling out on its own: Remote Desktop. A token plugged into your local machine is not automatically visible to a remote session, and SAC has to be running on the remote side to see it. Enable Smart Cards under the Local Resources tab of the RDP client before you connect. On a Terminal Server or shared build host, this is where signing on the developer's own machine works and the same command on the shared host silently fails.

    When the same detection failure keeps coming back on a machine that has no person in front of it, the sensible response is to change the delivery model. Physical tokens are designed for a desk; they are not designed for a build agent that reboots itself on a nightly schedule. Our comparison of cloud code signing and USB tokens covers the trade-offs in more detail, but the short version is that a networked key you never lose the middleware for saves a great deal of pipeline maintenance.

    How do you reset a lost SafeNet PIN?

    A forgotten User PIN is a routine problem. Open SAC Client Tools, click the token, choose Change Password, and you will be offered a User PIN reset that asks for the Administrator PIN. The counter clears, the User PIN is set to whatever new value you type, and signing resumes as before. No CA involvement is needed, and the certificate on the token is unaffected.

    A forgotten Administrator PIN is a very different situation, and there is no gentle way to write it: the token is finished. Nobody outside the person who set the Administrator PIN can recover it. Not the CA, not the reseller, not Thales. The counter on wrong Administrator PIN attempts is short, and once it is exhausted the token locks itself irreversibly. The private key inside is destroyed by design, because a key that could be reached without the Administrator PIN would not have passed the FIPS or Common Criteria certification the whole model rests on.

    The two lockout paths on a SafeNet token, one recoverable and one terminalTwo horizontal rows compare what happens when each PIN is entered incorrectly enough times. The top row is the User PIN: consecutive wrong entries advance a counter, and when it is exhausted the User PIN is locked but the token itself is fine. The Administrator PIN can reset the User PIN and clear the counter. The bottom row, highlighted in gold, is the Administrator PIN: consecutive wrong entries there advance a separate counter, and when it is exhausted the whole token is permanently locked, the certificate on it is unusable, and the CA cannot help.Two counters, two very different endingsUser PIN counter exhaustedUser PIN is locked. Signing is blocked, but the token is intact.Recovery: reset the User PIN in SAC Client Tools with the Admin PIN.Administrator PIN counter exhaustedToken is permanently locked. The private key is unrecoverable.Recovery: none. Buy a new token and re-issue the certificate, whichmeans repeating organisation validation with the CA.
    The Administrator PIN counter is the only thing standing between a routine PIN reset and a total loss. Do not test it by guessing.

    What happens next is the same as if the token had been lost physically. You order a new token and a re-issuance from the CA, repeat the organisation validation for EV, and pay for the certificate again — a re-issuance on a dead token is not free because the CA has to redo the paperwork. Timelines vary by CA, but plan for at least a week even in the smooth case. If your CA has an option to add token replacement insurance at purchase time, the calculation is simple: the insurance is cheaper than the certificate.

    Everything about this argues for prevention rather than recovery. Write the Administrator PIN down before the first signing session, store it in the same password manager as your CA account credentials, and share the vault with at least one other person. It is worth doing on the day the token arrives, because the moment when it feels least urgent is exactly the moment when losing it is cheapest.

    What are the common SafeNet errors and what causes each one?

    Five error strings account for nearly every SafeNet incident in a code signing setup. Two of them come from SAC itself, two come from SignTool but trace back to SAC, and one is a Windows-level failure that pretends to be a token failure. Working out which family you are in is the whole diagnostic job; the fix follows from there.

    MessageWhat it meansWhere the real cause sits
    Token not presentSAC does not see any token at allThe reader is not listed in Device Manager, or SAC Monitor is not running. Reseat the token, avoid a USB hub, then start SAC Monitor. On a Remote Desktop session the token has to be redirected explicitly.
    The card was not authenticatedSAC found the token but the User PIN was rejectedAlmost always a bad PIN or an accidentally used Administrator PIN. Check that the caps lock and Num Lock states match what you had when you set the PIN, and open Client Tools to see the remaining attempts before you keep guessing.
    No smart card readers foundWindows itself never picked up the readerSAC is not installed, or the Smart Card service (SCardSvr) is stopped. Set both Smart Card and SAC Monitor to Automatic, and reinstall SAC if the reader still does not appear.
    SignerSign() failed 0x80090016SignTool sees the certificate but not the keySAC Monitor stopped, or a stale certificate is bound to a provider that no longer exists. Restart SAC Monitor, and select the certificate by /sha1 rather than by subject name.
    Access deniedThe current account cannot reach the tokenSignTool is running as a service account that has no session with the token. Sign as the same account that plugged it in, or move the workload to cloud signing.

    The SignerSign() failure with 0x80090016 deserves a note, because it is where SafeNet and SignTool troubleshooting overlap. The hex code is a Windows Keyset does not exist value, and it fires when the certificate in the Personal store points at a provider — SAC — that is not currently answering. Restarting SAC Monitor usually clears it. If the problem persists after a restart, the certificate binding itself is stale, and re-registering the certificate through the CA's installer beats trying to fix the store by hand. Our guide to SignTool errors walks through the same failure from the command line side, including the other two HRESULTs that look similar and turn out to be different.

    An error family the table does not cover is the timestamp path, because SAC has nothing to do with timestamping. If signtool sign wrote a signature and only the timestamp request failed, the file on disk is already signed and the token has already done its work; retry with signtool timestamp /tr <url> /td SHA256 app.exe and leave SAC out of the diagnosis.

    Frequently Asked Questions

    Get instant answers to common questions about SSL certificates and our services.

    Still Have Questions?

    Our SSL experts are available 24/7 to help with any questions about certificates, installation, or technical issues.

    When the middleware is the wrong layer to be fighting

    If a build agent keeps losing sight of the token, or the Administrator PIN is one shared secret away from a very expensive Monday morning, the answer is probably a change of delivery model rather than a better SAC install. Our code signing certificates are issued by Certum and available with cloud key storage, which replaces the physical token with a service-run HSM reached through a provider library your build agent can authenticate to on its own.

    Related reading