We have moved to a new Sailfish OS Forum. Please start new discussions there.
1 | initial version | posted 2017-03-18 15:26:31 +0200 |
SFOS Security could be enhanced by supporting Secure Elements (SE) and API for Trusted Applications (TA) inside a Trusted Execution Environment (TEE). A piece of hardware (smart card) or secure enclave (TEE) is essential for security on a mobile for IPsec, gpg private keys, storing of certificates, generate random numbers, trusted user interface...
a) Support for SE with OpenSC https://github.com/OpenSC/OpenSC and a CCID smart card reader (e.g. PKCS#11 Smart Cards, GnuPG Smart Cards, Fido U2F Token, etc.) (commonly used on linux desktops and might work with usb otg?)
b) Support for SE with Open Mobile API http://simalliance.org/wp-content/uploads/2015/03/SIMalliance_OpenMobileAPI_v3_2.pdf maintained by GlobalPlatform https://www.globalplatform.org/specificationsdevice.asp (includes support for SE like UICC Applets, ASSD SDCards or embedded SE)
seek-for-android is a example for the Open Mobile API and can be implemented by the handset vendor because it is not a part of AOSP http://seek-for-android.github.io/
c) WebAPI for Accessing Secure Element - a new approach http://globalplatform.github.io/WebApis-for-SE/doc/
d) TEE client API for access to Trusted Applications (TA) inside a Trusted Execution Environment (TEE) https://www.globalplatform.org/specificationsdevice.asp (e.g. TEE secured by ARM TrustZone and distributed by a service provider with TSM)
SFOS developer - what is the preferred option or are there already solutions?
2 | No.2 Revision |
SFOS Security could be enhanced by supporting Secure Elements (SE) and API for Trusted Applications (TA) inside a Trusted Execution Environment (TEE). A piece of hardware (smart card) or secure enclave (TEE) is essential for security on a mobile for IPsec, gpg private keys, storing of certificates, generate random numbers, trusted user interface...
a) Support for SE with OpenSC https://github.com/OpenSC/OpenSC and a CCID smart card reader (e.g. PKCS#11 Smart Cards, GnuPG Smart Cards, Fido U2F Token, etc.) (commonly used on linux desktops and might work with usb otg?)
b) Support for SE with Open Mobile API http://simalliance.org/wp-content/uploads/2015/03/SIMalliance_OpenMobileAPI_v3_2.pdf maintained by GlobalPlatform https://www.globalplatform.org/specificationsdevice.asp (includes support for SE like UICC Applets, ASSD SDCards or embedded SE)
seek-for-android is a an example for the Open Mobile API and can be implemented by the handset vendor because it is not a part of AOSP http://seek-for-android.github.io/
c) WebAPI for Accessing Secure Element - a new approach http://globalplatform.github.io/WebApis-for-SE/doc/
d) TEE client API for access to Trusted Applications (TA) inside a Trusted Execution Environment (TEE) https://www.globalplatform.org/specificationsdevice.asp (e.g. TEE secured by ARM TrustZone and distributed by a service provider with TSM)
SFOS developer - what is the preferred option or are there already solutions?
3 | No.3 Revision |
SFOS Security could be enhanced by supporting Secure Elements (SE) and API for Trusted Applications (TA) inside a Trusted Execution Environment (TEE). A piece of hardware (smart card) or secure enclave (TEE) is essential for security on a mobile for IPsec, gpg private keys, storing of certificates, generate random numbers, trusted user interface...
a) Support for SE with OpenSC https://github.com/OpenSC/OpenSC and a CCID smart card reader (e.g. PKCS#11 Smart Cards, GnuPG Smart Cards, Fido U2F Token, etc.) (commonly used on linux desktops and might work with usb otg?)
b) Support for SE with Open Mobile API http://simalliance.org/wp-content/uploads/2015/03/SIMalliance_OpenMobileAPI_v3_2.pdf maintained by GlobalPlatform https://www.globalplatform.org/specificationsdevice.asp (includes support for SE like UICC Applets, ASSD SDCards or embedded SE)
seek-for-android is an example for the Open Mobile API and can be implemented by the handset vendor because it is not a part of AOSP http://seek-for-android.github.io/
c) WebAPI for Accessing Secure Element - a new approach http://globalplatform.github.io/WebApis-for-SE/doc/
d) TEE client API for access to Trusted Applications (TA) inside a Trusted Execution Environment (TEE) https://www.globalplatform.org/specificationsdevice.asp (e.g. TEE secured by ARM TrustZone and distributed by a service provider with TSM)
SFOS developer - what is the preferred option or are there already solutions?
4 | No.4 Revision |
SFOS Security could be enhanced by supporting Secure Elements (SE) and API for Trusted Applications (TA) inside a Trusted Execution Environment (TEE). A piece of hardware (smart card) or secure enclave (TEE) is essential for security on a mobile for IPsec, gpg private keys, storing of certificates, generate random numbers, trusted user interface...
a) Support for SE with OpenSC https://github.com/OpenSC/OpenSC and a CCID smart card reader (e.g. PKCS#11 Smart Cards, GnuPG Smart Cards, Fido U2F Token, etc.) (commonly used on linux desktops and might work with usb otg?)
b) Support for SE with Open Mobile API http://simalliance.org/wp-content/uploads/2015/03/SIMalliance_OpenMobileAPI_v3_2.pdf maintained by GlobalPlatform https://www.globalplatform.org/specificationsdevice.asp (includes support for SE like UICC Applets, ASSD SDCards or embedded SE)
seek-for-android is an example for the Open Mobile API and can be implemented by the handset vendor because it is not a part of AOSP http://seek-for-android.github.io/
c) WebAPI for Accessing Secure Element - a new approach http://globalplatform.github.io/WebApis-for-SE/doc/
d) TEE client API for access to Trusted Applications (TA) inside a Trusted Execution Environment (TEE) https://www.globalplatform.org/specificationsdevice.asp (e.g. TEE secured by ARM TrustZone and distributed by a service provider with TSM)
SFOS developer - what is the preferred option or are there already solutions?
5 | No.5 Revision |
SFOS Security could be enhanced by supporting Secure Elements (SE) and API for Trusted Applications (TA) inside a Trusted Execution Environment (TEE). A piece of hardware (smart card) or secure enclave (TEE) is essential for security on a mobile for IPsec, gpg private keys, storing of certificates, generate random numbers, trusted user interface...
a) Support for SE with OpenSC https://github.com/OpenSC/OpenSC and a CCID smart card reader (e.g. PKCS#11 Smart Cards, GnuPG Smart Cards, Fido U2F Token, etc.) (commonly used on linux desktops and might work with usb otg?)
b) Support for SE with Open Mobile API http://simalliance.org/wp-content/uploads/2015/03/SIMalliance_OpenMobileAPI_v3_2.pdf maintained by GlobalPlatform https://www.globalplatform.org/specificationsdevice.asp (includes support for SE like UICC Applets, ASSD SDCards or embedded SE)
seek-for-android is an example for the Open Mobile API and can be implemented by the handset vendor because it is not a part of AOSP http://seek-for-android.github.io/
c) WebAPI for Accessing Secure Element - a new approach http://globalplatform.github.io/WebApis-for-SE/doc/
d) TEE client API for access to Trusted Applications (TA) inside a Trusted Execution Environment (TEE)
https://www.globalplatform.org/specificationsdevice.asp (e.g. TEE secured by ARM TrustZone and distributed provisioning distributing TA by a service provider with TSM)Trusted Service Manager (TSM)) Have a look at OP-TEE and the simulation for an example https://www.op-tee.org/
SFOS developer developers - what is the preferred option or are there already solutions?
6 | No.6 Revision |
SFOS Security could be enhanced by supporting Secure Elements (SE) and API for Trusted Applications (TA) inside a Trusted Execution Environment (TEE). A piece of hardware (smart card) or secure enclave (TEE) is essential for security on a mobile for IPsec, gpg private keys, storing of certificates, generate random numbers, trusted user interface...
a) Support for SE with OpenSC https://github.com/OpenSC/OpenSC ,PC/SC and a CCID smart card reader (e.g. PKCS#11 Smart Cards, GnuPG Smart Cards, Fido U2F Token, etc.) (commonly used on linux desktops and might work with usb otg?)
b) Support for SE with Open Mobile API http://simalliance.org/wp-content/uploads/2015/03/SIMalliance_OpenMobileAPI_v3_2.pdf maintained by GlobalPlatform https://www.globalplatform.org/specificationsdevice.asp (includes support for SE like UICC Applets, ASSD SDCards or embedded SE)
seek-for-android is an example for the Open Mobile API and can be implemented by the handset vendor because it is not a part of AOSP http://seek-for-android.github.io/
c) WebAPI for Accessing Secure Element - a new approach http://globalplatform.github.io/WebApis-for-SE/doc/
d) TEE client API for access to Trusted Applications (TA) inside a Trusted Execution Environment (TEE) https://www.globalplatform.org/specificationsdevice.asp (e.g. TEE secured by ARM TrustZone and provisioning distributing TA by a service provider with Trusted Service Manager (TSM)) Have a look at OP-TEE and the simulation for an example https://www.op-tee.org/
SFOS developers - what is the preferred option or are there already solutions?
7 | No.7 Revision |
SFOS Security could be enhanced by supporting Secure Elements (SE) and API for Trusted Applications (TA) inside a Trusted Execution Environment (TEE). A piece of hardware (smart card) or secure enclave (TEE) is essential for security on a mobile for IPsec, gpg private keys, storing of certificates, generate random numbers, trusted user interface...
a) Support for SE with OpenSC https://github.com/OpenSC/OpenSC ,PC/SC and a CCID smart card reader (e.g. opensc PKCS#11 Smart Cards, GnuPG Smart Cards, Fido U2F Token, etc.) (commonly used on linux desktops and might work with usb otg?)
b) Support for SE with Open Mobile API http://simalliance.org/wp-content/uploads/2015/03/SIMalliance_OpenMobileAPI_v3_2.pdf maintained by GlobalPlatform https://www.globalplatform.org/specificationsdevice.asp (includes support for SE like UICC Applets, ASSD SDCards or embedded SE)
seek-for-android is an example for the Open Mobile API and can be implemented by the handset vendor because it is not a part of AOSP http://seek-for-android.github.io/
c) WebAPI for Accessing Secure Element - a new approach http://globalplatform.github.io/WebApis-for-SE/doc/
d) TEE client API for access to Trusted Applications (TA) inside a Trusted Execution Environment (TEE) https://www.globalplatform.org/specificationsdevice.asp (e.g. TEE secured by ARM TrustZone and provisioning distributing TA by a service provider with Trusted Service Manager (TSM)) Have a look at OP-TEE and the simulation for an example https://www.op-tee.org/
SFOS developers - what is the preferred option or are there already solutions?
8 | No.8 Revision |
SFOS Security could be enhanced by supporting Secure Elements (SE) and API for Trusted Applications (TA) inside a Trusted Execution Environment (TEE). A piece of hardware (smart card) or secure enclave (TEE) is essential for security on a mobile for IPsec, gpg private keys, storing of certificates, generate random numbers, trusted user interface...
a) Support for SE with OpenSC https://github.com/OpenSC/OpenSC ,PC/SC and a CCID smart card reader
(e.g. opensc PKCS#11 Smart Cards, GnuPG Smart Cards, Fido U2F Token, etc.)
(commonly (widely used on linux desktops and might work with usb otg?)
b) Support for SE with Open Mobile API http://simalliance.org/wp-content/uploads/2015/03/SIMalliance_OpenMobileAPI_v3_2.pdf maintained by GlobalPlatform https://www.globalplatform.org/specificationsdevice.asp (includes support for SE like UICC Applets, ASSD SDCards or embedded SE)
seek-for-android is an example for the Open Mobile API and can be implemented by the handset vendor because it is not a part of AOSP http://seek-for-android.github.io/
c) WebAPI for Accessing Secure Element - a new approach http://globalplatform.github.io/WebApis-for-SE/doc/
d) TEE client API for access to Trusted Applications (TA) inside a Trusted Execution Environment (TEE)
https://www.globalplatform.org/specificationsdevice.asp (e.g. TEE secured by ARM TrustZone and provisioning distributing TA by a service provider with Trusted Service Manager (TSM)) Have a look at OP-TEE and the simulation for an example https://www.op-tee.org/(TSM))
SFOS developers - what is the preferred option or are there already solutions?
9 | No.9 Revision |
SFOS Security could be enhanced by supporting Secure Elements (SE) and API for Trusted Applications (TA) inside a Trusted Execution Environment (TEE). A piece of hardware (smart card) or secure enclave (TEE) is essential for security on a mobile for IPsec, gpg private keys, storing of certificates, generate random numbers, trusted user interface...
a) Support for SE with OpenSC https://github.com/OpenSC/OpenSC ,PC/SC and a CCID smart card reader
(e.g. opensc PKCS#11 Smart Cards, GnuPG Smart Cards, Fido U2F Token, etc.)
(widely used on linux desktops and might work with usb otg?)desktops)
b) Support for SE with Open Mobile API http://simalliance.org/wp-content/uploads/2015/03/SIMalliance_OpenMobileAPI_v3_2.pdf maintained by GlobalPlatform https://www.globalplatform.org/specificationsdevice.asp (includes support for SE like UICC Applets, ASSD SDCards or embedded SE)
seek-for-android is an example for the Open Mobile API and can be implemented by the handset vendor because it is not a part of AOSP http://seek-for-android.github.io/
c) WebAPI for Accessing Secure Element - a new approach http://globalplatform.github.io/WebApis-for-SE/doc/
d) TEE client API for access to Trusted Applications (TA) inside a Trusted Execution Environment (TEE) https://www.globalplatform.org/specificationsdevice.asp (e.g. TEE secured by ARM TrustZone and provisioning distributing TA by a service provider with Trusted Service Manager (TSM))
SFOS developers - what is the preferred option are there other (more simple) possibilities or are there already solutions?solutions (using the other half and I2C)?
10 | No.10 Revision |
SFOS Security could be enhanced (in the future) by supporting Secure Elements (SE) and and/or API for Trusted Applications (TA) inside a Trusted Execution Environment (TEE). A piece of hardware (smart card) or secure enclave (TEE) is might be essential for security on a mobile for IPsec, gpg private keys, storing of certificates, generate random numbers, trusted user interface...
a) Support for SE with OpenSC https://github.com/OpenSC/OpenSC ,PC/SC and a CCID smart card reader (e.g. opensc PKCS#11 Smart Cards, GnuPG Smart Cards, Fido U2F Token, etc.) (widely used on linux desktops)
b) Support for SE with Open Mobile API http://simalliance.org/wp-content/uploads/2015/03/SIMalliance_OpenMobileAPI_v3_2.pdf maintained by GlobalPlatform https://www.globalplatform.org/specificationsdevice.asp (includes support for SE like UICC Applets, ASSD SDCards or embedded SE)
seek-for-android is an example for the Open Mobile API and can be implemented by the handset vendor because it is not a part of AOSP http://seek-for-android.github.io/
c) WebAPI for Accessing Secure Element - a new approach http://globalplatform.github.io/WebApis-for-SE/doc/
d) TEE client API for access to Trusted Applications (TA) inside a Trusted Execution Environment (TEE) https://www.globalplatform.org/specificationsdevice.asp (e.g. TEE secured by ARM TrustZone and provisioning distributing TA by a service provider with Trusted Service Manager (TSM))
SFOS developers - are there other (more simple) possibilities or are there already solutions (using the other half and I2C)?
11 | No.11 Revision |
revision 1
SFOS Privacy and Security is excellent. Security could be enhanced (in the future) in the future by supporting Secure Elements (SE) and/or or even API for Trusted Applications (TA) inside a Trusted Execution Environment (TEE). A piece of hardware (smart card) or secure enclave (TEE) might be essential for very useful for the security even on a mobile for IPsec, gpg private keys, storing of certificates, generate mobile, for applications and the OS itself. (IPsec/OpenVPN, GnuPG, S/MIME, random numbers, FIDO U2F, trusted user interface...interface...)
thoughts:
a) Support for SE with OpenSC https://github.com/OpenSC/OpenSC ,PC/SC as middleware, PC/SC and a CCID driver for a smart card reader
reader; there are a lot of use cases with OpenSC support and a lot of supported Secure Elements (e.g. opensc OpenSC PKCS#11 Smart Cards, GnuPG Smart Cards, Fido U2F Token, etc.)
(widely Cards are widely used on linux desktops)desktops, even rasbian (rasberry pi) supports OpenSC)
Could this work in practice with a mobile, e.g. with NFC support? I don't know if this causes a lot of changes in SFOS...
...simple?
b) Support for SE with Open Mobile API http://simalliance.org/wp-content/uploads/2015/03/SIMalliance_OpenMobileAPI_v3_2.pdf maintained by GlobalPlatform https://www.globalplatform.org/specificationsdevice.asp (includes support for SE like UICC Applets, ASSD SDCards or embedded SE)
seek-for-android is an example for the Open Mobile API and can be implemented by the handset vendor because it is not a part of AOSP http://seek-for-android.github.io/
...complex?
c) WebAPI for Accessing Secure Element - a new approach http://globalplatform.github.io/WebApis-for-SE/doc/
---?
d) TEE client API for access to Trusted Applications (TA) inside a Trusted Execution Environment (TEE) https://www.globalplatform.org/specificationsdevice.asp (e.g. TEE secured by ARM TrustZone and provisioning distributing TA by a service provider with Trusted Service Manager (TSM))
...very complex
SFOS developers - are there other (more simple) (simple) possibilities or are there already solutions (using the other half and I2C)?
EDIT: tag changed from feature-request to idea; lots of minor changes
12 | No.12 Revision |
revision 1
SFOS Privacy and Security is excellent. Security could be enhanced in the future by supporting Secure Elements (SE) or even API for Trusted Applications (TA) inside a Trusted Execution Environment (TEE). A piece of hardware (smart card) or secure enclave (TEE) might be very useful for the security even on a mobile, for applications and the OS itself. (IPsec/OpenVPN, GnuPG, S/MIME, random numbers, FIDO U2F, trusted user interface...)
thoughts:
a) Support for SE with OpenSC https://github.com/OpenSC/OpenSC as middleware, PC/SC and a CCID driver for a smart card reader; there are a lot of use cases with OpenSC support and a lot of supported Secure Elements (e.g. OpenSC PKCS#11 Smart Cards are widely used on linux desktops, even rasbian (rasberry pi) supports OpenSC) Could this work in practice with a mobile, e.g. with NFC support? I don't know if this causes a lot of changes in SFOS...
...simple?...simple, complex or not working?
b) Support for SE with Open Mobile API http://simalliance.org/wp-content/uploads/2015/03/SIMalliance_OpenMobileAPI_v3_2.pdf maintained by GlobalPlatform https://www.globalplatform.org/specificationsdevice.asp (includes support for SE like UICC Applets, ASSD SDCards or embedded SE)
seek-for-android is an example for the Open Mobile API and can be implemented by the handset vendor because it is not a part of AOSP http://seek-for-android.github.io/
...complex?
c) WebAPI for Accessing Secure Element - a new approach http://globalplatform.github.io/WebApis-for-SE/doc/
---?
d) TEE client API for access to Trusted Applications (TA) inside a Trusted Execution Environment (TEE) https://www.globalplatform.org/specificationsdevice.asp (e.g. TEE secured by ARM TrustZone and provisioning distributing TA by a service provider with Trusted Service Manager (TSM))
...very complexcomplex, indeed
SFOS developers - are there other (simple) possibilities or are there already solutions (using the other half and I2C)?
EDIT: tag changed from feature-request to idea; lots of minor changes
13 | No.13 Revision |
revision 1
SFOS Privacy and Security is excellent. Security could be enhanced in the future by supporting Secure Elements (SE) or even API for Trusted Applications (TA) inside a Trusted Execution Environment (TEE). A piece of hardware (smart card) or secure enclave (TEE) might be very useful for the security even on a mobile, for applications and the OS itself. (IPsec/OpenVPN, GnuPG, S/MIME, random numbers, FIDO U2F, trusted user interface...)
thoughts:
a) Support for SE with OpenSC https://github.com/OpenSC/OpenSC as middleware, PC/SC and a CCID driver for a smart card reader; there are a lot of use cases with OpenSC support and a lot of supported Secure Elements (e.g. OpenSC PKCS#11 Smart Cards are widely used on linux desktops, even rasbian (rasberry pi) supports OpenSC) it)
Could this work in practice with a mobile, with the opensc minidriver and read only PKCS#11 card access, e.g. with SDCard or NFC support? I don't know if this causes a lot of changes in SFOS...
...simple, complex or not working?
b) Support for SE with Open Mobile API http://simalliance.org/wp-content/uploads/2015/03/SIMalliance_OpenMobileAPI_v3_2.pdf maintained by GlobalPlatform https://www.globalplatform.org/specificationsdevice.asp (includes support for SE like UICC Applets, ASSD SDCards or embedded SE)
seek-for-android is an example for the Open Mobile API and can be implemented by the handset vendor because it is not a part of AOSP http://seek-for-android.github.io/
...complex?
c) WebAPI for Accessing Secure Element - a new approach http://globalplatform.github.io/WebApis-for-SE/doc/
---?
d) TEE client API for access to Trusted Applications (TA) inside a Trusted Execution Environment (TEE) https://www.globalplatform.org/specificationsdevice.asp (e.g. TEE secured by ARM TrustZone and provisioning distributing TA by a service provider with Trusted Service Manager (TSM))
...very complex, indeed
SFOS developers - are there other (simple) possibilities or are there already solutions (using the other half and I2C)?
EDIT: tag changed from feature-request to idea; lots of minor changes
14 | No.14 Revision |
revision 1
SFOS Privacy and Security is excellent. Security could be enhanced in the future by supporting Secure Elements (SE) or even API for Trusted Applications (TA) inside a Trusted Execution Environment (TEE). A piece of hardware (smart card) or secure enclave (TEE) might be very useful for the security even on a mobile, for applications and the OS itself. (IPsec/OpenVPN, GnuPG, S/MIME, random numbers, FIDO U2F, trusted user interface...)
thoughts:
a) Support for SE with OpenSC https://github.com/OpenSC/OpenSC as middleware, PC/SC and a CCID driver for a smart card reader; there are a lot of use cases with OpenSC support and a lot of supported Secure Elements (e.g. OpenSC PKCS#11 Smart Cards are widely used on linux desktops, even rasbian (rasberry pi) supports it) too)
Could this work in practice with a mobile, with mobile? With the opensc minidriver and read only PKCS#11 card access, e.g. with SDCard or NFC support? I don't know if this causes a lot of changes in SFOS...
...simple, complex support?
...complex or not working?
b) Support for SE with Open Mobile API http://simalliance.org/wp-content/uploads/2015/03/SIMalliance_OpenMobileAPI_v3_2.pdf maintained by GlobalPlatform https://www.globalplatform.org/specificationsdevice.asp (includes support for SE like UICC Applets, ASSD SDCards or embedded SE)
seek-for-android is an example for the Open Mobile API and can be implemented by the handset vendor because it is not a part of AOSP http://seek-for-android.github.io/
...complex?
c) WebAPI for Accessing Secure Element - a new approach http://globalplatform.github.io/WebApis-for-SE/doc/
---?
d) TEE client API for access to Trusted Applications (TA) inside a Trusted Execution Environment (TEE) https://www.globalplatform.org/specificationsdevice.asp (e.g. TEE secured by ARM TrustZone and provisioning distributing TA by a service provider with Trusted Service Manager (TSM))
...very complex, indeed
SFOS developers - are there other (simple) possibilities or are there already solutions (using the other half and I2C)?
EDIT: tag changed from feature-request to idea; lots of minor changes
15 | No.15 Revision |
revision 1
SFOS Privacy and Security is excellent. Security could be enhanced in the future by supporting Secure Elements (SE) or even API for Trusted Applications (TA) inside a Trusted Execution Environment (TEE). A piece of hardware (smart card) or secure enclave (TEE) might be very useful for the security even on a mobile, for applications and the OS itself. (IPsec/OpenVPN, GnuPG, S/MIME, random numbers, FIDO U2F, trusted user interface...)
thoughts:
a) Support for SE with OpenSC https://github.com/OpenSC/OpenSC as middleware, PC/SC and a CCID driver for a smart card reader; there are a lot of use cases with OpenSC support and a lot of supported Secure Elements (e.g. OpenSC PKCS#11 Smart Cards are widely used on linux desktops, rasbian too)
Could this work in practice with a mobile? With mobile, with the opensc minidriver and read only PKCS#11 card access, e.g. with SDCard or NFC support?
vevgeniev tried access with the browser https://together.jolla.com/question/132416/using-certificate-on-hardware-token-in-browser/
...complex or not working?
b) Support for SE with Open Mobile API http://simalliance.org/wp-content/uploads/2015/03/SIMalliance_OpenMobileAPI_v3_2.pdf maintained by GlobalPlatform https://www.globalplatform.org/specificationsdevice.asp (includes support for SE like UICC Applets, ASSD SDCards or embedded SE)
seek-for-android is an example for the Open Mobile API and can be implemented by the handset vendor because it is not a part of AOSP http://seek-for-android.github.io/
...complex?
c) WebAPI for Accessing Secure Element - a new approach http://globalplatform.github.io/WebApis-for-SE/doc/
---?
d) TEE client API for access to Trusted Applications (TA) inside a Trusted Execution Environment (TEE) https://www.globalplatform.org/specificationsdevice.asp (e.g. TEE secured by ARM TrustZone and provisioning distributing TA by a service provider with Trusted Service Manager (TSM))
...very complex, indeed
SFOS developers - are there other (simple) possibilities or are there already solutions (using the other half and I2C)?
EDIT: tag changed from feature-request to idea; lots of minor changes
16 | No.16 Revision |
revision 1
SFOS Privacy and Security is excellent. Security could be enhanced in the future by supporting Secure Elements (SE) or even API for Trusted Applications (TA) inside a Trusted Execution Environment (TEE). A piece of hardware (smart card) or secure enclave (TEE) might be very useful for the security even on a mobile, for applications and the OS itself. (IPsec/OpenVPN, GnuPG, S/MIME, random numbers, FIDO U2F, trusted user interface...)
thoughts:
a) Support for SE with OpenSC https://github.com/OpenSC/OpenSC as middleware, PC/SC and a CCID driver for a smart card reader; there are a lot of use cases with OpenSC support and a lot of supported Secure Elements (e.g. OpenSC PKCS#11 Smart Cards are widely used on linux desktops, rasbian too) Could this work in practice with a mobile, with the opensc minidriver and read only PKCS#11 card access, e.g. with SDCard or NFC support?
vevgeniev tried access with the browser https://together.jolla.com/question/132416/using-certificate-on-hardware-token-in-browser/
...complex or not working?
b) Support for SE with Open Mobile API http://simalliance.org/wp-content/uploads/2015/03/SIMalliance_OpenMobileAPI_v3_2.pdf maintained by GlobalPlatform https://www.globalplatform.org/specificationsdevice.asp (includes support for SE like UICC Applets, ASSD SDCards or embedded SE)
seek-for-android is an example for the Open Mobile API and can be implemented by the handset vendor because it is not a part of AOSP http://seek-for-android.github.io/
...complex?
c) WebAPI for Accessing Secure Element - a new approach http://globalplatform.github.io/WebApis-for-SE/doc/
---?
d) TEE client API for access to Trusted Applications (TA) inside a Trusted Execution Environment (TEE) https://www.globalplatform.org/specificationsdevice.asp (e.g. TEE secured by ARM TrustZone and provisioning distributing TA by a service provider with Trusted Service Manager (TSM))
...very complex, indeed
SFOS developers - are there other (simple) possibilities or are there already solutions (using the other half and I2C)?
EDIT: tag changed from feature-request to idea; lots of minor changes
17 | No.17 Revision |
revision 12
SFOS Privacy and Security is excellent. Security could be enhanced in the future by supporting Secure Elements (SE) or even API for Trusted Applications (TA) inside a Trusted Execution Environment (TEE). A piece of hardware (smart card) or secure enclave (TEE) might be very useful for the security even on a mobile, for applications and the OS itself. (IPsec/OpenVPN, GnuPG, S/MIME, random numbers, FIDO U2F, trusted user interface...)
thoughts:
a) Support for SE with OpenSC https://github.com/OpenSC/OpenSC as middleware, PC/SC and a CCID driver for a smart card reader; there are a lot of use cases with OpenSC support and a lot of supported Secure Elements (e.g. OpenSC PKCS#11 PKCS#15 Smart Cards are widely used on linux desktops, rasbian too)
Could this work in practice with a mobile, with the opensc minidriver and read only 'read only' PKCS#11 card access, e.g. with SDCard or NFC support?
vevgeniev tried access with the browser https://together.jolla.com/question/132416/using-certificate-on-hardware-token-in-browser/
...complex or not working?
b) Support for SE with Open Mobile API http://simalliance.org/wp-content/uploads/2015/03/SIMalliance_OpenMobileAPI_v3_2.pdf maintained by GlobalPlatform https://www.globalplatform.org/specificationsdevice.asp (includes support for SE like UICC Applets, ASSD SDCards or embedded SE)
seek-for-android is an example for the Open Mobile API and can be implemented by the handset vendor manufacturer because it is not a part of AOSP http://seek-for-android.github.io/http://seek-for-android.github.io/ this is already done by many manufacturers
...complex?
c) WebAPI for Accessing Secure Element - a new approach http://globalplatform.github.io/WebApis-for-SE/doc/
---?...?
d) TEE client API for access to Trusted Applications (TA) inside a Trusted Execution Environment (TEE)
https://www.globalplatform.org/specificationsdevice.asp (e.g. TEE secured by ARM TrustZone and provisioning distributing TA by a service provider with Trusted Service Manager (TSM))(TSM)) - widely used for file system encryption, DRM, credential storage in handsets. of course there are important published vulnerabilities of different products...
...very complex, indeed
SFOS developers - are there other (simple) possibilities or are there already solutions (using the other half and I2C)?
EDIT: tag changed from feature-request to idea; lots of minor changes
18 | No.18 Revision |
revision 23
SFOS Privacy and Security is excellent. Security could be enhanced in the future by supporting Secure Elements (SE) or even API for Trusted Applications (TA) inside a Trusted Execution Environment (TEE). A piece of hardware (smart card) or secure enclave (TEE) might be very useful for the security even on a mobile, for applications and the OS itself. (IPsec/OpenVPN, GnuPG, S/MIME, random numbers, FIDO U2F, trusted user interface...)
Use Case: IPsec VPN with SE support (e.g. strongswan VPN with PKCS#11 support)
thoughts:
a) Support for SE with OpenSC https://github.com/OpenSC/OpenSC as middleware, PC/SC and a CCID driver for a smart card reader; there are a lot of use cases with OpenSC support and a lot of supported Secure Elements (e.g. OpenSC PKCS#15 Smart Cards are widely used on linux desktops, rasbian too) Could this work in practice with a mobile, with the opensc minidriver and 'read only' PKCS#11 card access, e.g. with SDCard or NFC support?
vevgeniev tried access with the browser https://together.jolla.com/question/132416/using-certificate-on-hardware-token-in-browser/
...complex or not working?
b) Support for SE with Open Mobile API http://simalliance.org/wp-content/uploads/2015/03/SIMalliance_OpenMobileAPI_v3_2.pdf maintained by GlobalPlatform https://www.globalplatform.org/specificationsdevice.asp (includes support for SE like UICC Applets, ASSD SDCards or embedded SE)
seek-for-android is an example for the Open Mobile API and can be implemented by the handset manufacturer because it is not a part of AOSP http://seek-for-android.github.io/ this is already done by many manufacturers
...complex?
c) WebAPI for Accessing Secure Element - a new approach
http://globalplatform.github.io/WebApis-for-SE/doc/
...?
d) TEE client API for access to Trusted Applications (TA) inside a Trusted Execution Environment (TEE) https://www.globalplatform.org/specificationsdevice.asp (e.g. TEE secured by ARM TrustZone and provisioning distributing TA by a service provider with Trusted Service Manager (TSM)) - widely used for file system encryption, DRM, credential storage in handsets. of course there are important published vulnerabilities of different products...
...very complex, indeed
SFOS developers - are there other (simple) possibilities or are there already solutions (using the other half and I2C)?
EDIT: tag changed from feature-request to idea; lots of use case added, minor changes
19 | No.19 Revision |
revision 3
SFOS Privacy and Security is excellent. Security could be enhanced in the future by supporting Secure Elements (SE) or even API for Trusted Applications (TA) inside a Trusted Execution Environment (TEE). A piece of hardware (smart card) or secure enclave (TEE) might be very useful for the security even on a mobile, for applications and the OS itself. (IPsec/OpenVPN, GnuPG, S/MIME, random numbers, FIDO U2F, trusted user interface...)
My Use Case: IPsec Case: VPN with SE support (e.g. strongswan VPN with IPsec with strongSwan and PKCS#11 support)
thoughts:
a) Support for SE with OpenSC https://github.com/OpenSC/OpenSC as middleware, PC/SC and a CCID driver for a smart card reader; there are a lot of use cases with OpenSC support and a lot of supported Secure Elements (e.g. OpenSC PKCS#15 Smart Cards are widely used on linux desktops, rasbian too) Could this work in practice with a mobile, with the opensc minidriver and 'read only' PKCS#11 card access, e.g. with SDCard or NFC support?
vevgeniev tried access with the browser https://together.jolla.com/question/132416/using-certificate-on-hardware-token-in-browser/
b) Support for SE with Open Mobile API http://simalliance.org/wp-content/uploads/2015/03/SIMalliance_OpenMobileAPI_v3_2.pdf maintained by GlobalPlatform https://www.globalplatform.org/specificationsdevice.asp (includes support for SE like UICC Applets, ASSD SDCards or embedded SE)
seek-for-android is an example for the Open Mobile API and can be implemented by the handset manufacturer because it is not a part of AOSP http://seek-for-android.github.io/ this is already done by many manufacturers
c) WebAPI for Accessing Secure Element - a new approach http://globalplatform.github.io/WebApis-for-SE/doc/
d) TEE client API for access to Trusted Applications (TA) inside a Trusted Execution Environment (TEE) https://www.globalplatform.org/specificationsdevice.asp (e.g. TEE secured by ARM TrustZone and provisioning distributing TA by a service provider with Trusted Service Manager (TSM)) - widely used for file system encryption, DRM, credential storage in handsets. of course there are important published vulnerabilities of different products...
EDIT: use case added, minor changes
20 | No.20 Revision |
revision 34
SFOS Privacy and Security is excellent. Security could be enhanced in the future by supporting Secure Elements (SE) or even API for Trusted Applications (TA) inside a Trusted Execution Environment (TEE). A piece of hardware (smart card) or secure enclave (TEE) might be very useful for the security even on a mobile, for applications and the OS itself. (IPsec/OpenVPN, GnuPG, S/MIME, random numbers, FIDO U2F, trusted user interface...)
My Use Case: VPN with SE support (e.g. IPsec with strongSwan and PKCS#11 support)
thoughts:
a) Support for SE with OpenSC https://github.com/OpenSC/OpenSC as middleware, PC/SC and a CCID driver for a smart card reader; there are a lot of use cases with OpenSC support and a lot of supported Secure Elements (e.g. OpenSC PKCS#15 Smart Cards are widely used on linux desktops, rasbian too) Could this work in practice with a mobile, with the opensc minidriver and 'read only' PKCS#11 card access, e.g. with SDCard or NFC support?
vevgeniev tried access with the browser https://together.jolla.com/question/132416/using-certificate-on-hardware-token-in-browser/
b) Support for SE with Open Mobile API http://simalliance.org/wp-content/uploads/2015/03/SIMalliance_OpenMobileAPI_v3_2.pdf maintained by GlobalPlatform https://www.globalplatform.org/specificationsdevice.asp (includes support for SE like UICC Applets, ASSD SDCards or embedded SE)
seek-for-android is an example for the Open Mobile API and can be implemented by the handset manufacturer because it is not a part of AOSP http://seek-for-android.github.io/ this is already done by many manufacturers
c) WebAPI for Accessing Secure Element - a new approach http://globalplatform.github.io/WebApis-for-SE/doc/
d) TEE client API for access to Trusted Applications (TA) inside a Trusted Execution Environment (TEE) https://www.globalplatform.org/specificationsdevice.asp (e.g. TEE secured by ARM TrustZone and provisioning distributing TA by a service provider with Trusted Service Manager (TSM)) - widely used for file system encryption, DRM, credential storage in handsets. of course there are important published vulnerabilities of different products...
TEE framework as part of the linux kernel https://www.op-tee.org/blog/op-tee-qa/
EDIT: use case added, minor changeschanges, op-tee