Migration Utility fails with 'Migration Error: Key has not been generated.'
3 years ago
Originally Published: 2012-03-29
Article Number
000040129
Applies To
RSA Key Manager Server Migration Utility 2.7.1.1
Issue
Migration Utility fails with "Migration Error: Key has not been generated."
The migration tool fails right after providing master password:

Starting Migration ...

Enter master password: ***************
Migration Error: Key has not been generated.
Press any key to continue . . .

migrate.log shows the following exception:

2012-03-29 09:07:13,019 INFO main - Client : Internal, generateKey() - About to get key
2012-03-29 09:07:13,035 INFO main - Client : Internal, generateKey() - Obtained key
2012-03-29 09:07:13,082 INFO main - Client : Internal, testPbe
2012-03-29 09:08:11,693 ERROR main - Client : Internal, Migration Error:
com.rsa.keymanager.core.keystore.core.KeyNotGeneratedException: Key has not been generated.
 at com.rsa.keymanager.core.keystore.ssm.DefaultSsmMasterKeyStore.getKeyBytes(DefaultSsmMasterKeyStore.java:211)
 at com.rsa.keymanager.core.keystore.ssm.DefaultSsmMasterKeyStore.getWrapped(DefaultSsmMasterKeyStore.java:193)
 at com.rsa.keymanager.core.keystore.core.CachedMasterKeyStore.getWrapped(CachedMasterKeyStore.java:78)
 at com.rsa.keymanager.core.crypto.encrypt.DefaultEncryptionEngine.encryptWrapped(DefaultEncryptionEngine.java:30)
 at com.rsa.keymanager.core.crypto.encoded.DefaultEncodingEngine.encryptWrapped(DefaultEncodingEngine.java:33)
 at com.rsa.keymanager.core.system.properties.DefaultBaseEncryptedStringMap.encrypt(DefaultBaseEncryptedStringMap.java:45)
 at com.rsa.keymanager.core.system.properties.DefaultBaseEncryptedStringMap.encryptProperty(DefaultBaseEncryptedStringMap.java:63)
 at com.rsa.keymanager.core.system.properties.DefaultBaseEncryptedStringMap.put(DefaultBaseEncryptedStringMap.java:56)
 at com.rsa.keymanager.core.database.properties.DefaultDatabaseCredentials.put(DefaultDatabaseCredentials.java:57)
 at com.rsa.keymanager.core.database.properties.DefaultDatabaseCredentials.createUser(DefaultDatabaseCredentials.java:37)
 at com.rsa.keymanager.core.database.properties.DefaultDatabaseCredentials.create(DefaultDatabaseCredentials.java:25)
 at com.rsa.keymanager.sandpiper.engine.props.DefaultDbCredentialsPropertiesCreator.createDbCredentials(DefaultDbCredentialsPropertiesCreator.java:40)
 at com.rsa.keymanager.sandpiper.engine.props.DefaultDbCredentialsPropertiesCreator.create(DefaultDbCredentialsPropertiesCreator.java:34)
 at com.rsa.keymanager.sandpiper.engine.props.DefaultPropertyMigrator.createCredentials(DefaultPropertyMigrator.java:79)
 at com.rsa.keymanager.sandpiper.engine.props.DefaultPropertyMigrator.migrate(DefaultPropertyMigrator.java:50)
 at com.rsa.keymanager.sandpiper.engine.migrate.DefaultConsulate.properties(DefaultConsulate.java:35)
 at com.rsa.keymanager.sandpiper.engine.migrate.DefaultConsulate.migrate(DefaultConsulate.java:28)
 at com.rsa.keymanager.sandpiper.engine.migrate.DefaultMigrationRunner.go(DefaultMigrationRunner.java:16)
 at com.rsa.keymanager.sandpiper.engine.main.DefaultMasterRunner.doRun(DefaultMasterRunner.java:34)
 at com.rsa.keymanager.sandpiper.engine.main.DefaultMasterRunner.run(DefaultMasterRunner.java:24)
 at com.rsa.keymanager.sandpiper.engine.migrate.DefaultSandpiper.run(DefaultSandpiper.java:46)
 at com.rsa.keymanager.sandpiper.engine.migrate.DefaultSandpiper.launch(DefaultSandpiper.java:24)
 at com.rsa.keymanager.sandpiper.engine.main.Main.main(Main.java:48)

Cause
The contents of softwareMasterKey.properties copied to input folder under migration utility, was empty.
Resolution
Copy the correct set of properties files from the current RKM Server 2.5.0.x installation to input folder under migration utility and then re-run the migration tool.
Workaround
Upgrading RKM Server version 2.5.0.x to 2.7.1.1