libves 2.0.3 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/libVES.node.js +11 -8
- package/libves-2.1.0.tgz +0 -0
- package/package.json +3 -2
- package/libves-2.0.3.tgz +0 -0
package/libVES.node.js
CHANGED
|
@@ -34,13 +34,17 @@
|
|
|
34
34
|
* @author Jim Zubov <jz@vesvault.com> (VESvault Corp)
|
|
35
35
|
*
|
|
36
36
|
***************************************************************************/
|
|
37
|
+
crypto = require('crypto');
|
|
38
|
+
crypto.subtle = require('subtle');
|
|
39
|
+
XMLHttpRequest = require('xhr2');
|
|
37
40
|
|
|
38
|
-
|
|
41
|
+
|
|
42
|
+
if (typeof(libVES) != 'function') function libVES(optns) {
|
|
39
43
|
try {
|
|
40
|
-
if (!
|
|
44
|
+
if (!crypto.subtle.digest) throw new libVES.Error('Init', 'crypto.subtle is unavailable or improperly implemented');
|
|
41
45
|
} catch (e) {
|
|
42
46
|
if (e instanceof libVES.Error) throw e;
|
|
43
|
-
throw new libVES.Error('Init','crypto.subtle is not
|
|
47
|
+
throw new libVES.Error('Init', 'crypto.subtle is not available');
|
|
44
48
|
}
|
|
45
49
|
for (var k in optns) this[k] = optns[k];
|
|
46
50
|
if (this.domain) this.type = 'secondary';
|
|
@@ -586,7 +590,7 @@ libVES.prototype = {
|
|
|
586
590
|
}
|
|
587
591
|
if (!optns || !optns.n) return Promise.reject(new libVES.Error('InvalidValue','optns.n must be an integer'));
|
|
588
592
|
var rkey = new Uint8Array(32);
|
|
589
|
-
|
|
593
|
+
crypto.getRandomValues(rkey);
|
|
590
594
|
var algo = optns.v ? libVES.Scramble.algo[optns.v] : libVES.Scramble.RDX;
|
|
591
595
|
if (!algo) return Promise.reject(new libVES.Error('InvalidValue','Unknown scramble algorithm: ' + optns.v));
|
|
592
596
|
var s = new algo(optns.n);
|
|
@@ -1587,7 +1591,7 @@ libVES.Math.Shifter.prototype = {
|
|
|
1587
1591
|
|
|
1588
1592
|
libVES.Object = function(data) {
|
|
1589
1593
|
for (var k in data) this[k] = data[k];
|
|
1590
|
-
if (
|
|
1594
|
+
if (typeof(Trigger) != 'undefined') this.trigger = Trigger.resolve(this);
|
|
1591
1595
|
};
|
|
1592
1596
|
|
|
1593
1597
|
libVES.Object.prototype = {
|
|
@@ -2426,7 +2430,6 @@ libVES.Algo = {
|
|
|
2426
2430
|
case 'public':
|
|
2427
2431
|
return crypto.subtle.exportKey('spki', data).then(function(der) {
|
|
2428
2432
|
var asn = libVES.Util.ASN1.decode(new Uint8Array(der))[0];
|
|
2429
|
-
console.log(asn);
|
|
2430
2433
|
switch (String(asn[0][0])) {
|
|
2431
2434
|
case '1.2.840.10045.2.1':
|
|
2432
2435
|
return der;
|
|
@@ -2546,7 +2549,7 @@ libVES.Algo = {
|
|
|
2546
2549
|
},
|
|
2547
2550
|
acquire: function(key,optns) {
|
|
2548
2551
|
return Promise.resolve(key).then(function(k) {
|
|
2549
|
-
if (k instanceof
|
|
2552
|
+
if (typeof(CryptoKey) != 'undefined' && (k instanceof CryptoKey)) return k;
|
|
2550
2553
|
else if (typeof(k) == 'object') {
|
|
2551
2554
|
if (k.privateKey) return k.privateKey;
|
|
2552
2555
|
else if (k.publicKey) return k.publicKey;
|
|
@@ -2838,7 +2841,7 @@ libVES.Scramble.RDX.prototype = {
|
|
|
2838
2841
|
var u = [sc];
|
|
2839
2842
|
for (var i = 1; i < this.size; i++) {
|
|
2840
2843
|
u[i] = new Uint8Array(sc.length);
|
|
2841
|
-
|
|
2844
|
+
crypto.getRandomValues(u[i]);
|
|
2842
2845
|
}
|
|
2843
2846
|
var v = [];
|
|
2844
2847
|
for (var i = 0; i < this.size - 1; i++) v[i] = (function(ui,ui1) {
|
package/libves-2.1.0.tgz
ADDED
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "libves",
|
|
3
|
-
"version": "2.0
|
|
3
|
+
"version": "2.1.0",
|
|
4
4
|
"description": "Simple, safe and secure end-to-end encryption for data at-rest",
|
|
5
5
|
"main": "libVES.node.js",
|
|
6
6
|
"scripts": {
|
|
@@ -17,7 +17,8 @@
|
|
|
17
17
|
"e2e",
|
|
18
18
|
"at-rest",
|
|
19
19
|
"end-to-end",
|
|
20
|
-
"browser
|
|
20
|
+
"browser",
|
|
21
|
+
"browser-encryption",
|
|
21
22
|
"pin"
|
|
22
23
|
],
|
|
23
24
|
"author": "jz@vesvault.com",
|
package/libves-2.0.3.tgz
DELETED
|
Binary file
|