Diffstat (limited to 'frontend/beta/js/Clipperz/Crypto/ECC.js') (more/less context) (ignore whitespace changes)
-rw-r--r-- | frontend/beta/js/Clipperz/Crypto/ECC.js | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/frontend/beta/js/Clipperz/Crypto/ECC.js b/frontend/beta/js/Clipperz/Crypto/ECC.js index c3dcec3..bdfd9be 100644 --- a/frontend/beta/js/Clipperz/Crypto/ECC.js +++ b/frontend/beta/js/Clipperz/Crypto/ECC.js | |||
@@ -1,120 +1,117 @@ | |||
1 | /* | 1 | /* |
2 | 2 | ||
3 | Copyright 2008-2011 Clipperz Srl | 3 | Copyright 2008-2011 Clipperz Srl |
4 | 4 | ||
5 | This file is part of Clipperz's Javascript Crypto Library. | 5 | This file is part of Clipperz Community Edition. |
6 | Javascript Crypto Library provides web developers with an extensive | 6 | Clipperz Community Edition is an online password manager. |
7 | and efficient set of cryptographic functions. The library aims to | ||
8 | obtain maximum execution speed while preserving modularity and | ||
9 | reusability. | ||
10 | For further information about its features and functionalities please | 7 | For further information about its features and functionalities please |
11 | refer to http://www.clipperz.com | 8 | refer to http://www.clipperz.com. |
12 | 9 | ||
13 | * Javascript Crypto Library is free software: you can redistribute | 10 | * Clipperz Community Edition is free software: you can redistribute |
14 | it and/or modify it under the terms of the GNU Affero General Public | 11 | it and/or modify it under the terms of the GNU Affero General Public |
15 | License as published by the Free Software Foundation, either version | 12 | License as published by the Free Software Foundation, either version |
16 | 3 of the License, or (at your option) any later version. | 13 | 3 of the License, or (at your option) any later version. |
17 | 14 | ||
18 | * Javascript Crypto Library is distributed in the hope that it will | 15 | * Clipperz Community Edition is distributed in the hope that it will |
19 | be useful, but WITHOUT ANY WARRANTY; without even the implied | 16 | be useful, but WITHOUT ANY WARRANTY; without even the implied |
20 | warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | 17 | warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
21 | See the GNU Affero General Public License for more details. | 18 | See the GNU Affero General Public License for more details. |
22 | 19 | ||
23 | * You should have received a copy of the GNU Affero General Public | 20 | * You should have received a copy of the GNU Affero General Public |
24 | License along with Javascript Crypto Library. If not, see | 21 | License along with Clipperz Community Edition. If not, see |
25 | <http://www.gnu.org/licenses/>. | 22 | <http://www.gnu.org/licenses/>. |
26 | 23 | ||
27 | */ | 24 | */ |
28 | 25 | ||
29 | /* | 26 | /* |
30 | try { if (typeof(Clipperz.ByteArray) == 'undefined') { throw ""; }} catch (e) { | 27 | try { if (typeof(Clipperz.ByteArray) == 'undefined') { throw ""; }} catch (e) { |
31 | throw "Clipperz.Crypto.ECC depends on Clipperz.ByteArray!"; | 28 | throw "Clipperz.Crypto.ECC depends on Clipperz.ByteArray!"; |
32 | } | 29 | } |
33 | 30 | ||
34 | if (typeof(Clipperz.Crypto.ECC) == 'undefined') { Clipperz.Crypto.ECC = {}; } | 31 | if (typeof(Clipperz.Crypto.ECC) == 'undefined') { Clipperz.Crypto.ECC = {}; } |
35 | 32 | ||
36 | 33 | ||
37 | //############################################################################# | 34 | //############################################################################# |
38 | 35 | ||
39 | Clipperz.Crypto.ECC.BinaryField = {}; | 36 | Clipperz.Crypto.ECC.BinaryField = {}; |
40 | 37 | ||
41 | //############################################################################# | 38 | //############################################################################# |
42 | 39 | ||
43 | Clipperz.Crypto.ECC.BinaryField.AbstractValue = function(aValue, aBase) { | 40 | Clipperz.Crypto.ECC.BinaryField.AbstractValue = function(aValue, aBase) { |
44 | return this; | 41 | return this; |
45 | } | 42 | } |
46 | 43 | ||
47 | Clipperz.Crypto.ECC.BinaryField.AbstractValue.prototype = MochiKit.Base.update(null, { | 44 | Clipperz.Crypto.ECC.BinaryField.AbstractValue.prototype = MochiKit.Base.update(null, { |
48 | 45 | ||
49 | 'asString': function(aBase) { | 46 | 'asString': function(aBase) { |
50 | throw Clipperz.Base.exception.AbstractMethod; | 47 | throw Clipperz.Base.exception.AbstractMethod; |
51 | }, | 48 | }, |
52 | 49 | ||
53 | 'isZero': function() { | 50 | 'isZero': function() { |
54 | throw Clipperz.Base.exception.AbstractMethod; | 51 | throw Clipperz.Base.exception.AbstractMethod; |
55 | }, | 52 | }, |
56 | 53 | ||
57 | 'shiftLeft': function(aNumberOfBitsToShift) { | 54 | 'shiftLeft': function(aNumberOfBitsToShift) { |
58 | throw Clipperz.Base.exception.AbstractMethod; | 55 | throw Clipperz.Base.exception.AbstractMethod; |
59 | }, | 56 | }, |
60 | 57 | ||
61 | 'bitSize': function() { | 58 | 'bitSize': function() { |
62 | throw Clipperz.Base.exception.AbstractMethod; | 59 | throw Clipperz.Base.exception.AbstractMethod; |
63 | }, | 60 | }, |
64 | 61 | ||
65 | 'isBitSet': function(aBitPosition) { | 62 | 'isBitSet': function(aBitPosition) { |
66 | throw Clipperz.Base.exception.AbstractMethod; | 63 | throw Clipperz.Base.exception.AbstractMethod; |
67 | }, | 64 | }, |
68 | 65 | ||
69 | 'xor': function(aValue) { | 66 | 'xor': function(aValue) { |
70 | throw Clipperz.Base.exception.AbstractMethod; | 67 | throw Clipperz.Base.exception.AbstractMethod; |
71 | }, | 68 | }, |
72 | 69 | ||
73 | 'compare': function(aValue) { | 70 | 'compare': function(aValue) { |
74 | throw Clipperz.Base.exception.AbstractMethod; | 71 | throw Clipperz.Base.exception.AbstractMethod; |
75 | }, | 72 | }, |
76 | 73 | ||
77 | //----------------------------------------------------------------------------- | 74 | //----------------------------------------------------------------------------- |
78 | __syntaxFix__: "syntax fix" | 75 | __syntaxFix__: "syntax fix" |
79 | }); | 76 | }); |
80 | 77 | ||
81 | //***************************************************************************** | 78 | //***************************************************************************** |
82 | / * | 79 | / * |
83 | Clipperz.Crypto.ECC.BinaryField.BigIntValue = function(aValue, aBase) { | 80 | Clipperz.Crypto.ECC.BinaryField.BigIntValue = function(aValue, aBase) { |
84 | this._value = new Clipperz.Crypto.BigInt(aValue, aBase); | 81 | this._value = new Clipperz.Crypto.BigInt(aValue, aBase); |
85 | return this; | 82 | return this; |
86 | } | 83 | } |
87 | 84 | ||
88 | Clipperz.Crypto.ECC.BinaryField.BigIntValue.prototype = MochiKit.Base.update(new Clipperz.Crypto.ECC.BinaryField.AbstractValue(), { | 85 | Clipperz.Crypto.ECC.BinaryField.BigIntValue.prototype = MochiKit.Base.update(new Clipperz.Crypto.ECC.BinaryField.AbstractValue(), { |
89 | 86 | ||
90 | 'value': function() { | 87 | 'value': function() { |
91 | return this._value; | 88 | return this._value; |
92 | }, | 89 | }, |
93 | 90 | ||
94 | //----------------------------------------------------------------------------- | 91 | //----------------------------------------------------------------------------- |
95 | 92 | ||
96 | 'isZero': function() { | 93 | 'isZero': function() { |
97 | return (this.value().compare(Clipperz.Crypto.ECC.BinaryField.BigIntValue.O) == 0); | 94 | return (this.value().compare(Clipperz.Crypto.ECC.BinaryField.BigIntValue.O) == 0); |
98 | }, | 95 | }, |
99 | 96 | ||
100 | //----------------------------------------------------------------------------- | 97 | //----------------------------------------------------------------------------- |
101 | 98 | ||
102 | 'asString': function(aBase) { | 99 | 'asString': function(aBase) { |
103 | return this.value().asString(aBase); | 100 | return this.value().asString(aBase); |
104 | }, | 101 | }, |
105 | 102 | ||
106 | //----------------------------------------------------------------------------- | 103 | //----------------------------------------------------------------------------- |
107 | 104 | ||
108 | 'shiftLeft': function(aNumberOfBitsToShift) { | 105 | 'shiftLeft': function(aNumberOfBitsToShift) { |
109 | return new Clipperz.Crypto.ECC.BinaryField.BigIntValue(this.value().shiftLeft(aNumberOfBitsToShift)); | 106 | return new Clipperz.Crypto.ECC.BinaryField.BigIntValue(this.value().shiftLeft(aNumberOfBitsToShift)); |
110 | }, | 107 | }, |
111 | 108 | ||
112 | //----------------------------------------------------------------------------- | 109 | //----------------------------------------------------------------------------- |
113 | 110 | ||
114 | 'bitSize': function() { | 111 | 'bitSize': function() { |
115 | return this.value().bitSize(); | 112 | return this.value().bitSize(); |
116 | }, | 113 | }, |
117 | 114 | ||
118 | //----------------------------------------------------------------------------- | 115 | //----------------------------------------------------------------------------- |
119 | 116 | ||
120 | 'isBitSet': function(aBitPosition) { | 117 | 'isBitSet': function(aBitPosition) { |