Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Alternative technologies to replace applet?

I have an (unsigned) applet that let you draw a logic circuit and test it on-screen (a bit like Electronics Workbench), and it then serializes the circuit (the internal form, not the visual representations) and sends it to the server where a bunch of automated tests are run and a performance report is produced. This is a small but crucial part of a much larger web app.

However, the latest Java plug-in now says this:

Running unsigned applications like this will be blocked in a future release because it is potentially unsafe and a security risk.

Now, self-signing it will still apparently work (for now), but then the code runs OUTSIDE the sandbox, which strikes me as a stupid way to do things, even though my code is of course completely bug-free! (Can I interest you in buying a bridge?) Reading further on the Oracle website I see this:

The platform will not deny the execution of Java applications... Future update releases may include additional changes to restrict unsafe behaviors like unsigned and self-signed applications."

(Which sounds like it means "Future updates will deny the execution of Java applications" -- unless you pay money to Thwaite or Verisign on a regular basis AND expose users to code running outside a sandbox.)

They also say

"Even the smallest changes in user experience are sometimes troublesome".

(No kidding.)

"We have considered how changes affect user experience. Given the current climate around Java security in the browser, code signing is a valuable security control for protecting Java users."

Well, I don't see how I can continue using Java under these circumstances. The goalposts have been moved (again), and now I'm looking for a different football team... or more precisely, I'm looking for an alternative technology that will let me continue to do what I do now: drag & drop circuit elements, create connections by dragging between input and outputs or other connections, and finally take the internal form of the diagram and squirt it to the server in a form which can be decoded and exercised, preferably by exactly the same code that created the diagram to avoid versioning headaches. And something which is safe, which can't trash the local filesystem or whatever just because I've signed it.

Can anyone suggest where I should be looking next, now that Oracle has made my life a nightmare?

like image 568
user1636349 Avatar asked Oct 20 '22 17:10

user1636349


1 Answers

(Which sounds like it means "Future updates will deny the execution of Java applications" -- unless you pay money to Thwaite or Verisign on a regular basis AND expose users to code running outside a sandbox.)

A signed applet launched using JNLP can still be sand-boxed.


But if you really wish to avoid it..

I think what you described can be provided using JavaScript for the logic and and an HTML 5 canvas for the rendering.

I would avoid Flash, since it is also susceptible to security bugs. It would be like digging yourself a brand new hole to get trapped in.

like image 93
Andrew Thompson Avatar answered Oct 23 '22 11:10

Andrew Thompson