11.08.2016 Views

Behind the Scenes with iOS Security

2aCt1ji

2aCt1ji

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Userspace<br />

UserEventAgent<br />

Darwin lock/unlock<br />

Notifications<br />

1) SpringBoard acquires <strong>the</strong> passcode<br />

SpringBoard<br />

MobileKeybag.framework<br />

7) first unlock notification sent<br />

XNU (Kernel)<br />

AppleKeyStore<br />

SEP Endpoint to SKS<br />

bio unlock token only created if bio unlock is enabled steps 4 & 5<br />

2) generate master key<br />

master key<br />

SKS<br />

SBIO<br />

SEP<br />

SKS keyring<br />

class A<br />

class B (priv)<br />

class B (public)<br />

class C<br />

class D<br />

3) decrypt class keys, add to keyring<br />

SKS memory<br />

master key + SEP UID<br />

class A<br />

class B (priv)<br />

class C<br />

random secret<br />

master key<br />

SBIO memory<br />

random secret<br />

4) encrypt master key <strong>with</strong> random secret – this encrypted master key never leaves SKS<br />

6) securely destroy raw master key<br />

5) send random secret to<br />

SBIO, destroy it in SKS<br />

first unlock

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!