Hello Xu, Thanks for the data. We will check the pull requests for sure .
We might need to combine in together into separate module/step – Signature Step, which would be used during applications installation. Best regards, Pawel Sikorski From: Zhang, Xu U [mailto:[email protected]] Sent: Friday, November 21, 2014 11:36 AM To: Baptiste Durand; Pawel Sikorski Cc: [email protected] Subject: RE: [Dev] App Installer WorkShop Status Hi Baptiste, I have implemented some features on Crosswalk installer, I think they may be useful for your reference. 1. https://github.com/crosswalk-project/crosswalk/pull/2518. For this pull request, it implement the features below: l Parser Tizen privileges from config.xml of wgt l Register application’s permission to Cynara policy l Call security manager to set smack label for files in the widget I think you can use some code directly and send pull request in Tizen gerrit 2. https://github.com/crosswalk-project/crosswalk/pull/2169 https://github.com/crosswalk-project/crosswalk/pull/2291 https://github.com/crosswalk-project/crosswalk/pull/2422 For these pull requests, they implemented features Tizen widget signature checking Best Regards Zhang Xu From: Dev [mailto:[email protected]] On Behalf Of Baptiste Durand Sent: Friday, November 21, 2014 12:41 AM To: Pawel Sikorski Cc: [email protected] Subject: Re: [Dev] App Installer WorkShop Status Hi Pawel, Please remember that all apps should follow the same workflow. That means all applications should have be managed in the same especially for security task, that should be common for all applications but we can't add specific step if an installation for a designed type of app requires ones. The encryption is specific WRT you are right so we should be able to handle it. When we initialize the app_installer for wgt, we will adjust the list of step by adding a encryption step dedicated to widget. About the implementation It would be preferable that encryption should be done by a platform service Let me clarify this point. I let you know what my complete point of view. Thanks BR Baptiste 2014-11-20 17:14 GMT+01:00 Pawel Sikorski <[email protected]>: Dear Baptiste, Thank You for sharing the status. We had a small discussion about the *Encryption feature*. Please see a description of this requirement below and its current status. -------------------- ------------------------------------------------------------ Link to above spec: https://developer.tizen.org/dev-guide/2.2.1/org.tizen.web.appprogramming/html/basics_tizen_programming/web_security_privacy.htm Link to specification: https://source.tizen.org/sites/default/files/page/tizen-2.2-wrt-core-spec.pdf 5.2. Web Application Protection 0650. For Web Applications that explicitly turn on encryption through the <tizen:setting /> element in the configuration file, the WRT MUST provide the following measures to protect Web Application resources: * The WRT MUST encrypt the HTML, JS, and CSS file resources of the Web Application stored by the device. * When the Web Application is being run, the WRT MUST decrypt the encrypted resources (HTML, JS, and CSS) in a manner transparent to the application itself." Crosswalk implementation details: Currently application is being encrypted during widget installation process (encrypted file types: *.js, *.html, *.css, *.xhtml). Encryption starts in xwalk_package_installer.cc:407 (method Install()). These files are encrypted with AES key, which is generated with help of chromium's "crypto" module and with usage of the same library they are decrypted. After encryption key is saved in tizen's secure-storage (libss-client and ss-server packages). Key is generated for each file separately. Files are decrypted in memory during runtime with usage of key located in secure-storage. Decryption is covered in class URLRequestApplicationJobTizen (application_protocols.cc:181). Link to PR: https://github.com/crosswalk-project/crosswalk/pull/2467 Link to XWALK bug: https://crosswalk-project.org/jira/browse/XWALK-1172 -------------------------------------------------------------------------------- What do you think about that? It looks as a specific step just for Web Applications. Best Regards, Pawel Sikorski From: Dev [mailto:[email protected]] On Behalf Of Baptiste Durand Sent: Thursday, November 20, 2014 5:02 PM To: [email protected] Subject: [Dev] App Installer WorkShop Status Hi all Here is the status of the Work shop about App_installer package confcall 20th of November Present : Pawel Sikorski , Dominique Le Foll, Baptiste Durand ------------------------------ ------------------------------------------------------------------------------------------ Business logic location : A decision has been taken to re localize the business logic in the frontend, that means installer backend should not have a specific logic. In consequences, the backend installation should be able to execute a request ( install / uninstall / reinstall / update a package) That means if an installation fails because the package is already installed an exception should be thrown by backend, there won't no implicit update. ------------------------------ ------------------------------------------------------------------------------------------ List of step for installation : Here the list for an app installation 1) Unpack archive 2) Signature step 2a)signature validation 2b) certificate check 2c) Extraction of level of signature (Platdorm/ Partner ...) 3) Extration of manifest 3a) Extraction of privileges and comparison with signature level 4) Creation of final Directory + Cpopy of Applciation files 5) Generate final manifest.xml + Generate desktop File 6) Register applications in database. 7) Security manager calls for Set smack Label Samsung Poland team is in charge to find how the steps 2a/b/c & 3a should be handled. (Security Manager could be a candidate to do this check) ------------------------------------------------------------------------------------------------------------------------------ Other mode of Installation It was concluded that for now only Offline Installation is relevant. Offline installation should be handled by a dedicated set of steps. The wiki will be updated following this. BR -- Baptiste DURAND Eurogiciel Vannes/FR -- Baptiste DURAND Eurogiciel Vannes/FR
_______________________________________________ Dev mailing list [email protected] https://lists.tizen.org/listinfo/dev
