From b1b48680105308d47126b1ba2b3f6298ebe398d9 Mon Sep 17 00:00:00 2001 From: Jonathan Jenne Date: Wed, 26 May 2021 16:37:55 +0200 Subject: [PATCH] Add Encryption Module, remove all encryption Code from Filesystem to prevent circular dependencies --- ConfigCreator/App.config | 8 ++ DDMonorepo.sln | 7 + .../Encryption => Encryption}/Compression.vb | 0 .../Encryption => Encryption}/Encryption.vb | 0 Encryption/Encryption.vbproj | 123 ++++++++++++++++++ .../EncryptionLegacy.vb | 17 +++ Encryption/My Project/Application.Designer.vb | 13 ++ Encryption/My Project/Application.myapp | 10 ++ Encryption/My Project/AssemblyInfo.vb | 35 +++++ Encryption/My Project/Resources.Designer.vb | 63 +++++++++ Encryption/My Project/Resources.resx | 117 +++++++++++++++++ Encryption/My Project/Settings.Designer.vb | 73 +++++++++++ Encryption/My Project/Settings.settings | 7 + Encryption/packages.config | 4 + GUIs.Monitor/My Project/AssemblyInfo.vb | 4 +- GUIs.Monitor/frmMonitor.vb | 3 +- GUIs.ZooFlow/ClassConstants.vb | 2 - GUIs.ZooFlow/ClassInit.vb | 3 +- GUIs.ZooFlow/ZooFlow.vbproj | 4 + GUIs.ZooFlow/frmConfigDatabase.vb | 3 +- Modules.Config/Config.vbproj | 4 + Modules.Config/ConfigManager.vb | 30 ++++- .../FileContainer/FileContainer.vb | 5 +- Modules.Filesystem/Filesystem.vbproj | 7 +- SQLConfig/SQLConfig.vbproj | 4 + SQLConfig/frmSQLConfig.vb | 3 +- Services.EmailService/DDEmailService.vbproj | 4 + Services.EmailService/EmailService.vb | 4 +- 28 files changed, 542 insertions(+), 15 deletions(-) rename {Modules.Filesystem/Encryption => Encryption}/Compression.vb (100%) rename {Modules.Filesystem/Encryption => Encryption}/Encryption.vb (100%) create mode 100644 Encryption/Encryption.vbproj rename {Modules.Filesystem/Encryption => Encryption}/EncryptionLegacy.vb (80%) create mode 100644 Encryption/My Project/Application.Designer.vb create mode 100644 Encryption/My Project/Application.myapp create mode 100644 Encryption/My Project/AssemblyInfo.vb create mode 100644 Encryption/My Project/Resources.Designer.vb create mode 100644 Encryption/My Project/Resources.resx create mode 100644 Encryption/My Project/Settings.Designer.vb create mode 100644 Encryption/My Project/Settings.settings create mode 100644 Encryption/packages.config diff --git a/ConfigCreator/App.config b/ConfigCreator/App.config index 02e98463..30242f85 100644 --- a/ConfigCreator/App.config +++ b/ConfigCreator/App.config @@ -48,4 +48,12 @@ + + + + + + + + \ No newline at end of file diff --git a/DDMonorepo.sln b/DDMonorepo.sln index 1d698830..fd4e19fe 100644 --- a/DDMonorepo.sln +++ b/DDMonorepo.sln @@ -132,6 +132,8 @@ Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Monitor", "GUIs.Monitor\Mon EndProject Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "MonoRepoUtils", "ConfigCreator\MonoRepoUtils.vbproj", "{9D4AC920-C78E-41C3-994E-91690FF79380}" EndProject +Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Encryption", "Encryption\Encryption.vbproj", "{8A8F20FC-C46E-41AC-BEE7-218366CFFF99}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -350,6 +352,10 @@ Global {9D4AC920-C78E-41C3-994E-91690FF79380}.Debug|Any CPU.Build.0 = Debug|Any CPU {9D4AC920-C78E-41C3-994E-91690FF79380}.Release|Any CPU.ActiveCfg = Release|Any CPU {9D4AC920-C78E-41C3-994E-91690FF79380}.Release|Any CPU.Build.0 = Release|Any CPU + {8A8F20FC-C46E-41AC-BEE7-218366CFFF99}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {8A8F20FC-C46E-41AC-BEE7-218366CFFF99}.Debug|Any CPU.Build.0 = Debug|Any CPU + {8A8F20FC-C46E-41AC-BEE7-218366CFFF99}.Release|Any CPU.ActiveCfg = Release|Any CPU + {8A8F20FC-C46E-41AC-BEE7-218366CFFF99}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -408,6 +414,7 @@ Global {65EFB268-C0E0-40C1-8981-9F70DEE5C74A} = {F98C0329-C004-417F-B2AB-7466E88D8220} {E24E8D40-0361-4C07-8FAE-3621DE316E70} = {8FFE925E-8B84-45F1-93CB-32B1C96F41EB} {9D4AC920-C78E-41C3-994E-91690FF79380} = {8FFE925E-8B84-45F1-93CB-32B1C96F41EB} + {8A8F20FC-C46E-41AC-BEE7-218366CFFF99} = {3E2008C8-27B1-41DD-9B1A-0C4029F6AECC} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {C1BE4090-A0FD-48AF-86CB-39099D14B286} diff --git a/Modules.Filesystem/Encryption/Compression.vb b/Encryption/Compression.vb similarity index 100% rename from Modules.Filesystem/Encryption/Compression.vb rename to Encryption/Compression.vb diff --git a/Modules.Filesystem/Encryption/Encryption.vb b/Encryption/Encryption.vb similarity index 100% rename from Modules.Filesystem/Encryption/Encryption.vb rename to Encryption/Encryption.vb diff --git a/Encryption/Encryption.vbproj b/Encryption/Encryption.vbproj new file mode 100644 index 00000000..3c310ba8 --- /dev/null +++ b/Encryption/Encryption.vbproj @@ -0,0 +1,123 @@ + + + + + Debug + AnyCPU + {8A8F20FC-C46E-41AC-BEE7-218366CFFF99} + Library + DigitalData.Modules.Encryption + DigitalData.Modules.Encryption + 512 + Windows + v4.6.1 + true + + + true + full + true + true + bin\Debug\ + DigitalData.Modules.Encryption.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + + + pdbonly + false + true + true + bin\Release\ + DigitalData.Modules.Encryption.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + + + On + + + Binary + + + Off + + + On + + + + + ..\packages\NLog.4.7.5\lib\net45\NLog.dll + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + True + Application.myapp + True + + + True + True + Resources.resx + + + True + Settings.settings + True + + + + + VbMyResourcesResXFileCodeGenerator + Resources.Designer.vb + My.Resources + Designer + + + + + MyApplicationCodeGenerator + Application.Designer.vb + + + SettingsSingleFileGenerator + My + Settings.Designer.vb + + + + + + {903b2d7d-3b80-4be9-8713-7447b704e1b0} + Logging + + + + \ No newline at end of file diff --git a/Modules.Filesystem/Encryption/EncryptionLegacy.vb b/Encryption/EncryptionLegacy.vb similarity index 80% rename from Modules.Filesystem/Encryption/EncryptionLegacy.vb rename to Encryption/EncryptionLegacy.vb index c56a9683..784cab60 100644 --- a/Modules.Filesystem/Encryption/EncryptionLegacy.vb +++ b/Encryption/EncryptionLegacy.vb @@ -1,7 +1,16 @@ Imports System.Security.Cryptography +Imports System.Data +Imports System.Data.SqlClient Public Class EncryptionLegacy Private TripleDes As New TripleDESCryptoServiceProvider + Private DEFAULT_KEY As String = "!35452didalog=" + + Sub New() + TripleDes.Key = TruncateHash(DEFAULT_KEY, TripleDes.KeySize \ 8) + TripleDes.IV = TruncateHash("", TripleDes.BlockSize \ 8) + End Sub + Sub New(ByVal key As String) ' Initialize the crypto provider. TripleDes.Key = TruncateHash(key, TripleDes.KeySize \ 8) @@ -62,5 +71,13 @@ Public Class EncryptionLegacy ' Convert the plaintext stream to a string. Return result End Function + + Public Function DecryptConnectionString(ConnectionString As String) As String + Dim oBuilder As New SqlConnectionStringBuilder() With {.ConnectionString = ConnectionString} + Dim oDecryptedPassword = DecryptData(oBuilder.Password) + oBuilder.Password = oDecryptedPassword + + Return oBuilder.ToString() + End Function End Class diff --git a/Encryption/My Project/Application.Designer.vb b/Encryption/My Project/Application.Designer.vb new file mode 100644 index 00000000..8ab460ba --- /dev/null +++ b/Encryption/My Project/Application.Designer.vb @@ -0,0 +1,13 @@ +'------------------------------------------------------------------------------ +' +' Dieser Code wurde von einem Tool generiert. +' Laufzeitversion:4.0.30319.42000 +' +' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn +' der Code erneut generiert wird. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + diff --git a/Encryption/My Project/Application.myapp b/Encryption/My Project/Application.myapp new file mode 100644 index 00000000..758895de --- /dev/null +++ b/Encryption/My Project/Application.myapp @@ -0,0 +1,10 @@ + + + false + false + 0 + true + 0 + 1 + true + diff --git a/Encryption/My Project/AssemblyInfo.vb b/Encryption/My Project/AssemblyInfo.vb new file mode 100644 index 00000000..57a278c7 --- /dev/null +++ b/Encryption/My Project/AssemblyInfo.vb @@ -0,0 +1,35 @@ +Imports System +Imports System.Reflection +Imports System.Runtime.InteropServices + +' Allgemeine Informationen über eine Assembly werden über die folgenden +' Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern, +' die einer Assembly zugeordnet sind. + +' Werte der Assemblyattribute überprüfen + + + + + + + + + + +'Die folgende GUID wird für die typelib-ID verwendet, wenn dieses Projekt für COM verfügbar gemacht wird. + + +' Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten: +' +' Hauptversion +' Nebenversion +' Buildnummer +' Revision +' +' Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden, +' indem Sie "*" wie unten gezeigt eingeben: +' + + + diff --git a/Encryption/My Project/Resources.Designer.vb b/Encryption/My Project/Resources.Designer.vb new file mode 100644 index 00000000..662b74ed --- /dev/null +++ b/Encryption/My Project/Resources.Designer.vb @@ -0,0 +1,63 @@ +'------------------------------------------------------------------------------ +' +' Dieser Code wurde von einem Tool generiert. +' Laufzeitversion:4.0.30319.42000 +' +' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn +' der Code erneut generiert wird. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + +Imports System + +Namespace My.Resources + + 'Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert + '-Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert. + 'Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen + 'mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu. + ''' + ''' Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + ''' + _ + Friend Module Resources + + Private resourceMan As Global.System.Resources.ResourceManager + + Private resourceCulture As Global.System.Globalization.CultureInfo + + ''' + ''' Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + ''' + _ + Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager + Get + If Object.ReferenceEquals(resourceMan, Nothing) Then + Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("DigitalData.Modules.Encryption.Resources", GetType(Resources).Assembly) + resourceMan = temp + End If + Return resourceMan + End Get + End Property + + ''' + ''' Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + ''' Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + ''' + _ + Friend Property Culture() As Global.System.Globalization.CultureInfo + Get + Return resourceCulture + End Get + Set + resourceCulture = value + End Set + End Property + End Module +End Namespace diff --git a/Encryption/My Project/Resources.resx b/Encryption/My Project/Resources.resx new file mode 100644 index 00000000..af7dbebb --- /dev/null +++ b/Encryption/My Project/Resources.resx @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/Encryption/My Project/Settings.Designer.vb b/Encryption/My Project/Settings.Designer.vb new file mode 100644 index 00000000..06a993e2 --- /dev/null +++ b/Encryption/My Project/Settings.Designer.vb @@ -0,0 +1,73 @@ +'------------------------------------------------------------------------------ +' +' Dieser Code wurde von einem Tool generiert. +' Laufzeitversion:4.0.30319.42000 +' +' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn +' der Code erneut generiert wird. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + + +Namespace My + + _ + Partial Friend NotInheritable Class MySettings + Inherits Global.System.Configuration.ApplicationSettingsBase + + Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings) + +#Region "Automatische My.Settings-Speicherfunktion" +#If _MyType = "WindowsForms" Then + Private Shared addedHandler As Boolean + + Private Shared addedHandlerLockObject As New Object + + _ + Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs) + If My.Application.SaveMySettingsOnExit Then + My.Settings.Save() + End If + End Sub +#End If +#End Region + + Public Shared ReadOnly Property [Default]() As MySettings + Get + +#If _MyType = "WindowsForms" Then + If Not addedHandler Then + SyncLock addedHandlerLockObject + If Not addedHandler Then + AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings + addedHandler = True + End If + End SyncLock + End If +#End If + Return defaultInstance + End Get + End Property + End Class +End Namespace + +Namespace My + + _ + Friend Module MySettingsProperty + + _ + Friend ReadOnly Property Settings() As Global.DigitalData.Modules.Encryption.My.MySettings + Get + Return Global.DigitalData.Modules.Encryption.My.MySettings.Default + End Get + End Property + End Module +End Namespace diff --git a/Encryption/My Project/Settings.settings b/Encryption/My Project/Settings.settings new file mode 100644 index 00000000..85b890b3 --- /dev/null +++ b/Encryption/My Project/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/Encryption/packages.config b/Encryption/packages.config new file mode 100644 index 00000000..6f6bc401 --- /dev/null +++ b/Encryption/packages.config @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/GUIs.Monitor/My Project/AssemblyInfo.vb b/GUIs.Monitor/My Project/AssemblyInfo.vb index eb330bbf..864a5e89 100644 --- a/GUIs.Monitor/My Project/AssemblyInfo.vb +++ b/GUIs.Monitor/My Project/AssemblyInfo.vb @@ -10,7 +10,7 @@ Imports System.Runtime.InteropServices - + @@ -32,5 +32,5 @@ Imports System.Runtime.InteropServices ' You can specify all the values or you can default the Build and Revision Numbers ' by using the '*' as shown below: ' [assembly: AssemblyVersion("1.0.*")] - + diff --git a/GUIs.Monitor/frmMonitor.vb b/GUIs.Monitor/frmMonitor.vb index 173abc40..36ea69ae 100644 --- a/GUIs.Monitor/frmMonitor.vb +++ b/GUIs.Monitor/frmMonitor.vb @@ -73,7 +73,8 @@ Public Class frmMonitor Private Sub frmStart_Load(sender As Object, e As EventArgs) Handles MyBase.Load Try LogConfig = New LogConfig(LogConfig.PathType.AppData, Nothing, Nothing, "Digital Data", "Monitor") - ConfigManager = New ConfigManager(Of Config)(LogConfig, Application.UserAppDataPath) + ConfigManager = New ConfigManager(Of Config)(LogConfig, Application.UserAppDataPath, Application.UserAppDataPath, Application.StartupPath) + ConfigManager.DecryptConnectionStrings() Init(LogConfig) If ConfigManager.Config.ConnectionString = String.Empty Then diff --git a/GUIs.ZooFlow/ClassConstants.vb b/GUIs.ZooFlow/ClassConstants.vb index 539de7b7..eb62ce5a 100644 --- a/GUIs.ZooFlow/ClassConstants.vb +++ b/GUIs.ZooFlow/ClassConstants.vb @@ -1,6 +1,4 @@ Public Class ClassConstants - Public Const CRYPTO_LEGACY_ENCRYPTION_KEY = "!35452didalog=" - Public Const SERVICE_MAX_MESSAGE_SIZE = 2147483647 Public Const SERVICE_MAX_BUFFER_SIZE = 2147483647 Public Const SERVICE_MAX_ARRAY_LENGTH = 2147483647 diff --git a/GUIs.ZooFlow/ClassInit.vb b/GUIs.ZooFlow/ClassInit.vb index acce4490..51e3b3c6 100644 --- a/GUIs.ZooFlow/ClassInit.vb +++ b/GUIs.ZooFlow/ClassInit.vb @@ -10,6 +10,7 @@ Imports DigitalData.GUIs.ZooFlow.ClassConstants Imports System.Threading Imports System.Globalization Imports DigitalData.Modules.EDMI.API +Imports DigitalData.Modules.Encryption Public Class ClassInit Private _MainForm As frmFlowForm @@ -115,7 +116,7 @@ Public Class ClassInit End Sub Private Sub CheckConnectivity(MyApplication As My.MyApplication) - Dim oCrypt As New EncryptionLegacy(CRYPTO_LEGACY_ENCRYPTION_KEY) + Dim oCrypt As New EncryptionLegacy() Dim oBuilder = My.SystemConfig.GetConnectionStringBuilder(My.SystemConfig.ConnectionString) oBuilder.Password = oCrypt.DecryptData(oBuilder.Password) Dim oDecryptedConnectionString = oBuilder.ToString diff --git a/GUIs.ZooFlow/ZooFlow.vbproj b/GUIs.ZooFlow/ZooFlow.vbproj index ced5dc57..fe2d061a 100644 --- a/GUIs.ZooFlow/ZooFlow.vbproj +++ b/GUIs.ZooFlow/ZooFlow.vbproj @@ -465,6 +465,10 @@ {3e7bc8a9-91ef-49b8-8110-2c01f664c24a} SQLEditor + + {8a8f20fc-c46e-41ac-bee7-218366cfff99} + Encryption + {B7D465A2-AE31-4CDF-A8B2-34B42D3EA84E} ClipboardWatcher diff --git a/GUIs.ZooFlow/frmConfigDatabase.vb b/GUIs.ZooFlow/frmConfigDatabase.vb index 46a5f7ae..be021c6b 100644 --- a/GUIs.ZooFlow/frmConfigDatabase.vb +++ b/GUIs.ZooFlow/frmConfigDatabase.vb @@ -1,4 +1,5 @@ Imports DigitalData.Modules.Database +Imports DigitalData.Modules.Encryption Imports DigitalData.Modules.Filesystem Imports DigitalData.Modules.Logging @@ -102,7 +103,7 @@ Public Class frmConfigDatabase Dim oResult = MessageBox.Show(STRING_CONNECTION_SUCCESSFUL, Text, MessageBoxButtons.YesNo, MessageBoxIcon.Question) If oResult = DialogResult.Yes Then - Dim oCrypt As New EncryptionLegacy("!35452didalog=") + Dim oCrypt As New EncryptionLegacy() Dim oEncryptedPassword = oCrypt.EncryptData(txtPassword.Text) Dim oEncryptedConnectionString = $"Server={txtServerName.Text};Database={cmbDatabase.Text};User Id={txtUserName.Text};Password={oEncryptedPassword};" diff --git a/Modules.Config/Config.vbproj b/Modules.Config/Config.vbproj index ea3b0e6c..efe22453 100644 --- a/Modules.Config/Config.vbproj +++ b/Modules.Config/Config.vbproj @@ -114,6 +114,10 @@ + + {8a8f20fc-c46e-41ac-bee7-218366cfff99} + Encryption + {991d0231-4623-496d-8bd0-9ca906029cbc} Filesystem diff --git a/Modules.Config/ConfigManager.vb b/Modules.Config/ConfigManager.vb index cb9754cf..37c9b014 100644 --- a/Modules.Config/ConfigManager.vb +++ b/Modules.Config/ConfigManager.vb @@ -2,6 +2,7 @@ Imports System.Reflection Imports System.Xml.Serialization Imports DigitalData.Modules.Logging +Imports DigitalData.Modules.Encryption Imports DigitalData.Modules.Config.ConfigAttributes Public Class ConfigManager(Of T) @@ -34,6 +35,12 @@ Public Class ConfigManager(Of T) GetType(GlobalSettingAttribute) } + Private ReadOnly _ConnectionStringAttributes = New List(Of Type) From { + GetType(ConnectionStringAttribute), + GetType(ConnectionStringAppServerAttribute), + GetType(ConnectionStringTestAttribute) + } + ''' ''' Signals that all properties will be written to (and read from) the UserConfig.xml ''' @@ -159,6 +166,27 @@ Public Class ConfigManager(Of T) End Try End Function + Public Function DecryptConnectionStrings() As Boolean + Try + Dim oType As Type = GetType(T) + Dim oProperties = oType.GetProperties() + Dim oEncryption = New EncryptionLegacy() + + For Each oProperty In oProperties + If Attribute.IsDefined(oProperty, GetType(ConnectionStringAttribute)) Then + Dim oValue = oProperty.GetValue(_Config, Nothing) + Dim oDecryptedValue = oEncryption.DecryptConnectionString(oValue) + oProperty.SetValue(_Config, oDecryptedValue, Nothing) + End If + Next + + Return True + Catch ex As Exception + _Logger.Error(ex) + Return False + End Try + End Function + ''' ''' Copies all properties from Source to Target, except those who have an attribute ''' listed in ExcludedAttributeTypes @@ -203,7 +231,7 @@ Public Class ConfigManager(Of T) Private Function LoadConfig() As T ' first create an empty/default config object - Dim oConfig = Activator.CreateInstance(_BlueprintType) + Dim oConfig As T = Activator.CreateInstance(_BlueprintType) ' try to load the special app config oConfig = LoadAppConfig(oConfig) diff --git a/Modules.Filesystem/FileContainer/FileContainer.vb b/Modules.Filesystem/FileContainer/FileContainer.vb index b50170ea..54d6ce4a 100644 --- a/Modules.Filesystem/FileContainer/FileContainer.vb +++ b/Modules.Filesystem/FileContainer/FileContainer.vb @@ -1,5 +1,6 @@ Imports System.IO Imports DigitalData.Modules.Logging +Imports DigitalData.Modules.Encryption Imports ProtoBuf ''' FileContainer @@ -41,7 +42,7 @@ Imports ProtoBuf ''' oContainer.SaveAs("E:\some2.container") ''' Public Class FileContainer - Private _crypto As Encryption + Private _crypto As Encryption.Encryption Private _compression As Compression Private _inner As FileContainerInner Private _logger As Logger @@ -85,7 +86,7 @@ Public Class FileContainer Public Sub New(LogConfig As LogConfig, Password As String) _logger = LogConfig.GetLogger() - _crypto = New Encryption(LogConfig, Password) + _crypto = New Encryption.Encryption(LogConfig, Password) _compression = New Compression(LogConfig) _inner = New FileContainerInner() End Sub diff --git a/Modules.Filesystem/Filesystem.vbproj b/Modules.Filesystem/Filesystem.vbproj index 8c1f2d56..e893b4c1 100644 --- a/Modules.Filesystem/Filesystem.vbproj +++ b/Modules.Filesystem/Filesystem.vbproj @@ -75,11 +75,8 @@ - - - @@ -122,6 +119,10 @@ + + {8a8f20fc-c46e-41ac-bee7-218366cfff99} + Encryption + {903b2d7d-3b80-4be9-8713-7447b704e1b0} Logging diff --git a/SQLConfig/SQLConfig.vbproj b/SQLConfig/SQLConfig.vbproj index 5625c7e9..a4978ee1 100644 --- a/SQLConfig/SQLConfig.vbproj +++ b/SQLConfig/SQLConfig.vbproj @@ -141,6 +141,10 @@ + + {8a8f20fc-c46e-41ac-bee7-218366cfff99} + Encryption + {eaf0ea75-5fa7-485d-89c7-b2d843b03a96} Database diff --git a/SQLConfig/frmSQLConfig.vb b/SQLConfig/frmSQLConfig.vb index 5c393248..297dc446 100644 --- a/SQLConfig/frmSQLConfig.vb +++ b/SQLConfig/frmSQLConfig.vb @@ -1,6 +1,7 @@ Imports System.ComponentModel Imports System.Data.SqlClient Imports DigitalData.Modules.Database +Imports DigitalData.Modules.Encryption Imports DigitalData.Modules.Filesystem Imports DigitalData.Modules.Logging @@ -128,7 +129,7 @@ Public Class frmSQLConfig Dim oResult = MessageBox.Show(STRING_CONNECTION_SUCCESSFUL, Text, MessageBoxButtons.YesNo, MessageBoxIcon.Question) If oResult = DialogResult.Yes Then - Dim oCrypt As New EncryptionLegacy("!35452didalog=") + Dim oCrypt As New EncryptionLegacy() Dim oEncryptedPassword = oCrypt.EncryptData(txtPassword.Text) Dim oEncryptedConnectionString = $"Server={txtServerName.Text};Database={cmbDatabase.Text};User Id={txtUserName.Text};Password={oEncryptedPassword};" diff --git a/Services.EmailService/DDEmailService.vbproj b/Services.EmailService/DDEmailService.vbproj index a4ce8af9..79d797c2 100644 --- a/Services.EmailService/DDEmailService.vbproj +++ b/Services.EmailService/DDEmailService.vbproj @@ -136,6 +136,10 @@ + + {8a8f20fc-c46e-41ac-bee7-218366cfff99} + Encryption + {eaf0ea75-5fa7-485d-89c7-b2d843b03a96} Database diff --git a/Services.EmailService/EmailService.vb b/Services.EmailService/EmailService.vb index 5a0dae78..3a987967 100644 --- a/Services.EmailService/EmailService.vb +++ b/Services.EmailService/EmailService.vb @@ -6,6 +6,8 @@ Imports DigitalData.Modules.Filesystem Imports DigitalData.Modules.Language Imports System.Timers Imports System.IO +Imports DigitalData.Modules.Encryption + Public Class EmailService Private _Logger As Logger Private _LogConfig As LogConfig @@ -50,7 +52,7 @@ Public Class EmailService _Logger.NewBlock("Inititalize Encryption") - _Encryption = New EncryptionLegacy("!35452didalog=") + _Encryption = New EncryptionLegacy() _Logger.EndBlock()