Skip to content

Commit 05c5517

Browse files
fix: remove of using agreement key in hedera repo test (#563)
Signed-off-by: Jeffrey Tang <[email protected]>
1 parent fbb7a8b commit 05c5517

File tree

8 files changed

+2
-115
lines changed

8 files changed

+2
-115
lines changed

src/commands/flags.mjs

Lines changed: 0 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -572,28 +572,6 @@ export const gossipPrivateKey = {
572572
}
573573
}
574574

575-
/** @type {CommandFlag} **/
576-
export const agreementPublicKey = {
577-
constName: 'agreementPublicKey',
578-
name: 'agreement-public-key',
579-
definition: {
580-
describe: 'path and file name of the public key for agreement in PEM key format to be used',
581-
defaultValue: '',
582-
type: 'string'
583-
}
584-
}
585-
586-
/** @type {CommandFlag} **/
587-
export const agreementPrivateKey = {
588-
constName: 'agreementPrivateKey',
589-
name: 'agreement-private-key',
590-
definition: {
591-
describe: 'path and file name of the private key for agreement in PEM key format to be used',
592-
defaultValue: '',
593-
type: 'string'
594-
}
595-
}
596-
597575
/** @type {CommandFlag} **/
598576
export const tlsPublicKey = {
599577
constName: 'tlsPublicKey',
@@ -792,8 +770,6 @@ export const adminKey = {
792770
/** @type {CommandFlag[]} **/
793771
export const allFlags = [
794772
accountId,
795-
agreementPrivateKey,
796-
agreementPublicKey,
797773
amount,
798774
apiPermissionProperties,
799775
app,

src/commands/node.mjs

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -252,8 +252,6 @@ export class NodeCommand extends BaseCommand {
252252

253253
static get UPDATE_FLAGS_LIST () {
254254
return [
255-
flags.agreementPrivateKey,
256-
flags.agreementPublicKey,
257255
flags.app,
258256
flags.cacheDir,
259257
flags.chartDirectory,
@@ -2613,8 +2611,6 @@ export class NodeCommand extends BaseCommand {
26132611

26142612
// disable the prompts that we don't want to prompt the user for
26152613
prompts.disablePrompts([
2616-
flags.agreementPrivateKey,
2617-
flags.agreementPublicKey,
26182614
flags.app,
26192615
flags.chartDirectory,
26202616
flags.devMode,
@@ -2638,8 +2634,6 @@ export class NodeCommand extends BaseCommand {
26382634
/**
26392635
* @typedef {Object} NodeUpdateConfigClass
26402636
* -- flags --
2641-
* @property {string} agreementPrivateKey
2642-
* @property {string} agreementPublicKey
26432637
* @property {string} app
26442638
* @property {string} cacheDir
26452639
* @property {string} chartDirectory
@@ -2815,8 +2809,7 @@ export class NodeCommand extends BaseCommand {
28152809
renameAndCopyFile(config.tlsPrivateKey, privateKeyFile, config.keysDir)
28162810
}
28172811

2818-
if (config.gossipPublicKey && config.gossipPrivateKey &&
2819-
config.agreementPrivateKey && config.agreementPublicKey) {
2812+
if (config.gossipPublicKey && config.gossipPrivateKey) {
28202813
self.logger.info(`config.gossipPublicKey: ${config.gossipPublicKey}`)
28212814
const signingCertDer = await this.loadPermCertificate(config.gossipPublicKey)
28222815
nodeUpdateTx.setGossipCaCertificate(signingCertDer)
@@ -2825,11 +2818,6 @@ export class NodeCommand extends BaseCommand {
28252818
const privateKeyFile = Templates.renderGossipPemPrivateKeyFile(constants.SIGNING_KEY_PREFIX, config.nodeId)
28262819
renameAndCopyFile(config.gossipPublicKey, publicKeyFile, config.keysDir)
28272820
renameAndCopyFile(config.gossipPrivateKey, privateKeyFile, config.keysDir)
2828-
2829-
const agreePublicKeyFile = Templates.renderGossipPemPublicKeyFile(constants.AGREEMENT_KEY_PREFIX, config.nodeId)
2830-
const agreePrivateKeyFile = Templates.renderGossipPemPrivateKeyFile(constants.AGREEMENT_KEY_PREFIX, config.nodeId)
2831-
renameAndCopyFile(config.agreementPublicKey, agreePublicKeyFile, config.keysDir)
2832-
renameAndCopyFile(config.agreementPrivateKey, agreePrivateKeyFile, config.keysDir)
28332821
}
28342822

28352823
if (config.newAccountNumber) {

src/core/constants.mjs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,6 @@ export const LISTR_DEFAULT_RENDERER_OPTION = {
116116
}
117117

118118
export const SIGNING_KEY_PREFIX = 's'
119-
export const AGREEMENT_KEY_PREFIX = 'a'
120119
export const ENCRYPTION_KEY_PREFIX = 'e'
121120
export const CERTIFICATE_VALIDITY_YEARS = 100 // years
122121

src/core/key_manager.mjs

Lines changed: 0 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -406,39 +406,6 @@ export class KeyManager {
406406
}
407407
}
408408

409-
/**
410-
* Generate agreement key
411-
* @param {string} nodeId
412-
* @param {NodeKeyObject} signingKey
413-
* @returns {Promise<NodeKeyObject>}
414-
*/
415-
async generateAgreementKey (nodeId, signingKey) {
416-
return this.ecKey(nodeId, constants.AGREEMENT_KEY_PREFIX, signingKey)
417-
}
418-
419-
/**
420-
* Store agreement key and certificate
421-
* @param {string} nodeId
422-
* @param {NodeKeyObject} nodeKey
423-
* @param {string} keysDir - directory where keys and certs are stored
424-
* @returns {Promise<PrivateKeyAndCertificateObject>} returns a Promise that saves the keys and certs as PEM files
425-
*/
426-
async storeAgreementKey (nodeId, nodeKey, keysDir) {
427-
const nodeKeyFiles = this.prepareNodeKeyFilePaths(nodeId, keysDir, constants.AGREEMENT_KEY_PREFIX)
428-
return this.storeNodeKey(nodeId, nodeKey, keysDir, nodeKeyFiles, 'agreement')
429-
}
430-
431-
/**
432-
* Load agreement key and certificate
433-
* @param {string} nodeId
434-
* @param {string} keysDir - directory path where pem files are stored
435-
* @returns {Promise<NodeKeyObject>}
436-
*/
437-
async loadAgreementKey (nodeId, keysDir) {
438-
const nodeKeyFiles = this.prepareNodeKeyFilePaths(nodeId, keysDir, constants.AGREEMENT_KEY_PREFIX)
439-
return this.loadNodeKey(nodeId, keysDir, KeyManager.ECKeyAlgo, nodeKeyFiles, 'agreement')
440-
}
441-
442409
/**
443410
* Generate gRPC TLS key
444411
*
@@ -533,10 +500,6 @@ export class KeyManager {
533500
for (const nodeId of nodeIds) {
534501
const signingKeyFiles = this.prepareNodeKeyFilePaths(nodeId, keysDir, constants.SIGNING_KEY_PREFIX)
535502
await this.copyNodeKeysToStaging(signingKeyFiles, stagingKeysDir)
536-
537-
// generate missing agreement keys
538-
const agreementKeyFiles = this.prepareNodeKeyFilePaths(nodeId, keysDir, constants.AGREEMENT_KEY_PREFIX)
539-
await this.copyNodeKeysToStaging(agreementKeyFiles, stagingKeysDir)
540503
}
541504
}
542505

@@ -574,10 +537,6 @@ export class KeyManager {
574537
const signingKey = await self.generateSigningKey(nodeId)
575538
const signingKeyFiles = await self.storeSigningKey(nodeId, signingKey, keysDir)
576539
this.logger.debug(`generated Gossip signing keys for node ${nodeId}`, { keyFiles: signingKeyFiles })
577-
578-
const agreementKey = await self.generateAgreementKey(nodeId, signingKey)
579-
const agreementKeyFiles = await self.storeAgreementKey(nodeId, agreementKey, keysDir)
580-
this.logger.debug(`generated Gossip agreement keys for node ${nodeId}`, { keyFiles: agreementKeyFiles })
581540
}
582541
})
583542
}

src/core/platform_installer.mjs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -162,12 +162,10 @@ export class PlatformInstaller {
162162

163163
// copy private keys for the node
164164
srcFiles.push(path.join(stagingDir, 'keys', Templates.renderGossipPemPrivateKeyFile(constants.SIGNING_KEY_PREFIX, nodeId)))
165-
srcFiles.push(path.join(stagingDir, 'keys', Templates.renderGossipPemPrivateKeyFile(constants.AGREEMENT_KEY_PREFIX, nodeId)))
166165

167166
// copy all public keys for all nodes
168167
nodeIds.forEach(id => {
169168
srcFiles.push(path.join(stagingDir, 'keys', Templates.renderGossipPemPublicKeyFile(constants.SIGNING_KEY_PREFIX, id)))
170-
srcFiles.push(path.join(stagingDir, 'keys', Templates.renderGossipPemPublicKeyFile(constants.AGREEMENT_KEY_PREFIX, id)))
171169
})
172170

173171
const data = {}

test/e2e/commands/node_update.test.mjs

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -82,12 +82,6 @@ describe('Node update', () => {
8282
argv[flags.gossipPublicKey.name] = signingKeyFiles.certificateFile
8383
argv[flags.gossipPrivateKey.name] = signingKeyFiles.privateKeyFile
8484

85-
// should also regenerate agreement keys
86-
const agreementKey = await nodeCmd.keyManager.generateAgreementKey(updateNodeId, signingKey)
87-
const agreementKeyFiles = await nodeCmd.keyManager.storeAgreementKey(updateNodeId, agreementKey, tmpDir)
88-
argv[flags.agreementPublicKey.name] = agreementKeyFiles.certificateFile
89-
argv[flags.agreementPrivateKey.name] = agreementKeyFiles.privateKeyFile
90-
9185
const tlsKey = await nodeCmd.keyManager.generateGrpcTLSKey(updateNodeId)
9286
const tlsKeyFiles = await nodeCmd.keyManager.storeTLSKey(updateNodeId, tlsKey, tmpDir)
9387
nodeCmd.logger.debug(`generated test TLS keys for node ${updateNodeId} : ${tlsKeyFiles.certificateFile}`)
@@ -114,7 +108,7 @@ describe('Node update', () => {
114108

115109
for (const [keyFileName, existingKeyHash] of existingKeyHashMap.entries()) {
116110
if (nodeId === updateNodeId &&
117-
(keyFileName.startsWith(constants.SIGNING_KEY_PREFIX) || keyFileName.startsWith(constants.AGREEMENT_KEY_PREFIX) || keyFileName.startsWith('hedera'))) {
111+
(keyFileName.startsWith(constants.SIGNING_KEY_PREFIX) || keyFileName.startsWith('hedera'))) {
118112
expect(`${nodeId}:${keyFileName}:${currentNodeKeyHashMap.get(keyFileName)}`).not.toEqual(
119113
`${nodeId}:${keyFileName}:${existingKeyHash}`)
120114
} else {

test/test_util.js

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -349,8 +349,6 @@ export async function getNodeIdsPrivateKeysHash (networkNodeServicesMap, namespa
349349
fs.mkdirSync(uniqueNodeDestDir, { recursive: true })
350350
}
351351
await addKeyHashToMap(k8, nodeId, dataKeysDir, uniqueNodeDestDir, keyHashMap, Templates.renderGossipPemPrivateKeyFile(constants.SIGNING_KEY_PREFIX, nodeId))
352-
await addKeyHashToMap(k8, nodeId, dataKeysDir, uniqueNodeDestDir, keyHashMap, Templates.renderGossipPemPrivateKeyFile(constants.AGREEMENT_KEY_PREFIX, nodeId))
353-
354352
await addKeyHashToMap(k8, nodeId, tlsKeysDir, uniqueNodeDestDir, keyHashMap, 'hedera.key')
355353
nodeKeyHashMap.set(nodeId, keyHashMap)
356354
}

test/unit/core/key_manager.test.mjs

Lines changed: 0 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -51,31 +51,6 @@ describe('KeyManager', () => {
5151
fs.rmSync(tmpDir, { recursive: true })
5252
})
5353

54-
it('should generate agreement key', async () => {
55-
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'keys-'))
56-
const nodeId = 'node0'
57-
58-
const signingKeyFiles = keyManager.prepareNodeKeyFilePaths(nodeId, 'test/data', constants.SIGNING_KEY_PREFIX)
59-
const signignKey = await keyManager.loadNodeKey(nodeId, 'test/data', KeyManager.SigningKeyAlgo, signingKeyFiles)
60-
const agreementKey = await keyManager.generateAgreementKey(nodeId, signignKey)
61-
62-
const files = await keyManager.storeAgreementKey(nodeId, agreementKey, tmpDir)
63-
expect(files.privateKeyFile).not.toBeNull()
64-
expect(files.certificateFile).not.toBeNull()
65-
66-
const nodeKey = await keyManager.loadAgreementKey(nodeId, tmpDir)
67-
expect(nodeKey.certificate).toStrictEqual(agreementKey.certificate)
68-
expect(nodeKey.privateKey.algorithm).toStrictEqual(agreementKey.privateKey.algorithm)
69-
expect(nodeKey.privateKey.type).toStrictEqual(agreementKey.privateKey.type)
70-
71-
await expect(agreementKey.certificate.verify({
72-
publicKey: signignKey.certificate.publicKey,
73-
signatureOnly: true
74-
})).resolves.toBeTruthy()
75-
76-
fs.rmSync(tmpDir, { recursive: true })
77-
})
78-
7954
it('should generate TLS key', async () => {
8055
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'keys-'))
8156
const nodeId = 'node1'

0 commit comments

Comments
 (0)