Web application execution with secure element extension
AssigneeSap SE
InventorMartin Johns
Life of this patent
Estimating the term…
Abstract
Various examples are directed to systems and methods for executing a web application with client-side encryption. A web browser can receive a document comprising a plurality of data elements including a secure element that comprises an encrypted value. An extension component may generate a secure container element to replace the secure element. The extension component can also insert a subdocument into the secure container element. The web browser may be configured to prevent web applications from accessing the subdocument. The extension component may also decrypt the encrypted value to generate a clear value and write the clear value to the subdocument. The web browser may render the document using the clear value.
Claims20
A system for executing a web application with client-side encryption, the system comprising:
- a client computing device comprising at least one hardware processor programmed to execute a web browser;
- and an output device, wherein the client computing device is also programmed to perform operations comprising:
- receiving a document with the web browser, the document comprising a plurality of data elements including a secure element that comprises an encrypted value;
- generating, by an extension component of the web browser, a secure container element to replace the secure element;
- inserting, by the extension component, a subdocument into the secure container element, wherein the web browser is configured to prevent web applications from accessing the subdocument;
- decrypting the encrypted value, by the extension component, to generate a clear value;
- writing the clear value to the subdocument;
- rendering the document, by a rendering engine, using the clear value;
- requesting, by the web application, to write a new encrypted value to the secure container element;
- decrypting, by the extension component, the new encrypted value to generate a new clear value;
- writing, by the extension component, the new clear value to the subdocument;
- and
- rendering a new document, by the rendering engine, using the new clear value.
A method for executing a web application with client-side encryption, the method comprising:
- receiving a document with a web browser at a client computing device, the document comprising a plurality of data elements including a secure element that comprises an encrypted value;
- generating, by an extension component associated with the web browser, a secure container element to replace the secure element;
- inserting, by the extension component, a subdocument into the secure container element, wherein the web browser is configured to prevent web applications from accessing the subdocument;
- decrypting the encrypted value, by the extension component, to generate a clear value;
- writing the clear value to the subdocument;
- rendering the document, by a rendering engine, using the clear value;
- requesting, by the web application, to write a new encrypted value to the secure container element;
- decrypting, by the extension component, the new encrypted value to generate a new clear value;
- writing, by the extension component, the new clear value to the subdocument;
- and
- rendering a new document, by the rendering engine, using the new clear value.
A non-transitory machine-readable medium comprising instructions thereon that, when executed by at least one hardware processor, cause at least one hardware processor to perform operations comprising:
- receiving a document with a web browser executed by the at least one hardware processor, the document comprising a plurality of data elements including a secure element that comprises an encrypted value;
- generating, by an extension component associated with the web browser, a secure container element to replace the secure element;
- inserting, by the extension component, a subdocument into the secure container element, wherein the web browser is configured to prevent web applications from accessing the subdocument;
- decrypting the encrypted value, by the extension component, to generate a clear value;
- writing the clear value to the subdocument;
- rendering the document, by a rendering engine, using the clear value;
- requesting to write a new encrypted value to the secure container element;
- decrypting, by the extension component, the new encrypted value to generate a new clear value;
- writing, by the extension component, the new clear value to the subdocument;
- and
- rendering a new document, by the rendering engine, using the new clear value.
Dependencies are inferred from the claim text.