diff --git a/ethereum/p2p/src/test/java/org/hyperledger/besu/ethereum/p2p/discovery/internal/ENRResponsePacketDataTest.java b/ethereum/p2p/src/test/java/org/hyperledger/besu/ethereum/p2p/discovery/internal/ENRResponsePacketDataTest.java
index 72bb407d162d..7ba47bd97ccf 100644
--- a/ethereum/p2p/src/test/java/org/hyperledger/besu/ethereum/p2p/discovery/internal/ENRResponsePacketDataTest.java
+++ b/ethereum/p2p/src/test/java/org/hyperledger/besu/ethereum/p2p/discovery/internal/ENRResponsePacketDataTest.java
@@ -20,6 +20,8 @@
import org.hyperledger.besu.ethereum.rlp.RLP;
import org.apache.tuweni.bytes.Bytes;
+import org.apache.tuweni.bytes.Bytes32;
+import org.apache.tuweni.crypto.SECP256K1;
import org.apache.tuweni.units.bigints.UInt64;
import org.ethereum.beacon.discovery.schema.EnrField;
import org.ethereum.beacon.discovery.schema.IdentitySchema;
@@ -34,8 +36,10 @@ public void serializeDeserialize() {
final Bytes requestHash = Bytes.fromHexStringLenient("0x1234");
final Bytes nodeId =
Bytes.fromHexString("a448f24c6d18e575453db13171562b71999873db5b286df957af199ec94617f7");
- final Bytes privateKey =
- Bytes.fromHexString("b71c71a67e1177ad4e901695e1b4b9ee17ae16c6668d313eac2f96dbcda3f291");
+ final SECP256K1.SecretKey privateKey =
+ SECP256K1.SecretKey.fromBytes(
+ Bytes32.fromHexString(
+ "b71c71a67e1177ad4e901695e1b4b9ee17ae16c6668d313eac2f96dbcda3f291"));
NodeRecord nodeRecord =
NodeRecordFactory.DEFAULT.createFromValues(
@@ -48,7 +52,8 @@ public void serializeDeserialize() {
new EnrField(EnrField.TCP, 8080),
new EnrField(EnrField.TCP_V6, 8080),
new EnrField(
- EnrField.PKEY_SECP256K1, Functions.derivePublicKeyFromPrivate(privateKey)));
+ EnrField.PKEY_SECP256K1,
+ Functions.deriveCompressedPublicKeyFromPrivate(privateKey)));
nodeRecord.sign(privateKey);
assertThat(nodeRecord.getNodeId()).isEqualTo(nodeId);
@@ -72,8 +77,10 @@ public void readFrom() {
final Bytes requestHash = Bytes.fromHexStringLenient("0x1234");
final Bytes nodeId =
Bytes.fromHexString("a448f24c6d18e575453db13171562b71999873db5b286df957af199ec94617f7");
- final Bytes privateKey =
- Bytes.fromHexString("b71c71a67e1177ad4e901695e1b4b9ee17ae16c6668d313eac2f96dbcda3f291");
+ final SECP256K1.SecretKey privateKey =
+ SECP256K1.SecretKey.fromBytes(
+ Bytes32.fromHexString(
+ "b71c71a67e1177ad4e901695e1b4b9ee17ae16c6668d313eac2f96dbcda3f291"));
NodeRecord nodeRecord =
NodeRecordFactory.DEFAULT.createFromValues(
@@ -82,7 +89,8 @@ public void readFrom() {
new EnrField(EnrField.IP_V4, Bytes.fromHexString("0x7F000001")),
new EnrField(EnrField.UDP, 30303),
new EnrField(
- EnrField.PKEY_SECP256K1, Functions.derivePublicKeyFromPrivate(privateKey)));
+ EnrField.PKEY_SECP256K1,
+ Functions.deriveCompressedPublicKeyFromPrivate(privateKey)));
nodeRecord.sign(privateKey);
assertThat(nodeRecord.getNodeId()).isEqualTo(nodeId);
@@ -109,8 +117,10 @@ public void writeTo() {
final Bytes requestHash = Bytes.fromHexStringLenient("0x1234");
final Bytes nodeId =
Bytes.fromHexString("a448f24c6d18e575453db13171562b71999873db5b286df957af199ec94617f7");
- final Bytes privateKey =
- Bytes.fromHexString("b71c71a67e1177ad4e901695e1b4b9ee17ae16c6668d313eac2f96dbcda3f291");
+ final SECP256K1.SecretKey privateKey =
+ SECP256K1.SecretKey.fromBytes(
+ Bytes32.fromHexString(
+ "b71c71a67e1177ad4e901695e1b4b9ee17ae16c6668d313eac2f96dbcda3f291"));
NodeRecord nodeRecord =
NodeRecordFactory.DEFAULT.createFromValues(
@@ -119,7 +129,8 @@ public void writeTo() {
new EnrField(EnrField.IP_V4, Bytes.fromHexString("0x7F000001")),
new EnrField(EnrField.UDP, 30303),
new EnrField(
- EnrField.PKEY_SECP256K1, Functions.derivePublicKeyFromPrivate(privateKey)));
+ EnrField.PKEY_SECP256K1,
+ Functions.deriveCompressedPublicKeyFromPrivate(privateKey)));
nodeRecord.sign(privateKey);
assertThat(nodeRecord.getNodeId()).isEqualTo(nodeId);
@@ -144,8 +155,10 @@ public void readFrom_withExtraFields() {
final Bytes requestHash = Bytes.fromHexStringLenient("0x1234");
final Bytes nodeId =
Bytes.fromHexString("a448f24c6d18e575453db13171562b71999873db5b286df957af199ec94617f7");
- final Bytes privateKey =
- Bytes.fromHexString("b71c71a67e1177ad4e901695e1b4b9ee17ae16c6668d313eac2f96dbcda3f291");
+ final SECP256K1.SecretKey privateKey =
+ SECP256K1.SecretKey.fromBytes(
+ Bytes32.fromHexString(
+ "b71c71a67e1177ad4e901695e1b4b9ee17ae16c6668d313eac2f96dbcda3f291"));
NodeRecord nodeRecord =
NodeRecordFactory.DEFAULT.createFromValues(
@@ -153,7 +166,9 @@ public void readFrom_withExtraFields() {
new EnrField(EnrField.ID, IdentitySchema.V4),
new EnrField(EnrField.IP_V4, Bytes.fromHexString("0x7F000001")),
new EnrField(EnrField.UDP, 30303),
- new EnrField(EnrField.PKEY_SECP256K1, Functions.derivePublicKeyFromPrivate(privateKey)),
+ new EnrField(
+ EnrField.PKEY_SECP256K1,
+ Functions.deriveCompressedPublicKeyFromPrivate(privateKey)),
new EnrField("foo", Bytes.fromHexString("0x1234")));
nodeRecord.sign(privateKey);
@@ -181,8 +196,10 @@ public void readFrom_withExtraFields() {
@Test
public void readFrom_invalidSignature() {
final Bytes requestHash = Bytes.fromHexStringLenient("0x1234");
- final Bytes privateKey =
- Bytes.fromHexString("b71c71a67e1177ad4e901695e1b4b9ee17ae16c6668d313eac2f96dbcda3f292");
+ final SECP256K1.SecretKey privateKey =
+ SECP256K1.SecretKey.fromBytes(
+ Bytes32.fromHexString(
+ "b71c71a67e1177ad4e901695e1b4b9ee17ae16c6668d313eac2f96dbcda3f292"));
NodeRecord nodeRecord =
NodeRecordFactory.DEFAULT.createFromValues(
@@ -191,7 +208,8 @@ public void readFrom_invalidSignature() {
new EnrField(EnrField.IP_V4, Bytes.fromHexString("0x7F000001")),
new EnrField(EnrField.UDP, 30303),
new EnrField(
- EnrField.PKEY_SECP256K1, Functions.derivePublicKeyFromPrivate(privateKey)));
+ EnrField.PKEY_SECP256K1,
+ Functions.deriveCompressedPublicKeyFromPrivate(privateKey)));
nodeRecord.sign(privateKey);
nodeRecord.set(EnrField.UDP, 1234);
diff --git a/gradle/allowed-licenses.json b/gradle/allowed-licenses.json
index 25270190806c..f7a3d8be8d42 100644
--- a/gradle/allowed-licenses.json
+++ b/gradle/allowed-licenses.json
@@ -56,6 +56,11 @@
"moduleVersion": "1.0.3",
"moduleName": "org.reactivestreams:reactive-streams"
},
+ {
+ "moduleLicense": "MIT-0",
+ "moduleVersion": "1.0.4",
+ "moduleName": "org.reactivestreams:reactive-streams"
+ },
{
"moduleLicense": "Eclipse Public License - v 1.0",
"moduleVersion": "4.13.2",
diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml
index f737834d30b7..37640fef7890 100644
--- a/gradle/verification-metadata.xml
+++ b/gradle/verification-metadata.xml
@@ -3802,6 +3802,17 @@
+
+
+
+
+
+
+
+
+
+
+
@@ -5207,6 +5218,14 @@
+
+
+
+
+
+
+
+
@@ -5215,6 +5234,14 @@
+
+
+
+
+
+
+
+
@@ -5223,6 +5250,14 @@
+
+
+
+
+
+
+
+
@@ -5231,6 +5266,14 @@
+
+
+
+
+
+
+
+
@@ -5239,6 +5282,14 @@
+
+
+
+
+
+
+
+
@@ -8310,6 +8361,14 @@
+
+
+
+
+
+
+
+
@@ -9063,6 +9122,9 @@
+
+
+
diff --git a/gradle/versions.gradle b/gradle/versions.gradle
index efb2536d5701..483b335b203f 100644
--- a/gradle/versions.gradle
+++ b/gradle/versions.gradle
@@ -233,6 +233,6 @@ dependencyManagement {
dependency 'org.yaml:snakeyaml:2.0'
- dependency 'tech.pegasys.discovery:discovery:22.2.0'
+ dependency 'tech.pegasys.discovery:discovery:22.12.0'
}
}