database connection string encryption and decryption

  • Thread starter Thread starter Srinivasa Reddy K Ganji
  • Start date Start date
S

Srinivasa Reddy K Ganji

Hi

I want to encrypt the database connection string and add it to web.config
file. Before connecting to the database I want to decrypt it.

Can anyone suggest me how to implement this (c#)

Regards,

Reddy
 
Give this a whirl:

'Retrieve a connection to the database
Public Shared Function Get_Connection() As
System.Data.SqlClient.SqlConnection

Get_Connection = New
System.Data.SqlClient.SqlConnection()
Get_Connection.ConnectionString = Decrypt
(System.Configuration.ConfigurationSettings.AppSettings
(CONNECTION_STRING))
Get_Connection.Open()

End Function

Public Shared Function Encrypt(ByVal Clear_Text As
String) As String

'Encrypt the text
Encrypt = Convert.ToBase64String(Transform
(System.Text.Encoding.Default.GetBytes(Clear_Text),
Get_Encryption_Engine().CreateEncryptor))

End Function

Public Shared Function Decrypt(ByVal Cipher_Text As
String) As String

'Decrypt the text
Decrypt = System.Text.Encoding.Default.GetString
(Transform(Convert.FromBase64String(Cipher_Text),
Get_Encryption_Engine().CreateDecryptor))

End Function

Private Shared Function Get_Encryption_Engine() As
System.Security.Cryptography.SymmetricAlgorithm

'Setup the cryptographic service to use
Get_Encryption_Engine = New
System.Security.Cryptography.RijndaelManaged()
Get_Encryption_Engine.Mode =
System.Security.Cryptography.CipherMode.CBC
Get_Encryption_Engine.Key =
Convert.FromBase64String
("U1fknVDCPQWERTYGZfRqvAYCK7gFpUukYKOqsCuN8XU=")
Get_Encryption_Engine.IV =
Convert.FromBase64String("vEQWERTYRMrovjV+NXos5g==")

End Function

Private Shared Function Transform(ByVal Source() As
Byte, ByVal Transformer As
System.Security.Cryptography.ICryptoTransform) As Byte()

'Transform the source
Dim stream As New System.IO.MemoryStream()
Dim cryptographic_stream As
System.Security.Cryptography.CryptoStream = New
System.Security.Cryptography.CryptoStream(stream,
Transformer,
System.Security.Cryptography.CryptoStreamMode.Write)
cryptographic_stream.Write(Source, 0,
Source.Length)

'Flush the buffer and release stream resources
cryptographic_stream.FlushFinalBlock()
cryptographic_stream.Close()

'Return the data
Transform = stream.ToArray()

End Function

HTH,
Gaz
 
Back
Top