Skip to content

infotechinc/symmetric-encryption-in-browser

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 

Symmetric Encryption Sample

This web page with associated JavaScript allows a user to:

  • Specify a 128 bit AES key, or generate a random one
  • Encrypt local files with that key, and save the encrypted version
  • Decrypt previously encrypted files with the same key, and save the decrypted version

This example is provided to illustrate how to use the W3C Web Cryptography API to perform symmetric encryption inside a web browser. It is based on the working draft of the standard available when this example was created.

Using this example requires a web browser that implements a compatible version of the Web Cryptography API. When the example was created, current versions of the Google Chrome browser with the optional "Enable Experimental Web Platform features" flag enabled and recent nightly builds of the Firefox browser could run the example.

This example uses AES in CBC mode with 128 bit keys and the 16 byte random initialization vector placed at the beginning of the encrypted file. Modifying it to use different size keys or different AES modes would be simple for a developer. This is not intended to be a production tool. Rather, it may be helpful to developers who intend to create their own tools using the Web Cryptography API.

Copyright (c) 2014 Info Tech, Inc. Provided under the MIT license. See LICENSE file for details.

About

How to use the Web Cryptography API

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published