X-Git-Url: https://git.kengrimes.com/?p=henge%2Fkiak.git;a=blobdiff_plain;f=strappCrypto.js;h=e34db014615ce27853db4015d1dd8642921e878d;hp=cc6fd75601a07055389fd0511d4d43aa2afce2a6;hb=4776f60fe6146a0c13a8520577f298b80645a9e8;hpb=44e0b2d571c71ebd410b78366c8bc9dc463a96c4 diff --git a/strappCrypto.js b/strappCrypto.js index cc6fd75..e34db01 100644 --- a/strappCrypto.js +++ b/strappCrypto.js @@ -8,6 +8,7 @@ * @copyright Strapp.io */ +/* TODO: Replace with filesystem operations */ import {setItem, getItem} from "localForage" /** @func Generates a CryptoKey and returns a SHA-256 client key @@ -38,20 +39,22 @@ function generateKey() { }) } -/** @func Encrypts data with a public key - * @desc +/** @func Encrypts data with a public key assuming RSA + * @desc https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/encrypt * @arg {String} Public Key - * @return {Object} The encrypted data + * @return {Object} The encrypted data as a promise */ function encryptData(publicKey, data) { - + return crypto.subtle.encrypt({"name": "RSA-OAEP"}) } /** @func Decrypts data with a private key - * @desc + * @desc https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/decrypt * @arg {String} Private key to decrypt data - * @return {Object} The decrypted data + * @return {Object} The decrypted data as a promise */ -function decryptData(privateKey, data) { +function decryptData(privateKey, cipherText) { + /* TODO: Pass in private key or get it from localForage? */ + return crypto.subtle.decrypt({"name":"RSA-OAEP"}, privateKey, cipherText) } -function +