Saludos comunidad
me a interesado ase poko el tema de la cirptografia para cifrar y descifrar cosas,
ya me e leido parte de el manual de APOKLIPTICO ("cRIPTOGRAFIA aSIMETRICA")
Solo quiero entrenar programando algunos algoritmos
Me puden proporcionar algunos ejemplos (metodos) creados desde 0
Por ejemplo: " obtenr bytes de texto y sumarles X al cubo de la longitud...."(eso es ejemplo)
Si es posible tambien mencionenme algunos algoritmos asimetricos
Estás interesado en comenzar a crear tus propios algoritmos???
Bueno, por un lado, te recomiendo que empieces por los simétricos, ya que en general tienden a ser más simples de entender...
Bajate el cryptool, es una herramienta gratuita que te permite explorar los cifrados (bajate la versión 1.43 no la 2).
Por otro lado, que lenguajes de programación conocés y manejás???
Saludos
APOKLIPTICO
Hola APOKLIPTICO
Pues si quiero empezar a crear mis algoritmos, pero para eso es cierto q necesito practikar
Aorita estoy trabajando con VB NET (2008)
Mira por ejemplo hace tiempo buskando en internet me encontre este algoritmo
Function Cifra(Byval texto as string,Byval clave as string)
Dim I As Integer,C As String,almacen As String
For I = 1 To Len(texto) 'vamos a recorrer todo el texto
C = Asc(Mid(texto, I, 1)) 'cada repeticion C tendra el valor de los caracteres(1*1)
C += Asc(Mid(ju, (I Mod Len(clave)) + 1, 1)) 'aqui esta lo interesante !!
almacen += Chr(C And &HFF) 'aqui se va almacenando el textoCifrado
Next
Return almacen
End Function
'***************************
'******* PARA DESCIFRAR
'**************************
Function Dcifra(Byval texto as string,Byval clave as string)
Dim I As Integer,C As String,almacen As String
For I = 1 To Len(texto)
C = Asc(Mid(texto, I, 1))
C -= Asc(Mid(ju, (I Mod Len(clave)) + 1, 1))
almacen += Chr(C And &HFF)
Next
Return almacen
End Function
Si, es un cifrado simétrico simple de sustitución que combina un texto con una clave, sumándole a cada uno el valor de la clave, pero tiene varios problemas este algoritmo:
- No maximiza la entropía, maximizar la entropía es necesario para un algoritmo de cifrado, sino se puede inferir cuál puede ser la clave de descifrado y reducir la complejidad de crackeo.
- Known-Plaintext Attack. Si sabés un poco del texto a cifrar (texto plano o plaintext), podes deducir la clave de cifrado, por ejemplo:
A T A C A R E M O S
1 3 2 5 1 3 2 5 1 3
--------------------
B W B H B U G R P V
Si sabemos que la primera letra es la "A" y que la última es la "S", entonces simplemente restando:
B - A = 1
V - S = 3
Y tenemos parte de la clave, que luego la podemos utilizar para descifrar parte del plaintext, y luego quizas podemos deducir alguna otra parte del plaintext y así hasta tener el plaintext completo. Ojo!
Un abrazo
APOKLIPTICO
Orale !
pues muchas gracias por tu respuesta , veo q necesitare mucho las matematikas...
tienes algun algoritmo que me pueda servir (maximizando la entropia)
Otra cosa, estoy viendo que en algunos metodos de cifrado utilizan mucho los alfabetos verdad
luego estos los cifran,
pero cuando hablamos de informatika no seria mejor cifrar todo el rango de caracteres Ascii (255)
Para entender el concepto de entropía informática, te recomiendo que busques en este mismo subforo, hay bastante material. Fijate en los temas interesantes.
Los algoritmos de cifrado que se utilizan prácticamente (Como AES o RC4) utilizan como bien decís, todo el espectro ASCII del 0 al 255.