createProgramAddress static method
Future<Ed25519HDPublicKey>
createProgramAddress({
- required Iterable<
int> seeds, - required Ed25519HDPublicKey programId,
Derives a program address from seeds and a program ID.
Implementation
static Future<Ed25519HDPublicKey> createProgramAddress({
required Iterable<int> seeds,
required Ed25519HDPublicKey programId,
}) async {
final seedBytes = seeds
.followedBy(programId.bytes)
.followedBy(_magicWord)
.toList(growable: false);
final data = await _computeHash(seedBytes);
if (isPointOnEd25519Curve(data)) {
throw const FormatException(
'failed to create address with provided seeds',
);
}
return Ed25519HDPublicKey(data);
}