Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -45,28 +45,22 @@
import java.util.List;
import java.util.Optional;
import java.util.concurrent.atomic.AtomicLong;
import java.util.function.Supplier;
import java.util.stream.Collectors;

import com.google.common.base.Suppliers;
import org.apache.tuweni.bytes.Bytes32;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public abstract class AbstractTestTransactionSelectorPlugin implements BesuPlugin {
private static final Logger LOG =
LoggerFactory.getLogger(AbstractTestTransactionSelectorPlugin.class);
private static final Supplier<SignatureAlgorithm> SIGNATURE_ALGORITHM =
Suppliers.memoize(SignatureAlgorithmFactory::getInstance);
private static final SignatureAlgorithm SIGNATURE_ALGORITHM =
SignatureAlgorithmFactory.getInstance();
private static final AtomicLong NONCE = new AtomicLong(0);
private static final KeyPair SENDER_KEYS =
SIGNATURE_ALGORITHM
.get()
.createKeyPair(
SIGNATURE_ALGORITHM
.get()
.createPrivateKey(
Bytes32.fromHexString(Accounts.GENESIS_ACCOUNT_THREE_PRIVATE_KEY)));
SIGNATURE_ALGORITHM.createKeyPair(
SIGNATURE_ALGORITHM.createPrivateKey(
Bytes32.fromHexString(Accounts.GENESIS_ACCOUNT_THREE_PRIVATE_KEY)));

private ServiceManager serviceManager;
private File callbackDir;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,10 +44,8 @@
import java.util.ArrayList;
import java.util.List;
import java.util.Optional;
import java.util.function.Supplier;

import com.google.auto.service.AutoService;
import com.google.common.base.Suppliers;
import org.apache.tuweni.bytes.Bytes32;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
Expand All @@ -57,16 +55,12 @@
public class TestBundlePlugin implements BesuPlugin {
private static final Logger LOG = LoggerFactory.getLogger(TestBundlePlugin.class);
private final List<String> events = new ArrayList<>();
private static final Supplier<SignatureAlgorithm> SIGNATURE_ALGORITHM =
Suppliers.memoize(SignatureAlgorithmFactory::getInstance);
private static final SignatureAlgorithm SIGNATURE_ALGORITHM =
SignatureAlgorithmFactory.getInstance();
private static final KeyPair SENDER_KEYS =
SIGNATURE_ALGORITHM
.get()
.createKeyPair(
SIGNATURE_ALGORITHM
.get()
.createPrivateKey(
Bytes32.fromHexString(Accounts.GENESIS_ACCOUNT_THREE_PRIVATE_KEY)));
SIGNATURE_ALGORITHM.createKeyPair(
SIGNATURE_ALGORITHM.createPrivateKey(
Bytes32.fromHexString(Accounts.GENESIS_ACCOUNT_THREE_PRIVATE_KEY)));

private ServiceManager serviceManager;
private File callbackDir;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,6 @@
import java.math.BigInteger;
import java.util.Optional;

import com.google.common.base.Supplier;
import com.google.common.base.Suppliers;
import org.apache.tuweni.bytes.Bytes32;
import org.web3j.crypto.Credentials;
import org.web3j.utils.Convert.Unit;
Expand All @@ -47,8 +45,8 @@ public class Account {
private final Address address;
private long nonce = 0;

private static final Supplier<SignatureAlgorithm> SIGNATURE_ALGORITHM =
Suppliers.memoize(SignatureAlgorithmFactory::getInstance);
private static final SignatureAlgorithm SIGNATURE_ALGORITHM =
SignatureAlgorithmFactory.getInstance();

private Account(
final EthTransactions eth,
Expand Down Expand Up @@ -76,18 +74,16 @@ public static Account create(final EthTransactions eth, final Address address) {
}

public static Account create(final EthTransactions eth, final String name) {
return new Account(eth, name, SIGNATURE_ALGORITHM.get().generateKeyPair());
return new Account(eth, name, SIGNATURE_ALGORITHM.generateKeyPair());
}

public static Account fromPrivateKey(
final EthTransactions eth, final String name, final String privateKey) {
return new Account(
eth,
name,
SIGNATURE_ALGORITHM
.get()
.createKeyPair(
SIGNATURE_ALGORITHM.get().createPrivateKey(Bytes32.fromHexString(privateKey))));
SIGNATURE_ALGORITHM.createKeyPair(
SIGNATURE_ALGORITHM.createPrivateKey(Bytes32.fromHexString(privateKey))));
}

public Optional<Credentials> web3jCredentials() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,6 @@
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.google.common.base.Supplier;
import com.google.common.base.Suppliers;
import org.apache.tuweni.bytes.Bytes;
import org.apache.tuweni.bytes.Bytes32;
import org.apache.tuweni.units.bigints.UInt256;
Expand All @@ -44,8 +42,8 @@ public class TransactionData {
private final Optional<Address> to;
private final SECPPrivateKey privateKey;

private static final Supplier<SignatureAlgorithm> SIGNATURE_ALGORITHM =
Suppliers.memoize(SignatureAlgorithmFactory::getInstance);
private static final SignatureAlgorithm SIGNATURE_ALGORITHM =
SignatureAlgorithmFactory.getInstance();

/**
* Instantiates a new Transaction data.
Expand All @@ -70,7 +68,7 @@ public TransactionData(
this.data = data.map(Bytes::fromHexString).orElse(Bytes.EMPTY);
this.value = value.map(Wei::fromHexString).orElse(Wei.ZERO);
this.to = to.map(Address::fromHexString);
this.privateKey = SIGNATURE_ALGORITHM.get().createPrivateKey(Bytes32.fromHexString(secretKey));
this.privateKey = SIGNATURE_ALGORITHM.createPrivateKey(Bytes32.fromHexString(secretKey));
}

/**
Expand All @@ -80,7 +78,7 @@ public TransactionData(
* @return the signed transaction
*/
public Transaction getSignedTransaction(final NonceProvider nonceProvider) {
final KeyPair keyPair = SIGNATURE_ALGORITHM.get().createKeyPair(privateKey);
final KeyPair keyPair = SIGNATURE_ALGORITHM.createKeyPair(privateKey);

final Address fromAddress = Address.extract(keyPair.getPublicKey());
final long nonce = nonceProvider.get(fromAddress);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -49,8 +49,6 @@
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.node.JsonNodeType;
import com.fasterxml.jackson.databind.node.ObjectNode;
import com.google.common.base.Supplier;
import com.google.common.base.Suppliers;
import com.google.common.io.Resources;
import jakarta.validation.constraints.NotBlank;
import org.apache.tuweni.bytes.Bytes;
Expand All @@ -68,9 +66,6 @@
class GenerateBlockchainConfig implements Runnable {
private static final Logger LOG = LoggerFactory.getLogger(GenerateBlockchainConfig.class);

private final Supplier<SignatureAlgorithm> SIGNATURE_ALGORITHM =
Suppliers.memoize(SignatureAlgorithmFactory::getInstance);

@NotBlank
@Option(
required = true,
Expand Down Expand Up @@ -176,14 +171,15 @@ private void importPublicKey(final JsonNode publicKeyJson) {
final String publicKeyText = publicKeyJson.asText();

try {
SignatureAlgorithm signatureAlgorithm = SignatureAlgorithmFactory.getInstance();
final SECPPublicKey publicKey =
SIGNATURE_ALGORITHM.get().createPublicKey(Bytes.fromHexString(publicKeyText));
signatureAlgorithm.createPublicKey(Bytes.fromHexString(publicKeyText));

if (!SIGNATURE_ALGORITHM.get().isValidPublicKey(publicKey)) {
if (!signatureAlgorithm.isValidPublicKey(publicKey)) {
throw new IllegalArgumentException(
publicKeyText
+ " is not a valid public key for elliptic curve "
+ SIGNATURE_ALGORITHM.get().getCurveName());
+ signatureAlgorithm.getCurveName());
}

writeKeypair(publicKey, null);
Expand All @@ -208,7 +204,7 @@ private void generateNodesKeys() {
private void generateNodeKeypair(final int node) {
try {
LOG.info("Generating keypair for node {}.", node);
final KeyPair keyPair = SIGNATURE_ALGORITHM.get().generateKeyPair();
final KeyPair keyPair = SignatureAlgorithmFactory.getInstance().generateKeyPair();
writeKeypair(keyPair.getPublicKey(), keyPair.getPrivateKey());

} catch (final IOException e) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,26 +40,21 @@
import org.hyperledger.besu.plugin.services.BlockSimulationService;

import java.util.List;
import java.util.function.Supplier;

import com.google.common.base.Suppliers;

/** This class is a service that simulates the processing of a block */
public class BlockSimulatorServiceImpl implements BlockSimulationService {
private final BlockSimulator blockSimulator;
private final WorldStateArchive worldStateArchive;
private final Blockchain blockchain;

private static final Supplier<SignatureAlgorithm> SIGNATURE_ALGORITHM =
Suppliers.memoize(SignatureAlgorithmFactory::getInstance);
private static final SignatureAlgorithm SIGNATURE_ALGORITHM =
SignatureAlgorithmFactory.getInstance();
// Dummy signature for transactions to not fail being processed.
private static final SECPSignature FAKE_SIGNATURE =
SIGNATURE_ALGORITHM
.get()
.createSignature(
SIGNATURE_ALGORITHM.get().getHalfCurveOrder(),
SIGNATURE_ALGORITHM.get().getHalfCurveOrder(),
(byte) 0);
SIGNATURE_ALGORITHM.createSignature(
SIGNATURE_ALGORITHM.getHalfCurveOrder(),
SIGNATURE_ALGORITHM.getHalfCurveOrder(),
(byte) 0);

/**
* This constructor creates a BlockSimulatorServiceImpl object
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -80,8 +80,6 @@
import java.util.concurrent.atomic.AtomicReference;
import java.util.stream.Stream;

import com.google.common.base.Supplier;
import com.google.common.base.Suppliers;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
Expand All @@ -93,9 +91,9 @@
@ExtendWith(MockitoExtension.class)
public class BesuEventsImplTest {

private static final Supplier<SignatureAlgorithm> SIGNATURE_ALGORITHM =
Suppliers.memoize(SignatureAlgorithmFactory::getInstance);
private static final KeyPair KEY_PAIR1 = SIGNATURE_ALGORITHM.get().generateKeyPair();
private static final SignatureAlgorithm SIGNATURE_ALGORITHM =
SignatureAlgorithmFactory.getInstance();
private static final KeyPair KEY_PAIR1 = SIGNATURE_ALGORITHM.generateKeyPair();
private static final org.hyperledger.besu.ethereum.core.Transaction TX1 = createTransaction(0);
private static final org.hyperledger.besu.ethereum.core.Transaction TX2 = createTransaction(1);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,21 +32,19 @@
import java.util.List;
import java.util.stream.Collectors;

import com.google.common.base.Supplier;
import com.google.common.base.Suppliers;
import com.google.common.collect.Lists;
import org.apache.tuweni.bytes.Bytes;
import org.junit.jupiter.api.Test;

public class CliqueExtraDataTest {

private static final Supplier<SignatureAlgorithm> SIGNATURE_ALGORITHM =
Suppliers.memoize(SignatureAlgorithmFactory::getInstance);
private static final SignatureAlgorithm SIGNATURE_ALGORITHM =
SignatureAlgorithmFactory.getInstance();

@Test
public void encodeAndDecodingDoNotAlterData() {
final SECPSignature proposerSeal =
SIGNATURE_ALGORITHM.get().createSignature(BigInteger.ONE, BigInteger.ONE, (byte) 0);
SIGNATURE_ALGORITHM.createSignature(BigInteger.ONE, BigInteger.ONE, (byte) 0);
final List<Address> validators =
Arrays.asList(
AddressHelpers.ofValue(1), AddressHelpers.ofValue(2), AddressHelpers.ofValue(3));
Expand Down Expand Up @@ -97,7 +95,7 @@ public void sufficientlyLargeButIllegallySizedInputThrowsException() {
public void addressToExtraDataString() {
final List<KeyPair> nodeKeys = Lists.newArrayList();
for (int i = 0; i < 4; i++) {
nodeKeys.add(SIGNATURE_ALGORITHM.get().generateKeyPair());
nodeKeys.add(SIGNATURE_ALGORITHM.generateKeyPair());
}

final List<Address> addresses =
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,8 +47,6 @@
import java.util.List;
import java.util.Optional;

import com.google.common.base.Supplier;
import com.google.common.base.Suppliers;
import org.assertj.core.util.Lists;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
Expand All @@ -61,11 +59,11 @@
@SuppressWarnings("DirectInvocationOnMock")
public class CliqueMiningCoordinatorTest {

private static final Supplier<SignatureAlgorithm> SIGNATURE_ALGORITHM =
Suppliers.memoize(SignatureAlgorithmFactory::getInstance);
private static final SignatureAlgorithm SIGNATURE_ALGORITHM =
SignatureAlgorithmFactory.getInstance();

private final KeyPair proposerKeys = SIGNATURE_ALGORITHM.get().generateKeyPair();
private final KeyPair validatorKeys = SIGNATURE_ALGORITHM.get().generateKeyPair();
private final KeyPair proposerKeys = SIGNATURE_ALGORITHM.generateKeyPair();
private final KeyPair validatorKeys = SIGNATURE_ALGORITHM.generateKeyPair();
private final Address proposerAddress = Util.publicKeyToAddress(proposerKeys.getPublicKey());
private final Address validatorAddress = Util.publicKeyToAddress(validatorKeys.getPublicKey());

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,17 +34,15 @@
import java.util.List;
import java.util.Optional;
import java.util.Random;
import java.util.function.Supplier;

import com.google.common.base.Suppliers;
import com.google.common.collect.Lists;
import org.apache.tuweni.bytes.Bytes;
import org.junit.jupiter.api.Test;

public class IbftExtraDataRLPEncoderTest {

private static final Supplier<SignatureAlgorithm> SIGNATURE_ALGORITHM =
Suppliers.memoize(SignatureAlgorithmFactory::getInstance);
private static final SignatureAlgorithm SIGNATURE_ALGORITHM =
SignatureAlgorithmFactory.getInstance();

private final String RAW_HEX_ENCODING_STRING =
"f8f1a00102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f20ea9400000000000000000000000000000000000"
Expand All @@ -64,8 +62,8 @@ private static BftExtraData getDecodedExtraDataForRawHexEncodingString() {
final int round = 0x00FEDCBA;
final List<SECPSignature> committerSeals =
Arrays.asList(
SIGNATURE_ALGORITHM.get().createSignature(BigInteger.ONE, BigInteger.TEN, (byte) 0),
SIGNATURE_ALGORITHM.get().createSignature(BigInteger.TEN, BigInteger.ONE, (byte) 0));
SIGNATURE_ALGORITHM.createSignature(BigInteger.ONE, BigInteger.TEN, (byte) 0),
SIGNATURE_ALGORITHM.createSignature(BigInteger.TEN, BigInteger.ONE, (byte) 0));

// Create a byte buffer with no data.
final byte[] vanity_bytes = createNonEmptyVanityData();
Expand Down Expand Up @@ -265,8 +263,8 @@ public void fullyPopulatedDataProducesCorrectlyFormedExtraDataObject() {
final int round = 0x00FEDCBA;
final List<SECPSignature> committerSeals =
Arrays.asList(
SIGNATURE_ALGORITHM.get().createSignature(BigInteger.ONE, BigInteger.TEN, (byte) 0),
SIGNATURE_ALGORITHM.get().createSignature(BigInteger.TEN, BigInteger.ONE, (byte) 0));
SIGNATURE_ALGORITHM.createSignature(BigInteger.ONE, BigInteger.TEN, (byte) 0),
SIGNATURE_ALGORITHM.createSignature(BigInteger.TEN, BigInteger.ONE, (byte) 0));

// Create randomised vanity data.
final byte[] vanity_bytes = createNonEmptyVanityData();
Expand Down Expand Up @@ -308,8 +306,8 @@ public void fullyPopulatedDataIsEncodedAndDecodedCorrectly() {
final int round = 0x00FEDCBA;
final List<SECPSignature> committerSeals =
Arrays.asList(
SIGNATURE_ALGORITHM.get().createSignature(BigInteger.ONE, BigInteger.TEN, (byte) 0),
SIGNATURE_ALGORITHM.get().createSignature(BigInteger.TEN, BigInteger.ONE, (byte) 0));
SIGNATURE_ALGORITHM.createSignature(BigInteger.ONE, BigInteger.TEN, (byte) 0),
SIGNATURE_ALGORITHM.createSignature(BigInteger.TEN, BigInteger.ONE, (byte) 0));

// Create a byte buffer with no data.
final byte[] vanity_bytes = createNonEmptyVanityData();
Expand Down Expand Up @@ -351,8 +349,8 @@ public void extraDataCanBeEncodedWithoutCommitSeals() {
final int round = 0x00FEDCBA;
final List<SECPSignature> committerSeals =
Arrays.asList(
SIGNATURE_ALGORITHM.get().createSignature(BigInteger.ONE, BigInteger.TEN, (byte) 0),
SIGNATURE_ALGORITHM.get().createSignature(BigInteger.TEN, BigInteger.ONE, (byte) 0));
SIGNATURE_ALGORITHM.createSignature(BigInteger.ONE, BigInteger.TEN, (byte) 0),
SIGNATURE_ALGORITHM.createSignature(BigInteger.TEN, BigInteger.ONE, (byte) 0));

// Create a byte buffer with no data.
final byte[] vanity_bytes = createNonEmptyVanityData();
Expand Down Expand Up @@ -389,8 +387,8 @@ public void extraDataCanBeEncodedwithoutCommitSealsOrRoundNumber() {
final int round = 0x00FEDCBA;
final List<SECPSignature> committerSeals =
Arrays.asList(
SIGNATURE_ALGORITHM.get().createSignature(BigInteger.ONE, BigInteger.TEN, (byte) 0),
SIGNATURE_ALGORITHM.get().createSignature(BigInteger.TEN, BigInteger.ONE, (byte) 0));
SIGNATURE_ALGORITHM.createSignature(BigInteger.ONE, BigInteger.TEN, (byte) 0),
SIGNATURE_ALGORITHM.createSignature(BigInteger.TEN, BigInteger.ONE, (byte) 0));

// Create a byte buffer with no data.
final byte[] vanity_bytes = createNonEmptyVanityData();
Expand Down Expand Up @@ -459,8 +457,8 @@ public void incorrectVoteTypeThrowsException() {
final int round = 0x00FEDCBA;
final List<SECPSignature> committerSeals =
Arrays.asList(
SIGNATURE_ALGORITHM.get().createSignature(BigInteger.ONE, BigInteger.TEN, (byte) 0),
SIGNATURE_ALGORITHM.get().createSignature(BigInteger.TEN, BigInteger.ONE, (byte) 0));
SIGNATURE_ALGORITHM.createSignature(BigInteger.ONE, BigInteger.TEN, (byte) 0),
SIGNATURE_ALGORITHM.createSignature(BigInteger.TEN, BigInteger.ONE, (byte) 0));

// Create a byte buffer with no data.
final byte[] vanity_bytes = new byte[32];
Expand Down
Loading