• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 511
  • Last Modified:

calculating legth of triple DES encrypted string

I am encrypting a varchar(30) column and storing in a different column in the database.

I need to calculate what the maximum length of the encrypted text could be so that I can make sure the new column is the right size. How do I calculate the size?

I am using vb.net to do the encryption and SQL server 2005 to store the data.
0
darrenwright
Asked:
darrenwright
  • 3
  • 2
1 Solution
 
udaya kumar laligondlaTechnical LeadCommented:
for a 30 character string it will be approximately 36 chars. you can use the following caluculation to calculate the length n + 8 - (n % 8)
where n is the length of the source string
0
 
darrenwrightAuthor Commented:
I'm get back encryption strings of 88 chars so something not right
0
 
udaya kumar laligondlaTechnical LeadCommented:
0
 
darrenwrightAuthor Commented:
I use encrypttostring function
        Public Overloads Function EncrypttoString(ByVal plainText As String) As String
        Return Convert.ToBase64String(Encrypt(plainText))
    End Function
Public Function Encrypt(ByVal plainText As String) As Byte()
 
        Dim tdes As New TripleDESCryptoServiceProvider()
        Dim encryptor As ICryptoTransform = tdes.CreateEncryptor(mvarTripleDesKey, mvarTripleIV)
        Dim data As Byte() = Encoding.Unicode.GetBytes(plainText)
 
        Return encryptor.TransformFinalBlock(data, 0, data.Length)
 
    End Function

Open in new window

0
 
udaya kumar laligondlaTechnical LeadCommented:
you are using three conversions (for 30 chars)
1.  unicode ( 30 *2 = 60)
2.encryption ( 60 +8 (60 % 8) = 64 (63.2))
3. Base64 Encoding (88)  calculated as Base64 = ((64 + 3 - (64 MOD 3)) /3) x 4

0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

  • 3
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now