note 91089 added to mcrypt.examples
| From: | ricbalda at hotmail dot com | Date: | Mon, 25 May 2009 01:41:11 +0000 |
| Subject: | note 91089 added to mcrypt.examples | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-155948@lists.php.net to get a copy of this message | ||
Hola a todos,
Después de dÃas de buscar en Google un ejemplo de como interopera VB9 con PHP encontré algo
pero con Java.
Transforme el código de Java a VB9.NET y se los pongo a su consideración:
Codigo VB9.NET
Imports System
Imports System.Security.Cryptography
Imports System.IO
Imports System.Text
Imports System.Text.Encoding
Imports System.ComponentModel
Public Class Lib_Encripta
Public Function Encripta( _
ByVal strMensaje As String, _
ByVal strClave As String, _
ByVal strIV As String) As String
'Crea el objeto con la libreria para encriptar
Dim objRijndael As Rijndael = Rijndael.Create
objRijndael.Mode = CipherMode.CBC
objRijndael.Padding = PaddingMode.PKCS7
'Convierte la Clave en ByteArray
'Dim SecretKey As Byte() = ASCII.GetBytes("01234567890abcde")
Dim bytSecretKey As Byte() = ASCII.GetBytes(strClave)
objRijndael.KeySize = 128
objRijndael.Key = bytSecretKey
'Convierte la IV en ByteArray
'Dim iv As Byte() = ASCII.GetBytes("fedcba9876543210")
Dim iv As Byte() = ASCII.GetBytes(strIV)
objRijndael.BlockSize = 128
objRijndael.IV = iv
'Convierte el Mensaje en ByteArray
Dim encrypted As Byte() = ASCII.GetBytes(strMensaje)
'Crea la instancia para Encriptador
Dim encryptor As ICryptoTransform = objRijndael.CreateEncryptor(bytSecretKey, iv)
'Ejecuta la rutina para Encriptar
Dim bytresult As Byte() = encryptor.TransformFinalBlock(ASCII.GetBytes(strMensaje), 0,
strMensaje.Length)
'Libera Recursos
objRijndael.Clear()
encryptor.Dispose()
'Retorna los resultados como Hex y como Base64
Me.strMensajeHex = BytesToHex(bytresult)
Me.strMensajeBin = System.Convert.ToBase64String(bytresult)
'Retorna el resultado como string
CalculodeInteresesA = BytesToHex(bytresult)
End Function
Public Function Desencripta( _
ByVal strMensajeHex As String, _
ByVal strClave As String, _
ByVal strIV As String) As String
'Crea el objeto con la libreria para encriptar
Dim objRijndael As Rijndael = Rijndael.Create
objRijndael.Mode = CipherMode.CBC
objRijndael.Padding = PaddingMode.None
'Convierte la Clave en ByteArray
'Dim SecretKey As Byte() = ASCII.GetBytes("01234567890abcde")
Dim bytSecretKey As Byte() = ASCII.GetBytes(strClave)
objRijndael.KeySize = 128
objRijndael.Key = bytSecretKey
'Convierte la IV en ByteArray
'Dim iv As Byte() = ASCII.GetBytes("fedcba9876543210")
Dim iv As Byte() = ASCII.GetBytes(strIV)
objRijndael.BlockSize = 128
objRijndael.IV = iv
'Convierte el TextoEncryptado en ByteArray
Dim bytMensaje As Byte() = HexToBytes(strMensajeHex)
'Crea la instancia para Desencriptar
Dim objdecryptor As ICryptoTransform = objRijndael.CreateDecryptor(bytSecretKey, iv)
'Ejecuta la rutina para Desencriptar
Dim bytResultado As Byte() = objdecryptor.TransformFinalBlock(bytMensaje, 0,
bytMensaje.Length)
'Libera Recursos
objRijndael.Clear()
objdecryptor.Dispose()
'Retorna el resultado como string
CalculodeInteresesB = ASCII.GetString(bytResultado)
End Function
End Class
Ok. Eso es todo espero que les sea de utilidad
Ricardo Balda
----
Server IP: 209.41.74.194
Probable Submitter: 190.10.153.29
----
Manual Page -- http://www.php.net/manual/en/mcrypt.examples.php
Edit -- https://master.php.net/note/edit/91089
Del: integrated -- https://master.php.net/note/delete/91089/integrated
Del: useless -- https://master.php.net/note/delete/91089/useless
Del: bad code -- https://master.php.net/note/delete/91089/bad+code
Del: spam -- https://master.php.net/note/delete/91089/spam
Del: non-english -- https://master.php.net/note/delete/91089/non-english
Del: in docs -- https://master.php.net/note/delete/91089/in+docs
Del: other reasons-- https://master.php.net/note/delete/91089
Reject -- https://master.php.net/note/reject/91089
Search -- https://master.php.net/manage/user-notes.php