|
But the problem is, that I don't want to use several different algorithms, jus' to simplify things. I want an algorithm that is strong enough to encrypt my exe, dll, and unused code; that can also be used to check the downloaded file(s).
I jus' thought of something I could make fake files (exe, dll, cfg, etc) encrypted with the flawed md5 algorithm and check the authenticity of them, and if they're tampered with I can see what program, when, how, etc. accessed it. While using the more secure algorithm to keep the real files safe.
|
|
|
|
≡
|
2010 Jan 11 at 20:34 UTC
— Ed. 2010 Jan 11 at 20:43 UTC
|
|
|
Down Rodeo
Cap'n Moth of the Firehouse
2007 Oct 19 • 5486
57,583 ₧
|
The method I'm talking about is not encryption, it is pretty much just checking to see if the file's OK.
|
|
|
|
≡
|
2010 Jan 11 at 21:14 UTC
|
|
|
|
Via a encryption algorithm(?).
Update ::
Searching around I found some encryption algorithms that have pretty good reputations such as Blowfish, Serpent, Twofish, AES-256; and, downloaded some source code in C and C++.
Lets see if I know how to use them now. (I don't)
Well what do you know, Visual Studio 2008 has incorporated the TripleDES encryption algorithm already...
|
|
|
|
≡
|
2010 Jan 11 at 21:27 UTC
— Ed. 2010 Jan 12 at 00:52 UTC
|
|
|
|
code Imports System.Security.Cryptography
Imports System.Text
Imports System.IO
Public Class Form1
Dim file As String = "asdf"
Dim newfile As String = "non"
Dim filein As New FileStream(INfile.text, FileMode.Open, FileAccess.Read)
Function getMd5Hash(ByVal input As String) As String
' Create a new instance of the MD5 object.
Dim md5Hasher As MD5 = MD5.Create()
' Convert the input string to a byte array and compute the hash.
Dim data As Byte() = md5Hasher.ComputeHash(Encoding.Default.GetBytes(input))
' Create a new Stringbuilder to collect the bytes and create a string.
Dim sBuilder As New StringBuilder()
' Loop through each byte of the hashed data and format each one as a hexadecimal string.
Dim i As Integer
For i = 0 To data.Length - 1
sBuilder.Append(data(i).ToString("x2"))
Next i
' Return the hexadecimal string.
Return sBuilder.ToString()
End Function
'Get the SHA1 Hash of a String
''' <param name="strToHash">The String to Hash</param>
Function getSHA1Hash(ByVal strToHash As String) As String
Dim sha1Obj As New Security.Cryptography.SHA1CryptoServiceProvider
Dim bytesToHash() As Byte = System.Text.Encoding.ASCII.GetBytes(strToHash)
bytesToHash = sha1Obj.ComputeHash(bytesToHash)
Dim strResult As String = ""
For Each b As Byte In bytesToHash
strResult += b.ToString("x2")
Next
Return strResult
End Function
Private Sub Bencrypt_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Bencrypt.Click
file = filein.ToString()
If RBmd5.Checked = True Then
newfile = getMd5Hash(file)
ElseIf RBsha1.Checked = True Then
newfile = getSHA1Hash(file)
End If
newfile = getMd5Hash(file)
Dim this As System.IO.StreamWriter
this = My.Computer.FileSystem.OpenTextFileWriter("C:\Users\Sprinkles\Desktop\new.txt", True)
this.WriteLine(newfile)
this.Close()
End Sub
End Class
I get an Invalid Operation exception.
I cannot, at all, figure out why.
Even when I comment things out it still doesn't work.
I have to delete all of it to fix it.
I don't even know....
Edit ok it has something to do with the FileStream Declaration, I
hard coded it and it works now. But it only does so many characters.
How do I encrypt a file?
When I encrypt a file I get
code 8f588de478ee81a213fe9e1be0a78131
When the other programs encrypt a file they get
And theirs goes on and on...how do I get it like that?
|
|
|
|
≡
|
2010 Jan 12 at 05:40 UTC
— Ed. 2010 Jan 12 at 17:25 UTC
|
|
|
Down Rodeo
Cap'n Moth of the Firehouse
2007 Oct 19 • 5486
57,583 ₧
|
LIST GET GO NAO
1. Create new file for user - say there's been an update, or whatever.
2. Run this file through an MD5 hash, record the filesize and a magic number or something easily identifiable about the file.
3. Open a secure channel with the user, send file to them.
4. When user receives file, take MD5 hash of this file, compare to serverside hash, they should be the same. Also compare filesize, whatever other data you took.
This method should ensure that there have been no file download errors and that the file wasn't interfered with, to a fairly high certainty. I think.
Also drop the Mandarin characters, or whatever they are, we don't need to see them. All it means is the program is trying to interpret the data in the encrypted file as Unicode and surprise surprise, all the hex strings are in the high ranges :)
|
|
|
|
≡
|
2010 Jan 12 at 12:41 UTC
— Ed. 2010 Jan 12 at 12:43 UTC
|
|
|
|
But it doesn't fully encrypt it it only encrypts the first 128 bytes....
|
|
|
|
≡
|
2010 Jan 12 at 17:24 UTC
|
|
|
Down Rodeo
Cap'n Moth of the Firehouse
2007 Oct 19 • 5486
57,583 ₧
|
An md5 sum folds all the data in a file into a hex string. My list explains everything!
|
|
|
|
≡
|
2010 Jan 12 at 17:52 UTC
|
|
|
|
Down Rodeo said: An md5 sum folds all the data in a file into a hex string. My list explains everything!
But, your list, explains it as if I know what you (or I) is talking about.
But, I have the Blowfish source code (Blowfish is supposed to be really good), its in C; but, when I try to compile it it says something about it cannot compile with the clr option or whatnot.
how me fix problem?
Also I decided to use C#. If I get the Blowfish algorithm to work and compile it into a dll (as a subroutine or function) can I use it in my C# program (since its in C)?
Oh wait I have the code in the C++ as well.
Ok it compiles now.
|
|
|
|
≡
|
2010 Jan 12 at 17:57 UTC
— Ed. 2010 Jan 12 at 18:25 UTC
|
|
|
|
Ok it compiles and everything (in c++), but for the life of me I cannot figure out how to call anything to actually encrypt anything. Here are the source files, hopefully someone can tell me how to use it. (They are txt format)
blowfish.h
blowfish.h2
blowfish.cpp
|
|
|
|
≡
|
2010 Jan 14 at 19:07 UTC
— Ed. 2010 Jan 14 at 19:07 UTC
|
|
|
Down Rodeo
Cap'n Moth of the Firehouse
2007 Oct 19 • 5486
57,583 ₧
|
It's tough to know just by looking, does it not have any documentation?
|
|
|
|
≡
|
2010 Jan 14 at 20:14 UTC
|
|
|
|
|
|
|
|
≡
|
2010 Jan 14 at 20:23 UTC
— Ed. 2010 Jan 14 at 21:19 UTC
|
|
|
|
Ok, this one book I got from Amazon.com is so helpful. I might take another stab at encryption.
|
|
|
|
≡
|
2010 Jan 16 at 06:14 UTC
|
|
|
|
This is my code:
C# code private void Bscan_Click(object sender, EventArgs e)
{
scanForm Form = new scanForm();
Form.Show();
this.Dispose();
}
private void Bconfig_Click(object sender, EventArgs e)
{
configForm Form = new configForm();
Form.Show();
this.Dispose();
}
This is my problem:
The entire application closes.
When I substitute with my application WONT close.
|
|
|
|
≡
|
2010 Jan 17 at 08:37 UTC
|
|
|
|
Where would I be able to find virus databases, you know those things that the scanner uses?
|
|
|
|
≡
|
2010 Jan 20 at 07:32 UTC
|
|
|
Down Rodeo
Cap'n Moth of the Firehouse
2007 Oct 19 • 5486
57,583 ₧
|
I think each company keeps their own but as far as I'm aware there is one open site that has an index of all viruses, could be wrong though.
|
|
|
|
≡
|
2010 Jan 20 at 11:18 UTC
|
|
|
|
So I decided to stop worrying about all the hard stuff, and jus' get my ui to work, and my conceptual overview correct. So I got the scan form to open a process called avscan; the problem is I want the option to have a full and fast scan. How would I accomplish this without have to write separate executables for the full and fast scan? Is there a way to send a parameter or option to the avscan.exe? I want the scanning engine to be a separate executable not a function or sub routine in the ui.
code private void Bfullscan_Click(object sender, EventArgs e)
{
//string avscandir = Directory.GetCurrentDirectory() + "\avscan.exe";
//MessageBox.Show(avscandir, "this.Show");
try
{
System.Diagnostics.Process.Start(Directory.GetCurrentDirectory() + "\avscan.exe","full");
}
catch (Exception exeption)
{
MessageBox.Show("There was a problem starting the scan." + exeption.ToString(), "Error");
}
}
private void Bfastscan_Click(object sender, EventArgs e)
{
try
{
System.Diagnostics.Process.Start(Directory.GetCurrentDirectory() + "\avscan.exe", "fast");
}
catch (Exception exeption)
{
MessageBox.Show("There was a problem starting the scan." + exeption.ToString(), "Error");
}
}
|
|
|
|
≡
|
2010 Jan 21 at 00:11 UTC
— Ed. 2010 Jan 21 at 00:16 UTC
|
|
|
|
he shuold make av with theopen source because many people are still newbie and they want to lrean from you guys
|
|
|
|
≡
|
2010 Jan 31 at 18:24 UTC
|
|
|
|
Antone said: he shuold make av with theopen source because many people are still newbie and they want to lrean from you guys
im about to kick you in das balls
I drink to forget but I always remember.
|
|
|
|
≡
|
2010 Feb 1 at 03:29 UTC
|
|
|
|
Antone said: he shuold make av with theopen source because many people are still newbie and they want to lrean from you guys
Well I will teach you something, right now, for free. 'Learn' is spelt like I spelt it, not you.
|
|
|
|
≡
|
2010 Feb 11 at 10:06 UTC
|
|
|
SRAW
Rocket Man
2007 Nov 6 • 2525
601 ₧
|
woah, its the fake indian spammer!
|
|
|
|
≡
|
2010 Feb 14 at 12:13 UTC
|
|
|
|