What is identityservicesd?
*Just a preface I do not have anything noticeably wrong with my computer (MacBook Pro (Retina, 15-inch, Mid 2015), Mojave 10.14.4), and I was learning as I went along.
In the process of cleaning out my computer I noticed a key in my login keychain just named <key>
.
The only information listed is identityservicesd.app
What can be found on Google, StackExchange, StackOverflow, Apple Support Forums, Reddit and blogs about identityserviced
:
- Macinside.info -
identityservicesd
is a background process (Identity Services Daemon) that deals with third-party credentials. - People complaining of bugging, performance issues, login errors, repetitive prompts requesting system access, security concerns.
- Recommending solutions to fix these problems (if you have these problems, more or less everyone is recommended to follow these steps)
- No other information about the process.
My questions are:
- What is
identityservicesd
? - Why is it that it's credentials in my keychain just named
<key>
?
Even if this is a background benign process, it does seem to act in a strange way when it does have to interact with the user. This can be very concerning or confusing for someone not knowledgeable (me). Since information on this is pretty limited, at the least I hope to clarify the strange behavior I described.
I would like to also list the process I used when searching my system as I think someone inexperienced like myself would probably search everywhere, and cobble together something similar. Hopefully this will either save you from wasting time or at the least help.
Where is this on my mac?
Using sudo find / -iname "*identityservicesd*"
/System/Library/Sandbox/Profiles/com.apple.identityservicesd.sb
/System/Library/LaunchAgents/com.apple.identityservicesd.plist
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/MacOS/identityservicesd
/private/var/root/Library/Preferences/com.apple.identityservicesd.plist
/private/var/folders/cy/[hash#]/T/com.apple.identityservicesd
/private/var/folders/cy/[hash#]/C/com.apple.identityservicesd
~/Library/Preferences/ByHost/com.apple.identityservicesd.[hash#].plist
~/Library/Preferences/com.apple.identityservicesd.plist
Note: [hash#] self inputed. Also I had success earlier getting past the operation not permitted
error by changing privacy permissions, but the error returned again and now can't access it.
sudo locate -i "*identityservicesd*"
worked predictably. Only searching within system files, but going deeper into the files.
/System/Library/LaunchAgents/com.apple.identityservicesd.plist
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Info.plist
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/MacOS
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/MacOS/identityservicesd
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/PkgInfo
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/FaceTime.icns
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/IDS.icns
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/ar.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/ar.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/ar.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/ca.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/ca.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/ca.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/com.apple.private.alloy.digitalhealth.plist
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/com.apple.private.alloy.facetime.lp.plist
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/cs.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/cs.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/cs.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/da.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/da.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/da.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/de.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/de.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/de.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/el.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/el.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/el.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/en.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/en.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/en.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/en_AU.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/en_AU.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/en_AU.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/en_GB.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/en_GB.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/en_GB.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/es.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/es.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/es.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/es_419.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/es_419.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/es_419.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/fi.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/fi.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/fi.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/fr.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/fr.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/fr.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/fr_CA.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/fr_CA.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/fr_CA.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/he.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/he.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/he.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/hi.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/hi.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/hi.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/hr.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/hr.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/hr.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/hu.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/hu.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/hu.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/iCloud.icns
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/id.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/id.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/id.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/it.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/it.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/it.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/ja.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/ja.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/ja.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/ko.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/ko.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/ko.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/ms.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/ms.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/ms.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/nl.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/nl.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/nl.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/no.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/no.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/no.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/pl.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/pl.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/pl.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/pt.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/pt.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/pt.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/pt_PT.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/pt_PT.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/pt_PT.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/ro.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/ro.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/ro.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/ru.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/ru.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/ru.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/sk.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/sk.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/sk.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/sv.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/sv.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/sv.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/th.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/th.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/th.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/tr.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/tr.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/tr.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/uk.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/uk.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/uk.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/vi.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/vi.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/vi.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/zh_CN.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/zh_CN.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/zh_CN.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/zh_HK.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/zh_HK.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/zh_HK.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/zh_TW.lproj
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/zh_TW.lproj/IDSLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/Resources/zh_TW.lproj/IdentityServicesLocalizable.strings
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/_CodeSignature
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/_CodeSignature/CodeResources
/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/version.plist
/System/Library/Sandbox/Profiles/com.apple.identityservicesd.sb
Everything looks fine.
Broadening the search to "identityservices", find
catches both "identityservices" and "identityservicesd" files from ~/Library
sudo mdfind -onlyin ~/Library "identityservices"
found 0 files in ~/Library
.
Both commands search differently of course.
What started this whole hunt was that mdfind
was able to find other file name searches in ~/Library
, but ~/Library/IdentityServices
was not found when searched for. At the start I thought this was something malicious, but I'm thinking it might just be unlisted.
Certificates
codesign --display --verbose=4 /System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app
Executable=/System/Library/PrivateFrameworks/IDS.framework/identityservicesd.app/Contents/MacOS/identityservicesd
Identifier=com.apple.identityservicesd
Format=app bundle with Mach-O thin (x86_64)
CodeDirectory v=20100 size=60332 flags=0x0(none) hashes=1878+5 location=embedded
Platform identifier=7
VersionPlatform=1
VersionMin=658944
VersionSDK=658944
Hash type=sha256 size=32
CandidateCDHash sha256= <hash>
Hash choices=sha256
Page size=4096
CDHash= <hash>
Signature size=4485
Authority=Software Signing
Authority=Apple Code Signing Certification Authority
Authority=Apple Root CA
Info.plist entries=31
TeamIdentifier=not set
Sealed Resources version=2 rules=13 files=84
Internal requirements count=1 size=76
What concerned me was 3 things: the TeamIdentifier was not set, the Authority, and when I couldn't get an output from shasum -a 256 <file>
.
-
openssl dgst -sha256 <file>
sorted out the hash check. - Still dont know why TeamIdentifier is not set
- According to Apple's TrustStore "Apple Root CA" is trusted, however I cannot find mention of both "Apple Code Signing Certification Authority" or "Software Signing"
Edit: after some more research I was able to I feel pretty confident that:
1. identityservicesd
TeamIdentifier not being set is fine, after comparing it to terminal.app Apple Dev Code Signing Guide
2. "Software Signing" also fine. Software Signing
Solution 1:
Everything you post seems on the up and up.
- official apple daemon that would be expected to encrypt data and routinely generate keys and store them in the keychain
- lots of matches for the framework on disk
- signed app that is valid
- well documented SDK and API - https://developer.apple.com/library/archive/documentation/Networking/Conceptual/IdentityServices_ProgGuide/Introduction/Introduction.html
It is a system daemon that helps manage personally identifying and/or items that could be tracked or compromise your privacy if they were just stored plainly on the filesystem in standard locations.