A veces es necesario cifrar nuestro código para que no lo copien, bien para una base de dato, para una web, para contraseñas, o bien como yo, para proteger de las copias el código de activación de mis plugin, jeje.
Dentro de la criptografía RC4 o ARC4 es el sistema de cifrado de flujo Stream cipher más utilizado y se usa en algunos de los protocolos más populares como Transport Layer Security (TLS/SSL) (para proteger el tráfico de Internet) y Wired Equivalent Privacy (WEP) (para añadir seguridad en las redes inalámbricas).
El algoritmo de criptografía RC4 fue diseñado por Ron Rivest de la RSA Security en el año 1987; su nombre completo es Rivest Cipher 4 teniendo el acrónimo RC un significado alternativo al de Ron's Code utilizado para los algoritmos de cifrado RC2, RC5 y RC6.
Inicialmente el algoritmo era un secreto registro, pero en septiembre de 1994 una descripción del algoritmo fue posteado anónimanente a una lista de correo de cypherpunks, enseguida fue posteada en el grupo de correo sci.crypt y de ahí fue publicado en númerosos sitos de Internet. Debido al conocimiento del algoritmo éste dejó de ser un secreto registrado, sin embargo RC4 aún es una marca registrada. Actualmente la implementación no oficial de RC4 es legal, pero no puede ser utilizada con el nombre de RC4, por este motivo y con el fin de evitar problemas legales a raíz de la marca registrada a menudo podemos verlo nombrado como ARCFOUR, ARC4 o Alleged-RC4, RSA Security nunca ha liberado el algoritmo de su RC4.
RC4 es parte de los protocolos de encriptación más comunes como WEP, WPA para tarjetas wireless y TLS. Entre los factores principales que han ayudado a que RC4 esté en un rango tan amplio de aplicaciones son su increíble velocidad y simplicidad. La implementación tanto en Software como en Hardware es muy sencilla de desarrollar y son muy pocos los recursos necesarios para obtener un rendimiento eficiente de ARC4.
Fuente: http://es.wikipedia.org
Código de Alleged-RC4
http://www.mozilla.o...-arcfour-03.txt
Bueno, a lo que vamos, llevo tiempo estudiando criptografía y este código me parece bastante seguro y lo he traducido a varios lenguajes de programación.
Aquí os pongo el código en VB6
Otro día os lo traeré en C++, pues ahora lo tengo en C y en modo consola, pero si alguien lo quiere que me lo pida
CÓDIGO
*************************************************
'alleged_RC4 Adaptación a Visual Basic 6 realizada por Manolo Warr
'*************************************************
Public Function alleged_RC4( _
keyASCII As String, menASCII As String _
) As String
'//menASCII = "Manolo Warr"
'//keyASCII = "[email protected]"
Dim i As Integer
Dim x As Integer
Dim y As Integer
Dim index2 As Integer
Dim index1 As Integer
Dim tmp As Integer
Dim xorIndex As Integer
Dim men_len As Integer
Dim key_len As Integer
Dim rtn As String
Dim key() As Integer
Dim men() As Integer
Dim state(256) As String
men_len = Len(menASCII)
key_len = Len(keyASCII)
'//*********************************************************
'//ASCII key characters
ReDim key(key_len)
For i = 1 To key_len
key(i - 1) = Asc(Mid$(keyASCII, i, 1))
Next
'//ASCII men characters
ReDim men(men_len)
For i = 1 To men_len
men(i - 1) = Asc(Mid$(menASCII, i, 1))
Next
'//*********************************************************
For i = 0 To 255
state(i) = i
Next
x = 0
y = 0
index1 = 0
index2 = 0
'//**********************************************
For i = 0 To 255
index2 = (key(index1) + state(i) + index2) Mod 256
'swap_byte(state(i), state(index2))
tmp = state(i)
state(i) = state(index2)
state(index2) = tmp
'//
index1 = (index1 + 1) Mod key_len
Next
'//**********************************************
For i = 0 To men_len - 1
x = (x + 1) Mod 256
y = (state(x) + y) Mod 256
'swap_byte(state(x), state(y))
tmp = state(x)
state(x) = state(y)
state(y) = tmp
'//
xorIndex = (state(x) + state(y)) Mod 256
men(i) = men(i) Xor state(xorIndex)
rtn = rtn + Chr(men(i))
Next
'//**********************************************
'//Return
alleged_RC4 = rtn
End Function
Aquí os lo pongo para la descarga, está en VB6 pero el Visual Basic net os lo convierte sin problema a ésta versión, el único error que da en la conversión es que la función MOD ha cambiado, pero no tiene importancia pues este algoritmo sólo utiliza valores enteros
DESCARGA
http://www.Photoshop...alleged_rc4.zip
OjO, el legar usar este algoritmo, pero no se puede usar el nombre de RC4, pero podéis usar uno de los otros que tiene como Alleged-RC4, y así es perfectamente legar
PD; para probarlo introducir este código en decrypt y contraseña foro en minúscula, es mi mensaje de navidad
CÓDIGO
+Éø´ÒþrÊÕBE}œ¾[‰ð õ+·¾—}zäwh¨Aþ¢Ž[è¹[Å¢ÇÍ~ĽÊH¥š'žõ€fF«=wèœlÊ~û$

Conectar
Registrar
Ayuda

MultiCitas