mirror of
https://github.com/google/nomulus.git
synced 2025-05-16 09:27:16 +02:00
Refactor RdeKeyringModule into FakeKeyringModule
A fake Keyring implementation is needed to test Keyring related tools now, so I've refactored the fake RdeKeyring to support all Keyring API methods and moved it to the common testing package. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=149977968
This commit is contained in:
parent
2353bcd8c5
commit
5779cc988b
15 changed files with 281 additions and 47 deletions
|
@ -32,6 +32,7 @@ import google.registry.gcs.GcsUtils;
|
||||||
import google.registry.keyring.api.Keyring;
|
import google.registry.keyring.api.Keyring;
|
||||||
import google.registry.testing.AppEngineRule;
|
import google.registry.testing.AppEngineRule;
|
||||||
import google.registry.testing.BouncyCastleProviderRule;
|
import google.registry.testing.BouncyCastleProviderRule;
|
||||||
|
import google.registry.testing.FakeKeyringModule;
|
||||||
import google.registry.testing.GcsTestingUtils;
|
import google.registry.testing.GcsTestingUtils;
|
||||||
import google.registry.testing.GpgSystemCommandRule;
|
import google.registry.testing.GpgSystemCommandRule;
|
||||||
import google.registry.testing.Providers;
|
import google.registry.testing.Providers;
|
||||||
|
@ -87,7 +88,7 @@ public class BrdaCopyActionTest extends ShardableTestCase {
|
||||||
|
|
||||||
@BeforeClass
|
@BeforeClass
|
||||||
public static void beforeClass() {
|
public static void beforeClass() {
|
||||||
try (Keyring keyring = new RdeKeyringModule().get()) {
|
try (Keyring keyring = new FakeKeyringModule().get()) {
|
||||||
encryptKey = keyring.getRdeStagingEncryptionKey();
|
encryptKey = keyring.getRdeStagingEncryptionKey();
|
||||||
decryptKey = keyring.getRdeStagingDecryptionKey();
|
decryptKey = keyring.getRdeStagingDecryptionKey();
|
||||||
receiverKey = keyring.getRdeReceiverKey();
|
receiverKey = keyring.getRdeReceiverKey();
|
||||||
|
|
|
@ -24,6 +24,7 @@ import static org.junit.Assume.assumeTrue;
|
||||||
import com.google.common.io.CharStreams;
|
import com.google.common.io.CharStreams;
|
||||||
import google.registry.keyring.api.Keyring;
|
import google.registry.keyring.api.Keyring;
|
||||||
import google.registry.testing.BouncyCastleProviderRule;
|
import google.registry.testing.BouncyCastleProviderRule;
|
||||||
|
import google.registry.testing.FakeKeyringModule;
|
||||||
import google.registry.testing.GpgSystemCommandRule;
|
import google.registry.testing.GpgSystemCommandRule;
|
||||||
import google.registry.testing.ShardableTestCase;
|
import google.registry.testing.ShardableTestCase;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
@ -50,9 +51,10 @@ public class GhostrydeGpgIntegrationTest extends ShardableTestCase {
|
||||||
public final BouncyCastleProviderRule bouncy = new BouncyCastleProviderRule();
|
public final BouncyCastleProviderRule bouncy = new BouncyCastleProviderRule();
|
||||||
|
|
||||||
@Rule
|
@Rule
|
||||||
public final GpgSystemCommandRule gpg = new GpgSystemCommandRule(
|
public final GpgSystemCommandRule gpg =
|
||||||
RdeTestData.get("pgp-public-keyring.asc"),
|
new GpgSystemCommandRule(
|
||||||
RdeTestData.get("pgp-private-keyring-registry.asc"));
|
RdeTestData.get("pgp-public-keyring.asc"),
|
||||||
|
RdeTestData.get("pgp-private-keyring-registry.asc"));
|
||||||
|
|
||||||
@DataPoints
|
@DataPoints
|
||||||
public static GpgCommand[] commands = new GpgCommand[] {
|
public static GpgCommand[] commands = new GpgCommand[] {
|
||||||
|
@ -84,7 +86,7 @@ public class GhostrydeGpgIntegrationTest extends ShardableTestCase {
|
||||||
public void test(GpgCommand cmd, BufferSize bufferSize, Filename filename, Content content)
|
public void test(GpgCommand cmd, BufferSize bufferSize, Filename filename, Content content)
|
||||||
throws Exception {
|
throws Exception {
|
||||||
assumeTrue(hasCommand(cmd.get() + " --version"));
|
assumeTrue(hasCommand(cmd.get() + " --version"));
|
||||||
Keyring keyring = new RdeKeyringModule().get();
|
Keyring keyring = new FakeKeyringModule().get();
|
||||||
PGPPublicKey publicKey = keyring.getRdeStagingEncryptionKey();
|
PGPPublicKey publicKey = keyring.getRdeStagingEncryptionKey();
|
||||||
File file = new File(gpg.getCwd(), "love.gpg");
|
File file = new File(gpg.getCwd(), "love.gpg");
|
||||||
byte[] data = content.get().getBytes(UTF_8);
|
byte[] data = content.get().getBytes(UTF_8);
|
||||||
|
|
|
@ -28,6 +28,7 @@ import google.registry.keyring.api.Keyring;
|
||||||
import google.registry.rde.Ghostryde.DecodeResult;
|
import google.registry.rde.Ghostryde.DecodeResult;
|
||||||
import google.registry.testing.BouncyCastleProviderRule;
|
import google.registry.testing.BouncyCastleProviderRule;
|
||||||
import google.registry.testing.ExceptionRule;
|
import google.registry.testing.ExceptionRule;
|
||||||
|
import google.registry.testing.FakeKeyringModule;
|
||||||
import java.io.ByteArrayInputStream;
|
import java.io.ByteArrayInputStream;
|
||||||
import java.io.ByteArrayOutputStream;
|
import java.io.ByteArrayOutputStream;
|
||||||
import java.io.OutputStream;
|
import java.io.OutputStream;
|
||||||
|
@ -78,7 +79,7 @@ public class GhostrydeTest {
|
||||||
|
|
||||||
@Theory
|
@Theory
|
||||||
public void testSimpleApi(Filename filename, Content content) throws Exception {
|
public void testSimpleApi(Filename filename, Content content) throws Exception {
|
||||||
Keyring keyring = new RdeKeyringModule().get();
|
Keyring keyring = new FakeKeyringModule().get();
|
||||||
byte[] data = content.get().getBytes(UTF_8);
|
byte[] data = content.get().getBytes(UTF_8);
|
||||||
DateTime mtime = DateTime.parse("1984-12-18T00:30:00Z");
|
DateTime mtime = DateTime.parse("1984-12-18T00:30:00Z");
|
||||||
PGPPublicKey publicKey = keyring.getRdeStagingEncryptionKey();
|
PGPPublicKey publicKey = keyring.getRdeStagingEncryptionKey();
|
||||||
|
@ -95,7 +96,7 @@ public class GhostrydeTest {
|
||||||
@Theory
|
@Theory
|
||||||
public void testStreamingApi(BufferSize bufferSize, Filename filename, Content content)
|
public void testStreamingApi(BufferSize bufferSize, Filename filename, Content content)
|
||||||
throws Exception {
|
throws Exception {
|
||||||
Keyring keyring = new RdeKeyringModule().get();
|
Keyring keyring = new FakeKeyringModule().get();
|
||||||
byte[] data = content.get().getBytes(UTF_8);
|
byte[] data = content.get().getBytes(UTF_8);
|
||||||
DateTime mtime = DateTime.parse("1984-12-18T00:30:00Z");
|
DateTime mtime = DateTime.parse("1984-12-18T00:30:00Z");
|
||||||
PGPPublicKey publicKey = keyring.getRdeStagingEncryptionKey();
|
PGPPublicKey publicKey = keyring.getRdeStagingEncryptionKey();
|
||||||
|
@ -125,7 +126,7 @@ public class GhostrydeTest {
|
||||||
|
|
||||||
@Theory
|
@Theory
|
||||||
public void testEncryptOnly(Content content) throws Exception {
|
public void testEncryptOnly(Content content) throws Exception {
|
||||||
Keyring keyring = new RdeKeyringModule().get();
|
Keyring keyring = new FakeKeyringModule().get();
|
||||||
byte[] data = content.get().getBytes(UTF_8);
|
byte[] data = content.get().getBytes(UTF_8);
|
||||||
PGPPublicKey publicKey = keyring.getRdeStagingEncryptionKey();
|
PGPPublicKey publicKey = keyring.getRdeStagingEncryptionKey();
|
||||||
PGPPrivateKey privateKey = keyring.getRdeStagingDecryptionKey();
|
PGPPrivateKey privateKey = keyring.getRdeStagingDecryptionKey();
|
||||||
|
@ -147,7 +148,7 @@ public class GhostrydeTest {
|
||||||
|
|
||||||
@Theory
|
@Theory
|
||||||
public void testEncryptCompressOnly(Content content) throws Exception {
|
public void testEncryptCompressOnly(Content content) throws Exception {
|
||||||
Keyring keyring = new RdeKeyringModule().get();
|
Keyring keyring = new FakeKeyringModule().get();
|
||||||
PGPPublicKey publicKey = keyring.getRdeStagingEncryptionKey();
|
PGPPublicKey publicKey = keyring.getRdeStagingEncryptionKey();
|
||||||
PGPPrivateKey privateKey = keyring.getRdeStagingDecryptionKey();
|
PGPPrivateKey privateKey = keyring.getRdeStagingDecryptionKey();
|
||||||
byte[] data = content.get().getBytes(UTF_8);
|
byte[] data = content.get().getBytes(UTF_8);
|
||||||
|
@ -175,7 +176,7 @@ public class GhostrydeTest {
|
||||||
public void testFailure_tampering(Content content) throws Exception {
|
public void testFailure_tampering(Content content) throws Exception {
|
||||||
assumeThat(content.get().length(), is(greaterThan(100)));
|
assumeThat(content.get().length(), is(greaterThan(100)));
|
||||||
|
|
||||||
Keyring keyring = new RdeKeyringModule().get();
|
Keyring keyring = new FakeKeyringModule().get();
|
||||||
PGPPublicKey publicKey = keyring.getRdeStagingEncryptionKey();
|
PGPPublicKey publicKey = keyring.getRdeStagingEncryptionKey();
|
||||||
PGPPrivateKey privateKey = keyring.getRdeStagingDecryptionKey();
|
PGPPrivateKey privateKey = keyring.getRdeStagingDecryptionKey();
|
||||||
byte[] data = content.get().getBytes(UTF_8);
|
byte[] data = content.get().getBytes(UTF_8);
|
||||||
|
@ -203,7 +204,7 @@ public class GhostrydeTest {
|
||||||
public void testFailure_corruption(Content content) throws Exception {
|
public void testFailure_corruption(Content content) throws Exception {
|
||||||
assumeThat(content.get().length(), is(lessThan(100)));
|
assumeThat(content.get().length(), is(lessThan(100)));
|
||||||
|
|
||||||
Keyring keyring = new RdeKeyringModule().get();
|
Keyring keyring = new FakeKeyringModule().get();
|
||||||
PGPPublicKey publicKey = keyring.getRdeStagingEncryptionKey();
|
PGPPublicKey publicKey = keyring.getRdeStagingEncryptionKey();
|
||||||
PGPPrivateKey privateKey = keyring.getRdeStagingDecryptionKey();
|
PGPPrivateKey privateKey = keyring.getRdeStagingDecryptionKey();
|
||||||
byte[] data = content.get().getBytes(UTF_8);
|
byte[] data = content.get().getBytes(UTF_8);
|
||||||
|
@ -229,7 +230,7 @@ public class GhostrydeTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testFailure_keyMismatch() throws Exception {
|
public void testFailure_keyMismatch() throws Exception {
|
||||||
RdeKeyringModule keyringModule = new RdeKeyringModule();
|
FakeKeyringModule keyringModule = new FakeKeyringModule();
|
||||||
byte[] data = "Fanatics have their dreams, wherewith they weave.".getBytes(UTF_8);
|
byte[] data = "Fanatics have their dreams, wherewith they weave.".getBytes(UTF_8);
|
||||||
DateTime mtime = DateTime.parse("1984-12-18T00:30:00Z");
|
DateTime mtime = DateTime.parse("1984-12-18T00:30:00Z");
|
||||||
PGPKeyPair dsa1 = keyringModule.get("rde-unittest@registry.test", ENCRYPT);
|
PGPKeyPair dsa1 = keyringModule.get("rde-unittest@registry.test", ENCRYPT);
|
||||||
|
@ -257,7 +258,7 @@ public class GhostrydeTest {
|
||||||
@Test
|
@Test
|
||||||
@Ignore("Intentionally corrupting a PGP key is easier said than done >_>")
|
@Ignore("Intentionally corrupting a PGP key is easier said than done >_>")
|
||||||
public void testFailure_keyCorruption() throws Exception {
|
public void testFailure_keyCorruption() throws Exception {
|
||||||
RdeKeyringModule keyringModule = new RdeKeyringModule();
|
FakeKeyringModule keyringModule = new FakeKeyringModule();
|
||||||
byte[] data = "Fanatics have their dreams, wherewith they weave.".getBytes(UTF_8);
|
byte[] data = "Fanatics have their dreams, wherewith they weave.".getBytes(UTF_8);
|
||||||
DateTime mtime = DateTime.parse("1984-12-18T00:30:00Z");
|
DateTime mtime = DateTime.parse("1984-12-18T00:30:00Z");
|
||||||
PGPKeyPair rsa = keyringModule.get("rde-unittest@registry.test", ENCRYPT);
|
PGPKeyPair rsa = keyringModule.get("rde-unittest@registry.test", ENCRYPT);
|
||||||
|
|
|
@ -51,6 +51,7 @@ import google.registry.testing.AppEngineRule;
|
||||||
import google.registry.testing.BouncyCastleProviderRule;
|
import google.registry.testing.BouncyCastleProviderRule;
|
||||||
import google.registry.testing.ExceptionRule;
|
import google.registry.testing.ExceptionRule;
|
||||||
import google.registry.testing.FakeClock;
|
import google.registry.testing.FakeClock;
|
||||||
|
import google.registry.testing.FakeKeyringModule;
|
||||||
import google.registry.testing.FakeResponse;
|
import google.registry.testing.FakeResponse;
|
||||||
import google.registry.testing.FakeSleeper;
|
import google.registry.testing.FakeSleeper;
|
||||||
import google.registry.util.Retrier;
|
import google.registry.util.Retrier;
|
||||||
|
@ -113,14 +114,14 @@ public class RdeReportActionTest {
|
||||||
action.interval = standardDays(1);
|
action.interval = standardDays(1);
|
||||||
action.reporter = reporter;
|
action.reporter = reporter;
|
||||||
action.timeout = standardSeconds(30);
|
action.timeout = standardSeconds(30);
|
||||||
action.stagingDecryptionKey = new RdeKeyringModule().get().getRdeStagingDecryptionKey();
|
action.stagingDecryptionKey = new FakeKeyringModule().get().getRdeStagingDecryptionKey();
|
||||||
action.runner = runner;
|
action.runner = runner;
|
||||||
return action;
|
return action;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void before() throws Exception {
|
public void before() throws Exception {
|
||||||
PGPPublicKey encryptKey = new RdeKeyringModule().get().getRdeStagingEncryptionKey();
|
PGPPublicKey encryptKey = new FakeKeyringModule().get().getRdeStagingEncryptionKey();
|
||||||
createTld("test");
|
createTld("test");
|
||||||
persistResource(
|
persistResource(
|
||||||
Cursor.create(CursorType.RDE_REPORT, DateTime.parse("2006-06-06TZ"), Registry.get("test")));
|
Cursor.create(CursorType.RDE_REPORT, DateTime.parse("2006-06-06TZ"), Registry.get("test")));
|
||||||
|
|
|
@ -49,6 +49,7 @@ import google.registry.model.ofy.Ofy;
|
||||||
import google.registry.model.registry.Registry;
|
import google.registry.model.registry.Registry;
|
||||||
import google.registry.request.RequestParameters;
|
import google.registry.request.RequestParameters;
|
||||||
import google.registry.testing.FakeClock;
|
import google.registry.testing.FakeClock;
|
||||||
|
import google.registry.testing.FakeKeyringModule;
|
||||||
import google.registry.testing.FakeResponse;
|
import google.registry.testing.FakeResponse;
|
||||||
import google.registry.testing.InjectRule;
|
import google.registry.testing.InjectRule;
|
||||||
import google.registry.testing.TaskQueueHelper.TaskMatcher;
|
import google.registry.testing.TaskQueueHelper.TaskMatcher;
|
||||||
|
@ -110,7 +111,7 @@ public class RdeStagingActionTest extends MapreduceTestCase<RdeStagingAction> {
|
||||||
|
|
||||||
@BeforeClass
|
@BeforeClass
|
||||||
public static void beforeClass() {
|
public static void beforeClass() {
|
||||||
try (Keyring keyring = new RdeKeyringModule().get()) {
|
try (Keyring keyring = new FakeKeyringModule().get()) {
|
||||||
encryptKey = keyring.getRdeStagingEncryptionKey();
|
encryptKey = keyring.getRdeStagingEncryptionKey();
|
||||||
decryptKey = keyring.getRdeStagingDecryptionKey();
|
decryptKey = keyring.getRdeStagingDecryptionKey();
|
||||||
}
|
}
|
||||||
|
|
|
@ -63,6 +63,7 @@ import google.registry.testing.AppEngineRule;
|
||||||
import google.registry.testing.BouncyCastleProviderRule;
|
import google.registry.testing.BouncyCastleProviderRule;
|
||||||
import google.registry.testing.ExceptionRule;
|
import google.registry.testing.ExceptionRule;
|
||||||
import google.registry.testing.FakeClock;
|
import google.registry.testing.FakeClock;
|
||||||
|
import google.registry.testing.FakeKeyringModule;
|
||||||
import google.registry.testing.FakeResponse;
|
import google.registry.testing.FakeResponse;
|
||||||
import google.registry.testing.FakeSleeper;
|
import google.registry.testing.FakeSleeper;
|
||||||
import google.registry.testing.GpgSystemCommandRule;
|
import google.registry.testing.GpgSystemCommandRule;
|
||||||
|
@ -183,7 +184,7 @@ public class RdeUploadActionTest {
|
||||||
}};
|
}};
|
||||||
|
|
||||||
private RdeUploadAction createAction(URI uploadUrl) {
|
private RdeUploadAction createAction(URI uploadUrl) {
|
||||||
try (Keyring keyring = new RdeKeyringModule().get()) {
|
try (Keyring keyring = new FakeKeyringModule().get()) {
|
||||||
RdeUploadAction action = new RdeUploadAction();
|
RdeUploadAction action = new RdeUploadAction();
|
||||||
action.clock = clock;
|
action.clock = clock;
|
||||||
action.gcsUtils = new GcsUtils(gcsService, BUFFER_SIZE);
|
action.gcsUtils = new GcsUtils(gcsService, BUFFER_SIZE);
|
||||||
|
@ -230,7 +231,7 @@ public class RdeUploadActionTest {
|
||||||
@Before
|
@Before
|
||||||
public void before() throws Exception {
|
public void before() throws Exception {
|
||||||
createTld("tld");
|
createTld("tld");
|
||||||
PGPPublicKey encryptKey = new RdeKeyringModule().get().getRdeStagingEncryptionKey();
|
PGPPublicKey encryptKey = new FakeKeyringModule().get().getRdeStagingEncryptionKey();
|
||||||
writeGcsFile(gcsService, GHOSTRYDE_FILE,
|
writeGcsFile(gcsService, GHOSTRYDE_FILE,
|
||||||
Ghostryde.encode(DEPOSIT_XML.read(), encryptKey, "lobster.xml", clock.nowUtc()));
|
Ghostryde.encode(DEPOSIT_XML.read(), encryptKey, "lobster.xml", clock.nowUtc()));
|
||||||
writeGcsFile(gcsService, GHOSTRYDE_R1_FILE,
|
writeGcsFile(gcsService, GHOSTRYDE_R1_FILE,
|
||||||
|
|
|
@ -24,6 +24,7 @@ import static org.junit.Assume.assumeTrue;
|
||||||
import com.google.common.io.CharStreams;
|
import com.google.common.io.CharStreams;
|
||||||
import google.registry.keyring.api.Keyring;
|
import google.registry.keyring.api.Keyring;
|
||||||
import google.registry.testing.BouncyCastleProviderRule;
|
import google.registry.testing.BouncyCastleProviderRule;
|
||||||
|
import google.registry.testing.FakeKeyringModule;
|
||||||
import google.registry.testing.GpgSystemCommandRule;
|
import google.registry.testing.GpgSystemCommandRule;
|
||||||
import google.registry.testing.Providers;
|
import google.registry.testing.Providers;
|
||||||
import google.registry.testing.ShardableTestCase;
|
import google.registry.testing.ShardableTestCase;
|
||||||
|
@ -60,7 +61,7 @@ public class RydeGpgIntegrationTest extends ShardableTestCase {
|
||||||
RdeTestData.get("pgp-public-keyring.asc"),
|
RdeTestData.get("pgp-public-keyring.asc"),
|
||||||
RdeTestData.get("pgp-private-keyring-escrow.asc"));
|
RdeTestData.get("pgp-private-keyring-escrow.asc"));
|
||||||
|
|
||||||
private final RdeKeyringModule keyringFactory = new RdeKeyringModule();
|
private final FakeKeyringModule keyringFactory = new FakeKeyringModule();
|
||||||
|
|
||||||
@DataPoints
|
@DataPoints
|
||||||
public static GpgCommand[] commands = new GpgCommand[] {
|
public static GpgCommand[] commands = new GpgCommand[] {
|
||||||
|
|
|
@ -18,12 +18,13 @@ java_library(
|
||||||
"logging.properties",
|
"logging.properties",
|
||||||
"//java/google/registry:env/common/default/WEB-INF/datastore-indexes.xml",
|
"//java/google/registry:env/common/default/WEB-INF/datastore-indexes.xml",
|
||||||
"//java/google/registry:env/common/default/WEB-INF/queue.xml",
|
"//java/google/registry:env/common/default/WEB-INF/queue.xml",
|
||||||
] + glob(["*.csv"]),
|
] + glob(["*.csv"]) + glob(["testdata/*"]),
|
||||||
deps = [
|
deps = [
|
||||||
"//java/google/registry/config",
|
"//java/google/registry/config",
|
||||||
"//java/google/registry/dns:constants",
|
"//java/google/registry/dns:constants",
|
||||||
"//java/google/registry/dns/writer",
|
"//java/google/registry/dns/writer",
|
||||||
"//java/google/registry/flows",
|
"//java/google/registry/flows",
|
||||||
|
"//java/google/registry/keyring/api",
|
||||||
"//java/google/registry/model",
|
"//java/google/registry/model",
|
||||||
"//java/google/registry/pricing",
|
"//java/google/registry/pricing",
|
||||||
"//java/google/registry/request",
|
"//java/google/registry/request",
|
||||||
|
@ -38,6 +39,7 @@ java_library(
|
||||||
"@com_google_appengine_tools_sdk",
|
"@com_google_appengine_tools_sdk",
|
||||||
"@com_google_auto_value",
|
"@com_google_auto_value",
|
||||||
"@com_google_code_findbugs_jsr305",
|
"@com_google_code_findbugs_jsr305",
|
||||||
|
"@com_google_dagger",
|
||||||
"@com_google_guava",
|
"@com_google_guava",
|
||||||
"@com_google_guava_testlib",
|
"@com_google_guava_testlib",
|
||||||
"@com_google_truth",
|
"@com_google_truth",
|
||||||
|
|
|
@ -12,10 +12,12 @@
|
||||||
// See the License for the specific language governing permissions and
|
// See the License for the specific language governing permissions and
|
||||||
// limitations under the License.
|
// limitations under the License.
|
||||||
|
|
||||||
package google.registry.rde;
|
package google.registry.testing;
|
||||||
|
|
||||||
import static google.registry.keyring.api.PgpHelper.KeyRequirement.ENCRYPT;
|
import static google.registry.keyring.api.PgpHelper.KeyRequirement.ENCRYPT;
|
||||||
import static google.registry.keyring.api.PgpHelper.KeyRequirement.SIGN;
|
import static google.registry.keyring.api.PgpHelper.KeyRequirement.SIGN;
|
||||||
|
import static google.registry.util.ResourceUtils.readResourceBytes;
|
||||||
|
import static google.registry.util.ResourceUtils.readResourceUtf8;
|
||||||
|
|
||||||
import com.google.common.io.ByteSource;
|
import com.google.common.io.ByteSource;
|
||||||
import dagger.Module;
|
import dagger.Module;
|
||||||
|
@ -36,20 +38,24 @@ import org.bouncycastle.openpgp.PGPUtil;
|
||||||
import org.bouncycastle.openpgp.bc.BcPGPPublicKeyRingCollection;
|
import org.bouncycastle.openpgp.bc.BcPGPPublicKeyRingCollection;
|
||||||
import org.bouncycastle.openpgp.bc.BcPGPSecretKeyRingCollection;
|
import org.bouncycastle.openpgp.bc.BcPGPSecretKeyRingCollection;
|
||||||
|
|
||||||
/** Keyring factory that loads keys {@code javatests/.../rde/testdata} */
|
/** Keyring factory that loads keys from {@code javatests/.../testing/testdata} */
|
||||||
@Module
|
@Module
|
||||||
@Immutable
|
@Immutable
|
||||||
public final class RdeKeyringModule {
|
public final class FakeKeyringModule {
|
||||||
|
|
||||||
static final String STAGING_KEY_EMAIL = "rde-unittest@registry.test";
|
private static final String STAGING_KEY_EMAIL = "rde-unittest@registry.test";
|
||||||
static final String SIGNING_KEY_EMAIL = "rde-unittest@registry.test";
|
private static final String SIGNING_KEY_EMAIL = "rde-unittest@registry.test";
|
||||||
static final String RECEIVER_KEY_EMAIL = "rde-unittest@escrow.test";
|
private static final String RECEIVER_KEY_EMAIL = "rde-unittest@escrow.test";
|
||||||
static final ByteSource PGP_PUBLIC_KEYRING = RdeTestData.get("pgp-public-keyring.asc");
|
private static final ByteSource PGP_PUBLIC_KEYRING =
|
||||||
static final ByteSource PGP_PRIVATE_KEYRING = RdeTestData.get("pgp-private-keyring-registry.asc");
|
readResourceBytes(FakeKeyringModule.class, "testdata/pgp-public-keyring.asc");
|
||||||
static final String ICANN_REPORTING_PASSWORD = "yolo";
|
private static final ByteSource PGP_PRIVATE_KEYRING =
|
||||||
static final String MARKSDB_DNL_LOGIN = "dnl:yolo";
|
readResourceBytes(FakeKeyringModule.class, "testdata/pgp-private-keyring-registry.asc");
|
||||||
static final String MARKSDB_LORDN_PASSWORD = "yolo";
|
private static final String ICANN_REPORTING_PASSWORD = "yolo";
|
||||||
static final String MARKSDB_SMDRL_LOGIN = "smdrl:yolo";
|
private static final String MARKSDB_DNL_LOGIN = "dnl:yolo";
|
||||||
|
private static final String MARKSDB_LORDN_PASSWORD = "yolo";
|
||||||
|
private static final String MARKSDB_SMDRL_LOGIN = "smdrl:yolo";
|
||||||
|
private static final String BRAINTREE_PRIVATE_KEY = "braintree123";
|
||||||
|
private static final String JSON_CREDENTIAL = "json123";
|
||||||
|
|
||||||
@Provides
|
@Provides
|
||||||
public Keyring get() {
|
public Keyring get() {
|
||||||
|
@ -72,14 +78,11 @@ public final class RdeKeyringModule {
|
||||||
PgpHelper.lookupPublicKey(publics, RECEIVER_KEY_EMAIL, ENCRYPT);
|
PgpHelper.lookupPublicKey(publics, RECEIVER_KEY_EMAIL, ENCRYPT);
|
||||||
final PGPKeyPair brdaSigningKey = rdeSigningKey;
|
final PGPKeyPair brdaSigningKey = rdeSigningKey;
|
||||||
final PGPPublicKey brdaReceiverKey = rdeReceiverKey;
|
final PGPPublicKey brdaReceiverKey = rdeReceiverKey;
|
||||||
final String sshPublic;
|
final String sshPublic =
|
||||||
final String sshPrivate;
|
readResourceUtf8(FakeKeyringModule.class, "testdata/registry-unittest.id_rsa.pub");
|
||||||
try {
|
final String sshPrivate =
|
||||||
sshPublic = RdeTestData.loadUtf8("registry-unittest.id_rsa.pub");
|
readResourceUtf8(FakeKeyringModule.class, "testdata/registry-unittest.id_rsa");
|
||||||
sshPrivate = RdeTestData.loadUtf8("registry-unittest.id_rsa");
|
|
||||||
} catch (IOException e) {
|
|
||||||
throw new RuntimeException("Failed to load SSH keys from jar", e);
|
|
||||||
}
|
|
||||||
return new Keyring() {
|
return new Keyring() {
|
||||||
@Override
|
@Override
|
||||||
public PGPPublicKey getRdeStagingEncryptionKey() {
|
public PGPPublicKey getRdeStagingEncryptionKey() {
|
||||||
|
@ -128,7 +131,7 @@ public final class RdeKeyringModule {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getJsonCredential() {
|
public String getJsonCredential() {
|
||||||
throw new UnsupportedOperationException();
|
return JSON_CREDENTIAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -148,7 +151,7 @@ public final class RdeKeyringModule {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getBraintreePrivateKey() {
|
public String getBraintreePrivateKey() {
|
||||||
throw new UnsupportedOperationException();
|
return BRAINTREE_PRIVATE_KEY;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
98
javatests/google/registry/testing/testdata/pgp-private-keyring-registry.asc
vendored
Normal file
98
javatests/google/registry/testing/testdata/pgp-private-keyring-registry.asc
vendored
Normal file
|
@ -0,0 +1,98 @@
|
||||||
|
gpg -a --export-secret-keys --export-options export-minimal \
|
||||||
|
rde-unittest@registry.test \
|
||||||
|
rde-unittest-dsa@registry.test \
|
||||||
|
>javatests/google/registry/rde/testdata/pgp-private-keyring-registry.asc
|
||||||
|
|
||||||
|
-----BEGIN PGP PRIVATE KEY BLOCK-----
|
||||||
|
Version: GnuPG v1
|
||||||
|
|
||||||
|
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
|
||||||
|
7h8MmwWj2G8T/gt3lu0SEvm0/kpChJxF6hmyQLq/6tZITEVjqUCmFuta1plbANDt
|
||||||
|
Cu+8Jmw3NVRk9iTbrYZc9fytfjROi98si5eimvMEiwKv53MreIqyX7THHw1FXlFa
|
||||||
|
RDzez3zspmuOO+534APA3mVyuDtT4/3K35mBDwVqcykbQRBM8/nZhS6vrXNwkPp4
|
||||||
|
PhkN/Q9Ethfe6y1w9uHa9UshT0/tAguzas8d8ve+UmpmXqd1G60/mbWDMiLnJfFJ
|
||||||
|
H7fCz7EAZ37r99Ss1Z+l/wF3XUaIJ4UiV/3i1T3COCZaF5rjqdv1oEy+555/r5Mv
|
||||||
|
0gABAJJg1dR1x4xjstvehkDP6Gm0G27gGXdcwEj2VCvlGgO8EVy0L0pvbmF0aGFu
|
||||||
|
IFN3aWZ0IDxyZGUtdW5pdHRlc3QtZHNhQHJlZ2lzdHJ5LnRlc3Q+iHoEExEIACIF
|
||||||
|
AlUj/0gCGwMGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEJ6mQpZ89XyKn+gB
|
||||||
|
AK91twI+kyFHwBcg+8E5fsai63ZfJsusASeNvtWhMhavAQC+kNNqO1KrDdczgcLu
|
||||||
|
X3bQCJG3gOzo6iq/3zC723HPHp0CPQRVI/9IEAgA5QrYsEpUuMBdfyod0D1VPetE
|
||||||
|
FBZ+T3sT3FXW/cpijeSl2OKYJIColhnLo3Etld8zNmJ6td27onEhjOFvT2rsBMs5
|
||||||
|
DLX4b7avXiRqTFUXi+qPLyI8iGyPaWjlmGNhED07egCVesM2t4gN+46IE0PztIDR
|
||||||
|
Uy1SdHp8bwnAEdlud5T4VZgGmFXI9s+4nrjdnm532XBLa8w03xSzDYq5B4T/5F/J
|
||||||
|
qDSz//p6aqrUonMYHr2PCp0xaHM+Q34m+jR1cqvQQJxBvcEBiNNZJuh23w1wNB/v
|
||||||
|
M2cI/LJTrCKIHVLRfy7NJVQPhqkgnJeVT4Bnzsy7LLKCzKuG7He2Ecf9L5TspwAE
|
||||||
|
DQf8DMnCuEbWss+H9KK0h/Xwi3Ftbp/tnOaynUyp7dOULGnlZ+5nioTiwvW0jRfN
|
||||||
|
AP86OIDP8zztahFXH9PuOCtQ2rR7VbUUaohafsvX3Cn6+5ITjA7kzINa+Uc1eKsi
|
||||||
|
Bn1ze6rT5E7svLUxT+9N/0d0OCcjCf3aLfJggOHYws8PwDdhbYKPeX082t64BAsM
|
||||||
|
6UViv0ZiNUL4zj0Q5PUO1tWDvVZ3x9k/gHbi1vS/2+U6sMYhP/gh7/L//du0ty/v
|
||||||
|
5mOLkBKIyKWltfLRDcvfu12pKMcZBhj3iIPoTduC22PNjIV+YXdW6lOx32pz9Yvj
|
||||||
|
tYNmeeWb/n2w6D8iZUsw1s94uwABUgKn70aB8/FKhyqC+RkhdycbGYdnl+JJX/Aj
|
||||||
|
F4QI+pjW0h5Yf1hM66q699YVzIhhBBgRCAAJBQJVI/9IAhsMAAoJEJ6mQpZ89XyK
|
||||||
|
itEA/1F7PMm1HyJxb6DXxRaBbsIL3sVm3OjK5XGuoyjSltsmAQCdIMfGn9ArSsEo
|
||||||
|
Euhilp9DguZPtN4dIl56gnM8abR0rQ==
|
||||||
|
=+pjN
|
||||||
|
-----END PGP PRIVATE KEY BLOCK-----
|
95
javatests/google/registry/testing/testdata/pgp-public-keyring.asc
vendored
Normal file
95
javatests/google/registry/testing/testdata/pgp-public-keyring.asc
vendored
Normal file
|
@ -0,0 +1,95 @@
|
||||||
|
gpg -a --export --export-options export-minimal \
|
||||||
|
rde-unittest@registry.test \
|
||||||
|
rde-unittest-dsa@registry.test \
|
||||||
|
rde-unittest@escrow.test \
|
||||||
|
>javatests/google/registry/rde/testdata/pgp-public-keyring.asc
|
||||||
|
|
||||||
|
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||||
|
Version: GnuPG v1
|
||||||
|
|
||||||
|
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
|
||||||
|
zInfxrmYRlOExWEu5eg9EAI=
|
||||||
|
=60ZZ
|
||||||
|
-----END PGP PUBLIC KEY BLOCK-----
|
27
javatests/google/registry/testing/testdata/registry-unittest.id_rsa
vendored
Normal file
27
javatests/google/registry/testing/testdata/registry-unittest.id_rsa
vendored
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
-----BEGIN RSA PRIVATE KEY-----
|
||||||
|
MIIEpAIBAAKCAQEA2nxjZ7/6KtbjOHw0xdhegnejeO86s48MlLBWOHTOZS3q7S5k
|
||||||
|
ttKeF7MZvjzwtqrs1bPP44HQV5LfeLz/aq5YLpsh19rY/ybVhghE93JbNnA3OWGk
|
||||||
|
FvuoVDR8j0KvidEVXeXwWnbXTAUtB9sXE2fuFT6WrWsz8oOJslNo8MUpjSK7Cks8
|
||||||
|
d6YbAK4+vDeHk7pR8o2E05+gg2Mln6tIXgoaKNSh85xOuZ6LB9gGSNp/D83a1i/2
|
||||||
|
Z6uP9xm68mNll4n678a1A6Rp0qDd5i08Mupsc1yQ59IlopAfdartJbp7rjWHxbBc
|
||||||
|
IrQREBOb9maoWiXJG00viSgvSq6EcnAL2rYVRwIDAQABAoIBAQCsmmP1jKZXvZeY
|
||||||
|
Ahe2zO4s59MPMP8Q50urE3up8i0zpYjYgzQxckZOtsD5ly8bQAEF+p2bP+yVooRE
|
||||||
|
4Bpv7vffKdMcsdmICOfakSHa0k7YvOIDxO1a8sjSbPySOL5wg+r7WTH+ZbBEcDpY
|
||||||
|
4G5keFCQG/fxXKWXSu83H8nhnADtazJ6wN6EANiTz+7Xc3Innl3ZCd2v6B7Ew/yi
|
||||||
|
E5x/9HFR7HSZNz/bdjbSOjL9ylE9bwQqSQ5FcWbTjtMLS2IrcHEqKbzVY3dLlHpG
|
||||||
|
MnPJnk4ShXaLOqx+w7b24QF+xkPjCU3XKd46rRYEEa/bev1MFiovaWoKCo0Q3wio
|
||||||
|
69X1vTYBAoGBAPgNTq899fn6DeOlhV3VOazr/Gt3+OZbmaboW4VihkHNIV4DEvN2
|
||||||
|
4njRBcr5w/MXMtVfS53FmIRtWhpUIWJVJmXBPM0UCjph4WVNFOIkYz9zFjL+yCn4
|
||||||
|
/tBU4iFzbXun7GCtSWbSaLLWFHCSSz08ygw5c6OUeDHYxjo0+GQln5THAoGBAOF8
|
||||||
|
j0AsvwyAr3ka790CVFqVTE6A2usubclACZr0EuAR5hVDtv1R/kSCEo3xTY4PF5jE
|
||||||
|
OpYrs/1IeNuYraOJ0K/CwzBWr2TlWhGR18GL0qk78r0y1eiCiL8XA5g5gZZVPBW3
|
||||||
|
wdKXGBbpCTADbT9FVTgzqiGKoitfeTo61Z4HK/uBAoGAbPqjvDgzrmze10osSupY
|
||||||
|
GZHgZ3LhJovN+NeTBgogRB6Ub1JYbCCqJTxoGCIdpdpmWfoxJZLfjCbi9DhMJoCU
|
||||||
|
ixYX2V3ZlIbWWQRBjY1BEWpFsYfgdxhPE0aHxvyIeFBxeJQJcKQ2nYOSnVaYucHQ
|
||||||
|
XwiKtq6PFA9SH9aP3qfs8ZcCgYAYHz4n7GGH0eBzwTj12MDza9Nc9pX04OOnyuz8
|
||||||
|
Ia4/QErv7W2PDg14gL3BZ5YXY2/vzNZDqGs55l3fiCbTPvQPSXOeITfkQFDxXjvJ
|
||||||
|
nc6sghhGu0B8/jHo12pwB37geT/TRvQ6NiXCla2A8Gzoft9OAuDpc65Dm5QZcZ/W
|
||||||
|
pwfCgQKBgQDanzLp3c2XwTmkgK+k0hHWboshbr/o6RfJvWJKt9Y1+//2CuMf7vdT
|
||||||
|
Z8PQN64ZCPBoqhJ+q1jRFmDsmmG0iqvwDPt5qFaBR5tyXP3I0j9Ncmmr+ktJWhRb
|
||||||
|
fAopn6a138GL3j7yRVDP0NS7B7AsjWTWtjVeUd7cepwPYSqx9jDnTw==
|
||||||
|
-----END RSA PRIVATE KEY-----
|
1
javatests/google/registry/testing/testdata/registry-unittest.id_rsa.pub
vendored
Normal file
1
javatests/google/registry/testing/testdata/registry-unittest.id_rsa.pub
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDafGNnv/oq1uM4fDTF2F6Cd6N47zqzjwyUsFY4dM5lLertLmS20p4Xsxm+PPC2quzVs8/jgdBXkt94vP9qrlgumyHX2tj/JtWGCET3cls2cDc5YaQW+6hUNHyPQq+J0RVd5fBadtdMBS0H2xcTZ+4VPpatazPyg4myU2jwxSmNIrsKSzx3phsArj68N4eTulHyjYTTn6CDYyWfq0heChoo1KHznE65nosH2AZI2n8PzdrWL/Znq4/3GbryY2WXifrvxrUDpGnSoN3mLTwy6mxzXJDn0iWikB91qu0lunuuNYfFsFwitBEQE5v2ZqhaJckbTS+JKC9KroRycAvathVH rde-unittest@registry.test
|
|
@ -19,7 +19,6 @@ import static google.registry.util.ResourceUtils.readResourceBytes;
|
||||||
|
|
||||||
import com.google.common.io.ByteSource;
|
import com.google.common.io.ByteSource;
|
||||||
import com.google.common.io.Files;
|
import com.google.common.io.Files;
|
||||||
import google.registry.rde.RdeKeyringModule;
|
|
||||||
import google.registry.rde.RdeTestData;
|
import google.registry.rde.RdeTestData;
|
||||||
import google.registry.rde.RydePgpCompressionOutputStreamFactory;
|
import google.registry.rde.RydePgpCompressionOutputStreamFactory;
|
||||||
import google.registry.rde.RydePgpEncryptionOutputStreamFactory;
|
import google.registry.rde.RydePgpEncryptionOutputStreamFactory;
|
||||||
|
@ -27,6 +26,7 @@ import google.registry.rde.RydePgpFileOutputStreamFactory;
|
||||||
import google.registry.rde.RydePgpSigningOutputStreamFactory;
|
import google.registry.rde.RydePgpSigningOutputStreamFactory;
|
||||||
import google.registry.rde.RydeTarOutputStreamFactory;
|
import google.registry.rde.RydeTarOutputStreamFactory;
|
||||||
import google.registry.testing.BouncyCastleProviderRule;
|
import google.registry.testing.BouncyCastleProviderRule;
|
||||||
|
import google.registry.testing.FakeKeyringModule;
|
||||||
import google.registry.testing.Providers;
|
import google.registry.testing.Providers;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
|
@ -50,8 +50,8 @@ public class EncryptEscrowDepositCommandTest
|
||||||
res.pgpFileFactory = new RydePgpFileOutputStreamFactory(Providers.of(1024));
|
res.pgpFileFactory = new RydePgpFileOutputStreamFactory(Providers.of(1024));
|
||||||
res.pgpSigningFactory = new RydePgpSigningOutputStreamFactory();
|
res.pgpSigningFactory = new RydePgpSigningOutputStreamFactory();
|
||||||
res.tarFactory = new RydeTarOutputStreamFactory();
|
res.tarFactory = new RydeTarOutputStreamFactory();
|
||||||
res.rdeReceiverKey = new RdeKeyringModule().get().getRdeReceiverKey();
|
res.rdeReceiverKey = new FakeKeyringModule().get().getRdeReceiverKey();
|
||||||
res.rdeSigningKey = new RdeKeyringModule().get().getRdeSigningKey();
|
res.rdeSigningKey = new FakeKeyringModule().get().getRdeSigningKey();
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -20,8 +20,8 @@ import static java.nio.charset.StandardCharsets.UTF_8;
|
||||||
import google.registry.keyring.api.Keyring;
|
import google.registry.keyring.api.Keyring;
|
||||||
import google.registry.rde.Ghostryde;
|
import google.registry.rde.Ghostryde;
|
||||||
import google.registry.rde.Ghostryde.DecodeResult;
|
import google.registry.rde.Ghostryde.DecodeResult;
|
||||||
import google.registry.rde.RdeKeyringModule;
|
|
||||||
import google.registry.testing.BouncyCastleProviderRule;
|
import google.registry.testing.BouncyCastleProviderRule;
|
||||||
|
import google.registry.testing.FakeKeyringModule;
|
||||||
import google.registry.testing.InjectRule;
|
import google.registry.testing.InjectRule;
|
||||||
import java.nio.file.Files;
|
import java.nio.file.Files;
|
||||||
import java.nio.file.Path;
|
import java.nio.file.Path;
|
||||||
|
@ -65,7 +65,7 @@ public class GhostrydeCommandTest extends CommandTestCase<GhostrydeCommand> {
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void before() throws Exception {
|
public void before() throws Exception {
|
||||||
keyring = new RdeKeyringModule().get();
|
keyring = new FakeKeyringModule().get();
|
||||||
command.ghostryde = new Ghostryde(1024);
|
command.ghostryde = new Ghostryde(1024);
|
||||||
command.rdeStagingDecryptionKey = keyring.getRdeStagingDecryptionKey();
|
command.rdeStagingDecryptionKey = keyring.getRdeStagingDecryptionKey();
|
||||||
command.rdeStagingEncryptionKey = keyring.getRdeStagingEncryptionKey();
|
command.rdeStagingEncryptionKey = keyring.getRdeStagingEncryptionKey();
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue