The description of this thread included creating crypts, as well as data protection. One of the simplest and most effective methods is to create your own number table, and use it as the base for your coder. This is easiest if you are encrypting just text/numbers and a few symbols. abcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()?|><,. This is the base set you need as a reference to build your cypher for. Count them, and rearrange them. No two may be the same. Arrainge them in stacks for the cypher to choose from. There are near infinite possible combinations. What you will do is construct a long data stream that will replace every character in your file to be encrypted with one character from the cypher, then migrate to the next line you choose. This is a key cypher. You may make it a coded key cypher by simply choosing the line of the key to start with, and choosing every 3rd, 8th, 21st line, etc... to take characters from. The idea behind this is that without the key, you cannot break the code. The characters MUST be random, or the key will not work. I recommend placing it on a memory stick so it may be readily destroyed, thus keeping your secret data secret.I hope this helps some of you.

The description of this thread included creating crypts, as well as data protection. One of the simplest and most effective methods is to create your own number table, and use it as the base for your coder. This is easiest if you are encrypting just text/numbers and a few symbols. abcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()?|><,. This is the base set you need as a reference to build your cypher for. Count them, and rearrange them. No two may be the same. Arrainge them in stacks for the cypher to choose from. There are near infinite possible combinations. What you will do is construct a long data stream that will replace every character in your file to be encrypted with one character from the cypher, then migrate to the next line you choose. This is a key cypher. You may make it a coded key cypher by simply choosing the line of the key to start with, and choosing every 3rd, 8th, 21st line, etc... to take characters from. The idea behind this is that without the key, you cannot break the code. The characters MUST be random, or the key will not work. I recommend placing it on a memory stick so it may be readily destroyed, thus keeping your secret data secret.I hope this helps some of you.

Your description there is kinda confusing, but it seems that what you're talking about is a substitution cipher. A substitution cipher is not secure at all, as it doesn't hide patterns that the language being encrypted may present.

To explain this, assume we are using the the letters (A-Z) for our plaintext alphabet (no spaces or punctuation). If you substitute the letter e with the letter g, g will probably be the most frequent character in the cipher text file. This is because the letter e is the most common letter in the English language. A cryptographer would simply have to create a histogram of letter frequencies in the cipher text, and compare them with actual letter frequencies in the english language to figure out (or at least narrow down) the key. Also because of the way the English language is constructed, there are common pairs of letters such as (ss, ee, tt, ff, ll, mm and oo) that will show up in the cipher text also.

The best way to secure your data is to use a modern Cipher like AES. Since you mentioned thumb drives, a good cryptographic thumb drive to use would be the IronKey https://www.ironkey.com/. It uses AES encryption, and self destructs after 10 wrong password entries, to prevent brute force attacks. It's the best way I know of to secure your data.

If you want a program just to secure the data on your hard disk, a program like TrueCrypt http://www.truecrypt.org, which is a free and open source program, would do a good job of providing a high level of security (AES-256, Serpent, and Twofish) to protect your data. Using a classical cipher, is not a good ideal.

I think you missunderstood Every character you encrypt comes from a different line of the cypher, and each line is unique. Like a substitution cypher, but many times more complex.

I think maybe I did. I apologize.

Well, seems that what you talking about (and correct me if I'm wrong) is something similar to the Enigma cipher which was used in WWII, and was cracked by polish Cryptographers. What it boils down to, is it's just a Vigenere cipher, but the key is huge because it is generated by the rotors. To understand what I'm talking about, you really need to go and read about the Enigma machine, so I don't have to spend several pages explaining it. It is almost impossible to crack if you don't use it to send really huge messages (larger than the period of the key), and you use different "keys" or rotor configurations for each new message. The problem the Germans had, was that they used common rotor configurations, sent multiple messages using the same key, the Americans captured a lot of code books and Enigma machines (with rotors in position), and they practiced poor key management, so it was possible to decrypt messages.

Unlike the Enigma cipher, with a modern cipher like AES, the same key can be used to encrypt multiple messages, and there are still no weaknesses (that we know of) that could be exploited to find the key (or at least part of it). That's the only weakness with the Cipher you are proposing. Sorry For the confusion.

Soka, I have read about, studied, and even seen an enigma machine up close before. They were the marvel of their day, and were sophistocated as hell, but you cannot compare them to what a modern computer can do for the sheer size of the key. Even a 50 character key would be unbreakable if more than 1,000,000 lines are generted That would create a key of about 50 megabytes, and thus 50,000,000 possible characters for every substitution. The enigma was only cracked due to repetition and discovery of the key books. Imagine a standard memory stick, mine is 4gb with nothing but a key written on it, 4gb worth of key. You might crack it if you had a great many entire volumes of encyclopedias that had been encoded using this method, and a Cray super computer like they use at the NSA to sort it all out, but not unless.

The real question is what about encrypting data files as opposed to written messages. The ansii alphabet contains 256 characters, and could be used to much greater effect, but would require a much larger key to stay uncrackable. I have 1.5tb of hard drive space available to me, but it is inconvient to carry around. (2 sata, and a massive external). Memory sticks are always getting bigger though, so there is hope for the future.

For this program there would be 2 parts, a tiny program that reads the cypher, and replaces the letters, and a fucking huge cypher you carry on your person on a mobile media source. I love memory sticks! But what data is worth encrypting? Certainly not a standard porn stash, most of us are too broke to justify stealing money from, and that does not leave a hell of a lot. Illegal mesages? Hacked data?

Oh wait, I have it, encrypt someone else's files! That would be funny as hell! I may try htat later. Well, i have to go.

Like I said, it's a fairly secure algorithm if you use different keys every time you encrypt something, but is vulnerable to attack once you start encrypting multiple things with the same key. Adjusting the algorithm to use a keyspace of 256 (for encrypting one byte) would be trivial. I've actually got some C code for an enigma machine that can encrypt binary files.

Cryptography sparked a intrest in me and i was wandering what would be a good guide to study it as in any books that go over the basics of it and explain how the algorithims work and pretty much the whole concept of them

I have no idea. I understand the mechanics of it mostly through a few friends in the ARMY signals corps. The short short version is that you base it on some obscure random bit of data, and go nuts from there. One system that was used during the cold war was a single use cypher along the lines I described earlier, but much smaller, that used a random burst of static and a time key to determine the starting line of the cypher, and the order and direction that each character would be pulled from. It was inaccurate, and caused many messages to end up lost if the machines were not perfectly in sync, but was uncrackable for the most part. For intents and purposes, if you know the algorythm used to cypher information, you have the information. You have also rendered that entire encryption program obsolete as you could give that information to anyone. Most information on the subject comes in books from retired coders, and retired spooks. Go to Amazon, and do a search by subject. Find a few titles, and get them. Untill then, get an encryption program, encrypt one thing 1,000 times, and see if you can spot a pattern. If so, examine it further, and see if you can determine the algorythm used. That is the brute force method.