@@ -26,10 +26,10 @@ function hash(x) {
26
26
return cs . digest ( "SHA-256" , x ) ;
27
27
}
28
28
29
- class TKEM {
29
+ class TreeKEM {
30
30
/*
31
- * TKEM objects should not be constructed directly. Instead, use
32
- * the `TKEM .fromX` factory methods. This only exists to give
31
+ * TreeKEM objects should not be constructed directly. Instead, use
32
+ * the `TreeKEM .fromX` factory methods. This only exists to give
33
33
* certain variables public exposure for debugging, and as a base
34
34
* for the factory methods. It would be private in C++.
35
35
*/
@@ -40,14 +40,14 @@ class TKEM {
40
40
}
41
41
42
42
/*
43
- * Construct a TKEM representing a group with a single member,
43
+ * Construct a TreeKEM representing a group with a single member,
44
44
* with the given leaf secret.
45
45
*/
46
46
static async oneMemberGroup ( leaf ) {
47
- let tkem = new TKEM ( ) ;
47
+ let tkem = new TreeKEM ( ) ;
48
48
tkem . size = 1 ;
49
49
tkem . index = 0 ;
50
- tkem . merge ( await TKEM . hashUp ( 0 , 1 , leaf ) ) ;
50
+ tkem . merge ( await TreeKEM . hashUp ( 0 , 1 , leaf ) ) ;
51
51
return tkem ;
52
52
}
53
53
@@ -56,12 +56,12 @@ class TKEM {
56
56
* frontier by adding a member with the given leaf secret.
57
57
*/
58
58
static async fromFrontier ( size , frontier , leaf ) {
59
- let tkem = new TKEM ( ) ;
59
+ let tkem = new TreeKEM ( ) ;
60
60
tkem . size = size + 1 ;
61
61
tkem . index = size ;
62
62
tkem . merge ( frontier ) ;
63
63
64
- let nodes = await TKEM . hashUp ( 2 * tkem . index , tkem . size , leaf ) ;
64
+ let nodes = await TreeKEM . hashUp ( 2 * tkem . index , tkem . size , leaf ) ;
65
65
tkem . merge ( nodes ) ;
66
66
return tkem ;
67
67
}
@@ -73,7 +73,7 @@ class TKEM {
73
73
* Arguments:
74
74
* * leaf - BufferSource with leaf secret
75
75
*
76
- * Returns: Promise resolving to a TKEMCiphertext object:
76
+ * Returns: Promise resolving to a TreeKEMCiphertext object:
77
77
* {
78
78
* // Index of the sender in the tree
79
79
* index: Int
@@ -93,7 +93,7 @@ class TKEM {
93
93
let copath = tm . copath ( 2 * this . index , this . size ) ;
94
94
95
95
// Generate hashes up the tree
96
- let privateNodes = await TKEM . hashUp ( 2 * this . index , this . size , leaf ) ;
96
+ let privateNodes = await TreeKEM . hashUp ( 2 * this . index , this . size , leaf ) ;
97
97
let nodes = { } ;
98
98
for ( let n in privateNodes ) {
99
99
nodes [ n ] = util . publicNode ( privateNodes [ n ] ) ;
@@ -146,7 +146,7 @@ class TKEM {
146
146
// Hash up to the root (plus one if we're growing the tree)
147
147
let newDirpath = tm . dirpath ( 2 * this . index , senderSize ) ;
148
148
newDirpath . push ( tm . root ( senderSize ) ) ;
149
- let nodes = await TKEM . hashUp ( newDirpath [ dirIndex + 1 ] , senderSize , h ) ;
149
+ let nodes = await TreeKEM . hashUp ( newDirpath [ dirIndex + 1 ] , senderSize , h ) ;
150
150
151
151
let root = tm . root ( senderSize ) ;
152
152
return {
@@ -234,7 +234,7 @@ async function testMembers(size) {
234
234
let members = [ ] ;
235
235
const root = tm . root ( size ) ;
236
236
for ( let i = 0 ; i < size ; ++ i ) {
237
- members [ i ] = new TKEM ( ) ;
237
+ members [ i ] = new TreeKEM ( ) ;
238
238
members [ i ] . size = size ;
239
239
members [ i ] . index = i ;
240
240
@@ -372,6 +372,6 @@ async function test() {
372
372
}
373
373
374
374
module . exports = {
375
- class : TKEM ,
375
+ class : TreeKEM ,
376
376
test : test ,
377
377
} ;
0 commit comments