{"_id":"webcrypto-shim","_rev":"4576412","name":"webcrypto-shim","description":"Web Cryptography API shim for legacy browsers","dist-tags":{"latest":"0.1.7"},"maintainers":[{"name":"vibornoff","email":""}],"time":{"modified":"2026-04-10T15:44:06.000Z","created":"2017-08-21T12:33:24.372Z","0.1.7":"2021-03-23T08:46:05.840Z","0.1.6":"2020-07-28T14:35:08.673Z","0.1.5":"2019-09-23T11:03:46.615Z","0.1.4":"2018-05-15T13:13:25.396Z","0.1.3":"2018-03-07T16:05:55.866Z","0.1.2":"2017-08-21T12:33:24.372Z"},"users":{},"author":{"name":"Artem S Vybornov","email":"vybornov@gmail.com"},"repository":{"type":"git","url":"git://github.com/vibornoff/webcrypto-shim.git"},"versions":{"0.1.7":{"name":"webcrypto-shim","main":"webcrypto-shim.js","version":"0.1.7","description":"Web Cryptography API shim for legacy browsers","license":"MIT","author":{"name":"Artem S Vybornov","email":"vybornov@gmail.com"},"homepage":"https://github.com/vibornoff/webcrypto-shim#readme","repository":{"type":"git","url":"git://github.com/vibornoff/webcrypto-shim.git"},"bugs":{"url":"https://github.com/vibornoff/webcrypto-shim/issues"},"keywords":["webcrypto","shim","crypto","mscrypto","webkitcrypto","mozcrypto","subtle","webkitsubtle","sha","hmac","pbkdf","aes","cbc","gcm","rsa","oaep","pkcs1"],"devDependencies":{"gulp":"latest","gulp-concat":"latest","gulp-sourcemaps":"latest","gulp-uglify":"latest"},"scripts":{"prepublish":"gulp"},"gitHead":"8d13e4c2cb926228c462913c646dfaf532d5a8e2","_id":"webcrypto-shim@0.1.7","_nodeVersion":"12.21.0","_npmVersion":"7.5.3","dist":{"shasum":"da8be23061a0451cf23b424d4a9b61c10f091c12","size":111572,"noattachment":false,"key":"/webcrypto-shim/-/webcrypto-shim-0.1.7.tgz","tarball":"http://registry.cnpm.dingdandao.com/webcrypto-shim/download/webcrypto-shim-0.1.7.tgz"},"_npmUser":{"name":"vibornoff","email":"vybornov@gmail.com"},"directories":{},"maintainers":[{"name":"vibornoff","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/webcrypto-shim_0.1.7_1616489165583_0.921626814673852"},"_hasShrinkwrap":false,"publish_time":1616489165840,"_cnpm_publish_time":1616489165840,"_cnpmcore_publish_time":"2021-12-16T18:43:16.981Z"},"0.1.6":{"name":"webcrypto-shim","main":"webcrypto-shim.js","version":"0.1.6","description":"Web Cryptography API shim for legacy browsers","license":"MIT","author":{"name":"Artem S Vybornov","email":"vybornov@gmail.com"},"homepage":"https://github.com/vibornoff/webcrypto-shim#readme","repository":{"type":"git","url":"git://github.com/vibornoff/webcrypto-shim.git"},"bugs":{"url":"https://github.com/vibornoff/webcrypto-shim/issues"},"keywords":["webcrypto","shim","crypto","mscrypto","webkitcrypto","mozcrypto","subtle","webkitsubtle","sha","hmac","pbkdf","aes","cbc","gcm","rsa","oaep","pkcs1"],"devDependencies":{"gulp":"^4.0.0","gulp-concat":"latest","gulp-sourcemaps":"^2.6.5","gulp-uglify":"^3.0.2"},"scripts":{"prepublish":"gulp"},"gitHead":"ebb831e66d6186b20a6b3a7f8d36e766b5f928b9","_id":"webcrypto-shim@0.1.6","_nodeVersion":"12.16.2","_npmVersion":"6.14.4","dist":{"shasum":"b4554d95c0a63637226c9732440dc674bf96f5cb","size":111404,"noattachment":false,"key":"/webcrypto-shim/-/webcrypto-shim-0.1.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/webcrypto-shim/download/webcrypto-shim-0.1.6.tgz"},"maintainers":[{"name":"vibornoff","email":""}],"_npmUser":{"name":"vibornoff","email":"vybornov@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/webcrypto-shim_0.1.6_1595946908541_0.16601893373481214"},"_hasShrinkwrap":false,"publish_time":1595946908673,"_cnpm_publish_time":1595946908673,"_cnpmcore_publish_time":"2021-12-16T18:43:17.431Z"},"0.1.5":{"name":"webcrypto-shim","main":"webcrypto-shim.js","version":"0.1.5","description":"Web Cryptography API shim for legacy browsers","license":"MIT","author":{"name":"Artem S Vybornov","email":"vybornov@gmail.com"},"homepage":"https://github.com/vibornoff/webcrypto-shim#readme","repository":{"type":"git","url":"git://github.com/vibornoff/webcrypto-shim.git"},"bugs":{"url":"https://github.com/vibornoff/webcrypto-shim/issues"},"keywords":["webcrypto","shim","crypto","mscrypto","webkitcrypto","mozcrypto","subtle","webkitsubtle","sha","hmac","pbkdf","aes","cbc","gcm","rsa","oaep","pkcs1"],"devDependencies":{"gulp":"^4.0.0","gulp-concat":"latest","gulp-sourcemaps":"^2.6.5","gulp-uglify":"^3.0.2"},"scripts":{"prepublish":"gulp"},"gitHead":"79031fbf5abe620436ed13d2dbf2dc58cac23eea","_id":"webcrypto-shim@0.1.5","_nodeVersion":"10.16.3","_npmVersion":"6.9.0","dist":{"shasum":"13e34a010ccc544edecfe8a2642204502841bcf0","size":111549,"noattachment":false,"key":"/webcrypto-shim/-/webcrypto-shim-0.1.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/webcrypto-shim/download/webcrypto-shim-0.1.5.tgz"},"maintainers":[{"name":"vibornoff","email":""}],"_npmUser":{"name":"vibornoff","email":"vybornov@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/webcrypto-shim_0.1.5_1569236626116_0.7026442799059995"},"_hasShrinkwrap":false,"publish_time":1569236626615,"_cnpm_publish_time":1569236626615,"_cnpmcore_publish_time":"2021-12-16T18:43:18.020Z"},"0.1.4":{"name":"webcrypto-shim","main":"webcrypto-shim.js","version":"0.1.4","description":"Web Cryptography API shim for legacy browsers","license":"MIT","author":{"name":"Artem S Vybornov","email":"vybornov@gmail.com"},"homepage":"https://github.com/vibornoff/webcrypto-shim#readme","repository":{"type":"git","url":"git://github.com/vibornoff/webcrypto-shim.git"},"bugs":{"url":"https://github.com/vibornoff/webcrypto-shim/issues"},"keywords":["webcrypto","shim","crypto","mscrypto","webkitcrypto","mozcrypto","subtle","webkitsubtle","sha","hmac","pbkdf","aes","cbc","gcm","rsa","oaep","pkcs1"],"devDependencies":{"gulp":"latest","gulp-sourcemaps":"latest","gulp-uglify":"latest","gulp-concat":"latest"},"scripts":{"prepublish":"gulp"},"gitHead":"e6f781f8303f138e5951416921acda46289fb4fa","_id":"webcrypto-shim@0.1.4","_npmVersion":"6.0.0","_nodeVersion":"8.11.1","_npmUser":{"name":"vibornoff","email":"vybornov@gmail.com"},"dist":{"shasum":"b40ef59d042822269dd83c1462da1df4369834fb","size":6702615,"noattachment":false,"key":"/webcrypto-shim/-/webcrypto-shim-0.1.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/webcrypto-shim/download/webcrypto-shim-0.1.4.tgz"},"maintainers":[{"name":"vibornoff","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/webcrypto-shim_0.1.4_1526390004903_0.6149169275152224"},"_hasShrinkwrap":false,"publish_time":1526390005396,"_cnpm_publish_time":1526390005396,"_cnpmcore_publish_time":"2021-12-16T18:43:31.599Z"},"0.1.3":{"name":"webcrypto-shim","main":"webcrypto-shim.js","version":"0.1.3","description":"Web Cryptography API shim for legacy browsers","license":"MIT","author":{"name":"Artem S Vybornov","email":"vybornov@gmail.com"},"homepage":"https://github.com/vibornoff/webcrypto-shim#readme","repository":{"type":"git","url":"git://github.com/vibornoff/webcrypto-shim.git"},"bugs":{"url":"https://github.com/vibornoff/webcrypto-shim/issues"},"keywords":["webcrypto","shim","crypto","mscrypto","webkitcrypto","mozcrypto","subtle","webkitsubtle","sha","hmac","pbkdf","aes","cbc","gcm","rsa","oaep","pkcs1"],"dependencies":{"gulp":"latest","gulp-sourcemaps":"latest","gulp-uglify":"latest","gulp-concat":"latest"},"scripts":{"prepublish":"gulp"},"gitHead":"e6f68818e137b9e71fcef56f4f45204fc808d402","_id":"webcrypto-shim@0.1.3","_shasum":"36a6053894af8d15e3374275f4df1e857c9081e0","_from":".","_npmVersion":"3.7.5","_nodeVersion":"4.2.6","_npmUser":{"name":"vibornoff","email":"vybornov@gmail.com"},"dist":{"shasum":"36a6053894af8d15e3374275f4df1e857c9081e0","size":6705917,"noattachment":false,"key":"/webcrypto-shim/-/webcrypto-shim-0.1.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/webcrypto-shim/download/webcrypto-shim-0.1.3.tgz"},"maintainers":[{"name":"vibornoff","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/webcrypto-shim_0.1.3_1520438754962_0.5970935826676396"},"_hasShrinkwrap":false,"publish_time":1520438755866,"_cnpm_publish_time":1520438755866,"_cnpmcore_publish_time":"2021-12-16T18:43:44.456Z"},"0.1.2":{"name":"webcrypto-shim","main":"webcrypto-shim.js","version":"0.1.2","description":"Web Cryptography API shim for legacy browsers","license":"MIT","author":{"name":"Artem S Vybornov","email":"vybornov@gmail.com"},"homepage":"https://github.com/vibornoff/webcrypto-shim#readme","repository":{"type":"git","url":"git://github.com/vibornoff/webcrypto-shim.git"},"bugs":{"url":"https://github.com/vibornoff/webcrypto-shim/issues"},"keywords":["webcrypto","shim","crypto","mscrypto","webkitcrypto","mozcrypto","subtle","webkitsubtle","sha","hmac","pbkdf","aes","cbc","gcm","rsa","oaep","pkcs1"],"gitHead":"591a4017004caa40e10ca90a636bf8d2dd3e0adb","_id":"webcrypto-shim@0.1.2","scripts":{},"_shasum":"e79401d15dd2256c94d78cc43ccdf868a3d360c6","_from":".","_npmVersion":"3.7.5","_nodeVersion":"4.2.6","_npmUser":{"name":"vibornoff","email":"vybornov@gmail.com"},"dist":{"shasum":"e79401d15dd2256c94d78cc43ccdf868a3d360c6","size":97522,"noattachment":false,"key":"/webcrypto-shim/-/webcrypto-shim-0.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/webcrypto-shim/download/webcrypto-shim-0.1.2.tgz"},"maintainers":[{"name":"vibornoff","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/webcrypto-shim-0.1.2.tgz_1503318803123_0.11537998029962182"},"directories":{},"publish_time":1503318804372,"_hasShrinkwrap":false,"_cnpm_publish_time":1503318804372,"_cnpmcore_publish_time":"2021-12-16T18:43:45.101Z"}},"readme":"webcrypto-shim.js\n=================\n\n[Web Cryptography API](https://www.w3.org/TR/WebCryptoAPI/) shim for legacy browsers.\n\nQuick start with _Bower_\n------------------------\n\nInstall the package\n\n```sh\n$ bower install webcrypto-shim\n```\n\nand link scripts into your html code\n\n```html\n<script src=\"bower_components/promiz/promiz.js\"></script>\n<script src=\"bower_components/webcrypto-shim/webcrypto-shim.js\"></script>\n```\n\nNow you can use webcrypto api through the `window.crypto` and `window.crypto.subtle` objects.\n\nNote that _IE11_ lacks support of `Promise`-s and requires _promiz.js_ to work properly. You can replace _promiz.js_ with any _Promise/A+_-compatible implementation.\n\nSupported browsers\n------------------\n\nThe library is targeted to fix these browsers having prefixed and buggy webcrypto api implementations:\n* _Internet Explorer 11_, _Mobile Internet Explorer 11_,\n* _Safari 8 - 10_, _iOS Safari 8 - 10_.\n\nThese browsers have unprefixed and conforming webcrypto api implementations, so no need in shim:\n* _Chrome 43+_, _Chrome for Android 44+_,\n* _Opera 24+_,\n* _Firefox 34+_,\n* _Edge 12+_.\n* _Safari 11+_.\n\nCrossbrowser support of algorithms & operations\n-----------------------------------------------\n\n* **SHA-256**, **SHA-384**: `digest`\n\n* **HMAC**: `sign`, `verify`, `generateKey`, `importKey`, `exportKey`\n  * with _hash_ **SHA-1**, **SHA-256**, **SHA-384**\n\n* **AES-CBC**: `encrypt`, `decrypt`, `generateKey`, `importKey`, `exportKey`, `wrapKey`, `unwrapKey`\n  * _TODO_ tests\n\n* **AES-KW**: `generateKey`, `importKey`, `exportKey`, `wrapKey`, `unwrapKey`\n  * _TODO_ tests\n\n* **RSASSA-PKCS1-v1\\_5**: `sign`, `verify`, `generateKey`, `importKey`, `exportKey`\n  * with _hash_ **SHA-256**, **SHA-384**\n  * and _modulusLength_ at least 2048 bits\n\n* **RSA-OAEP**: `encrypt`, `decrypt`, `generateKey`, `importKey`, `exportKey`, `wrapKey`, `unwrapKey`\n  * with _hash_ **SHA-1**\n  * and _modulusLength_ at least 2048 bits\n  * _FIXME_ only `\"jwk\"` format for wrapped/unwrapped keys\n\nKnown limitations\n-----------------\n\n`deriveKey`, `deriveBits` are not supported under _IE11_ and _Safari_  since there is no implementation of any algorithm providing key derivation.\n\nUnder _IE11_ exception is thrown in case of empty input data since _IE11_ silently discards empty data and leaves returned `Promise` object never resolved nor rejected.\n\nOther browsers support\n----------------------\n\nSee https://vibornoff.github.io/webcrypto-examples/index.html\n\nSponsored by\n------------\n\n[BrowserStack](https://browserstack.com) — automated & manual crossbrowser testing solution.\n","_attachments":{},"homepage":"https://github.com/vibornoff/webcrypto-shim#readme","bugs":{"url":"https://github.com/vibornoff/webcrypto-shim/issues"},"license":"MIT"}