This must be a rare problem (I hope!) and I have no idea where to report, so at least Google may index this information for the future generations to see. It made me reformat my computer unnecessarily – I hope these words reach you before you have taken this measure.
I have Telia e-identification smart card for test purposes with a Gemalto USB card reader. This card is for testing purposes and it is being used in Swedish e-Government services for three factor authentication.
The symptoms of the problem are the same as with your hard drive corruption: you cannot login, all your data is lost. However, luckily this is not the case. First time I encountered the problem I followed Apple’s Support guide to install my OSX user account again (and restore all data from the back-up). But when the problem happened again within the week I started to suspect something else was wrong – even I cannot have such bad luck that OSX crashes corrupting data twice during the same week.
When the USB reader and the card is attached to Mac OSX 10.6 (Snow Leopard) computer you cannot login users who have FileVault (home folder encryption) turned on. It doesn’t seem to affect non-FileVault’ed users.
Instead, you’ll see this error in System Console if you login as alternative user (admin/root):
ReportCrash[1820:2a03] Saved crash report for authorizationhost version ??? (???) to /Library/Logs/DiagnosticReports/authorizationhost_2011-12-07-115201_localhost.crash\
And the contents of the crash report file itself looks like:
Process: authorizationhost \ Path: /System/Library/CoreServices/SecurityAgent.app/Contents/Resources/authorizationhost\ Identifier: authorizationhost\ Version: ??? (???)\ Code Type: X86-64 (Native)\ Parent Process: securityd \ \ Date/Time: 2011-12-07 11:57:51.971 +0200\ OS Version: Mac OS X 10.6.8 (10K549)\ Report Version: 6\ \ Exception Type: EXC_CRASH (SIGABRT)\ Exception Codes: 0x0000000000000000, 0x0000000000000000\ Crashed Thread: 0 Dispatch queue: com.apple.main-thread\ \ Application Specific Information:\ abort() called\ \ Thread 0 Crashed: Dispatch queue: com.apple.main-thread\ 0 libSystem.B.dylib 0x00007fff895870b6 __kill + 10\ 1 libSystem.B.dylib 0x00007fff896279f6 abort + 83\ 2 libSystem.B.dylib 0x00007fff8953f195 free + 128\ 3 com.apple.security 0x00007fff88130b6e Security::RefPointer<Security::CssmDataContainer>::release() + 60\ 4 com.apple.security 0x00007fff88130a7b Security::KeychainCore::ItemImpl::~ItemImpl() + 179\ 5 com.apple.security 0x00007fff8815c388 Security::KeychainCore::Certificate::~Certificate() + 244\ 6 com.apple.security 0x00007fff8812fff4 Security::CFClass::finalizeType(void const*) + 32\ 7 com.apple.CoreFoundation 0x00007fff8233fa73 _CFRelease + 179\ 8 com.apple.security 0x00007fff88130273 Security::KeychainCore::KeychainImpl::cleanup() + 137\ 9 com.apple.security 0x00007fff88104727 Security::KeychainCore::StorageManager::cleanup() + 125\ 10 com.apple.security 0x00007fff881cea56 SecKeychainCopyDomainSearchList + 53}
The crash may have something to do with the fact that the smart card provides certificates to OSX Keychain Access service. I don’t know whether it is to blame OSX itself, Telia’s custom software or smartcard hardware which crashes the login operation.
Don’t worry – this issue does not seem to corrupt your data. Just unplug the card, restart and you can log-in again…
For the courtesy of Finnish culture I’d like to share my feelings of founding this issue: