Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
HomeAnnouncementsFree MagazinesWhite PapersSubmit Content
Discussion GroupsASP.NETWindows FormsLanguages.NET FrameworkVisual Studio.NET
Articles.NET FrameworkASP.NETToolsWindows Forms
.NET DirectoryOpen Source ProjectsUser GroupsWeb Resources
Related Topics
Visual Basic 6SQL ServerMS AccessOther DB ProductsMS Server ProductsMore Topics ...

.NET Forum / .NET Framework / New Users / December 2004

Tip: Looking for answers? Try searching our database.

Encryption String From PHP, Decryption String From ASP Big Problem, Urgent !!!

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
Kelvin - 29 Dec 2004 02:17 GMT
Hi All,

I have still problem on Encryption string using, decryption string
using ASP/VB/C#.. I don't know why have different results and using
same algorithm.
Please advise.

PHP Sources Code
<?php
$key = "pg";
$random_number = kelvintai;
$encrypted=encrypt($key,$random_number);
$decrypted=decrypt($key,$encrypted);

echo "NUMBER: $random_number<br>
ENCRYPTED VALUE: $encrypted<br>
DECRYPTED VALUE: $decrypted";

/* Your functions without the comments are below */

function encrypt($key, $plain_text) {
$plain_text = trim($plain_text);
$iv = substr(md5($key), 0,mcrypt_get_iv_size
(MCRYPT_CAST_128,MCRYPT_MODE_ECB));
$c_t = mcrypt_ecb (MCRYPT_CAST_128, $key, $plain_text, MCRYPT_ENCRYPT,
$iv);
return trim(chop(base64_encode($c_t)));
}

function decrypt($key, $c_t) {
$c_t =  trim(chop(base64_decode($c_t)));
$iv = substr(md5($key), 0,mcrypt_get_iv_size
(MCRYPT_CAST_128,MCRYPT_MODE_ECB));
$p_t = mcrypt_ecb (MCRYPT_CAST_128, $key, $c_t, MCRYPT_DECRYPT, $iv);
return trim(chop($p_t));
}
?>

ASP.NET/VB.NET Sources Code.

Public Shared Function DecryptTripleDES(ByVal sOut As String, ByVal
sKey As String) As String

       Dim DES As New
System.Security.Cryptography.TripleDESCryptoServiceProvider

       Dim hashMD5 As New
System.Security.Cryptography.MD5CryptoServiceProvider

       ' scramble the key
       sKey = ScrambleKey(sKey)

       ' Compute the MD5 hash.
       DES.Key = hashMD5.ComputeHash(System.Text.ASCIIEncoding.ASCII.GetBytes(sKey))

       ' Set the cipher mode.
       DES.Mode = System.Security.Cryptography.CipherMode.ECB

       ' Create the decryptor.
       Dim DESDecrypt As
System.Security.Cryptography.ICryptoTransform = DES.CreateDecryptor()

       Dim Buffer As Byte() = Convert.FromBase64String(sOut)

       ' Transform and return the string.
       Return System.Text.ASCIIEncoding.ASCII.GetString(DESDecrypt.TransformFinalBlock(Buffer,
0, Buffer.Length))

   End Function

   Private Shared Function ScrambleKey(ByVal v_strKey As String) As
String

       Dim sbKey As New System.Text.StringBuilder
       Dim intPtr As Integer
       For intPtr = 1 To v_strKey.Length
           Dim intIn As Integer = v_strKey.Length - intPtr + 1
           sbKey.Append(Mid(v_strKey, intIn, 1))
       Next

       Dim strKey As String = sbKey.ToString

       Return sbKey.ToString

   End Function
Nick Malik [Microsoft] - 31 Dec 2004 19:35 GMT
There could be a dozen different reasons... encoding differences, use of
keys, differences in the way null characters are handled, etc.  Not being an
expert in PHP and not a full time user of crypto-API, I'm not having much
luck spotting it.

I would like to know why the ASP code feels the need to "scramble the key"
(a misnomer since it appends as series of digits to it: the same digits are
added to every key).  The PHP code makes no attempt to do this, as far as I
can tell.

Signature

--- Nick Malik [Microsoft]
   MCSD, CFPS, Certified Scrummaster
   http://blogs.msdn.com/nickmalik

Disclaimer: Opinions expressed in this forum are my own, and not
representative of my employer.
  I do not answer questions on behalf of my employer.  I'm just a
programmer helping programmers.
--

> Hi All,
>
[quoted text clipped - 62 lines]
>         ' Transform and return the string.
>         Return System.Text.ASCIIEncoding.ASCII.GetString(DESDecrypt.TransformFinalBlock(Buf
fer,
> 0, Buffer.Length))
>
[quoted text clipped - 15 lines]
>
>     End Function

Rate this thread:







Free Magazines

Get these publications absolutely FREE for up to 12 months. There are no hidden fees and no obligation. Simply choose a title, complete the application form and submit it. Read more ...

Oracle MagazineNetwork ComputingComputer WorldBio-IT WorldeWeekInformation WeekInfosecurity
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.