From 27ff45ecabcef881ffde7fd61a457e3c90d1a69c Mon Sep 17 00:00:00 2001 From: Norman Maurer Date: Thu, 21 Dec 2023 11:08:56 +0100 Subject: [PATCH] Move BouncyCastle implementation of hpke to an extra module (#20) Motivation: We should not depend on BouncyCastle in our OHTTP implementation as its an implementation detail and alterantive implementations will be added. Modifications: Move Bouncycastle implementation to extra module and only depend on it for tests. Result: No bouncycastle dependency for ohttp codec --- codec-ohttp-hpke-bouncycastle/pom.xml | 90 +++++++++++++++++++ .../BouncyCastleAEADCryptoContext.java | 0 .../BouncyCastleAsymmetricCipherKeyPair.java | 0 .../BouncyCastleAsymmetricKeyParameter.java | 0 .../BouncyCastleCryptoOperation.java | 0 .../bouncycastle/BouncyCastleHPKEContext.java | 0 .../BouncyCastleHPKERecipientContext.java | 0 .../BouncyCastleHPKESenderContext.java | 0 .../BouncyCastleOHttpCryptoProvider.java | 0 .../codec/hpke/bouncycastle/package-info.java | 0 codec-ohttp/pom.xml | 6 ++ pom.xml | 1 + 12 files changed, 97 insertions(+) create mode 100644 codec-ohttp-hpke-bouncycastle/pom.xml rename {codec-ohttp-hpke => codec-ohttp-hpke-bouncycastle}/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleAEADCryptoContext.java (100%) rename {codec-ohttp-hpke => codec-ohttp-hpke-bouncycastle}/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleAsymmetricCipherKeyPair.java (100%) rename {codec-ohttp-hpke => codec-ohttp-hpke-bouncycastle}/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleAsymmetricKeyParameter.java (100%) rename {codec-ohttp-hpke => codec-ohttp-hpke-bouncycastle}/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleCryptoOperation.java (100%) rename {codec-ohttp-hpke => codec-ohttp-hpke-bouncycastle}/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleHPKEContext.java (100%) rename {codec-ohttp-hpke => codec-ohttp-hpke-bouncycastle}/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleHPKERecipientContext.java (100%) rename {codec-ohttp-hpke => codec-ohttp-hpke-bouncycastle}/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleHPKESenderContext.java (100%) rename {codec-ohttp-hpke => codec-ohttp-hpke-bouncycastle}/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleOHttpCryptoProvider.java (100%) rename {codec-ohttp-hpke => codec-ohttp-hpke-bouncycastle}/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/package-info.java (100%) diff --git a/codec-ohttp-hpke-bouncycastle/pom.xml b/codec-ohttp-hpke-bouncycastle/pom.xml new file mode 100644 index 0000000..f29fb9f --- /dev/null +++ b/codec-ohttp-hpke-bouncycastle/pom.xml @@ -0,0 +1,90 @@ + + + +4.0.0 + + io.netty.incubator + netty-incubator-codec-parent-ohttp + 0.0.3.Final-SNAPSHOT + + +netty-incubator-codec-ohttp-hpke-bouncycastle +0.0.3.Final-SNAPSHOT +Netty/Incubator/Codec/OHTTP/HPKE/BouncyCastle +jar + + + io.netty.incubator.codec.ohttp.hpke.bouncycastle + + + + + + maven-jar-plugin + 3.2.0 + + + default-jar + + + + true + + + ${javaModuleName} + + true + ${project.build.outputDirectory}/META-INF/MANIFEST.MF + + + + + + + + + + + io.netty.incubator + netty-incubator-codec-ohttp-hpke + ${project.version} + + + io.netty + netty-buffer + + + org.bouncycastle + bcpkix-jdk18on + + + org.junit.jupiter + junit-jupiter-api + test + + + org.junit.jupiter + junit-jupiter-engine + test + + + org.junit.jupiter + junit-jupiter-params + test + + + diff --git a/codec-ohttp-hpke/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleAEADCryptoContext.java b/codec-ohttp-hpke-bouncycastle/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleAEADCryptoContext.java similarity index 100% rename from codec-ohttp-hpke/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleAEADCryptoContext.java rename to codec-ohttp-hpke-bouncycastle/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleAEADCryptoContext.java diff --git a/codec-ohttp-hpke/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleAsymmetricCipherKeyPair.java b/codec-ohttp-hpke-bouncycastle/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleAsymmetricCipherKeyPair.java similarity index 100% rename from codec-ohttp-hpke/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleAsymmetricCipherKeyPair.java rename to codec-ohttp-hpke-bouncycastle/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleAsymmetricCipherKeyPair.java diff --git a/codec-ohttp-hpke/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleAsymmetricKeyParameter.java b/codec-ohttp-hpke-bouncycastle/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleAsymmetricKeyParameter.java similarity index 100% rename from codec-ohttp-hpke/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleAsymmetricKeyParameter.java rename to codec-ohttp-hpke-bouncycastle/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleAsymmetricKeyParameter.java diff --git a/codec-ohttp-hpke/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleCryptoOperation.java b/codec-ohttp-hpke-bouncycastle/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleCryptoOperation.java similarity index 100% rename from codec-ohttp-hpke/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleCryptoOperation.java rename to codec-ohttp-hpke-bouncycastle/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleCryptoOperation.java diff --git a/codec-ohttp-hpke/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleHPKEContext.java b/codec-ohttp-hpke-bouncycastle/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleHPKEContext.java similarity index 100% rename from codec-ohttp-hpke/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleHPKEContext.java rename to codec-ohttp-hpke-bouncycastle/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleHPKEContext.java diff --git a/codec-ohttp-hpke/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleHPKERecipientContext.java b/codec-ohttp-hpke-bouncycastle/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleHPKERecipientContext.java similarity index 100% rename from codec-ohttp-hpke/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleHPKERecipientContext.java rename to codec-ohttp-hpke-bouncycastle/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleHPKERecipientContext.java diff --git a/codec-ohttp-hpke/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleHPKESenderContext.java b/codec-ohttp-hpke-bouncycastle/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleHPKESenderContext.java similarity index 100% rename from codec-ohttp-hpke/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleHPKESenderContext.java rename to codec-ohttp-hpke-bouncycastle/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleHPKESenderContext.java diff --git a/codec-ohttp-hpke/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleOHttpCryptoProvider.java b/codec-ohttp-hpke-bouncycastle/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleOHttpCryptoProvider.java similarity index 100% rename from codec-ohttp-hpke/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleOHttpCryptoProvider.java rename to codec-ohttp-hpke-bouncycastle/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/BouncyCastleOHttpCryptoProvider.java diff --git a/codec-ohttp-hpke/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/package-info.java b/codec-ohttp-hpke-bouncycastle/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/package-info.java similarity index 100% rename from codec-ohttp-hpke/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/package-info.java rename to codec-ohttp-hpke-bouncycastle/src/main/java/io/netty/incubator/codec/hpke/bouncycastle/package-info.java diff --git a/codec-ohttp/pom.xml b/codec-ohttp/pom.xml index c54f888..3195de1 100644 --- a/codec-ohttp/pom.xml +++ b/codec-ohttp/pom.xml @@ -103,5 +103,11 @@ junit-jupiter-params test + + io.netty.incubator + netty-incubator-codec-ohttp-hpke-bouncycastle + ${project.version} + test + diff --git a/pom.xml b/pom.xml index 9e18f23..fbb4c02 100644 --- a/pom.xml +++ b/pom.xml @@ -69,6 +69,7 @@ codec-ohttp codec-bhttp codec-ohttp-hpke + codec-ohttp-hpke-bouncycastle