si péro esta incompleto
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes MenúImports System.Net
Imports System.Text.RegularExpressions
Imports System.IO
Class MainWindow
#Region "Variables"
Dim response As HttpWebResponse
Dim request As HttpWebRequest
Dim cookies As New CookieContainer
Dim Identificador As String
Dim data As String
Dim finder As MatchCollection
Private Delegate Sub Refresher()
#End Region
#Region "API"
Dim base As String = "http://mrtzcmp3.net/"
Dim Extension1 As String = "_1s.html"
#End Region
#Region "Funciones"
Public Sub tarea(ByVal URL As String)
request = CType(HttpWebRequest.Create(base & Utils.UrlEncode(URL) & Extension1), HttpWebRequest)
request.CookieContainer = cookies
response = CType(request.GetResponse(), HttpWebResponse)
For Each cook As Cookie In response.Cookies
If cook.Name = "haras" Then
Identificador = cook.Value
End If
cookies.Add(cook)
Next
data = New System.IO.StreamReader(response.GetResponseStream()).ReadToEnd()
finder = Regex.Matches(data, "D\?.+? _")
If finder.Count > 0 Then
request = CType(HttpWebRequest.Create(base & finder(0).Value & Identificador), HttpWebRequest)
request.CookieContainer = cookies
response = CType(request.GetResponse(), HttpWebResponse)
data = New System.IO.StreamReader(response.GetResponseStream()).ReadToEnd()
finder = Regex.Matches(data, "Get_a_a_\w+\.mp3")
If finder.Count > 0 Then
request = CType(HttpWebRequest.Create(base & finder(1).Value), HttpWebRequest)
request.CookieContainer = cookies
Using Respuesta As HttpWebResponse = CType(request.GetResponse, HttpWebResponse)
'Asocio la respuesta al stream local
Dim total As Integer = Respuesta.ContentLength
Dim StreamRespuesta As Stream = Respuesta.GetResponseStream
'Bucle que lee y escribe en el fichero
Using ptfArchivoDestino As New FileStream("test.mp3", FileMode.Create)
Dim buffer(102400) As Byte '100KB
Dim Leido As Integer = 0
Dim acumulador As Integer = 0
Do
Leido = StreamRespuesta.Read(buffer, 0, buffer.Length)
acumulador += Leido
ptfArchivoDestino.Write(buffer, 0, Leido)
ProgressBar1.Dispatcher.Invoke(New Refresher(Sub() ProgressBar1.Value = (acumulador / total) * 100))
System.Threading.Thread.Sleep(50)
Loop Until Leido = 0 'Compruebo que no es final de transmision(1)
End Using
End Using
End If
End If
End Sub
#End Region
Private Sub Button1_Click(sender As Object, e As RoutedEventArgs) Handles Button1.Click
Dim t As System.Threading.Thread
t = New System.Threading.Thread(AddressOf tarea)
t.Start(TextBox1.Text)
End Sub
End Class
Public Class Utils
Public Shared Function UrlDecode(ByVal value As String) As String
If String.IsNullOrEmpty(value) Then
Return String.Empty
End If
' UrlEncode escapes with lowercase characters (e.g. %2f) but oAuth needs %2F
value = Regex.Replace(value, "(%[0-9a-f][0-9a-f])", Function(c) c.Value.ToUpper())
' these characters are not escaped by UrlEncode() but needed to be escaped
value = value.Replace("%20", " ")
value = value.Replace("%5B", "[")
value = value.Replace("%5D", "]")
value = value.Replace("+", " ")
value = value.Replace("%3A", ":")
value = value.Replace("%23", "#")
value = value.Replace("%C3%B1", "ñ")
value = value.Replace("%28", "(")
value = value.Replace("%29", ")")
value = value.Replace("%21", "!")
Return value
End Function
Public Shared Function UrlEncode(ByVal value As String) As String
value = value.Replace(" ", "_")
Return value
End Function
End Class
Cita de: Maurice_Lupin en 21 Octubre 2013, 01:52 AM
Bueno a lo más utilizo 2 threads y un timer , por cierto si quieres seguridad averigua como cifrar el formato PE he visto mucho ejemplo en C/C++ pero nada en vb.net.
Saludos.
Cita de: Maurice_Lupin en 21 Octubre 2013, 01:52 AM
Bueno a lo más utilizo 2 threads y un timer , por cierto si quieres seguridad averigua como cifrar el formato PE he visto mucho ejemplo en C/C++ pero nada en vb.net.
Saludos.
Cita de: Maurice_Lupin en 21 Octubre 2013, 01:19 AM
Utiliza el frame 2.0, a mi me va de lujo.
Saludos.
Cita de: Shout en 16 Octubre 2013, 13:59 PMy planteo 1 pequeño sniffer q intercete esa informacion y obtengo esa password
Pues yo tengo una solución verdaderamente segura, con la que es 99.9% imposible crackear tu aplicación.
Primero: encriptas el .exe compilado de tu programa con algún cifrado con contraseña (tipo AES, así, el archivo varía según la contraseña, por lo tanto, es imposible recuperar el archivo original sin esa contraseña)
Luego, creas un "loader" que se encargará de enviar el Hardware ID (HWID) al servidor.
En el servidor, compruebas que el HWID esté en la base de datos. Si lo está, envías la contraseña al cliente para que desencripte el programa original y se pueda ejecutar. Si no es un HWID que esté en tu base de datos de HWIDs válidos, envías una contraseña aleatoria y el archivo no podrá ser descifrado.
Esto es imposible de crackear (eso sí, si la contraseña es 12345, no esperes que dure mucho). Si pones una contraseña larga y jodida, nadie podrá jamás ejecutar ese código, ya que, para bruteforcear eso, necesitas muchísimos años de crackeo.
Cita de: Shout en 19 Octubre 2013, 22:53 PM
Pienso crackear eso.
No para liberarlo ni nada (siempre envío el crack a los desarrolladores).
No hay nada en C# que se me resista.
Nada.