Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

offline Game and Security #115

Closed
manjunath801 opened this issue Aug 9, 2016 · 10 comments
Closed

offline Game and Security #115

manjunath801 opened this issue Aug 9, 2016 · 10 comments
Assignees
Labels

Comments

@manjunath801
Copy link

Hi, Using SpringRoll framework can the game be played offline on browser, Any feature which can be used to achieve this and Is there way to secure(any kind of security implementation) the assets/content using Springroll?

Manjunath T

@yanshcherbakovatredspace
Copy link
Contributor

Any game built with Springroll can be played offline in the browser as long as all the files and assets are local. However, they need to be running through some sort of file server (web server) locally in order for preloading to work. It won't work through file://.

SpringrollStudio facilitates this for the purpose of local development, but if you needed for the game to run locally offline, you will need to build something similar that runs the game through a file server.

@yanshcherbakovatredspace
Copy link
Contributor

@manjunath801 Following up on your inquiry. Do you require further information on your inquiry?

@yanshcherbakovatredspace
Copy link
Contributor

Closing this issue.

@manjunath801
Copy link
Author

Hi, Sorry for coming back late. If we use Springroll Studio to play the content locally, how can we secure the assets? Is there a way to encrypt the package and Decrypt while playing?

@yanshcherbakovatredspace
Copy link
Contributor

@manjunath801 Can you describe your use case for me? For what reason do you want to secure the assets with encryption?

@manjunath801
Copy link
Author

We are developing an Learning HTML5 application in which there are many images and audio files. When user downloads the app locally to play offline, these assets should be made protective avoiding user to see or hear the images and audio files

I hope its clear?

@yanshcherbakovatredspace
Copy link
Contributor

You mean to avoid seeing or hearing the images and audio files if attempting to view outside of the app? As in opening the images in an image program and opening the audio in an audio player? Essentially you don't want the user to be able to access the assets unless it is through the application correct?

@yanshcherbakovatredspace
Copy link
Contributor

Springroll currently doesn't include any way to decrypt/encrypt assets through the web. All assets are passed to preloadJS that also has no cryptography feature so to be able to achieve what you're looking for is to create a layer in between when the assets are preloaded to decrypt the assets.

The only way I can think of this being done, is if you create a native container that includes the ability to do the necessary decryption upon opening the application. So your assets would be encrypted in the application package and would be decrypted by your application upon start. Then you can use Springroll normally within the application.

If you want to create applications using front end code, you may use something like http://nwjs.io or even React Native to create your containing applications.

Then achieve what you're looking for by using public-key cryptography which you use for encryption and decryption.

So once your application loads, you may decrypt the assets using public-key cryptography and then play the game in a WebView as normal.

If you plan to use nw.js, the following might be relevant to you:

https://github.com/nwjs/nw.js/wiki/Protect-JavaScript-source-code-with-v8-snapshot
nwjs/nw.js#269

@manjunath801
Copy link
Author

Thank you :)

@yanshcherbakovatredspace
Copy link
Contributor

yanshcherbakovatredspace commented Aug 26, 2016

My pleasure!

Closing this issue, if there are any additional questions feel free to continue to comment in this issue to re-open it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants