use of tech.pegasys.web3signer.core.service.http.handlers.signing.eth2.Eth2SigningRequestBody in project web3signer by ConsenSys.
the class Eth2AltairBlockSigningAcceptanceTest method signAndVerifyBlockV2Signature.
@ParameterizedTest
@EnumSource(value = SpecMilestone.class, names = { "PHASE0", "ALTAIR" })
void signAndVerifyBlockV2Signature(final SpecMilestone specMilestone) throws Exception {
final Eth2BlockSigningRequestUtil util = new Eth2BlockSigningRequestUtil(specMilestone);
switch(specMilestone) {
case ALTAIR:
setupEth2SignerMinimal();
break;
case PHASE0:
setupEth2SignerMinimalWithoutAltairFork();
break;
default:
fail("Spec milestone not yet supported" + specMilestone);
}
final Eth2SigningRequestBody request = util.createBlockV2Request();
final Response response = signer.eth2Sign(keyPair.getPublicKey().toString(), request, ContentType.JSON);
final Bytes signature = verifyAndGetSignatureResponse(response, ContentType.JSON);
final BLSSignature expectedSignature = BLS.sign(keyPair.getSecretKey(), request.getSigningRoot());
assertThat(signature).isEqualTo(expectedSignature.toBytesCompressed());
}
Aggregations