-
June 15th, 2003, 02:27 PM
#1
Junior Member
Encryption in C++ or BASIC
Hey, I'm new to programming, and I know a little about basic, and a minimal amount about C++. I was wondering if anyone could explain the steps needed to be taken for writting an encryption program. If someone would like to talk to me via email or aim, I'd be really grateful, just because I don't think many people will post here... But thanks for any posts
-0ri0n
With what weapons World War Three will be fought, I do not know, but World War Four will be fought with sticks and stones.
-Albert Einstein
-
June 15th, 2003, 02:48 PM
#2
I don't know C++ or BASIC that well but it would all depend on what kind of encryption you would want. Encryption could be a slight change (moves every letter up by 1, "a" would change to "b") or it could follow a specific algothrim that depends on many variables (i.e time, amount of letters, etc.).
Well, I'll write a quick and very simple encrytion program in C++ below:
(I apologize for any errors, I haven't programed in well over six months.)
#include <iostream.h>
int main()
{
// Bad programming skills will show... must be a 10 character password.
char password[10];
char encrypted[10];
cout << "Enter the password: ";
cin >> password;
// Time for encryption!
for( int x = 0; x < 10; x++)
{
encrytped[x] = password[x] + 1;
}
// Display encrypted password!
cout << "Your encrypted password is: " << encrypted << endl;
return 0;
}
Again I want to emphasize that the program above may have errors and may be quite lame but that could be a simple encrytion program that changes every letter by 1.
As for the steps for writing an encryption program, I would imagine that they would be close to something as follows:
1) Identify cause (simple encryption or CIA level).
2) Form an algothrim that supports cause.
3) Write the program.
4) Ask people to test the program.
5) Encrypt some text and see if t works.
Hope this helps!
- Cheers,
jag291
-
June 15th, 2003, 02:49 PM
#3
Re: Encryption in C++ or BASIC
Originally posted here by 0ri0n
just because I don't think many people will post here... But thanks for any posts
-0ri0n
Your kidding me right? This has to be like one of the most active bullitin boards I've seen on the WWW.
Ok encription.... ehhh I haven't fooled with that much but I know that in VB you can use Xor to perform an operation on two numbers, thus returning a value that can be used to encript / decrypt some text & (ect).
(Example) Lets do simple math. 69 Xor 50 returns to the value of 119. Chr$(69) can return it into ascii. Then you can use Use Asc("69") then it can be used to turn it back into (ascii basicly known as "letters & stuff").
Ok so my example is very short and kinda lame but its hard to code things off the top of your head I hope it'll help though.
-
June 15th, 2003, 02:52 PM
#4
Forgot to add that this is in the wrong forum... it should be programming security.
-
June 15th, 2003, 03:01 PM
#5
Junior Member
thanks for the replies thus far. And i meant I wasn't expecting people to post back on this thread. But i guess i was wrong GOD BLESS YOU ALL!!
With what weapons World War Three will be fought, I do not know, but World War Four will be fought with sticks and stones.
-Albert Einstein
-
June 15th, 2003, 10:17 PM
#6
Member
and dont forget that most encryption algorithms are language independent. that is, the rsa encryption algorithm (for example) can be implemented equally well in java, c, c++, probably basic too. the choice of language depends on platform, use, familiarity, etc.
just my $.02 worth...
-
June 15th, 2003, 11:30 PM
#7
Member
I would say that if you wanted to created your own encryption algorithm, you might want to get a little more advanced. The post before this were very good at explaining the purpose of encryption. First, what are you encrypting, password? Partitions? Next, once the user has 'entered' the data, how will the program twist and turn it , and then turn it and twist it back. Turn it into source and you've got you algorithm. God Speed.
Scatman
If the scatman can do it so can you.
-
June 16th, 2003, 07:27 AM
#8
Just learn some basics of programming, programming is not difficult I did it when I was twelve. For writing an encryption program you'll need to understand how encryption works. More information about encryption >> http://computer.howstuffworks.com/encryption.htm
After reading all this information all you have to be is a little bit creative. Just like the people of the CIA and KGB.
Good luck...
-
June 16th, 2003, 11:10 AM
#9
Junior Member
better u`ll try 2 program tht in pearl or C. C++ is also okay. u must find them in bruce shinrer`s book 4 cryptography....u`ll learn lotz...
-
June 16th, 2003, 03:11 PM
#10
I have written some simple encryption programs, and have had my fair share of errors in them. If you check out http://www.antionline.com/showthread...543#post612368 , you can see links to my encryption program. It is written in Javascript/HTML, so it shouldn't be too difficult to figure out, despite my lack of comments.
Basically, here is what you need to do to make a XOR based encryption program...
* Make sure you have your headers, main function set up, etc...
1) Make 3 character arrays with same length of your choice ( char key[500], plaintext[500], ciphertext[500]; )
2) Prompt user for a Key ( cin>>key; )
3) Prompt user for text to encrypt ( cin>>plaintext; )
4) Encrypt plaintext and key together with a loop ( for(int i=0;i<500;i++)
ciphertext[i]=plaintext[i]^key[i];
5) Display ciphertext/encrypted/XORed output ( cout<<ciphertext; )
Those steps above would result in a program similar to this:
#include <iostream.h> // your header(s)
// main function
int main(void)
{
char key[500], plaintext[500], ciphertext[500]; // declare variables
cout<<"What is your key? "; // display message/prompt
cin>>key; // get the key from the user
cout<<"\nPlease type your message below:\n"; // display message/prompt
cin>>plaintext; // get the message to encrypt from the user
// now, let's encrypt
for(int i=0; i<500; i++)
ciphertext[i]=plaintext[i]^key[i]; // this is our XOR encryption saved into the ciphertext variable
cout<<"\nHere is your message when it is XORed:\n"<<ciphertext; // display the message
return 0; // exit main function with code 0 (usually no errors)
}
Many encryption programs need a decryption program to be useful. Notice I didn't say ALL... Anyways, the beauty of XOR-based encryption is that it can encrypt and decrypt. You just have to give it the right values. By using XOR, we don't need a seperate encryption and decryption function or a whole other program which can complicate things. If you look a tjaguar291's program, it only encrypts. To decrypt, you have to change it to subtract 1, and then give the program the encrypted password. By using XOR, you use the same key, but change the other two around.
For example, play with the values below:
key: 123
plaintext: abc
ciphertext: PPP
If you search AO, you might come across another encryption program I wrote. It shows how using seperate functions to encrypt/decrypt can create errors. If you read through (same link as above)http://www.antionline.com/showthread...hreadid=241543 you will see that Pecosian found an error in my code that existed for 1 year! BTW, you can check out that program and see how much more complex it is, especially without the comments...
BTW, if you even read this far... good luck in your adventures in programming and cryptography
-Tim_axe
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
|