CoreML encrypted model key with limited network access

Excellent talk on model deployment, encryption. Given some users experience network issues, for encrypted models within the app how could the key be downloaded as close to app download/install time as possible? e.g. the user has network access when they install the app, so if the key for the model could be downloaded at install time and stored securely locally rather than at model load time that could give a better experience.
Answered by in 614080022

Given some users experience network issues, for encrypted models within the app how could the key be downloaded as close to app download/install time as possible? 

Good question. The key is securely fetched and securely stored locally at the model load time. So, one option is to load the encrypted model the first time app is opened by the user. If fetching the key fails, model load conveys suitable error at the API surface. It is a good idea to communicate that to the user.
Accepted Answer

Given some users experience network issues, for encrypted models within the app how could the key be downloaded as close to app download/install time as possible? 

Good question. The key is securely fetched and securely stored locally at the model load time. So, one option is to load the encrypted model the first time app is opened by the user. If fetching the key fails, model load conveys suitable error at the API surface. It is a good idea to communicate that to the user.
CoreML encrypted model key with limited network access
 
 
Q