m (Formatting.) |
m (Reverted edits by Uroboro (talk) to last revision by Peterfillmore) |
||
Line 35: | Line 35: | ||
* NFCardManagerAgent_XPC | * NFCardManagerAgent_XPC | ||
= NFCardManagerAgent Supported XPC Commands = | |||
== NFCardManagerAgent Supported XPC Commands == | |||
{| class="wikitable" | {| class="wikitable" | ||
Line 70: | Line 71: | ||
|} | |} | ||
= SEDaemon Supported XPC Commands = | == SEDaemon Supported XPC Commands == | ||
{| class="wikitable" | {| class="wikitable" | ||
Line 101: | Line 102: | ||
|} | |} | ||
= NFCardManagerAgent_XPC Supported XPC Commands = | == NFCardManagerAgent_XPC Supported XPC Commands == | ||
{| class="wikitable" | {| class="wikitable" |
Latest revision as of 02:54, 11 April 2016
This is the "Secure Element Daemon" used to communicate with the secure element hardware on the device. It is interacted with the nfcd daemon using XPC.
SELD plist:
{
EnablePressuredExit = 1;
EnableTransactions = 1;
ExitTimeOut = 40;
Label = "com.apple.seld";
MachServices = {
"com.apple.seld" = 1;
"com.apple.seld.aps" = 1;
};
Program = "/usr/libexec/seld";
RunAtLoad = 1;
UserName = mobile;
}
ApplePay personalization is performed using EMV BER-TLV commands to the secure element.
Major objects in the seld binary are:
- NFSecureElement(CertificateAuthority)
- SEDaemon
- NFSecureElement(ISO7816)
- NFSecureElement
- NFSecureElement(ContactlessRegistry)
- NFSecureElementCache
- NFSecureElementRemoteAdminAgent
- NFSecureElementRemoteAdminRequest
- NFSecureElementRemoteAdminRegistry
- NFResponseAPDU
- NFCardManagerAgent
- NFCardManagerAgent_XPC
NFCardManagerAgent Supported XPC Commands
ID | Command | Object |
---|---|---|
0x0 - 0x8 | throw "unknown command" error | ??? |
0x10 | [NFCardAgentManager getInfoCache] | ?? |
0x11 | [NFCardManagerAgent signChallenge:callback:] | raw challenge data |
0x12 | [NFCardManagerAgent authorize:callback:] | dict{Authtype=??, SSEHandle=??} |
0x13 | [NFCardManagerAgent deauthorize] | ??? |
0x14 | [NFCardManagerAgent getApplications:] | ??? |
0x15 | [NFCardManagerAgent asActive:checkCache:callback:] | ??? |
0x16 | [NFCardManagerAgent markAllApplicationsForDelete] | ??? |
0x17 | [NFCardManagerAgent getActiveApplications:] | ??? |
0x18 | [NFCardManagerAgent getRestrictedMode:] | ??? |
0x19-0x89 | throw unknown command error | N/A |
0x90 | call [NFCardManagerAgent dumpAppData:callback:] | ??? |
0x91 | call [NFCardManagerAgent dumpRestrictedModeLogWithCallBack:] | ??? |
>0x91 | throw unknown command error | N/A |
SEDaemon Supported XPC Commands
ID | Command | Object |
---|---|---|
<0x20 | [NFCardManagerApplet XPCConnection:didReceiveCommand] | raw challenge data |
0x20 | [SEDaemon setDbgURL: | dict{Authtype=??, SSEHandle=??} |
0x21 | [SEDaemon getStateInfo] | ??? |
0x22 | [SEDaemon getNextPushInfo] | ??? |
0x23 | ??? | ??? |
0x24 | [SEDaemon pushTopicList:] | ??? |
0x25 | [SEDaemon isWiredModeAvailable:] | ??? |
0x26 | updateRegionalRegistrationData | ??? |
0x27 | [SEDaemon sharedRegistry] | ??? |
0x30 | register event listenter | ??? |
0x31 | something else for event listening? | ??? |
>0x31 | [NFCardManagerApplet XPCConnection:didReceiveCommand] | ??? |
NFCardManagerAgent_XPC Supported XPC Commands
ID | Command | Object |
---|---|---|
0x0 - 0x8 | throw "unknown command" error | ??? |
0x10 | [NFCardAgentManager getInfoCache] | ?? |
0x11 | [NFCardManagerAgent signChallenge:callback:] | raw challenge data |
0x12 | [NFCardManagerAgent authorize:callback:] | dict{Authtype=??, SSEHandle=??} |
0x13 | [NFCardManagerAgent deauthorize] | ??? |
0x14 | [NFCardManagerAgent getApplications:] | ??? |
0x15 | [NFCardManagerAgent asActive:checkCache:callback:] | ??? |
0x16 | [NFCardManagerAgent markAllApplicationsForDelete] | ??? |
0x17 | [NFCardManagerAgent getActiveApplications:] | ??? |
0x18 | [NFCardManagerAgent getRestrictedMode:] | ??? |
0x19-0x89 | throw unknown command error | N/A |
0x90 | call [NFCardManagerAgent dumpAppData:callback:] | ??? |
0x91 | call [NFCardManagerAgent dumpRestrictedModeLogWithCallBack:] | ??? |
>0x91 | throw unknown command error | N/A |