MlDsaPublicKey.create constructor
MlDsaPublicKey.create({
- required ThresholdParams params,
- required Uint8List ceremonyId,
- required Uint8List publicKeyBytes,
Creates a validated public key.
Implementation
factory MlDsaPublicKey.create({
required ThresholdParams params,
required Uint8List ceremonyId,
required Uint8List publicKeyBytes,
}) {
validateCeremonyId(ceremonyId);
final profile = MlDsaThresholdProfile.fromScheme(params.scheme);
if (publicKeyBytes.length != profile.publicKeyLength) {
throw InvalidParams(
'ML-DSA public key length ${publicKeyBytes.length} != ${profile.publicKeyLength}',
);
}
return MlDsaPublicKey._(
params: params,
ceremonyId: Uint8List.fromList(ceremonyId),
bytes: Uint8List.fromList(publicKeyBytes),
);
}