From f4026cc10080373f2c43cec3196ab63db2e5841f Mon Sep 17 00:00:00 2001 From: Nate McMaster Date: Fri, 12 Oct 2018 13:14:22 -0700 Subject: [PATCH] Reorganize source code from aspnet/DataProtection into a subfolder Prior to reorg, this source existed at https://github.com/aspnet/DataProtection/tree/3f5f419df8094be0203298a8001f721517d18a2c --- .appveyor.yml | 17 -- .github/ISSUE_TEMPLATE.md | 3 - .travis.yml | 27 -- .vscode/launch.json | 10 - .vsts-pipelines/builds/ci-public.yml | 31 --- CONTRIBUTING.md | 4 - DataProtection.sln.DotSettings | 2 - Directory.Build.props | 20 -- Directory.Build.targets | 10 - LICENSE.txt | 14 - NuGet.config | 7 - NuGetPackageVerifier.json | 7 - README.md | 13 - build.cmd | 2 - build.sh | 8 - build/Key.snk | Bin 596 -> 0 bytes build/dependencies.props | 41 --- build/repo.props | 16 -- build/sources.props | 17 -- korebuild-lock.txt | 2 - korebuild.json | 4 - run.cmd | 2 - run.ps1 | 209 -------------- run.sh | 256 ------------------ .../DataProtection/DataProtection.sln | 0 src/DataProtection/Directory.Build.props | 8 + .../DataProtection/Provision-AutoGenKeys.ps1 | 0 src/DataProtection/README.md | 8 + src/DataProtection/dependencies.props | 17 ++ .../samples}/AzureBlob/AzureBlob.csproj | 0 .../samples}/AzureBlob/Program.cs | 0 .../AzureKeyVault/AzureKeyVault.csproj | 0 .../samples}/AzureKeyVault/Program.cs | 0 .../samples}/AzureKeyVault/settings.json | 0 .../CustomBuilderExtensions.cs | 0 .../CustomEncryptorSample.csproj | 0 .../CustomXmlDecryptor.cs | 0 .../CustomXmlEncryptor.cs | 0 .../samples}/CustomEncryptorSample/Program.cs | 0 .../EntityFrameworkCoreSample.csproj | 0 .../EntityFrameworkCoreSample/Program.cs | 0 .../KeyManagementSample.csproj | 0 .../samples}/KeyManagementSample/Program.cs | 0 .../samples}/NonDISample/NonDISample.csproj | 0 .../samples}/NonDISample/Program.cs | 0 .../DataProtection/samples}/Redis/Program.cs | 0 .../samples}/Redis/Redis.csproj | 0 .../DataProtection/shared}/EncodingUtil.cs | 0 .../shared}/ExceptionExtensions.cs | 0 .../src}/Directory.Build.props | 0 .../BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO.cs | 0 .../Cng/BCRYPT_KEY_LENGTHS_STRUCT.cs | 0 .../Cng/BCryptBuffer.cs | 0 .../Cng/BCryptBufferDesc.cs | 0 .../Cng/BCryptEncryptFlags.cs | 0 .../Cng/BCryptGenRandomFlags.cs | 0 .../Cng/BCryptKeyDerivationBufferType.cs | 0 .../Cng/BCryptUtil.cs | 0 .../Cng/CachedAlgorithmHandles.cs | 0 .../Cng/NCryptEncryptFlags.cs | 0 .../Cng/OSVersionUtil.cs | 0 .../Constants.cs | 0 .../CryptoUtil.cs | 0 .../DATA_BLOB.cs | 0 ...ft.AspNetCore.Cryptography.Internal.csproj | 0 .../Properties/AssemblyInfo.cs | 0 .../Properties/Resources.Designer.cs | 0 .../Resources.resx | 0 .../SafeHandles/BCryptAlgorithmHandle.cs | 0 .../SafeHandles/BCryptHandle.cs | 0 .../SafeHandles/BCryptHashHandle.cs | 0 .../SafeHandles/BCryptKeyHandle.cs | 0 .../SafeHandles/LocalAllocHandle.cs | 0 .../SafeHandles/NCryptDescriptorHandle.cs | 0 .../SafeHandles/SafeLibraryHandle.cs | 0 .../SafeHandles/SecureLocalAllocHandle.cs | 0 .../UnsafeBufferUtil.cs | 0 .../UnsafeNativeMethods.cs | 0 .../WeakReferenceHelpers.cs | 0 .../baseline.netcore.json | 0 .../KeyDerivation.cs | 0 .../KeyDerivationPrf.cs | 0 ...pNetCore.Cryptography.KeyDerivation.csproj | 0 .../PBKDF2/IPbkdf2Provider.cs | 0 .../PBKDF2/ManagedPbkdf2Provider.cs | 0 .../PBKDF2/NetCorePbkdf2Provider.cs | 0 .../PBKDF2/Pbkdf2Util.cs | 0 .../PBKDF2/Win7Pbkdf2Provider.cs | 0 .../PBKDF2/Win8Pbkdf2Provider.cs | 0 .../Properties/AssemblyInfo.cs | 0 .../baseline.netcore.json | 0 .../CryptoUtil.cs | 0 .../DataProtectionCommonExtensions.cs | 0 .../Error.cs | 0 .../IDataProtectionProvider.cs | 0 .../IDataProtector.cs | 0 .../IApplicationDiscriminator.cs | 0 ...NetCore.DataProtection.Abstractions.csproj | 0 .../Properties/AssemblyInfo.cs | 0 .../Properties/Resources.Designer.cs | 0 .../Resources.resx | 0 .../baseline.netcore.json | 0 .../AzureDataProtectionBuilderExtensions.cs | 0 .../AzureKeyVaultXmlDecryptor.cs | 0 .../AzureKeyVaultXmlEncryptor.cs | 0 .../IKeyVaultWrappingClient.cs | 0 .../KeyVaultClientWrapper.cs | 0 ...etCore.DataProtection.AzureKeyVault.csproj | 0 .../Properties/AssemblyInfo.cs | 0 .../AzureBlobXmlRepository.cs | 0 .../AzureDataProtectionBuilderExtensions.cs | 0 ...NetCore.DataProtection.AzureStorage.csproj | 0 .../baseline.netcore.json | 0 .../DataProtectionKey.cs | 0 ...tyFrameworkCoreDataProtectionExtensions.cs | 0 .../EntityFrameworkCoreXmlRepository.cs | 0 .../IDataProtectionKeyContext.cs | 0 .../LoggingExtensions.cs | 0 ....DataProtection.EntityFrameworkCore.csproj | 0 .../baseline.netcore.json | 0 .../BitHelpers.cs | 0 .../DataProtectionAdvancedExtensions.cs | 0 .../DataProtectionProvider.cs | 0 .../ITimeLimitedDataProtector.cs | 0 ...spNetCore.DataProtection.Extensions.csproj | 0 .../Properties/AssemblyInfo.cs | 0 .../Properties/Resources.Designer.cs | 0 .../Resources.resx | 0 .../TimeLimitedDataProtector.cs | 0 .../baseline.netcore.json | 0 ...e.DataProtection.StackExchangeRedis.csproj | 0 .../RedisDataProtectionBuilderExtensions.cs | 0 .../RedisXmlRepository.cs | 0 .../CompatibilityDataProtector.cs | 0 .../DataProtectionStartup.cs | 0 ...AspNetCore.DataProtection.SystemWeb.csproj | 0 .../Properties/Resources.Designer.cs | 0 .../Resources.resx | 0 .../baseline.netframework.json | 0 .../web.config.transform | 0 .../ActivatorExtensions.cs | 0 .../ApplyPolicyAttribute.cs | 0 .../ArraySegmentExtensions.cs | 0 .../AlgorithmAssert.cs | 0 .../AuthenticatedEncryptorExtensions.cs | 0 .../AuthenticatedEncryptorFactory.cs | 0 .../CngCbcAuthenticatedEncryptorFactory.cs | 0 .../CngGcmAuthenticatedEncryptorFactory.cs | 0 .../AlgorithmConfiguration.cs | 0 .../AuthenticatedEncryptorConfiguration.cs | 0 .../AuthenticatedEncryptorDescriptor.cs | 0 ...nticatedEncryptorDescriptorDeserializer.cs | 0 ...gCbcAuthenticatedEncryptorConfiguration.cs | 0 .../CngCbcAuthenticatedEncryptorDescriptor.cs | 0 ...nticatedEncryptorDescriptorDeserializer.cs | 0 ...gGcmAuthenticatedEncryptorConfiguration.cs | 0 .../CngGcmAuthenticatedEncryptorDescriptor.cs | 0 ...nticatedEncryptorDescriptorDeserializer.cs | 0 .../IAuthenticatedEncryptorDescriptor.cs | 0 ...nticatedEncryptorDescriptorDeserializer.cs | 0 .../IInternalAlgorithmConfiguration.cs | 0 ...agedAuthenticatedEncryptorConfiguration.cs | 0 ...ManagedAuthenticatedEncryptorDescriptor.cs | 0 ...nticatedEncryptorDescriptorDeserializer.cs | 0 .../ConfigurationModel/SecretExtensions.cs | 0 .../ConfigurationModel/XmlExtensions.cs | 0 .../XmlSerializedDescriptorInfo.cs | 0 .../EncryptionAlgorithm.cs | 0 .../IAuthenticatedEncryptor.cs | 0 .../IAuthenticatedEncryptorFactory.cs | 0 .../IOptimizedAuthenticatedEncryptor.cs | 0 .../ManagedAuthenticatedEncryptorFactory.cs | 0 .../ValidationAlgorithm.cs | 0 .../BitHelpers.cs | 0 .../Cng/BCryptGenRandomImpl.cs | 0 .../Cng/CbcAuthenticatedEncryptor.cs | 0 .../Cng/DpapiSecretSerializerHelper.cs | 0 .../Cng/GcmAuthenticatedEncryptor.cs | 0 .../Cng/IBCryptGenRandom.cs | 0 .../Internal/CngAuthenticatedEncryptorBase.cs | 0 .../DataProtectionBuilderExtensions.cs | 0 .../DataProtectionOptions.cs | 0 ...taProtectionServiceCollectionExtensions.cs | 0 .../DataProtectionUtilityExtensions.cs | 0 .../EphemeralDataProtectionProvider.cs | 0 .../Error.cs | 0 .../IDataProtectionBuilder.cs | 0 .../IPersistedDataProtector.cs | 0 .../IRegistryPolicyResolver.cs | 0 .../ISecret.cs | 0 .../Internal/DataProtectionBuilder.cs | 0 .../Internal/DataProtectionOptionsSetup.cs | 0 .../Internal/DataProtectionStartupFilter.cs | 0 .../Internal/DockerUtils.cs | 0 .../HostingApplicationDiscriminator.cs | 0 .../Internal/IActivator.cs | 0 .../Internal/KeyManagementOptionsSetup.cs | 0 .../KeyManagement/DefaultKeyResolver.cs | 0 .../KeyManagement/DeferredKey.cs | 0 .../KeyManagement/IKey.cs | 0 .../KeyManagement/IKeyEscrowSink.cs | 0 .../KeyManagement/IKeyManager.cs | 0 .../Internal/CacheableKeyRing.cs | 0 .../Internal/DefaultKeyResolution.cs | 0 .../Internal/ICacheableKeyRingProvider.cs | 0 .../Internal/IDefaultKeyResolver.cs | 0 .../Internal/IInternalXmlKeyManager.cs | 0 .../KeyManagement/Internal/IKeyRing.cs | 0 .../Internal/IKeyRingProvider.cs | 0 .../KeyManagement/Key.cs | 0 .../KeyManagement/KeyBase.cs | 0 .../KeyEscrowServiceProviderExtensions.cs | 0 .../KeyManagement/KeyExtensions.cs | 0 .../KeyManagement/KeyManagementOptions.cs | 0 .../KeyManagement/KeyRing.cs | 0 .../KeyRingBasedDataProtectionProvider.cs | 0 .../KeyRingBasedDataProtector.cs | 0 .../KeyManagement/KeyRingProvider.cs | 0 .../KeyManagement/XmlKeyManager.cs | 0 .../LoggingExtensions.cs | 0 .../LoggingServiceProviderExtensions.cs | 0 .../Managed/HashAlgorithmExtensions.cs | 0 .../Managed/IManagedGenRandom.cs | 0 .../Managed/ManagedAuthenticatedEncryptor.cs | 0 .../Managed/ManagedGenRandomImpl.cs | 0 .../Managed/SymmetricAlgorithmExtensions.cs | 0 .../MemoryProtection.cs | 0 ...Microsoft.AspNetCore.DataProtection.csproj | 0 .../Properties/AssemblyInfo.cs | 0 .../Properties/Resources.Designer.cs | 0 .../RegistryPolicy.cs | 0 .../RegistryPolicyResolver.cs | 0 .../DefaultKeyStorageDirectories.cs | 0 .../Repositories/EphemeralXmlRepository.cs | 0 .../Repositories/FileSystemXmlRepository.cs | 0 .../IDefaultKeyStorageDirectory.cs | 0 .../Repositories/IXmlRepository.cs | 0 .../Repositories/RegistryXmlRepository.cs | 0 .../Resources.resx | 0 .../ISP800_108_CTR_HMACSHA512Provider.cs | 0 .../ManagedSP800_108_CTR_HMACSHA512.cs | 0 .../SP800_108_CTR_HMACSHA512Extensions.cs | 0 .../SP800_108/SP800_108_CTR_HMACSHA512Util.cs | 0 .../Win7SP800_108_CTR_HMACSHA512Provider.cs | 0 .../Win8SP800_108_CTR_HMACSHA512Provider.cs | 0 .../Secret.cs | 0 .../SimpleActivator.cs | 0 .../TypeExtensions.cs | 0 .../TypeForwardingActivator.cs | 0 .../XmlConstants.cs | 0 .../XmlEncryption/CertificateResolver.cs | 0 .../XmlEncryption/CertificateXmlEncryptor.cs | 0 .../DpapiNGProtectionDescriptorFlags.cs | 0 .../XmlEncryption/DpapiNGXmlDecryptor.cs | 0 .../XmlEncryption/DpapiNGXmlEncryptor.cs | 0 .../XmlEncryption/DpapiXmlDecryptor.cs | 0 .../XmlEncryption/DpapiXmlEncryptor.cs | 0 .../XmlEncryption/EncryptedXmlDecryptor.cs | 0 .../XmlEncryption/EncryptedXmlInfo.cs | 0 .../XmlEncryption/ICertificateResolver.cs | 0 .../IInternalCertificateXmlEncryptor.cs | 0 .../IInternalEncryptedXmlDecryptor.cs | 0 .../XmlEncryption/IXmlDecryptor.cs | 0 .../XmlEncryption/IXmlEncryptor.cs | 0 .../XmlEncryption/NullXmlDecryptor.cs | 0 .../XmlEncryption/NullXmlEncryptor.cs | 0 .../XmlEncryption/XmlEncryptionExtensions.cs | 0 .../XmlEncryption/XmlKeyDecryptionOptions.cs | 0 .../XmlExtensions.cs | 0 .../baseline.netcore.json | 0 .../DataProtection/test}/CreateTestCert.ps1 | 0 .../test}/Directory.Build.props | 0 ...PT_AUTHENTICATED_CIPHER_MODE_INFO_Tests.cs | 0 .../Cng/BCRYPT_KEY_LENGTHS_STRUCT_Tests.cs | 0 .../Cng/BCryptUtilTests.cs | 0 .../Cng/CachedAlgorithmHandlesTests.cs | 0 .../CryptoUtilTests.cs | 0 ...pNetCore.Cryptography.Internal.Test.csproj | 0 .../Properties/AssemblyInfo.cs | 0 .../SecureLocalAllocHandleTests.cs | 0 .../UnsafeBufferUtilTests.cs | 0 .../WeakReferenceHelpersTests.cs | 0 ...ore.Cryptography.KeyDerivation.Test.csproj | 0 .../Pbkdf2Tests.cs | 0 .../Properties/AssemblyInfo.cs | 0 .../DataProtectionCommonExtensionsTests.cs | 0 ...re.DataProtection.Abstractions.Test.csproj | 0 .../AzureKeyVaultXmlEncryptorTests.cs | 0 ...e.DataProtection.AzureKeyVault.Test.csproj | 0 .../AzureBlobXmlRepositoryTests.cs | 0 ...zureDataProtectionBuilderExtensionsTest.cs | 0 ...re.DataProtection.AzureStorage.Test.csproj | 0 .../DataProtectionEntityFrameworkTests.cs | 0 .../DataProtectionKeyContext.cs | 0 ...oreDataProtectionBuilderExtensionsTests.cs | 0 ...Protection.EntityFrameworkCore.Test.csproj | 0 .../DataProtectionAdvancedExtensionsTests.cs | 0 .../DataProtectionProviderTests.cs | 0 ...Core.DataProtection.Extensions.Test.csproj | 0 .../Properties/AssemblyInfo.cs | 0 .../TestFiles/TestCert.pfx | Bin .../TestFiles/TestCert2.pfx | Bin .../TestFiles/TestCert3.pfx | Bin .../TestFiles/TestCert3WithoutPrivateKey.pfx | Bin .../TestFiles/TestCertWithoutPrivateKey.pfx | Bin .../TimeLimitedDataProtectorTests.cs | 0 .../X509StoreIsAvailableAttribute.cs | 0 .../DataProtectionRedisTests.cs | 0 ...aProtection.StackExchangeRedis.Test.csproj | 0 ...edisDataProtectionBuilderExtensionsTest.cs | 0 .../TestRedisServer.cs | 0 .../TestRedisServerIsAvailableAttribute.cs | 0 .../testconfig.json | 0 .../ActivatorTests.cs | 0 .../AnonymousImpersonation.cs | 0 ...CngCbcAuthenticatedEncryptorFactoryTest.cs | 0 ...CngGcmAuthenticatedEncryptorFactoryTest.cs | 0 ...tedEncryptorDescriptorDeserializerTests.cs | 0 .../AuthenticatedEncryptorDescriptorTests.cs | 0 ...uthenticatedEncryptorConfigurationTests.cs | 0 ...tedEncryptorDescriptorDeserializerTests.cs | 0 ...bcAuthenticatedEncryptorDescriptorTests.cs | 0 ...uthenticatedEncryptorConfigurationTests.cs | 0 ...tedEncryptorDescriptorDeserializerTests.cs | 0 ...cmAuthenticatedEncryptorDescriptorTests.cs | 0 ...uthenticatedEncryptorConfigurationTests.cs | 0 ...tedEncryptorDescriptorDeserializerTests.cs | 0 ...edAuthenticatedEncryptorDescriptorTests.cs | 0 ...anagedAuthenticatedEncryptorFactoryTest.cs | 0 .../Cng/CbcAuthenticatedEncryptorTests.cs | 0 .../Cng/CngAuthenticatedEncryptorBaseTests.cs | 0 .../Cng/GcmAuthenticatedEncryptorTests.cs | 0 .../DataProtectionUtilityExtensionsTests.cs | 0 .../DockerUtilsTests.cs | 0 .../EphemeralDataProtectionProviderTests.cs | 0 .../HostingTests.cs | 0 .../Internal/KeyManagementOptionsSetupTest.cs | 0 .../KeyManagement/CacheableKeyRingTests.cs | 0 .../KeyManagement/DefaultKeyResolverTests.cs | 0 .../KeyManagement/DeferredKeyTests.cs | 0 ...KeyEscrowServiceProviderExtensionsTests.cs | 0 .../KeyRingBasedDataProtectorTests.cs | 0 .../KeyManagement/KeyRingProviderTests.cs | 0 .../KeyManagement/KeyRingTests.cs | 0 .../KeyManagement/KeyTests.cs | 0 .../KeyManagement/XmlKeyManagerTests.cs | 0 .../ManagedAuthenticatedEncryptorTests.cs | 0 ...soft.AspNetCore.DataProtection.Test.csproj | 0 .../MockExtensions.cs | 0 .../Properties/AssemblyInfo.cs | 0 .../RegistryPolicyResolverTests.cs | 0 .../EphemeralXmlRepositoryTests.cs | 0 .../FileSystemXmlRepositoryTests.cs | 0 .../RegistryXmlRepositoryTests.cs | 0 .../SP800_108/SP800_108Tests.cs | 0 .../SecretAssert.cs | 0 .../SecretTests.cs | 0 .../SequentialGenRandom.cs | 0 .../ServiceCollectionTests.cs | 0 .../StringLoggerFactory.cs | 0 .../TestFiles/TestCert1.PublicKeyOnly.cer | Bin .../TestFiles/TestCert1.pfx | Bin .../TestFiles/TestCert2.pfx | Bin .../TypeForwardingActivatorTests.cs | 0 .../XmlAssert.cs | 0 .../CertificateXmlEncryptionTests.cs | 0 .../DpapiNGXmlEncryptionTests.cs | 0 .../XmlEncryption/DpapiXmlEncryptionTests.cs | 0 .../EncryptedXmlDecryptorTests.cs | 0 .../XmlEncryption/NullXmlEncryptionTests.cs | 0 .../XmlEncryptionExtensionsTests.cs | 0 ...onalRunTestOnlyWindows8OrLaterAttribute.cs | 0 .../ConditionalRunTestOnlyWindowsAttribute.cs | 0 .../test}/shared/ExceptionAssert2.cs | 0 .../DataProtection/version.props | 0 375 files changed, 33 insertions(+), 722 deletions(-) delete mode 100644 .appveyor.yml delete mode 100644 .github/ISSUE_TEMPLATE.md delete mode 100644 .travis.yml delete mode 100644 .vscode/launch.json delete mode 100644 .vsts-pipelines/builds/ci-public.yml delete mode 100644 CONTRIBUTING.md delete mode 100644 DataProtection.sln.DotSettings delete mode 100644 Directory.Build.props delete mode 100644 Directory.Build.targets delete mode 100644 LICENSE.txt delete mode 100644 NuGet.config delete mode 100644 NuGetPackageVerifier.json delete mode 100644 README.md delete mode 100644 build.cmd delete mode 100755 build.sh delete mode 100644 build/Key.snk delete mode 100644 build/dependencies.props delete mode 100644 build/repo.props delete mode 100644 build/sources.props delete mode 100644 korebuild-lock.txt delete mode 100644 korebuild.json delete mode 100644 run.cmd delete mode 100644 run.ps1 delete mode 100755 run.sh rename DataProtection.sln => src/DataProtection/DataProtection.sln (100%) create mode 100644 src/DataProtection/Directory.Build.props rename Provision-AutoGenKeys.ps1 => src/DataProtection/Provision-AutoGenKeys.ps1 (100%) create mode 100644 src/DataProtection/README.md create mode 100644 src/DataProtection/dependencies.props rename {samples => src/DataProtection/samples}/AzureBlob/AzureBlob.csproj (100%) rename {samples => src/DataProtection/samples}/AzureBlob/Program.cs (100%) rename {samples => src/DataProtection/samples}/AzureKeyVault/AzureKeyVault.csproj (100%) rename {samples => src/DataProtection/samples}/AzureKeyVault/Program.cs (100%) rename {samples => src/DataProtection/samples}/AzureKeyVault/settings.json (100%) rename {samples => src/DataProtection/samples}/CustomEncryptorSample/CustomBuilderExtensions.cs (100%) rename {samples => src/DataProtection/samples}/CustomEncryptorSample/CustomEncryptorSample.csproj (100%) rename {samples => src/DataProtection/samples}/CustomEncryptorSample/CustomXmlDecryptor.cs (100%) rename {samples => src/DataProtection/samples}/CustomEncryptorSample/CustomXmlEncryptor.cs (100%) rename {samples => src/DataProtection/samples}/CustomEncryptorSample/Program.cs (100%) rename {samples => src/DataProtection/samples}/EntityFrameworkCoreSample/EntityFrameworkCoreSample.csproj (100%) rename {samples => src/DataProtection/samples}/EntityFrameworkCoreSample/Program.cs (100%) rename {samples => src/DataProtection/samples}/KeyManagementSample/KeyManagementSample.csproj (100%) rename {samples => src/DataProtection/samples}/KeyManagementSample/Program.cs (100%) rename {samples => src/DataProtection/samples}/NonDISample/NonDISample.csproj (100%) rename {samples => src/DataProtection/samples}/NonDISample/Program.cs (100%) rename {samples => src/DataProtection/samples}/Redis/Program.cs (100%) rename {samples => src/DataProtection/samples}/Redis/Redis.csproj (100%) rename {shared => src/DataProtection/shared}/EncodingUtil.cs (100%) rename {shared => src/DataProtection/shared}/ExceptionExtensions.cs (100%) rename src/{ => DataProtection/src}/Directory.Build.props (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCRYPT_KEY_LENGTHS_STRUCT.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptBuffer.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptBufferDesc.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptEncryptFlags.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptGenRandomFlags.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptKeyDerivationBufferType.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptUtil.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/Cng/CachedAlgorithmHandles.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/Cng/NCryptEncryptFlags.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/Cng/OSVersionUtil.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/Constants.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/CryptoUtil.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/DATA_BLOB.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/Microsoft.AspNetCore.Cryptography.Internal.csproj (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/Properties/AssemblyInfo.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/Properties/Resources.Designer.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/Resources.resx (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/BCryptAlgorithmHandle.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/BCryptHandle.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/BCryptHashHandle.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/BCryptKeyHandle.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/LocalAllocHandle.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/NCryptDescriptorHandle.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/SafeLibraryHandle.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/SecureLocalAllocHandle.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/UnsafeBufferUtil.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/UnsafeNativeMethods.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/WeakReferenceHelpers.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.Internal/baseline.netcore.json (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.KeyDerivation/KeyDerivation.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.KeyDerivation/KeyDerivationPrf.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.KeyDerivation/Microsoft.AspNetCore.Cryptography.KeyDerivation.csproj (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/IPbkdf2Provider.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/ManagedPbkdf2Provider.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/NetCorePbkdf2Provider.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/Pbkdf2Util.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/Win7Pbkdf2Provider.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/Win8Pbkdf2Provider.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.KeyDerivation/Properties/AssemblyInfo.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.Cryptography.KeyDerivation/baseline.netcore.json (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.Abstractions/CryptoUtil.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.Abstractions/DataProtectionCommonExtensions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.Abstractions/Error.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.Abstractions/IDataProtectionProvider.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.Abstractions/IDataProtector.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.Abstractions/Infrastructure/IApplicationDiscriminator.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.Abstractions/Microsoft.AspNetCore.DataProtection.Abstractions.csproj (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.Abstractions/Properties/AssemblyInfo.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.Abstractions/Properties/Resources.Designer.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.Abstractions/Resources.resx (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.Abstractions/baseline.netcore.json (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.AzureKeyVault/AzureDataProtectionBuilderExtensions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.AzureKeyVault/AzureKeyVaultXmlDecryptor.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.AzureKeyVault/AzureKeyVaultXmlEncryptor.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.AzureKeyVault/IKeyVaultWrappingClient.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.AzureKeyVault/KeyVaultClientWrapper.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.AzureKeyVault/Microsoft.AspNetCore.DataProtection.AzureKeyVault.csproj (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.AzureKeyVault/Properties/AssemblyInfo.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.AzureStorage/AzureBlobXmlRepository.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.AzureStorage/AzureDataProtectionBuilderExtensions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.AzureStorage/Microsoft.AspNetCore.DataProtection.AzureStorage.csproj (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.AzureStorage/baseline.netcore.json (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/DataProtectionKey.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/EntityFrameworkCoreDataProtectionExtensions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/EntityFrameworkCoreXmlRepository.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/IDataProtectionKeyContext.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/LoggingExtensions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.csproj (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/baseline.netcore.json (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.Extensions/BitHelpers.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.Extensions/DataProtectionAdvancedExtensions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.Extensions/DataProtectionProvider.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.Extensions/ITimeLimitedDataProtector.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.Extensions/Microsoft.AspNetCore.DataProtection.Extensions.csproj (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.Extensions/Properties/AssemblyInfo.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.Extensions/Properties/Resources.Designer.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.Extensions/Resources.resx (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.Extensions/TimeLimitedDataProtector.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.Extensions/baseline.netcore.json (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.StackExchangeRedis/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.csproj (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.StackExchangeRedis/RedisDataProtectionBuilderExtensions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.StackExchangeRedis/RedisXmlRepository.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.SystemWeb/CompatibilityDataProtector.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.SystemWeb/DataProtectionStartup.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.SystemWeb/Microsoft.AspNetCore.DataProtection.SystemWeb.csproj (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.SystemWeb/Properties/Resources.Designer.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.SystemWeb/Resources.resx (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.SystemWeb/baseline.netframework.json (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection.SystemWeb/web.config.transform (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/ActivatorExtensions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/ApplyPolicyAttribute.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/ArraySegmentExtensions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/AlgorithmAssert.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/AuthenticatedEncryptorExtensions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/AuthenticatedEncryptorFactory.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/CngCbcAuthenticatedEncryptorFactory.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/CngGcmAuthenticatedEncryptorFactory.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/AlgorithmConfiguration.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/AuthenticatedEncryptorConfiguration.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/AuthenticatedEncryptorDescriptor.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/AuthenticatedEncryptorDescriptorDeserializer.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorConfiguration.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorDescriptor.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorDescriptorDeserializer.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorConfiguration.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorDescriptor.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorDescriptorDeserializer.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/IAuthenticatedEncryptorDescriptor.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/IAuthenticatedEncryptorDescriptorDeserializer.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/IInternalAlgorithmConfiguration.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorConfiguration.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorDescriptor.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorDescriptorDeserializer.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/SecretExtensions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/XmlExtensions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/XmlSerializedDescriptorInfo.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/EncryptionAlgorithm.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/IAuthenticatedEncryptor.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/IAuthenticatedEncryptorFactory.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/IOptimizedAuthenticatedEncryptor.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ManagedAuthenticatedEncryptorFactory.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ValidationAlgorithm.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/BitHelpers.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Cng/BCryptGenRandomImpl.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Cng/CbcAuthenticatedEncryptor.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Cng/DpapiSecretSerializerHelper.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Cng/GcmAuthenticatedEncryptor.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Cng/IBCryptGenRandom.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Cng/Internal/CngAuthenticatedEncryptorBase.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/DataProtectionBuilderExtensions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/DataProtectionOptions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/DataProtectionServiceCollectionExtensions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/DataProtectionUtilityExtensions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/EphemeralDataProtectionProvider.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Error.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/IDataProtectionBuilder.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/IPersistedDataProtector.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/IRegistryPolicyResolver.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/ISecret.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Internal/DataProtectionBuilder.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Internal/DataProtectionOptionsSetup.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Internal/DataProtectionStartupFilter.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Internal/DockerUtils.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Internal/HostingApplicationDiscriminator.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Internal/IActivator.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Internal/KeyManagementOptionsSetup.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/KeyManagement/DefaultKeyResolver.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/KeyManagement/DeferredKey.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/KeyManagement/IKey.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/KeyManagement/IKeyEscrowSink.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/KeyManagement/IKeyManager.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/CacheableKeyRing.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/DefaultKeyResolution.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/ICacheableKeyRingProvider.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/IDefaultKeyResolver.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/IInternalXmlKeyManager.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/IKeyRing.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/IKeyRingProvider.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/KeyManagement/Key.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyBase.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyEscrowServiceProviderExtensions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyExtensions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyManagementOptions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyRing.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyRingBasedDataProtectionProvider.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyRingBasedDataProtector.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyRingProvider.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/KeyManagement/XmlKeyManager.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/LoggingExtensions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/LoggingServiceProviderExtensions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Managed/HashAlgorithmExtensions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Managed/IManagedGenRandom.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Managed/ManagedAuthenticatedEncryptor.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Managed/ManagedGenRandomImpl.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Managed/SymmetricAlgorithmExtensions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/MemoryProtection.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Microsoft.AspNetCore.DataProtection.csproj (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Properties/AssemblyInfo.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Properties/Resources.Designer.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/RegistryPolicy.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/RegistryPolicyResolver.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Repositories/DefaultKeyStorageDirectories.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Repositories/EphemeralXmlRepository.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Repositories/FileSystemXmlRepository.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Repositories/IDefaultKeyStorageDirectory.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Repositories/IXmlRepository.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Repositories/RegistryXmlRepository.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Resources.resx (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/SP800_108/ISP800_108_CTR_HMACSHA512Provider.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/SP800_108/ManagedSP800_108_CTR_HMACSHA512.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/SP800_108/SP800_108_CTR_HMACSHA512Extensions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/SP800_108/SP800_108_CTR_HMACSHA512Util.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/SP800_108/Win7SP800_108_CTR_HMACSHA512Provider.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/SP800_108/Win8SP800_108_CTR_HMACSHA512Provider.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/Secret.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/SimpleActivator.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/TypeExtensions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/TypeForwardingActivator.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/XmlConstants.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/XmlEncryption/CertificateResolver.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/XmlEncryption/CertificateXmlEncryptor.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/XmlEncryption/DpapiNGProtectionDescriptorFlags.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/XmlEncryption/DpapiNGXmlDecryptor.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/XmlEncryption/DpapiNGXmlEncryptor.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/XmlEncryption/DpapiXmlDecryptor.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/XmlEncryption/DpapiXmlEncryptor.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/XmlEncryption/EncryptedXmlDecryptor.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/XmlEncryption/EncryptedXmlInfo.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/XmlEncryption/ICertificateResolver.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/XmlEncryption/IInternalCertificateXmlEncryptor.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/XmlEncryption/IInternalEncryptedXmlDecryptor.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/XmlEncryption/IXmlDecryptor.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/XmlEncryption/IXmlEncryptor.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/XmlEncryption/NullXmlDecryptor.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/XmlEncryption/NullXmlEncryptor.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/XmlEncryption/XmlEncryptionExtensions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/XmlEncryption/XmlKeyDecryptionOptions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/XmlExtensions.cs (100%) rename src/{ => DataProtection/src}/Microsoft.AspNetCore.DataProtection/baseline.netcore.json (100%) rename {test => src/DataProtection/test}/CreateTestCert.ps1 (100%) rename {test => src/DataProtection/test}/Directory.Build.props (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.Cryptography.Internal.Test/Cng/BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO_Tests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.Cryptography.Internal.Test/Cng/BCRYPT_KEY_LENGTHS_STRUCT_Tests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.Cryptography.Internal.Test/Cng/BCryptUtilTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.Cryptography.Internal.Test/Cng/CachedAlgorithmHandlesTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.Cryptography.Internal.Test/CryptoUtilTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.Cryptography.Internal.Test/Microsoft.AspNetCore.Cryptography.Internal.Test.csproj (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.Cryptography.Internal.Test/Properties/AssemblyInfo.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.Cryptography.Internal.Test/SafeHandles/SecureLocalAllocHandleTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.Cryptography.Internal.Test/UnsafeBufferUtilTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.Cryptography.Internal.Test/WeakReferenceHelpersTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.Cryptography.KeyDerivation.Test/Microsoft.AspNetCore.Cryptography.KeyDerivation.Test.csproj (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.Cryptography.KeyDerivation.Test/Pbkdf2Tests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.Cryptography.KeyDerivation.Test/Properties/AssemblyInfo.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Abstractions.Test/DataProtectionCommonExtensionsTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Abstractions.Test/Microsoft.AspNetCore.DataProtection.Abstractions.Test.csproj (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.AzureKeyVault.Test/AzureKeyVaultXmlEncryptorTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.AzureKeyVault.Test/Microsoft.AspNetCore.DataProtection.AzureKeyVault.Test.csproj (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.AzureStorage.Test/AzureBlobXmlRepositoryTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.AzureStorage.Test/AzureDataProtectionBuilderExtensionsTest.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.AzureStorage.Test/Microsoft.AspNetCore.DataProtection.AzureStorage.Test.csproj (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.Test/DataProtectionEntityFrameworkTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.Test/DataProtectionKeyContext.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.Test/EntityFrameworkCoreDataProtectionBuilderExtensionsTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.Test/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.Test.csproj (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Extensions.Test/DataProtectionAdvancedExtensionsTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Extensions.Test/DataProtectionProviderTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Extensions.Test/Microsoft.AspNetCore.DataProtection.Extensions.Test.csproj (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Extensions.Test/Properties/AssemblyInfo.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Extensions.Test/TestFiles/TestCert.pfx (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Extensions.Test/TestFiles/TestCert2.pfx (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Extensions.Test/TestFiles/TestCert3.pfx (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Extensions.Test/TestFiles/TestCert3WithoutPrivateKey.pfx (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Extensions.Test/TestFiles/TestCertWithoutPrivateKey.pfx (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Extensions.Test/TimeLimitedDataProtectorTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Extensions.Test/X509StoreIsAvailableAttribute.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/DataProtectionRedisTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test.csproj (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/RedisDataProtectionBuilderExtensionsTest.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/TestRedisServer.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/TestRedisServerIsAvailableAttribute.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/testconfig.json (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/ActivatorTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/AnonymousImpersonation.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/CngCbcAuthenticatedEncryptorFactoryTest.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/CngGcmAuthenticatedEncryptorFactoryTest.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/AuthenticatedEncryptorDescriptorDeserializerTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/AuthenticatedEncryptorDescriptorTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorConfigurationTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorDescriptorDeserializerTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorDescriptorTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorConfigurationTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorDescriptorDeserializerTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorDescriptorTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorConfigurationTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorDescriptorDeserializerTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorDescriptorTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ManagedAuthenticatedEncryptorFactoryTest.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/Cng/CbcAuthenticatedEncryptorTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/Cng/CngAuthenticatedEncryptorBaseTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/Cng/GcmAuthenticatedEncryptorTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/DataProtectionUtilityExtensionsTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/DockerUtilsTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/EphemeralDataProtectionProviderTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/HostingTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/Internal/KeyManagementOptionsSetupTest.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/CacheableKeyRingTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/DefaultKeyResolverTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/DeferredKeyTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/KeyEscrowServiceProviderExtensionsTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/KeyRingBasedDataProtectorTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/KeyRingProviderTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/KeyRingTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/KeyTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/XmlKeyManagerTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/Managed/ManagedAuthenticatedEncryptorTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/Microsoft.AspNetCore.DataProtection.Test.csproj (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/MockExtensions.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/Properties/AssemblyInfo.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/RegistryPolicyResolverTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/Repositories/EphemeralXmlRepositoryTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/Repositories/FileSystemXmlRepositoryTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/Repositories/RegistryXmlRepositoryTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/SP800_108/SP800_108Tests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/SecretAssert.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/SecretTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/SequentialGenRandom.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/ServiceCollectionTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/StringLoggerFactory.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/TestFiles/TestCert1.PublicKeyOnly.cer (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/TestFiles/TestCert1.pfx (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/TestFiles/TestCert2.pfx (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/TypeForwardingActivatorTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/XmlAssert.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/CertificateXmlEncryptionTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/DpapiNGXmlEncryptionTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/DpapiXmlEncryptionTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/EncryptedXmlDecryptorTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/NullXmlEncryptionTests.cs (100%) rename {test => src/DataProtection/test}/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/XmlEncryptionExtensionsTests.cs (100%) rename {test => src/DataProtection/test}/shared/ConditionalRunTestOnlyWindows8OrLaterAttribute.cs (100%) rename {test => src/DataProtection/test}/shared/ConditionalRunTestOnlyWindowsAttribute.cs (100%) rename {test => src/DataProtection/test}/shared/ExceptionAssert2.cs (100%) rename version.props => src/DataProtection/version.props (100%) diff --git a/.appveyor.yml b/.appveyor.yml deleted file mode 100644 index 4eea96ab69..0000000000 --- a/.appveyor.yml +++ /dev/null @@ -1,17 +0,0 @@ -init: -- git config --global core.autocrlf true -branches: - only: - - dev - - /^release\/.*$/ - - /^(.*\/)?ci-.*$/ -build_script: -- ps: .\run.ps1 default-build -clone_depth: 1 -environment: - global: - DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true - DOTNET_CLI_TELEMETRY_OPTOUT: 1 -test: 'off' -deploy: 'off' -os: Visual Studio 2017 diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md deleted file mode 100644 index 101a084f0a..0000000000 --- a/.github/ISSUE_TEMPLATE.md +++ /dev/null @@ -1,3 +0,0 @@ -THIS ISSUE TRACKER IS CLOSED - please log new issues here: https://github.com/aspnet/Home/issues - -For information about this change, see https://github.com/aspnet/Announcements/issues/283 diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 64bdbb4441..0000000000 --- a/.travis.yml +++ /dev/null @@ -1,27 +0,0 @@ -language: csharp -sudo: false -dist: trusty -env: - global: - - DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true - - DOTNET_CLI_TELEMETRY_OPTOUT: 1 -mono: none -os: -- linux -- osx -osx_image: xcode8.2 -addons: - apt: - packages: - - libunwind8 -branches: - only: - - dev - - /^release\/.*$/ - - /^(.*\/)?ci-.*$/ -before_install: -- if test "$TRAVIS_OS_NAME" == "osx"; then brew update; brew install openssl; ln -s - /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib /usr/local/lib/; ln -s /usr/local/opt/openssl/lib/libssl.1.0.0.dylib - /usr/local/lib/; fi -script: -- ./build.sh diff --git a/.vscode/launch.json b/.vscode/launch.json deleted file mode 100644 index f4fc2e3731..0000000000 --- a/.vscode/launch.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "configurations": [ - { - "name": ".NET Core Attach", - "type": "coreclr", - "request": "attach", - "processId": "${command:pickProcess}" - } - ] -} diff --git a/.vsts-pipelines/builds/ci-public.yml b/.vsts-pipelines/builds/ci-public.yml deleted file mode 100644 index 554cc2be4c..0000000000 --- a/.vsts-pipelines/builds/ci-public.yml +++ /dev/null @@ -1,31 +0,0 @@ -trigger: -- master -- release/* - -# See https://github.com/aspnet/BuildTools -resources: - repositories: - - repository: buildtools - type: github - endpoint: DotNet-Bot GitHub Connection - name: aspnet/BuildTools - ref: refs/heads/release/2.2 - -phases: -- template: .vsts-pipelines/templates/project-ci.yml@buildtools -- template: .vsts-pipelines/templates/phases/default-build.yml@buildtools - parameters: - phaseName: Linux_RedisTests - queueName: DotNetCore-Docker - agentOs: Linux - demands: - - docker - variables: - Test__Redis__Server: localhost:6379,127.0.0.1:6379 - beforeBuild: - - script: docker run --rm -d --name test-redis-server -p 6379:6379 redis - displayName: Start Redis in Docker - afterBuild: - - script: docker stop test-redis-server - displayName: Stop Redis in Docker - condition: always() diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md deleted file mode 100644 index 64ff041d5c..0000000000 --- a/CONTRIBUTING.md +++ /dev/null @@ -1,4 +0,0 @@ -Contributing -====== - -Information on contributing to this repo is in the [Contributing Guide](https://github.com/aspnet/Home/blob/dev/CONTRIBUTING.md) in the Home repo. diff --git a/DataProtection.sln.DotSettings b/DataProtection.sln.DotSettings deleted file mode 100644 index c843b27a2b..0000000000 --- a/DataProtection.sln.DotSettings +++ /dev/null @@ -1,2 +0,0 @@ - - False \ No newline at end of file diff --git a/Directory.Build.props b/Directory.Build.props deleted file mode 100644 index 23c9a47ea4..0000000000 --- a/Directory.Build.props +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - - - Microsoft ASP.NET Core - https://github.com/aspnet/DataProtection - git - $(MSBuildThisFileDirectory) - $(MSBuildThisFileDirectory)build\Key.snk - true - true - - - diff --git a/Directory.Build.targets b/Directory.Build.targets deleted file mode 100644 index 78626b773e..0000000000 --- a/Directory.Build.targets +++ /dev/null @@ -1,10 +0,0 @@ - - - $(MicrosoftNETCoreApp20PackageVersion) - $(MicrosoftNETCoreApp21PackageVersion) - $(MicrosoftNETCoreApp22PackageVersion) - $(NETStandardLibrary20PackageVersion) - - 99.9 - - diff --git a/LICENSE.txt b/LICENSE.txt deleted file mode 100644 index 7b2956ecee..0000000000 --- a/LICENSE.txt +++ /dev/null @@ -1,14 +0,0 @@ -Copyright (c) .NET Foundation and Contributors - -All rights reserved. - -Licensed under the Apache License, Version 2.0 (the "License"); you may not use -this file except in compliance with the License. You may obtain a copy of the -License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software distributed -under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR -CONDITIONS OF ANY KIND, either express or implied. See the License for the -specific language governing permissions and limitations under the License. diff --git a/NuGet.config b/NuGet.config deleted file mode 100644 index e32bddfd51..0000000000 --- a/NuGet.config +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/NuGetPackageVerifier.json b/NuGetPackageVerifier.json deleted file mode 100644 index b153ab1515..0000000000 --- a/NuGetPackageVerifier.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "Default": { - "rules": [ - "DefaultCompositeRule" - ] - } -} \ No newline at end of file diff --git a/README.md b/README.md deleted file mode 100644 index 7d9704e3f7..0000000000 --- a/README.md +++ /dev/null @@ -1,13 +0,0 @@ -DataProtection -============== -AppVeyor: [![AppVeyor](https://ci.appveyor.com/api/projects/status/4mki61bux5vby6it/branch/dev?svg=true)](https://ci.appveyor.com/project/aspnetci/DataProtection/branch/dev) - -Travis: [![Travis](https://travis-ci.org/aspnet/DataProtection.svg?branch=dev)](https://travis-ci.org/aspnet/DataProtection) - -Data Protection APIs for protecting and unprotecting data. - -This project is part of ASP.NET Core. You can find documentation for Data Protection in the [ASP.NET Core Documentation](http://docs.asp.net/en/latest/security/data-protection/index.html). You can find samples, documentation and getting started instructions for ASP.NET Core at the [Home](https://github.com/aspnet/home) repo. - -## Community Maintained Data Protection Providers & Projects - - - [ASP.NET Core DataProtection for Service Fabric](https://github.com/MedAnd/AspNetCore.DataProtection.ServiceFabric) diff --git a/build.cmd b/build.cmd deleted file mode 100644 index c0050bda12..0000000000 --- a/build.cmd +++ /dev/null @@ -1,2 +0,0 @@ -@ECHO OFF -PowerShell -NoProfile -NoLogo -ExecutionPolicy unrestricted -Command "[System.Threading.Thread]::CurrentThread.CurrentCulture = ''; [System.Threading.Thread]::CurrentThread.CurrentUICulture = '';& '%~dp0run.ps1' default-build %*; exit $LASTEXITCODE" diff --git a/build.sh b/build.sh deleted file mode 100755 index 98a4b22765..0000000000 --- a/build.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/usr/bin/env bash - -set -euo pipefail -DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" - -# Call "sync" between "chmod" and execution to prevent "text file busy" error in Docker (aufs) -chmod +x "$DIR/run.sh"; sync -"$DIR/run.sh" default-build "$@" diff --git a/build/Key.snk b/build/Key.snk deleted file mode 100644 index e10e4889c125d3120cd9e81582243d70f7cbb806..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 596 zcmV-a0;~N80ssI2Bme+XQ$aES1ONa50098=Iw=HCsnz~#iVhm& zj%TU(_THUee?3yHBjk$37ysB?i5#7WD$={H zV4B!OxRPrb|8)HPg~A}8P>^=#y<)56#=E&NzcjOtPK~<4n6GHt=K$ro*T(lhby_@U zEk(hLzk1H)0yXj{A_5>fk-TgNoP|q6(tP2xo8zt8i%212CWM#AeCd?`hS|4~L({h~Moo(~vy&3Z z1uI}`fd^*>o=rwbAGymj6RM^pZm(*Kfhs+Y1#`-2JPWZMK8@;ZWCk2+9bX4YP);~fj-BU*R zQPvWv$89!{Rl9wM+zR>_TSkn^voYxA?2G iKnV#iZ6Ah`K>b=@=IjYJXrxL124zR(38)nxe+&q_$QXwJ diff --git a/build/dependencies.props b/build/dependencies.props deleted file mode 100644 index df63bb1034..0000000000 --- a/build/dependencies.props +++ /dev/null @@ -1,41 +0,0 @@ - - - $(MSBuildAllProjects);$(MSBuildThisFileFullPath) - - - 2.2.0-preview2-20181004.6 - 2.2.0-preview3-35425 - 2.2.0-preview3-35425 - 2.2.0-preview3-35425 - 2.3.2 - 2.2.0-preview3-35425 - 2.2.0-preview3-35425 - 2.2.0-preview3-35425 - 2.2.0-preview3-35425 - 2.2.0-preview3-35425 - 2.2.0-preview3-35425 - 2.2.0-preview3-35425 - 2.2.0-preview3-35425 - 2.2.0-preview3-35425 - 2.2.0-preview3-35425 - 2.2.0-preview3-35425 - 2.2.0-preview3-35425 - 3.14.2 - 2.0.9 - 2.1.3 - 2.2.0-preview3-27001-02 - 15.6.1 - 4.5.0 - 4.7.49 - 2.0.3 - 1.2.6 - 2.0.513 - 4.5.0 - 4.5.0 - 8.1.4 - 2.3.1 - 2.4.0 - - - - diff --git a/build/repo.props b/build/repo.props deleted file mode 100644 index f1fe24dd27..0000000000 --- a/build/repo.props +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - Internal.AspNetCore.Universe.Lineup - 2.2.0-* - https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json - - - - - - - - diff --git a/build/sources.props b/build/sources.props deleted file mode 100644 index 9215df9751..0000000000 --- a/build/sources.props +++ /dev/null @@ -1,17 +0,0 @@ - - - - - $(DotNetRestoreSources) - - $(RestoreSources); - https://dotnet.myget.org/F/dotnet-core/api/v3/index.json; - https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json; - https://dotnet.myget.org/F/aspnetcore-tools/api/v3/index.json; - - - $(RestoreSources); - https://api.nuget.org/v3/index.json; - - - diff --git a/korebuild-lock.txt b/korebuild-lock.txt deleted file mode 100644 index 3e92dd5543..0000000000 --- a/korebuild-lock.txt +++ /dev/null @@ -1,2 +0,0 @@ -version:2.2.0-preview2-20181004.6 -commithash:c04c4b2f5018632647f96210ab01876661302dac diff --git a/korebuild.json b/korebuild.json deleted file mode 100644 index d217d06e3e..0000000000 --- a/korebuild.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "$schema": "https://raw.githubusercontent.com/aspnet/BuildTools/release/2.2/tools/korebuild.schema.json", - "channel": "release/2.2" -} diff --git a/run.cmd b/run.cmd deleted file mode 100644 index d52d5c7e68..0000000000 --- a/run.cmd +++ /dev/null @@ -1,2 +0,0 @@ -@ECHO OFF -PowerShell -NoProfile -NoLogo -ExecutionPolicy unrestricted -Command "[System.Threading.Thread]::CurrentThread.CurrentCulture = ''; [System.Threading.Thread]::CurrentThread.CurrentUICulture = '';& '%~dp0run.ps1' %*; exit $LASTEXITCODE" diff --git a/run.ps1 b/run.ps1 deleted file mode 100644 index 34604c7175..0000000000 --- a/run.ps1 +++ /dev/null @@ -1,209 +0,0 @@ -#!/usr/bin/env powershell -#requires -version 4 - -<# -.SYNOPSIS -Executes KoreBuild commands. - -.DESCRIPTION -Downloads korebuild if required. Then executes the KoreBuild command. To see available commands, execute with `-Command help`. - -.PARAMETER Command -The KoreBuild command to run. - -.PARAMETER Path -The folder to build. Defaults to the folder containing this script. - -.PARAMETER Channel -The channel of KoreBuild to download. Overrides the value from the config file. - -.PARAMETER DotNetHome -The directory where .NET Core tools will be stored. - -.PARAMETER ToolsSource -The base url where build tools can be downloaded. Overrides the value from the config file. - -.PARAMETER Update -Updates KoreBuild to the latest version even if a lock file is present. - -.PARAMETER Reinstall -Re-installs KoreBuild - -.PARAMETER ConfigFile -The path to the configuration file that stores values. Defaults to korebuild.json. - -.PARAMETER ToolsSourceSuffix -The Suffix to append to the end of the ToolsSource. Useful for query strings in blob stores. - -.PARAMETER CI -Sets up CI specific settings and variables. - -.PARAMETER Arguments -Arguments to be passed to the command - -.NOTES -This function will create a file $PSScriptRoot/korebuild-lock.txt. This lock file can be committed to source, but does not have to be. -When the lockfile is not present, KoreBuild will create one using latest available version from $Channel. - -The $ConfigFile is expected to be an JSON file. It is optional, and the configuration values in it are optional as well. Any options set -in the file are overridden by command line parameters. - -.EXAMPLE -Example config file: -```json -{ - "$schema": "https://raw.githubusercontent.com/aspnet/BuildTools/master/tools/korebuild.schema.json", - "channel": "master", - "toolsSource": "https://aspnetcore.blob.core.windows.net/buildtools" -} -``` -#> -[CmdletBinding(PositionalBinding = $false)] -param( - [Parameter(Mandatory = $true, Position = 0)] - [string]$Command, - [string]$Path = $PSScriptRoot, - [Alias('c')] - [string]$Channel, - [Alias('d')] - [string]$DotNetHome, - [Alias('s')] - [string]$ToolsSource, - [Alias('u')] - [switch]$Update, - [switch]$Reinstall, - [string]$ToolsSourceSuffix, - [string]$ConfigFile = $null, - [switch]$CI, - [Parameter(ValueFromRemainingArguments = $true)] - [string[]]$Arguments -) - -Set-StrictMode -Version 2 -$ErrorActionPreference = 'Stop' - -# -# Functions -# - -function Get-KoreBuild { - - $lockFile = Join-Path $Path 'korebuild-lock.txt' - - if (!(Test-Path $lockFile) -or $Update) { - Get-RemoteFile "$ToolsSource/korebuild/channels/$Channel/latest.txt" $lockFile $ToolsSourceSuffix - } - - $version = Get-Content $lockFile | Where-Object { $_ -like 'version:*' } | Select-Object -first 1 - if (!$version) { - Write-Error "Failed to parse version from $lockFile. Expected a line that begins with 'version:'" - } - $version = $version.TrimStart('version:').Trim() - $korebuildPath = Join-Paths $DotNetHome ('buildtools', 'korebuild', $version) - - if ($Reinstall -and (Test-Path $korebuildPath)) { - Remove-Item -Force -Recurse $korebuildPath - } - - if (!(Test-Path $korebuildPath)) { - Write-Host -ForegroundColor Magenta "Downloading KoreBuild $version" - New-Item -ItemType Directory -Path $korebuildPath | Out-Null - $remotePath = "$ToolsSource/korebuild/artifacts/$version/korebuild.$version.zip" - - try { - $tmpfile = Join-Path ([IO.Path]::GetTempPath()) "KoreBuild-$([guid]::NewGuid()).zip" - Get-RemoteFile $remotePath $tmpfile $ToolsSourceSuffix - if (Get-Command -Name 'Microsoft.PowerShell.Archive\Expand-Archive' -ErrorAction Ignore) { - # Use built-in commands where possible as they are cross-plat compatible - Microsoft.PowerShell.Archive\Expand-Archive -Path $tmpfile -DestinationPath $korebuildPath - } - else { - # Fallback to old approach for old installations of PowerShell - Add-Type -AssemblyName System.IO.Compression.FileSystem - [System.IO.Compression.ZipFile]::ExtractToDirectory($tmpfile, $korebuildPath) - } - } - catch { - Remove-Item -Recurse -Force $korebuildPath -ErrorAction Ignore - throw - } - finally { - Remove-Item $tmpfile -ErrorAction Ignore - } - } - - return $korebuildPath -} - -function Join-Paths([string]$path, [string[]]$childPaths) { - $childPaths | ForEach-Object { $path = Join-Path $path $_ } - return $path -} - -function Get-RemoteFile([string]$RemotePath, [string]$LocalPath, [string]$RemoteSuffix) { - if ($RemotePath -notlike 'http*') { - Copy-Item $RemotePath $LocalPath - return - } - - $retries = 10 - while ($retries -gt 0) { - $retries -= 1 - try { - Invoke-WebRequest -UseBasicParsing -Uri $($RemotePath + $RemoteSuffix) -OutFile $LocalPath - return - } - catch { - Write-Verbose "Request failed. $retries retries remaining" - } - } - - Write-Error "Download failed: '$RemotePath'." -} - -# -# Main -# - -# Load configuration or set defaults - -$Path = Resolve-Path $Path -if (!$ConfigFile) { $ConfigFile = Join-Path $Path 'korebuild.json' } - -if (Test-Path $ConfigFile) { - try { - $config = Get-Content -Raw -Encoding UTF8 -Path $ConfigFile | ConvertFrom-Json - if ($config) { - if (!($Channel) -and (Get-Member -Name 'channel' -InputObject $config)) { [string] $Channel = $config.channel } - if (!($ToolsSource) -and (Get-Member -Name 'toolsSource' -InputObject $config)) { [string] $ToolsSource = $config.toolsSource} - } - } - catch { - Write-Host -ForegroundColor Red $Error[0] - Write-Error "$ConfigFile contains invalid JSON." - exit 1 - } -} - -if (!$DotNetHome) { - $DotNetHome = if ($env:DOTNET_HOME) { $env:DOTNET_HOME } ` - elseif ($env:USERPROFILE) { Join-Path $env:USERPROFILE '.dotnet'} ` - elseif ($env:HOME) {Join-Path $env:HOME '.dotnet'}` - else { Join-Path $PSScriptRoot '.dotnet'} -} - -if (!$Channel) { $Channel = 'master' } -if (!$ToolsSource) { $ToolsSource = 'https://aspnetcore.blob.core.windows.net/buildtools' } - -# Execute - -$korebuildPath = Get-KoreBuild -Import-Module -Force -Scope Local (Join-Path $korebuildPath 'KoreBuild.psd1') - -try { - Set-KoreBuildSettings -ToolsSource $ToolsSource -DotNetHome $DotNetHome -RepoPath $Path -ConfigFile $ConfigFile -CI:$CI - Invoke-KoreBuildCommand $Command @Arguments -} -finally { - Remove-Module 'KoreBuild' -ErrorAction Ignore -} diff --git a/run.sh b/run.sh deleted file mode 100755 index 4c1fed5646..0000000000 --- a/run.sh +++ /dev/null @@ -1,256 +0,0 @@ -#!/usr/bin/env bash - -set -euo pipefail - -# -# variables -# - -RESET="\033[0m" -RED="\033[0;31m" -YELLOW="\033[0;33m" -MAGENTA="\033[0;95m" -DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" -[ -z "${DOTNET_HOME:-}" ] && DOTNET_HOME="$HOME/.dotnet" -verbose=false -update=false -reinstall=false -repo_path="$DIR" -channel='' -tools_source='' -tools_source_suffix='' -ci=false - -# -# Functions -# -__usage() { - echo "Usage: $(basename "${BASH_SOURCE[0]}") command [options] [[--] ...]" - echo "" - echo "Arguments:" - echo " command The command to be run." - echo " ... Arguments passed to the command. Variable number of arguments allowed." - echo "" - echo "Options:" - echo " --verbose Show verbose output." - echo " -c|--channel The channel of KoreBuild to download. Overrides the value from the config file.." - echo " --config-file The path to the configuration file that stores values. Defaults to korebuild.json." - echo " -d|--dotnet-home The directory where .NET Core tools will be stored. Defaults to '\$DOTNET_HOME' or '\$HOME/.dotnet." - echo " --path The directory to build. Defaults to the directory containing the script." - echo " -s|--tools-source|-ToolsSource The base url where build tools can be downloaded. Overrides the value from the config file." - echo " --tools-source-suffix|-ToolsSourceSuffix The suffix to append to tools-source. Useful for query strings." - echo " -u|--update Update to the latest KoreBuild even if the lock file is present." - echo " --reinstall Reinstall KoreBuild." - echo " --ci Apply CI specific settings and environment variables." - echo "" - echo "Description:" - echo " This function will create a file \$DIR/korebuild-lock.txt. This lock file can be committed to source, but does not have to be." - echo " When the lockfile is not present, KoreBuild will create one using latest available version from \$channel." - - if [[ "${1:-}" != '--no-exit' ]]; then - exit 2 - fi -} - -get_korebuild() { - local version - local lock_file="$repo_path/korebuild-lock.txt" - if [ ! -f "$lock_file" ] || [ "$update" = true ]; then - __get_remote_file "$tools_source/korebuild/channels/$channel/latest.txt" "$lock_file" "$tools_source_suffix" - fi - version="$(grep 'version:*' -m 1 "$lock_file")" - if [[ "$version" == '' ]]; then - __error "Failed to parse version from $lock_file. Expected a line that begins with 'version:'" - return 1 - fi - version="$(echo "${version#version:}" | sed -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//')" - local korebuild_path="$DOTNET_HOME/buildtools/korebuild/$version" - - if [ "$reinstall" = true ] && [ -d "$korebuild_path" ]; then - rm -rf "$korebuild_path" - fi - - { - if [ ! -d "$korebuild_path" ]; then - mkdir -p "$korebuild_path" - local remote_path="$tools_source/korebuild/artifacts/$version/korebuild.$version.zip" - tmpfile="$(mktemp)" - echo -e "${MAGENTA}Downloading KoreBuild ${version}${RESET}" - if __get_remote_file "$remote_path" "$tmpfile" "$tools_source_suffix"; then - unzip -q -d "$korebuild_path" "$tmpfile" - fi - rm "$tmpfile" || true - fi - - source "$korebuild_path/KoreBuild.sh" - } || { - if [ -d "$korebuild_path" ]; then - echo "Cleaning up after failed installation" - rm -rf "$korebuild_path" || true - fi - return 1 - } -} - -__error() { - echo -e "${RED}error: $*${RESET}" 1>&2 -} - -__warn() { - echo -e "${YELLOW}warning: $*${RESET}" -} - -__machine_has() { - hash "$1" > /dev/null 2>&1 - return $? -} - -__get_remote_file() { - local remote_path=$1 - local local_path=$2 - local remote_path_suffix=$3 - - if [[ "$remote_path" != 'http'* ]]; then - cp "$remote_path" "$local_path" - return 0 - fi - - local failed=false - if __machine_has wget; then - wget --tries 10 --quiet -O "$local_path" "${remote_path}${remote_path_suffix}" || failed=true - else - failed=true - fi - - if [ "$failed" = true ] && __machine_has curl; then - failed=false - curl --retry 10 -sSL -f --create-dirs -o "$local_path" "${remote_path}${remote_path_suffix}" || failed=true - fi - - if [ "$failed" = true ]; then - __error "Download failed: $remote_path" 1>&2 - return 1 - fi -} - -# -# main -# - -command="${1:-}" -shift - -while [[ $# -gt 0 ]]; do - case $1 in - -\?|-h|--help) - __usage --no-exit - exit 0 - ;; - -c|--channel|-Channel) - shift - channel="${1:-}" - [ -z "$channel" ] && __usage - ;; - --config-file|-ConfigFile) - shift - config_file="${1:-}" - [ -z "$config_file" ] && __usage - if [ ! -f "$config_file" ]; then - __error "Invalid value for --config-file. $config_file does not exist." - exit 1 - fi - ;; - -d|--dotnet-home|-DotNetHome) - shift - DOTNET_HOME="${1:-}" - [ -z "$DOTNET_HOME" ] && __usage - ;; - --path|-Path) - shift - repo_path="${1:-}" - [ -z "$repo_path" ] && __usage - ;; - -s|--tools-source|-ToolsSource) - shift - tools_source="${1:-}" - [ -z "$tools_source" ] && __usage - ;; - --tools-source-suffix|-ToolsSourceSuffix) - shift - tools_source_suffix="${1:-}" - [ -z "$tools_source_suffix" ] && __usage - ;; - -u|--update|-Update) - update=true - ;; - --reinstall|-[Rr]einstall) - reinstall=true - ;; - --ci|-[Cc][Ii]) - ci=true - ;; - --verbose|-Verbose) - verbose=true - ;; - --) - shift - break - ;; - *) - break - ;; - esac - shift -done - -if ! __machine_has unzip; then - __error 'Missing required command: unzip' - exit 1 -fi - -if ! __machine_has curl && ! __machine_has wget; then - __error 'Missing required command. Either wget or curl is required.' - exit 1 -fi - -[ -z "${config_file:-}" ] && config_file="$repo_path/korebuild.json" -if [ -f "$config_file" ]; then - if __machine_has jq ; then - if jq '.' "$config_file" >/dev/null ; then - config_channel="$(jq -r 'select(.channel!=null) | .channel' "$config_file")" - config_tools_source="$(jq -r 'select(.toolsSource!=null) | .toolsSource' "$config_file")" - else - __error "$config_file contains invalid JSON." - exit 1 - fi - elif __machine_has python ; then - if python -c "import json,codecs;obj=json.load(codecs.open('$config_file', 'r', 'utf-8-sig'))" >/dev/null ; then - config_channel="$(python -c "import json,codecs;obj=json.load(codecs.open('$config_file', 'r', 'utf-8-sig'));print(obj['channel'] if 'channel' in obj else '')")" - config_tools_source="$(python -c "import json,codecs;obj=json.load(codecs.open('$config_file', 'r', 'utf-8-sig'));print(obj['toolsSource'] if 'toolsSource' in obj else '')")" - else - __error "$config_file contains invalid JSON." - exit 1 - fi - elif __machine_has python3 ; then - if python3 -c "import json,codecs;obj=json.load(codecs.open('$config_file', 'r', 'utf-8-sig'))" >/dev/null ; then - config_channel="$(python3 -c "import json,codecs;obj=json.load(codecs.open('$config_file', 'r', 'utf-8-sig'));print(obj['channel'] if 'channel' in obj else '')")" - config_tools_source="$(python3 -c "import json,codecs;obj=json.load(codecs.open('$config_file', 'r', 'utf-8-sig'));print(obj['toolsSource'] if 'toolsSource' in obj else '')")" - else - __error "$config_file contains invalid JSON." - exit 1 - fi - else - __error 'Missing required command: jq or python. Could not parse the JSON file.' - exit 1 - fi - - [ ! -z "${config_channel:-}" ] && channel="$config_channel" - [ ! -z "${config_tools_source:-}" ] && tools_source="$config_tools_source" -fi - -[ -z "$channel" ] && channel='master' -[ -z "$tools_source" ] && tools_source='https://aspnetcore.blob.core.windows.net/buildtools' - -get_korebuild -set_korebuildsettings "$tools_source" "$DOTNET_HOME" "$repo_path" "$config_file" "$ci" -invoke_korebuild_command "$command" "$@" diff --git a/DataProtection.sln b/src/DataProtection/DataProtection.sln similarity index 100% rename from DataProtection.sln rename to src/DataProtection/DataProtection.sln diff --git a/src/DataProtection/Directory.Build.props b/src/DataProtection/Directory.Build.props new file mode 100644 index 0000000000..deb7bb4ee6 --- /dev/null +++ b/src/DataProtection/Directory.Build.props @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Provision-AutoGenKeys.ps1 b/src/DataProtection/Provision-AutoGenKeys.ps1 similarity index 100% rename from Provision-AutoGenKeys.ps1 rename to src/DataProtection/Provision-AutoGenKeys.ps1 diff --git a/src/DataProtection/README.md b/src/DataProtection/README.md new file mode 100644 index 0000000000..cd58074d9e --- /dev/null +++ b/src/DataProtection/README.md @@ -0,0 +1,8 @@ +DataProtection +============== + +Data Protection APIs for protecting and unprotecting data. You can find documentation for Data Protection in the [ASP.NET Core Documentation](https://docs.microsoft.com/en-us/aspnet/core/security/data-protection/). + +## Community Maintained Data Protection Providers & Projects + + - [ASP.NET Core DataProtection for Service Fabric](https://github.com/MedAnd/AspNetCore.DataProtection.ServiceFabric) diff --git a/src/DataProtection/dependencies.props b/src/DataProtection/dependencies.props new file mode 100644 index 0000000000..02e944fdb3 --- /dev/null +++ b/src/DataProtection/dependencies.props @@ -0,0 +1,17 @@ + + + $(MSBuildAllProjects);$(MSBuildThisFileFullPath) + + + + + 2.2.0-preview2-20181004.6 + + + + + + diff --git a/samples/AzureBlob/AzureBlob.csproj b/src/DataProtection/samples/AzureBlob/AzureBlob.csproj similarity index 100% rename from samples/AzureBlob/AzureBlob.csproj rename to src/DataProtection/samples/AzureBlob/AzureBlob.csproj diff --git a/samples/AzureBlob/Program.cs b/src/DataProtection/samples/AzureBlob/Program.cs similarity index 100% rename from samples/AzureBlob/Program.cs rename to src/DataProtection/samples/AzureBlob/Program.cs diff --git a/samples/AzureKeyVault/AzureKeyVault.csproj b/src/DataProtection/samples/AzureKeyVault/AzureKeyVault.csproj similarity index 100% rename from samples/AzureKeyVault/AzureKeyVault.csproj rename to src/DataProtection/samples/AzureKeyVault/AzureKeyVault.csproj diff --git a/samples/AzureKeyVault/Program.cs b/src/DataProtection/samples/AzureKeyVault/Program.cs similarity index 100% rename from samples/AzureKeyVault/Program.cs rename to src/DataProtection/samples/AzureKeyVault/Program.cs diff --git a/samples/AzureKeyVault/settings.json b/src/DataProtection/samples/AzureKeyVault/settings.json similarity index 100% rename from samples/AzureKeyVault/settings.json rename to src/DataProtection/samples/AzureKeyVault/settings.json diff --git a/samples/CustomEncryptorSample/CustomBuilderExtensions.cs b/src/DataProtection/samples/CustomEncryptorSample/CustomBuilderExtensions.cs similarity index 100% rename from samples/CustomEncryptorSample/CustomBuilderExtensions.cs rename to src/DataProtection/samples/CustomEncryptorSample/CustomBuilderExtensions.cs diff --git a/samples/CustomEncryptorSample/CustomEncryptorSample.csproj b/src/DataProtection/samples/CustomEncryptorSample/CustomEncryptorSample.csproj similarity index 100% rename from samples/CustomEncryptorSample/CustomEncryptorSample.csproj rename to src/DataProtection/samples/CustomEncryptorSample/CustomEncryptorSample.csproj diff --git a/samples/CustomEncryptorSample/CustomXmlDecryptor.cs b/src/DataProtection/samples/CustomEncryptorSample/CustomXmlDecryptor.cs similarity index 100% rename from samples/CustomEncryptorSample/CustomXmlDecryptor.cs rename to src/DataProtection/samples/CustomEncryptorSample/CustomXmlDecryptor.cs diff --git a/samples/CustomEncryptorSample/CustomXmlEncryptor.cs b/src/DataProtection/samples/CustomEncryptorSample/CustomXmlEncryptor.cs similarity index 100% rename from samples/CustomEncryptorSample/CustomXmlEncryptor.cs rename to src/DataProtection/samples/CustomEncryptorSample/CustomXmlEncryptor.cs diff --git a/samples/CustomEncryptorSample/Program.cs b/src/DataProtection/samples/CustomEncryptorSample/Program.cs similarity index 100% rename from samples/CustomEncryptorSample/Program.cs rename to src/DataProtection/samples/CustomEncryptorSample/Program.cs diff --git a/samples/EntityFrameworkCoreSample/EntityFrameworkCoreSample.csproj b/src/DataProtection/samples/EntityFrameworkCoreSample/EntityFrameworkCoreSample.csproj similarity index 100% rename from samples/EntityFrameworkCoreSample/EntityFrameworkCoreSample.csproj rename to src/DataProtection/samples/EntityFrameworkCoreSample/EntityFrameworkCoreSample.csproj diff --git a/samples/EntityFrameworkCoreSample/Program.cs b/src/DataProtection/samples/EntityFrameworkCoreSample/Program.cs similarity index 100% rename from samples/EntityFrameworkCoreSample/Program.cs rename to src/DataProtection/samples/EntityFrameworkCoreSample/Program.cs diff --git a/samples/KeyManagementSample/KeyManagementSample.csproj b/src/DataProtection/samples/KeyManagementSample/KeyManagementSample.csproj similarity index 100% rename from samples/KeyManagementSample/KeyManagementSample.csproj rename to src/DataProtection/samples/KeyManagementSample/KeyManagementSample.csproj diff --git a/samples/KeyManagementSample/Program.cs b/src/DataProtection/samples/KeyManagementSample/Program.cs similarity index 100% rename from samples/KeyManagementSample/Program.cs rename to src/DataProtection/samples/KeyManagementSample/Program.cs diff --git a/samples/NonDISample/NonDISample.csproj b/src/DataProtection/samples/NonDISample/NonDISample.csproj similarity index 100% rename from samples/NonDISample/NonDISample.csproj rename to src/DataProtection/samples/NonDISample/NonDISample.csproj diff --git a/samples/NonDISample/Program.cs b/src/DataProtection/samples/NonDISample/Program.cs similarity index 100% rename from samples/NonDISample/Program.cs rename to src/DataProtection/samples/NonDISample/Program.cs diff --git a/samples/Redis/Program.cs b/src/DataProtection/samples/Redis/Program.cs similarity index 100% rename from samples/Redis/Program.cs rename to src/DataProtection/samples/Redis/Program.cs diff --git a/samples/Redis/Redis.csproj b/src/DataProtection/samples/Redis/Redis.csproj similarity index 100% rename from samples/Redis/Redis.csproj rename to src/DataProtection/samples/Redis/Redis.csproj diff --git a/shared/EncodingUtil.cs b/src/DataProtection/shared/EncodingUtil.cs similarity index 100% rename from shared/EncodingUtil.cs rename to src/DataProtection/shared/EncodingUtil.cs diff --git a/shared/ExceptionExtensions.cs b/src/DataProtection/shared/ExceptionExtensions.cs similarity index 100% rename from shared/ExceptionExtensions.cs rename to src/DataProtection/shared/ExceptionExtensions.cs diff --git a/src/Directory.Build.props b/src/DataProtection/src/Directory.Build.props similarity index 100% rename from src/Directory.Build.props rename to src/DataProtection/src/Directory.Build.props diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCRYPT_KEY_LENGTHS_STRUCT.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCRYPT_KEY_LENGTHS_STRUCT.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCRYPT_KEY_LENGTHS_STRUCT.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCRYPT_KEY_LENGTHS_STRUCT.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptBuffer.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptBuffer.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptBuffer.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptBuffer.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptBufferDesc.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptBufferDesc.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptBufferDesc.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptBufferDesc.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptEncryptFlags.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptEncryptFlags.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptEncryptFlags.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptEncryptFlags.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptGenRandomFlags.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptGenRandomFlags.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptGenRandomFlags.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptGenRandomFlags.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptKeyDerivationBufferType.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptKeyDerivationBufferType.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptKeyDerivationBufferType.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptKeyDerivationBufferType.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptUtil.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptUtil.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptUtil.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/BCryptUtil.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/CachedAlgorithmHandles.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/CachedAlgorithmHandles.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/Cng/CachedAlgorithmHandles.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/CachedAlgorithmHandles.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/NCryptEncryptFlags.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/NCryptEncryptFlags.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/Cng/NCryptEncryptFlags.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/NCryptEncryptFlags.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/OSVersionUtil.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/OSVersionUtil.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/Cng/OSVersionUtil.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Cng/OSVersionUtil.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/Constants.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Constants.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/Constants.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Constants.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/CryptoUtil.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/CryptoUtil.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/CryptoUtil.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/CryptoUtil.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/DATA_BLOB.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/DATA_BLOB.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/DATA_BLOB.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/DATA_BLOB.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/Microsoft.AspNetCore.Cryptography.Internal.csproj b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Microsoft.AspNetCore.Cryptography.Internal.csproj similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/Microsoft.AspNetCore.Cryptography.Internal.csproj rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Microsoft.AspNetCore.Cryptography.Internal.csproj diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/Properties/AssemblyInfo.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Properties/AssemblyInfo.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/Properties/AssemblyInfo.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Properties/AssemblyInfo.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/Properties/Resources.Designer.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Properties/Resources.Designer.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/Properties/Resources.Designer.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Properties/Resources.Designer.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/Resources.resx b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Resources.resx similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/Resources.resx rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/Resources.resx diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/BCryptAlgorithmHandle.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/BCryptAlgorithmHandle.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/BCryptAlgorithmHandle.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/BCryptAlgorithmHandle.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/BCryptHandle.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/BCryptHandle.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/BCryptHandle.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/BCryptHandle.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/BCryptHashHandle.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/BCryptHashHandle.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/BCryptHashHandle.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/BCryptHashHandle.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/BCryptKeyHandle.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/BCryptKeyHandle.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/BCryptKeyHandle.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/BCryptKeyHandle.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/LocalAllocHandle.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/LocalAllocHandle.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/LocalAllocHandle.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/LocalAllocHandle.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/NCryptDescriptorHandle.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/NCryptDescriptorHandle.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/NCryptDescriptorHandle.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/NCryptDescriptorHandle.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/SafeLibraryHandle.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/SafeLibraryHandle.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/SafeLibraryHandle.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/SafeLibraryHandle.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/SecureLocalAllocHandle.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/SecureLocalAllocHandle.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/SecureLocalAllocHandle.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/SafeHandles/SecureLocalAllocHandle.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/UnsafeBufferUtil.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/UnsafeBufferUtil.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/UnsafeBufferUtil.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/UnsafeBufferUtil.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/UnsafeNativeMethods.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/UnsafeNativeMethods.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/UnsafeNativeMethods.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/UnsafeNativeMethods.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/WeakReferenceHelpers.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/WeakReferenceHelpers.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/WeakReferenceHelpers.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/WeakReferenceHelpers.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.Internal/baseline.netcore.json b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/baseline.netcore.json similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.Internal/baseline.netcore.json rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.Internal/baseline.netcore.json diff --git a/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/KeyDerivation.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/KeyDerivation.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.KeyDerivation/KeyDerivation.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/KeyDerivation.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/KeyDerivationPrf.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/KeyDerivationPrf.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.KeyDerivation/KeyDerivationPrf.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/KeyDerivationPrf.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/Microsoft.AspNetCore.Cryptography.KeyDerivation.csproj b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/Microsoft.AspNetCore.Cryptography.KeyDerivation.csproj similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.KeyDerivation/Microsoft.AspNetCore.Cryptography.KeyDerivation.csproj rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/Microsoft.AspNetCore.Cryptography.KeyDerivation.csproj diff --git a/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/IPbkdf2Provider.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/IPbkdf2Provider.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/IPbkdf2Provider.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/IPbkdf2Provider.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/ManagedPbkdf2Provider.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/ManagedPbkdf2Provider.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/ManagedPbkdf2Provider.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/ManagedPbkdf2Provider.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/NetCorePbkdf2Provider.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/NetCorePbkdf2Provider.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/NetCorePbkdf2Provider.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/NetCorePbkdf2Provider.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/Pbkdf2Util.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/Pbkdf2Util.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/Pbkdf2Util.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/Pbkdf2Util.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/Win7Pbkdf2Provider.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/Win7Pbkdf2Provider.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/Win7Pbkdf2Provider.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/Win7Pbkdf2Provider.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/Win8Pbkdf2Provider.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/Win8Pbkdf2Provider.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/Win8Pbkdf2Provider.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/PBKDF2/Win8Pbkdf2Provider.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/Properties/AssemblyInfo.cs b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/Properties/AssemblyInfo.cs similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.KeyDerivation/Properties/AssemblyInfo.cs rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/Properties/AssemblyInfo.cs diff --git a/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/baseline.netcore.json b/src/DataProtection/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/baseline.netcore.json similarity index 100% rename from src/Microsoft.AspNetCore.Cryptography.KeyDerivation/baseline.netcore.json rename to src/DataProtection/src/Microsoft.AspNetCore.Cryptography.KeyDerivation/baseline.netcore.json diff --git a/src/Microsoft.AspNetCore.DataProtection.Abstractions/CryptoUtil.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Abstractions/CryptoUtil.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.Abstractions/CryptoUtil.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Abstractions/CryptoUtil.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.Abstractions/DataProtectionCommonExtensions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Abstractions/DataProtectionCommonExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.Abstractions/DataProtectionCommonExtensions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Abstractions/DataProtectionCommonExtensions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.Abstractions/Error.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Abstractions/Error.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.Abstractions/Error.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Abstractions/Error.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.Abstractions/IDataProtectionProvider.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Abstractions/IDataProtectionProvider.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.Abstractions/IDataProtectionProvider.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Abstractions/IDataProtectionProvider.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.Abstractions/IDataProtector.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Abstractions/IDataProtector.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.Abstractions/IDataProtector.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Abstractions/IDataProtector.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.Abstractions/Infrastructure/IApplicationDiscriminator.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Abstractions/Infrastructure/IApplicationDiscriminator.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.Abstractions/Infrastructure/IApplicationDiscriminator.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Abstractions/Infrastructure/IApplicationDiscriminator.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.Abstractions/Microsoft.AspNetCore.DataProtection.Abstractions.csproj b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Abstractions/Microsoft.AspNetCore.DataProtection.Abstractions.csproj similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.Abstractions/Microsoft.AspNetCore.DataProtection.Abstractions.csproj rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Abstractions/Microsoft.AspNetCore.DataProtection.Abstractions.csproj diff --git a/src/Microsoft.AspNetCore.DataProtection.Abstractions/Properties/AssemblyInfo.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Abstractions/Properties/AssemblyInfo.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.Abstractions/Properties/AssemblyInfo.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Abstractions/Properties/AssemblyInfo.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.Abstractions/Properties/Resources.Designer.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Abstractions/Properties/Resources.Designer.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.Abstractions/Properties/Resources.Designer.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Abstractions/Properties/Resources.Designer.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.Abstractions/Resources.resx b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Abstractions/Resources.resx similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.Abstractions/Resources.resx rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Abstractions/Resources.resx diff --git a/src/Microsoft.AspNetCore.DataProtection.Abstractions/baseline.netcore.json b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Abstractions/baseline.netcore.json similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.Abstractions/baseline.netcore.json rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Abstractions/baseline.netcore.json diff --git a/src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/AzureDataProtectionBuilderExtensions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/AzureDataProtectionBuilderExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/AzureDataProtectionBuilderExtensions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/AzureDataProtectionBuilderExtensions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/AzureKeyVaultXmlDecryptor.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/AzureKeyVaultXmlDecryptor.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/AzureKeyVaultXmlDecryptor.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/AzureKeyVaultXmlDecryptor.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/AzureKeyVaultXmlEncryptor.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/AzureKeyVaultXmlEncryptor.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/AzureKeyVaultXmlEncryptor.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/AzureKeyVaultXmlEncryptor.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/IKeyVaultWrappingClient.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/IKeyVaultWrappingClient.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/IKeyVaultWrappingClient.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/IKeyVaultWrappingClient.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/KeyVaultClientWrapper.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/KeyVaultClientWrapper.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/KeyVaultClientWrapper.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/KeyVaultClientWrapper.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/Microsoft.AspNetCore.DataProtection.AzureKeyVault.csproj b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/Microsoft.AspNetCore.DataProtection.AzureKeyVault.csproj similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/Microsoft.AspNetCore.DataProtection.AzureKeyVault.csproj rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/Microsoft.AspNetCore.DataProtection.AzureKeyVault.csproj diff --git a/src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/Properties/AssemblyInfo.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/Properties/AssemblyInfo.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/Properties/AssemblyInfo.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.AzureKeyVault/Properties/AssemblyInfo.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.AzureStorage/AzureBlobXmlRepository.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.AzureStorage/AzureBlobXmlRepository.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.AzureStorage/AzureBlobXmlRepository.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.AzureStorage/AzureBlobXmlRepository.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.AzureStorage/AzureDataProtectionBuilderExtensions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.AzureStorage/AzureDataProtectionBuilderExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.AzureStorage/AzureDataProtectionBuilderExtensions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.AzureStorage/AzureDataProtectionBuilderExtensions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.AzureStorage/Microsoft.AspNetCore.DataProtection.AzureStorage.csproj b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.AzureStorage/Microsoft.AspNetCore.DataProtection.AzureStorage.csproj similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.AzureStorage/Microsoft.AspNetCore.DataProtection.AzureStorage.csproj rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.AzureStorage/Microsoft.AspNetCore.DataProtection.AzureStorage.csproj diff --git a/src/Microsoft.AspNetCore.DataProtection.AzureStorage/baseline.netcore.json b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.AzureStorage/baseline.netcore.json similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.AzureStorage/baseline.netcore.json rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.AzureStorage/baseline.netcore.json diff --git a/src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/DataProtectionKey.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/DataProtectionKey.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/DataProtectionKey.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/DataProtectionKey.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/EntityFrameworkCoreDataProtectionExtensions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/EntityFrameworkCoreDataProtectionExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/EntityFrameworkCoreDataProtectionExtensions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/EntityFrameworkCoreDataProtectionExtensions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/EntityFrameworkCoreXmlRepository.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/EntityFrameworkCoreXmlRepository.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/EntityFrameworkCoreXmlRepository.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/EntityFrameworkCoreXmlRepository.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/IDataProtectionKeyContext.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/IDataProtectionKeyContext.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/IDataProtectionKeyContext.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/IDataProtectionKeyContext.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/LoggingExtensions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/LoggingExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/LoggingExtensions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/LoggingExtensions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.csproj b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.csproj similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.csproj rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.csproj diff --git a/src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/baseline.netcore.json b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/baseline.netcore.json similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/baseline.netcore.json rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/baseline.netcore.json diff --git a/src/Microsoft.AspNetCore.DataProtection.Extensions/BitHelpers.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Extensions/BitHelpers.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.Extensions/BitHelpers.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Extensions/BitHelpers.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.Extensions/DataProtectionAdvancedExtensions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Extensions/DataProtectionAdvancedExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.Extensions/DataProtectionAdvancedExtensions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Extensions/DataProtectionAdvancedExtensions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.Extensions/DataProtectionProvider.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Extensions/DataProtectionProvider.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.Extensions/DataProtectionProvider.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Extensions/DataProtectionProvider.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.Extensions/ITimeLimitedDataProtector.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Extensions/ITimeLimitedDataProtector.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.Extensions/ITimeLimitedDataProtector.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Extensions/ITimeLimitedDataProtector.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.Extensions/Microsoft.AspNetCore.DataProtection.Extensions.csproj b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Extensions/Microsoft.AspNetCore.DataProtection.Extensions.csproj similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.Extensions/Microsoft.AspNetCore.DataProtection.Extensions.csproj rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Extensions/Microsoft.AspNetCore.DataProtection.Extensions.csproj diff --git a/src/Microsoft.AspNetCore.DataProtection.Extensions/Properties/AssemblyInfo.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Extensions/Properties/AssemblyInfo.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.Extensions/Properties/AssemblyInfo.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Extensions/Properties/AssemblyInfo.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.Extensions/Properties/Resources.Designer.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Extensions/Properties/Resources.Designer.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.Extensions/Properties/Resources.Designer.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Extensions/Properties/Resources.Designer.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.Extensions/Resources.resx b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Extensions/Resources.resx similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.Extensions/Resources.resx rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Extensions/Resources.resx diff --git a/src/Microsoft.AspNetCore.DataProtection.Extensions/TimeLimitedDataProtector.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Extensions/TimeLimitedDataProtector.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.Extensions/TimeLimitedDataProtector.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Extensions/TimeLimitedDataProtector.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.Extensions/baseline.netcore.json b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Extensions/baseline.netcore.json similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.Extensions/baseline.netcore.json rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.Extensions/baseline.netcore.json diff --git a/src/Microsoft.AspNetCore.DataProtection.StackExchangeRedis/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.csproj b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.StackExchangeRedis/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.csproj similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.StackExchangeRedis/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.csproj rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.StackExchangeRedis/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.csproj diff --git a/src/Microsoft.AspNetCore.DataProtection.StackExchangeRedis/RedisDataProtectionBuilderExtensions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.StackExchangeRedis/RedisDataProtectionBuilderExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.StackExchangeRedis/RedisDataProtectionBuilderExtensions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.StackExchangeRedis/RedisDataProtectionBuilderExtensions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.StackExchangeRedis/RedisXmlRepository.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.StackExchangeRedis/RedisXmlRepository.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.StackExchangeRedis/RedisXmlRepository.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.StackExchangeRedis/RedisXmlRepository.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.SystemWeb/CompatibilityDataProtector.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.SystemWeb/CompatibilityDataProtector.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.SystemWeb/CompatibilityDataProtector.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.SystemWeb/CompatibilityDataProtector.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.SystemWeb/DataProtectionStartup.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.SystemWeb/DataProtectionStartup.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.SystemWeb/DataProtectionStartup.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.SystemWeb/DataProtectionStartup.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.SystemWeb/Microsoft.AspNetCore.DataProtection.SystemWeb.csproj b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.SystemWeb/Microsoft.AspNetCore.DataProtection.SystemWeb.csproj similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.SystemWeb/Microsoft.AspNetCore.DataProtection.SystemWeb.csproj rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.SystemWeb/Microsoft.AspNetCore.DataProtection.SystemWeb.csproj diff --git a/src/Microsoft.AspNetCore.DataProtection.SystemWeb/Properties/Resources.Designer.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.SystemWeb/Properties/Resources.Designer.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.SystemWeb/Properties/Resources.Designer.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.SystemWeb/Properties/Resources.Designer.cs diff --git a/src/Microsoft.AspNetCore.DataProtection.SystemWeb/Resources.resx b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.SystemWeb/Resources.resx similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.SystemWeb/Resources.resx rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.SystemWeb/Resources.resx diff --git a/src/Microsoft.AspNetCore.DataProtection.SystemWeb/baseline.netframework.json b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.SystemWeb/baseline.netframework.json similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.SystemWeb/baseline.netframework.json rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.SystemWeb/baseline.netframework.json diff --git a/src/Microsoft.AspNetCore.DataProtection.SystemWeb/web.config.transform b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection.SystemWeb/web.config.transform similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection.SystemWeb/web.config.transform rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection.SystemWeb/web.config.transform diff --git a/src/Microsoft.AspNetCore.DataProtection/ActivatorExtensions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/ActivatorExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/ActivatorExtensions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/ActivatorExtensions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/ApplyPolicyAttribute.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/ApplyPolicyAttribute.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/ApplyPolicyAttribute.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/ApplyPolicyAttribute.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/ArraySegmentExtensions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/ArraySegmentExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/ArraySegmentExtensions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/ArraySegmentExtensions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/AlgorithmAssert.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/AlgorithmAssert.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/AlgorithmAssert.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/AlgorithmAssert.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/AuthenticatedEncryptorExtensions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/AuthenticatedEncryptorExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/AuthenticatedEncryptorExtensions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/AuthenticatedEncryptorExtensions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/AuthenticatedEncryptorFactory.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/AuthenticatedEncryptorFactory.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/AuthenticatedEncryptorFactory.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/AuthenticatedEncryptorFactory.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/CngCbcAuthenticatedEncryptorFactory.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/CngCbcAuthenticatedEncryptorFactory.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/CngCbcAuthenticatedEncryptorFactory.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/CngCbcAuthenticatedEncryptorFactory.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/CngGcmAuthenticatedEncryptorFactory.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/CngGcmAuthenticatedEncryptorFactory.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/CngGcmAuthenticatedEncryptorFactory.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/CngGcmAuthenticatedEncryptorFactory.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/AlgorithmConfiguration.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/AlgorithmConfiguration.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/AlgorithmConfiguration.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/AlgorithmConfiguration.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/AuthenticatedEncryptorConfiguration.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/AuthenticatedEncryptorConfiguration.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/AuthenticatedEncryptorConfiguration.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/AuthenticatedEncryptorConfiguration.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/AuthenticatedEncryptorDescriptor.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/AuthenticatedEncryptorDescriptor.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/AuthenticatedEncryptorDescriptor.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/AuthenticatedEncryptorDescriptor.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/AuthenticatedEncryptorDescriptorDeserializer.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/AuthenticatedEncryptorDescriptorDeserializer.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/AuthenticatedEncryptorDescriptorDeserializer.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/AuthenticatedEncryptorDescriptorDeserializer.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorConfiguration.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorConfiguration.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorConfiguration.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorConfiguration.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorDescriptor.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorDescriptor.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorDescriptor.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorDescriptor.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorDescriptorDeserializer.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorDescriptorDeserializer.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorDescriptorDeserializer.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorDescriptorDeserializer.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorConfiguration.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorConfiguration.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorConfiguration.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorConfiguration.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorDescriptor.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorDescriptor.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorDescriptor.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorDescriptor.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorDescriptorDeserializer.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorDescriptorDeserializer.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorDescriptorDeserializer.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorDescriptorDeserializer.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/IAuthenticatedEncryptorDescriptor.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/IAuthenticatedEncryptorDescriptor.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/IAuthenticatedEncryptorDescriptor.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/IAuthenticatedEncryptorDescriptor.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/IAuthenticatedEncryptorDescriptorDeserializer.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/IAuthenticatedEncryptorDescriptorDeserializer.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/IAuthenticatedEncryptorDescriptorDeserializer.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/IAuthenticatedEncryptorDescriptorDeserializer.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/IInternalAlgorithmConfiguration.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/IInternalAlgorithmConfiguration.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/IInternalAlgorithmConfiguration.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/IInternalAlgorithmConfiguration.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorConfiguration.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorConfiguration.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorConfiguration.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorConfiguration.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorDescriptor.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorDescriptor.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorDescriptor.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorDescriptor.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorDescriptorDeserializer.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorDescriptorDeserializer.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorDescriptorDeserializer.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorDescriptorDeserializer.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/SecretExtensions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/SecretExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/SecretExtensions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/SecretExtensions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/XmlExtensions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/XmlExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/XmlExtensions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/XmlExtensions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/XmlSerializedDescriptorInfo.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/XmlSerializedDescriptorInfo.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/XmlSerializedDescriptorInfo.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ConfigurationModel/XmlSerializedDescriptorInfo.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/EncryptionAlgorithm.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/EncryptionAlgorithm.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/EncryptionAlgorithm.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/EncryptionAlgorithm.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/IAuthenticatedEncryptor.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/IAuthenticatedEncryptor.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/IAuthenticatedEncryptor.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/IAuthenticatedEncryptor.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/IAuthenticatedEncryptorFactory.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/IAuthenticatedEncryptorFactory.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/IAuthenticatedEncryptorFactory.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/IAuthenticatedEncryptorFactory.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/IOptimizedAuthenticatedEncryptor.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/IOptimizedAuthenticatedEncryptor.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/IOptimizedAuthenticatedEncryptor.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/IOptimizedAuthenticatedEncryptor.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ManagedAuthenticatedEncryptorFactory.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ManagedAuthenticatedEncryptorFactory.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ManagedAuthenticatedEncryptorFactory.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ManagedAuthenticatedEncryptorFactory.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ValidationAlgorithm.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ValidationAlgorithm.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ValidationAlgorithm.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/AuthenticatedEncryption/ValidationAlgorithm.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/BitHelpers.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/BitHelpers.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/BitHelpers.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/BitHelpers.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Cng/BCryptGenRandomImpl.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Cng/BCryptGenRandomImpl.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Cng/BCryptGenRandomImpl.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Cng/BCryptGenRandomImpl.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Cng/CbcAuthenticatedEncryptor.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Cng/CbcAuthenticatedEncryptor.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Cng/CbcAuthenticatedEncryptor.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Cng/CbcAuthenticatedEncryptor.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Cng/DpapiSecretSerializerHelper.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Cng/DpapiSecretSerializerHelper.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Cng/DpapiSecretSerializerHelper.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Cng/DpapiSecretSerializerHelper.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Cng/GcmAuthenticatedEncryptor.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Cng/GcmAuthenticatedEncryptor.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Cng/GcmAuthenticatedEncryptor.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Cng/GcmAuthenticatedEncryptor.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Cng/IBCryptGenRandom.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Cng/IBCryptGenRandom.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Cng/IBCryptGenRandom.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Cng/IBCryptGenRandom.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Cng/Internal/CngAuthenticatedEncryptorBase.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Cng/Internal/CngAuthenticatedEncryptorBase.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Cng/Internal/CngAuthenticatedEncryptorBase.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Cng/Internal/CngAuthenticatedEncryptorBase.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/DataProtectionBuilderExtensions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/DataProtectionBuilderExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/DataProtectionBuilderExtensions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/DataProtectionBuilderExtensions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/DataProtectionOptions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/DataProtectionOptions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/DataProtectionOptions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/DataProtectionOptions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/DataProtectionServiceCollectionExtensions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/DataProtectionServiceCollectionExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/DataProtectionServiceCollectionExtensions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/DataProtectionServiceCollectionExtensions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/DataProtectionUtilityExtensions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/DataProtectionUtilityExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/DataProtectionUtilityExtensions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/DataProtectionUtilityExtensions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/EphemeralDataProtectionProvider.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/EphemeralDataProtectionProvider.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/EphemeralDataProtectionProvider.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/EphemeralDataProtectionProvider.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Error.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Error.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Error.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Error.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/IDataProtectionBuilder.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/IDataProtectionBuilder.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/IDataProtectionBuilder.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/IDataProtectionBuilder.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/IPersistedDataProtector.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/IPersistedDataProtector.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/IPersistedDataProtector.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/IPersistedDataProtector.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/IRegistryPolicyResolver.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/IRegistryPolicyResolver.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/IRegistryPolicyResolver.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/IRegistryPolicyResolver.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/ISecret.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/ISecret.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/ISecret.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/ISecret.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Internal/DataProtectionBuilder.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Internal/DataProtectionBuilder.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Internal/DataProtectionBuilder.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Internal/DataProtectionBuilder.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Internal/DataProtectionOptionsSetup.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Internal/DataProtectionOptionsSetup.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Internal/DataProtectionOptionsSetup.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Internal/DataProtectionOptionsSetup.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Internal/DataProtectionStartupFilter.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Internal/DataProtectionStartupFilter.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Internal/DataProtectionStartupFilter.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Internal/DataProtectionStartupFilter.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Internal/DockerUtils.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Internal/DockerUtils.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Internal/DockerUtils.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Internal/DockerUtils.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Internal/HostingApplicationDiscriminator.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Internal/HostingApplicationDiscriminator.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Internal/HostingApplicationDiscriminator.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Internal/HostingApplicationDiscriminator.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Internal/IActivator.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Internal/IActivator.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Internal/IActivator.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Internal/IActivator.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Internal/KeyManagementOptionsSetup.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Internal/KeyManagementOptionsSetup.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Internal/KeyManagementOptionsSetup.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Internal/KeyManagementOptionsSetup.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/KeyManagement/DefaultKeyResolver.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/DefaultKeyResolver.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/KeyManagement/DefaultKeyResolver.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/DefaultKeyResolver.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/KeyManagement/DeferredKey.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/DeferredKey.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/KeyManagement/DeferredKey.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/DeferredKey.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/KeyManagement/IKey.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/IKey.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/KeyManagement/IKey.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/IKey.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/KeyManagement/IKeyEscrowSink.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/IKeyEscrowSink.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/KeyManagement/IKeyEscrowSink.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/IKeyEscrowSink.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/KeyManagement/IKeyManager.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/IKeyManager.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/KeyManagement/IKeyManager.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/IKeyManager.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/CacheableKeyRing.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/CacheableKeyRing.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/CacheableKeyRing.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/CacheableKeyRing.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/DefaultKeyResolution.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/DefaultKeyResolution.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/DefaultKeyResolution.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/DefaultKeyResolution.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/ICacheableKeyRingProvider.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/ICacheableKeyRingProvider.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/ICacheableKeyRingProvider.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/ICacheableKeyRingProvider.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/IDefaultKeyResolver.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/IDefaultKeyResolver.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/IDefaultKeyResolver.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/IDefaultKeyResolver.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/IInternalXmlKeyManager.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/IInternalXmlKeyManager.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/IInternalXmlKeyManager.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/IInternalXmlKeyManager.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/IKeyRing.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/IKeyRing.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/IKeyRing.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/IKeyRing.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/IKeyRingProvider.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/IKeyRingProvider.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/IKeyRingProvider.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/Internal/IKeyRingProvider.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/KeyManagement/Key.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/Key.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/KeyManagement/Key.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/Key.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyBase.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyBase.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyBase.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyBase.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyEscrowServiceProviderExtensions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyEscrowServiceProviderExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyEscrowServiceProviderExtensions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyEscrowServiceProviderExtensions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyExtensions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyExtensions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyExtensions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyManagementOptions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyManagementOptions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyManagementOptions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyManagementOptions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyRing.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyRing.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyRing.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyRing.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyRingBasedDataProtectionProvider.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyRingBasedDataProtectionProvider.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyRingBasedDataProtectionProvider.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyRingBasedDataProtectionProvider.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyRingBasedDataProtector.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyRingBasedDataProtector.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyRingBasedDataProtector.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyRingBasedDataProtector.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyRingProvider.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyRingProvider.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyRingProvider.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/KeyRingProvider.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/KeyManagement/XmlKeyManager.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/XmlKeyManager.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/KeyManagement/XmlKeyManager.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/KeyManagement/XmlKeyManager.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/LoggingExtensions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/LoggingExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/LoggingExtensions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/LoggingExtensions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/LoggingServiceProviderExtensions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/LoggingServiceProviderExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/LoggingServiceProviderExtensions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/LoggingServiceProviderExtensions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Managed/HashAlgorithmExtensions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Managed/HashAlgorithmExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Managed/HashAlgorithmExtensions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Managed/HashAlgorithmExtensions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Managed/IManagedGenRandom.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Managed/IManagedGenRandom.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Managed/IManagedGenRandom.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Managed/IManagedGenRandom.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Managed/ManagedAuthenticatedEncryptor.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Managed/ManagedAuthenticatedEncryptor.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Managed/ManagedAuthenticatedEncryptor.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Managed/ManagedAuthenticatedEncryptor.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Managed/ManagedGenRandomImpl.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Managed/ManagedGenRandomImpl.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Managed/ManagedGenRandomImpl.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Managed/ManagedGenRandomImpl.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Managed/SymmetricAlgorithmExtensions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Managed/SymmetricAlgorithmExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Managed/SymmetricAlgorithmExtensions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Managed/SymmetricAlgorithmExtensions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/MemoryProtection.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/MemoryProtection.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/MemoryProtection.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/MemoryProtection.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Microsoft.AspNetCore.DataProtection.csproj b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Microsoft.AspNetCore.DataProtection.csproj similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Microsoft.AspNetCore.DataProtection.csproj rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Microsoft.AspNetCore.DataProtection.csproj diff --git a/src/Microsoft.AspNetCore.DataProtection/Properties/AssemblyInfo.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Properties/AssemblyInfo.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Properties/AssemblyInfo.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Properties/AssemblyInfo.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Properties/Resources.Designer.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Properties/Resources.Designer.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Properties/Resources.Designer.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Properties/Resources.Designer.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/RegistryPolicy.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/RegistryPolicy.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/RegistryPolicy.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/RegistryPolicy.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/RegistryPolicyResolver.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/RegistryPolicyResolver.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/RegistryPolicyResolver.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/RegistryPolicyResolver.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Repositories/DefaultKeyStorageDirectories.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Repositories/DefaultKeyStorageDirectories.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Repositories/DefaultKeyStorageDirectories.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Repositories/DefaultKeyStorageDirectories.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Repositories/EphemeralXmlRepository.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Repositories/EphemeralXmlRepository.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Repositories/EphemeralXmlRepository.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Repositories/EphemeralXmlRepository.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Repositories/FileSystemXmlRepository.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Repositories/FileSystemXmlRepository.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Repositories/FileSystemXmlRepository.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Repositories/FileSystemXmlRepository.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Repositories/IDefaultKeyStorageDirectory.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Repositories/IDefaultKeyStorageDirectory.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Repositories/IDefaultKeyStorageDirectory.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Repositories/IDefaultKeyStorageDirectory.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Repositories/IXmlRepository.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Repositories/IXmlRepository.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Repositories/IXmlRepository.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Repositories/IXmlRepository.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Repositories/RegistryXmlRepository.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Repositories/RegistryXmlRepository.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Repositories/RegistryXmlRepository.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Repositories/RegistryXmlRepository.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Resources.resx b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Resources.resx similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Resources.resx rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Resources.resx diff --git a/src/Microsoft.AspNetCore.DataProtection/SP800_108/ISP800_108_CTR_HMACSHA512Provider.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/SP800_108/ISP800_108_CTR_HMACSHA512Provider.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/SP800_108/ISP800_108_CTR_HMACSHA512Provider.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/SP800_108/ISP800_108_CTR_HMACSHA512Provider.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/SP800_108/ManagedSP800_108_CTR_HMACSHA512.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/SP800_108/ManagedSP800_108_CTR_HMACSHA512.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/SP800_108/ManagedSP800_108_CTR_HMACSHA512.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/SP800_108/ManagedSP800_108_CTR_HMACSHA512.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/SP800_108/SP800_108_CTR_HMACSHA512Extensions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/SP800_108/SP800_108_CTR_HMACSHA512Extensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/SP800_108/SP800_108_CTR_HMACSHA512Extensions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/SP800_108/SP800_108_CTR_HMACSHA512Extensions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/SP800_108/SP800_108_CTR_HMACSHA512Util.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/SP800_108/SP800_108_CTR_HMACSHA512Util.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/SP800_108/SP800_108_CTR_HMACSHA512Util.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/SP800_108/SP800_108_CTR_HMACSHA512Util.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/SP800_108/Win7SP800_108_CTR_HMACSHA512Provider.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/SP800_108/Win7SP800_108_CTR_HMACSHA512Provider.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/SP800_108/Win7SP800_108_CTR_HMACSHA512Provider.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/SP800_108/Win7SP800_108_CTR_HMACSHA512Provider.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/SP800_108/Win8SP800_108_CTR_HMACSHA512Provider.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/SP800_108/Win8SP800_108_CTR_HMACSHA512Provider.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/SP800_108/Win8SP800_108_CTR_HMACSHA512Provider.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/SP800_108/Win8SP800_108_CTR_HMACSHA512Provider.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/Secret.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Secret.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/Secret.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/Secret.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/SimpleActivator.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/SimpleActivator.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/SimpleActivator.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/SimpleActivator.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/TypeExtensions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/TypeExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/TypeExtensions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/TypeExtensions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/TypeForwardingActivator.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/TypeForwardingActivator.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/TypeForwardingActivator.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/TypeForwardingActivator.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/XmlConstants.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlConstants.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/XmlConstants.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlConstants.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/CertificateResolver.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/CertificateResolver.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/XmlEncryption/CertificateResolver.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/CertificateResolver.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/CertificateXmlEncryptor.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/CertificateXmlEncryptor.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/XmlEncryption/CertificateXmlEncryptor.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/CertificateXmlEncryptor.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/DpapiNGProtectionDescriptorFlags.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/DpapiNGProtectionDescriptorFlags.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/XmlEncryption/DpapiNGProtectionDescriptorFlags.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/DpapiNGProtectionDescriptorFlags.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/DpapiNGXmlDecryptor.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/DpapiNGXmlDecryptor.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/XmlEncryption/DpapiNGXmlDecryptor.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/DpapiNGXmlDecryptor.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/DpapiNGXmlEncryptor.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/DpapiNGXmlEncryptor.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/XmlEncryption/DpapiNGXmlEncryptor.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/DpapiNGXmlEncryptor.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/DpapiXmlDecryptor.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/DpapiXmlDecryptor.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/XmlEncryption/DpapiXmlDecryptor.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/DpapiXmlDecryptor.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/DpapiXmlEncryptor.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/DpapiXmlEncryptor.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/XmlEncryption/DpapiXmlEncryptor.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/DpapiXmlEncryptor.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/EncryptedXmlDecryptor.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/EncryptedXmlDecryptor.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/XmlEncryption/EncryptedXmlDecryptor.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/EncryptedXmlDecryptor.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/EncryptedXmlInfo.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/EncryptedXmlInfo.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/XmlEncryption/EncryptedXmlInfo.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/EncryptedXmlInfo.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/ICertificateResolver.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/ICertificateResolver.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/XmlEncryption/ICertificateResolver.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/ICertificateResolver.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/IInternalCertificateXmlEncryptor.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/IInternalCertificateXmlEncryptor.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/XmlEncryption/IInternalCertificateXmlEncryptor.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/IInternalCertificateXmlEncryptor.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/IInternalEncryptedXmlDecryptor.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/IInternalEncryptedXmlDecryptor.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/XmlEncryption/IInternalEncryptedXmlDecryptor.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/IInternalEncryptedXmlDecryptor.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/IXmlDecryptor.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/IXmlDecryptor.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/XmlEncryption/IXmlDecryptor.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/IXmlDecryptor.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/IXmlEncryptor.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/IXmlEncryptor.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/XmlEncryption/IXmlEncryptor.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/IXmlEncryptor.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/NullXmlDecryptor.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/NullXmlDecryptor.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/XmlEncryption/NullXmlDecryptor.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/NullXmlDecryptor.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/NullXmlEncryptor.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/NullXmlEncryptor.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/XmlEncryption/NullXmlEncryptor.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/NullXmlEncryptor.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/XmlEncryptionExtensions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/XmlEncryptionExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/XmlEncryption/XmlEncryptionExtensions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/XmlEncryptionExtensions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/XmlKeyDecryptionOptions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/XmlKeyDecryptionOptions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/XmlEncryption/XmlKeyDecryptionOptions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlEncryption/XmlKeyDecryptionOptions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/XmlExtensions.cs b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/XmlExtensions.cs rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/XmlExtensions.cs diff --git a/src/Microsoft.AspNetCore.DataProtection/baseline.netcore.json b/src/DataProtection/src/Microsoft.AspNetCore.DataProtection/baseline.netcore.json similarity index 100% rename from src/Microsoft.AspNetCore.DataProtection/baseline.netcore.json rename to src/DataProtection/src/Microsoft.AspNetCore.DataProtection/baseline.netcore.json diff --git a/test/CreateTestCert.ps1 b/src/DataProtection/test/CreateTestCert.ps1 similarity index 100% rename from test/CreateTestCert.ps1 rename to src/DataProtection/test/CreateTestCert.ps1 diff --git a/test/Directory.Build.props b/src/DataProtection/test/Directory.Build.props similarity index 100% rename from test/Directory.Build.props rename to src/DataProtection/test/Directory.Build.props diff --git a/test/Microsoft.AspNetCore.Cryptography.Internal.Test/Cng/BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO_Tests.cs b/src/DataProtection/test/Microsoft.AspNetCore.Cryptography.Internal.Test/Cng/BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO_Tests.cs similarity index 100% rename from test/Microsoft.AspNetCore.Cryptography.Internal.Test/Cng/BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO_Tests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.Cryptography.Internal.Test/Cng/BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO_Tests.cs diff --git a/test/Microsoft.AspNetCore.Cryptography.Internal.Test/Cng/BCRYPT_KEY_LENGTHS_STRUCT_Tests.cs b/src/DataProtection/test/Microsoft.AspNetCore.Cryptography.Internal.Test/Cng/BCRYPT_KEY_LENGTHS_STRUCT_Tests.cs similarity index 100% rename from test/Microsoft.AspNetCore.Cryptography.Internal.Test/Cng/BCRYPT_KEY_LENGTHS_STRUCT_Tests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.Cryptography.Internal.Test/Cng/BCRYPT_KEY_LENGTHS_STRUCT_Tests.cs diff --git a/test/Microsoft.AspNetCore.Cryptography.Internal.Test/Cng/BCryptUtilTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.Cryptography.Internal.Test/Cng/BCryptUtilTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.Cryptography.Internal.Test/Cng/BCryptUtilTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.Cryptography.Internal.Test/Cng/BCryptUtilTests.cs diff --git a/test/Microsoft.AspNetCore.Cryptography.Internal.Test/Cng/CachedAlgorithmHandlesTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.Cryptography.Internal.Test/Cng/CachedAlgorithmHandlesTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.Cryptography.Internal.Test/Cng/CachedAlgorithmHandlesTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.Cryptography.Internal.Test/Cng/CachedAlgorithmHandlesTests.cs diff --git a/test/Microsoft.AspNetCore.Cryptography.Internal.Test/CryptoUtilTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.Cryptography.Internal.Test/CryptoUtilTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.Cryptography.Internal.Test/CryptoUtilTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.Cryptography.Internal.Test/CryptoUtilTests.cs diff --git a/test/Microsoft.AspNetCore.Cryptography.Internal.Test/Microsoft.AspNetCore.Cryptography.Internal.Test.csproj b/src/DataProtection/test/Microsoft.AspNetCore.Cryptography.Internal.Test/Microsoft.AspNetCore.Cryptography.Internal.Test.csproj similarity index 100% rename from test/Microsoft.AspNetCore.Cryptography.Internal.Test/Microsoft.AspNetCore.Cryptography.Internal.Test.csproj rename to src/DataProtection/test/Microsoft.AspNetCore.Cryptography.Internal.Test/Microsoft.AspNetCore.Cryptography.Internal.Test.csproj diff --git a/test/Microsoft.AspNetCore.Cryptography.Internal.Test/Properties/AssemblyInfo.cs b/src/DataProtection/test/Microsoft.AspNetCore.Cryptography.Internal.Test/Properties/AssemblyInfo.cs similarity index 100% rename from test/Microsoft.AspNetCore.Cryptography.Internal.Test/Properties/AssemblyInfo.cs rename to src/DataProtection/test/Microsoft.AspNetCore.Cryptography.Internal.Test/Properties/AssemblyInfo.cs diff --git a/test/Microsoft.AspNetCore.Cryptography.Internal.Test/SafeHandles/SecureLocalAllocHandleTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.Cryptography.Internal.Test/SafeHandles/SecureLocalAllocHandleTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.Cryptography.Internal.Test/SafeHandles/SecureLocalAllocHandleTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.Cryptography.Internal.Test/SafeHandles/SecureLocalAllocHandleTests.cs diff --git a/test/Microsoft.AspNetCore.Cryptography.Internal.Test/UnsafeBufferUtilTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.Cryptography.Internal.Test/UnsafeBufferUtilTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.Cryptography.Internal.Test/UnsafeBufferUtilTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.Cryptography.Internal.Test/UnsafeBufferUtilTests.cs diff --git a/test/Microsoft.AspNetCore.Cryptography.Internal.Test/WeakReferenceHelpersTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.Cryptography.Internal.Test/WeakReferenceHelpersTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.Cryptography.Internal.Test/WeakReferenceHelpersTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.Cryptography.Internal.Test/WeakReferenceHelpersTests.cs diff --git a/test/Microsoft.AspNetCore.Cryptography.KeyDerivation.Test/Microsoft.AspNetCore.Cryptography.KeyDerivation.Test.csproj b/src/DataProtection/test/Microsoft.AspNetCore.Cryptography.KeyDerivation.Test/Microsoft.AspNetCore.Cryptography.KeyDerivation.Test.csproj similarity index 100% rename from test/Microsoft.AspNetCore.Cryptography.KeyDerivation.Test/Microsoft.AspNetCore.Cryptography.KeyDerivation.Test.csproj rename to src/DataProtection/test/Microsoft.AspNetCore.Cryptography.KeyDerivation.Test/Microsoft.AspNetCore.Cryptography.KeyDerivation.Test.csproj diff --git a/test/Microsoft.AspNetCore.Cryptography.KeyDerivation.Test/Pbkdf2Tests.cs b/src/DataProtection/test/Microsoft.AspNetCore.Cryptography.KeyDerivation.Test/Pbkdf2Tests.cs similarity index 100% rename from test/Microsoft.AspNetCore.Cryptography.KeyDerivation.Test/Pbkdf2Tests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.Cryptography.KeyDerivation.Test/Pbkdf2Tests.cs diff --git a/test/Microsoft.AspNetCore.Cryptography.KeyDerivation.Test/Properties/AssemblyInfo.cs b/src/DataProtection/test/Microsoft.AspNetCore.Cryptography.KeyDerivation.Test/Properties/AssemblyInfo.cs similarity index 100% rename from test/Microsoft.AspNetCore.Cryptography.KeyDerivation.Test/Properties/AssemblyInfo.cs rename to src/DataProtection/test/Microsoft.AspNetCore.Cryptography.KeyDerivation.Test/Properties/AssemblyInfo.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Abstractions.Test/DataProtectionCommonExtensionsTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Abstractions.Test/DataProtectionCommonExtensionsTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Abstractions.Test/DataProtectionCommonExtensionsTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Abstractions.Test/DataProtectionCommonExtensionsTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Abstractions.Test/Microsoft.AspNetCore.DataProtection.Abstractions.Test.csproj b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Abstractions.Test/Microsoft.AspNetCore.DataProtection.Abstractions.Test.csproj similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Abstractions.Test/Microsoft.AspNetCore.DataProtection.Abstractions.Test.csproj rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Abstractions.Test/Microsoft.AspNetCore.DataProtection.Abstractions.Test.csproj diff --git a/test/Microsoft.AspNetCore.DataProtection.AzureKeyVault.Test/AzureKeyVaultXmlEncryptorTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.AzureKeyVault.Test/AzureKeyVaultXmlEncryptorTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.AzureKeyVault.Test/AzureKeyVaultXmlEncryptorTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.AzureKeyVault.Test/AzureKeyVaultXmlEncryptorTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.AzureKeyVault.Test/Microsoft.AspNetCore.DataProtection.AzureKeyVault.Test.csproj b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.AzureKeyVault.Test/Microsoft.AspNetCore.DataProtection.AzureKeyVault.Test.csproj similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.AzureKeyVault.Test/Microsoft.AspNetCore.DataProtection.AzureKeyVault.Test.csproj rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.AzureKeyVault.Test/Microsoft.AspNetCore.DataProtection.AzureKeyVault.Test.csproj diff --git a/test/Microsoft.AspNetCore.DataProtection.AzureStorage.Test/AzureBlobXmlRepositoryTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.AzureStorage.Test/AzureBlobXmlRepositoryTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.AzureStorage.Test/AzureBlobXmlRepositoryTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.AzureStorage.Test/AzureBlobXmlRepositoryTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.AzureStorage.Test/AzureDataProtectionBuilderExtensionsTest.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.AzureStorage.Test/AzureDataProtectionBuilderExtensionsTest.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.AzureStorage.Test/AzureDataProtectionBuilderExtensionsTest.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.AzureStorage.Test/AzureDataProtectionBuilderExtensionsTest.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.AzureStorage.Test/Microsoft.AspNetCore.DataProtection.AzureStorage.Test.csproj b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.AzureStorage.Test/Microsoft.AspNetCore.DataProtection.AzureStorage.Test.csproj similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.AzureStorage.Test/Microsoft.AspNetCore.DataProtection.AzureStorage.Test.csproj rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.AzureStorage.Test/Microsoft.AspNetCore.DataProtection.AzureStorage.Test.csproj diff --git a/test/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.Test/DataProtectionEntityFrameworkTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.Test/DataProtectionEntityFrameworkTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.Test/DataProtectionEntityFrameworkTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.Test/DataProtectionEntityFrameworkTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.Test/DataProtectionKeyContext.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.Test/DataProtectionKeyContext.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.Test/DataProtectionKeyContext.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.Test/DataProtectionKeyContext.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.Test/EntityFrameworkCoreDataProtectionBuilderExtensionsTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.Test/EntityFrameworkCoreDataProtectionBuilderExtensionsTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.Test/EntityFrameworkCoreDataProtectionBuilderExtensionsTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.Test/EntityFrameworkCoreDataProtectionBuilderExtensionsTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.Test/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.Test.csproj b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.Test/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.Test.csproj similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.Test/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.Test.csproj rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.Test/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.Test.csproj diff --git a/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/DataProtectionAdvancedExtensionsTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/DataProtectionAdvancedExtensionsTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Extensions.Test/DataProtectionAdvancedExtensionsTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/DataProtectionAdvancedExtensionsTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/DataProtectionProviderTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/DataProtectionProviderTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Extensions.Test/DataProtectionProviderTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/DataProtectionProviderTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/Microsoft.AspNetCore.DataProtection.Extensions.Test.csproj b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/Microsoft.AspNetCore.DataProtection.Extensions.Test.csproj similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Extensions.Test/Microsoft.AspNetCore.DataProtection.Extensions.Test.csproj rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/Microsoft.AspNetCore.DataProtection.Extensions.Test.csproj diff --git a/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/Properties/AssemblyInfo.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/Properties/AssemblyInfo.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Extensions.Test/Properties/AssemblyInfo.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/Properties/AssemblyInfo.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/TestFiles/TestCert.pfx b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/TestFiles/TestCert.pfx similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Extensions.Test/TestFiles/TestCert.pfx rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/TestFiles/TestCert.pfx diff --git a/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/TestFiles/TestCert2.pfx b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/TestFiles/TestCert2.pfx similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Extensions.Test/TestFiles/TestCert2.pfx rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/TestFiles/TestCert2.pfx diff --git a/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/TestFiles/TestCert3.pfx b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/TestFiles/TestCert3.pfx similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Extensions.Test/TestFiles/TestCert3.pfx rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/TestFiles/TestCert3.pfx diff --git a/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/TestFiles/TestCert3WithoutPrivateKey.pfx b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/TestFiles/TestCert3WithoutPrivateKey.pfx similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Extensions.Test/TestFiles/TestCert3WithoutPrivateKey.pfx rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/TestFiles/TestCert3WithoutPrivateKey.pfx diff --git a/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/TestFiles/TestCertWithoutPrivateKey.pfx b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/TestFiles/TestCertWithoutPrivateKey.pfx similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Extensions.Test/TestFiles/TestCertWithoutPrivateKey.pfx rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/TestFiles/TestCertWithoutPrivateKey.pfx diff --git a/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/TimeLimitedDataProtectorTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/TimeLimitedDataProtectorTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Extensions.Test/TimeLimitedDataProtectorTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/TimeLimitedDataProtectorTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/X509StoreIsAvailableAttribute.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/X509StoreIsAvailableAttribute.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Extensions.Test/X509StoreIsAvailableAttribute.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Extensions.Test/X509StoreIsAvailableAttribute.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/DataProtectionRedisTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/DataProtectionRedisTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/DataProtectionRedisTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/DataProtectionRedisTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test.csproj b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test.csproj similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test.csproj rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test.csproj diff --git a/test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/RedisDataProtectionBuilderExtensionsTest.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/RedisDataProtectionBuilderExtensionsTest.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/RedisDataProtectionBuilderExtensionsTest.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/RedisDataProtectionBuilderExtensionsTest.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/TestRedisServer.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/TestRedisServer.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/TestRedisServer.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/TestRedisServer.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/TestRedisServerIsAvailableAttribute.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/TestRedisServerIsAvailableAttribute.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/TestRedisServerIsAvailableAttribute.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/TestRedisServerIsAvailableAttribute.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/testconfig.json b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/testconfig.json similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/testconfig.json rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.StackExchangeRedis.Test/testconfig.json diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/ActivatorTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/ActivatorTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/ActivatorTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/ActivatorTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/AnonymousImpersonation.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AnonymousImpersonation.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/AnonymousImpersonation.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AnonymousImpersonation.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/CngCbcAuthenticatedEncryptorFactoryTest.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/CngCbcAuthenticatedEncryptorFactoryTest.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/CngCbcAuthenticatedEncryptorFactoryTest.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/CngCbcAuthenticatedEncryptorFactoryTest.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/CngGcmAuthenticatedEncryptorFactoryTest.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/CngGcmAuthenticatedEncryptorFactoryTest.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/CngGcmAuthenticatedEncryptorFactoryTest.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/CngGcmAuthenticatedEncryptorFactoryTest.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/AuthenticatedEncryptorDescriptorDeserializerTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/AuthenticatedEncryptorDescriptorDeserializerTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/AuthenticatedEncryptorDescriptorDeserializerTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/AuthenticatedEncryptorDescriptorDeserializerTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/AuthenticatedEncryptorDescriptorTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/AuthenticatedEncryptorDescriptorTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/AuthenticatedEncryptorDescriptorTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/AuthenticatedEncryptorDescriptorTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorConfigurationTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorConfigurationTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorConfigurationTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorConfigurationTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorDescriptorDeserializerTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorDescriptorDeserializerTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorDescriptorDeserializerTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorDescriptorDeserializerTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorDescriptorTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorDescriptorTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorDescriptorTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngCbcAuthenticatedEncryptorDescriptorTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorConfigurationTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorConfigurationTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorConfigurationTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorConfigurationTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorDescriptorDeserializerTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorDescriptorDeserializerTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorDescriptorDeserializerTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorDescriptorDeserializerTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorDescriptorTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorDescriptorTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorDescriptorTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/CngGcmAuthenticatedEncryptorDescriptorTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorConfigurationTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorConfigurationTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorConfigurationTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorConfigurationTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorDescriptorDeserializerTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorDescriptorDeserializerTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorDescriptorDeserializerTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorDescriptorDeserializerTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorDescriptorTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorDescriptorTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorDescriptorTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ConfigurationModel/ManagedAuthenticatedEncryptorDescriptorTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ManagedAuthenticatedEncryptorFactoryTest.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ManagedAuthenticatedEncryptorFactoryTest.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ManagedAuthenticatedEncryptorFactoryTest.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/AuthenticatedEncryption/ManagedAuthenticatedEncryptorFactoryTest.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/Cng/CbcAuthenticatedEncryptorTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/Cng/CbcAuthenticatedEncryptorTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/Cng/CbcAuthenticatedEncryptorTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/Cng/CbcAuthenticatedEncryptorTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/Cng/CngAuthenticatedEncryptorBaseTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/Cng/CngAuthenticatedEncryptorBaseTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/Cng/CngAuthenticatedEncryptorBaseTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/Cng/CngAuthenticatedEncryptorBaseTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/Cng/GcmAuthenticatedEncryptorTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/Cng/GcmAuthenticatedEncryptorTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/Cng/GcmAuthenticatedEncryptorTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/Cng/GcmAuthenticatedEncryptorTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/DataProtectionUtilityExtensionsTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/DataProtectionUtilityExtensionsTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/DataProtectionUtilityExtensionsTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/DataProtectionUtilityExtensionsTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/DockerUtilsTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/DockerUtilsTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/DockerUtilsTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/DockerUtilsTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/EphemeralDataProtectionProviderTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/EphemeralDataProtectionProviderTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/EphemeralDataProtectionProviderTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/EphemeralDataProtectionProviderTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/HostingTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/HostingTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/HostingTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/HostingTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/Internal/KeyManagementOptionsSetupTest.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/Internal/KeyManagementOptionsSetupTest.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/Internal/KeyManagementOptionsSetupTest.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/Internal/KeyManagementOptionsSetupTest.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/CacheableKeyRingTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/CacheableKeyRingTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/CacheableKeyRingTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/CacheableKeyRingTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/DefaultKeyResolverTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/DefaultKeyResolverTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/DefaultKeyResolverTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/DefaultKeyResolverTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/DeferredKeyTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/DeferredKeyTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/DeferredKeyTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/DeferredKeyTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/KeyEscrowServiceProviderExtensionsTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/KeyEscrowServiceProviderExtensionsTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/KeyEscrowServiceProviderExtensionsTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/KeyEscrowServiceProviderExtensionsTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/KeyRingBasedDataProtectorTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/KeyRingBasedDataProtectorTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/KeyRingBasedDataProtectorTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/KeyRingBasedDataProtectorTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/KeyRingProviderTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/KeyRingProviderTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/KeyRingProviderTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/KeyRingProviderTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/KeyRingTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/KeyRingTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/KeyRingTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/KeyRingTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/KeyTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/KeyTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/KeyTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/KeyTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/XmlKeyManagerTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/XmlKeyManagerTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/XmlKeyManagerTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/KeyManagement/XmlKeyManagerTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/Managed/ManagedAuthenticatedEncryptorTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/Managed/ManagedAuthenticatedEncryptorTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/Managed/ManagedAuthenticatedEncryptorTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/Managed/ManagedAuthenticatedEncryptorTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/Microsoft.AspNetCore.DataProtection.Test.csproj b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/Microsoft.AspNetCore.DataProtection.Test.csproj similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/Microsoft.AspNetCore.DataProtection.Test.csproj rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/Microsoft.AspNetCore.DataProtection.Test.csproj diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/MockExtensions.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/MockExtensions.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/MockExtensions.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/MockExtensions.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/Properties/AssemblyInfo.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/Properties/AssemblyInfo.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/Properties/AssemblyInfo.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/Properties/AssemblyInfo.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/RegistryPolicyResolverTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/RegistryPolicyResolverTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/RegistryPolicyResolverTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/RegistryPolicyResolverTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/Repositories/EphemeralXmlRepositoryTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/Repositories/EphemeralXmlRepositoryTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/Repositories/EphemeralXmlRepositoryTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/Repositories/EphemeralXmlRepositoryTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/Repositories/FileSystemXmlRepositoryTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/Repositories/FileSystemXmlRepositoryTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/Repositories/FileSystemXmlRepositoryTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/Repositories/FileSystemXmlRepositoryTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/Repositories/RegistryXmlRepositoryTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/Repositories/RegistryXmlRepositoryTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/Repositories/RegistryXmlRepositoryTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/Repositories/RegistryXmlRepositoryTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/SP800_108/SP800_108Tests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/SP800_108/SP800_108Tests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/SP800_108/SP800_108Tests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/SP800_108/SP800_108Tests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/SecretAssert.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/SecretAssert.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/SecretAssert.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/SecretAssert.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/SecretTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/SecretTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/SecretTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/SecretTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/SequentialGenRandom.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/SequentialGenRandom.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/SequentialGenRandom.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/SequentialGenRandom.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/ServiceCollectionTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/ServiceCollectionTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/ServiceCollectionTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/ServiceCollectionTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/StringLoggerFactory.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/StringLoggerFactory.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/StringLoggerFactory.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/StringLoggerFactory.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/TestFiles/TestCert1.PublicKeyOnly.cer b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/TestFiles/TestCert1.PublicKeyOnly.cer similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/TestFiles/TestCert1.PublicKeyOnly.cer rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/TestFiles/TestCert1.PublicKeyOnly.cer diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/TestFiles/TestCert1.pfx b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/TestFiles/TestCert1.pfx similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/TestFiles/TestCert1.pfx rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/TestFiles/TestCert1.pfx diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/TestFiles/TestCert2.pfx b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/TestFiles/TestCert2.pfx similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/TestFiles/TestCert2.pfx rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/TestFiles/TestCert2.pfx diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/TypeForwardingActivatorTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/TypeForwardingActivatorTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/TypeForwardingActivatorTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/TypeForwardingActivatorTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/XmlAssert.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/XmlAssert.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/XmlAssert.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/XmlAssert.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/CertificateXmlEncryptionTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/CertificateXmlEncryptionTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/CertificateXmlEncryptionTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/CertificateXmlEncryptionTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/DpapiNGXmlEncryptionTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/DpapiNGXmlEncryptionTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/DpapiNGXmlEncryptionTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/DpapiNGXmlEncryptionTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/DpapiXmlEncryptionTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/DpapiXmlEncryptionTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/DpapiXmlEncryptionTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/DpapiXmlEncryptionTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/EncryptedXmlDecryptorTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/EncryptedXmlDecryptorTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/EncryptedXmlDecryptorTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/EncryptedXmlDecryptorTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/NullXmlEncryptionTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/NullXmlEncryptionTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/NullXmlEncryptionTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/NullXmlEncryptionTests.cs diff --git a/test/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/XmlEncryptionExtensionsTests.cs b/src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/XmlEncryptionExtensionsTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/XmlEncryptionExtensionsTests.cs rename to src/DataProtection/test/Microsoft.AspNetCore.DataProtection.Test/XmlEncryption/XmlEncryptionExtensionsTests.cs diff --git a/test/shared/ConditionalRunTestOnlyWindows8OrLaterAttribute.cs b/src/DataProtection/test/shared/ConditionalRunTestOnlyWindows8OrLaterAttribute.cs similarity index 100% rename from test/shared/ConditionalRunTestOnlyWindows8OrLaterAttribute.cs rename to src/DataProtection/test/shared/ConditionalRunTestOnlyWindows8OrLaterAttribute.cs diff --git a/test/shared/ConditionalRunTestOnlyWindowsAttribute.cs b/src/DataProtection/test/shared/ConditionalRunTestOnlyWindowsAttribute.cs similarity index 100% rename from test/shared/ConditionalRunTestOnlyWindowsAttribute.cs rename to src/DataProtection/test/shared/ConditionalRunTestOnlyWindowsAttribute.cs diff --git a/test/shared/ExceptionAssert2.cs b/src/DataProtection/test/shared/ExceptionAssert2.cs similarity index 100% rename from test/shared/ExceptionAssert2.cs rename to src/DataProtection/test/shared/ExceptionAssert2.cs diff --git a/version.props b/src/DataProtection/version.props similarity index 100% rename from version.props rename to src/DataProtection/version.props