My name is Heston Wilson, and I currently attend University of California Santa Cruz, majoring in computer science. I'm a sophomore. This website serves as a portfolio of the stuff I did in high school. If you're just here because you want to read my reports, go ahead and feel free. For those who are interested I will describe a little bit about what I've done so far in college.
I'll describe two of the more interesting applications I have programmed recently.
RSA Encryption in C:
RSA encryption is one of the most famous public key encryption algorithms, it utilizes the multiplication of very large prime numbers (thousands of bits), to accomplish this. This operation is trivial to perform, yet non trivial to reverse, there's no efficient way to factor large numbers, making it a very bad idea to try and decrypt RSA without the private key.
The program implemented made use of the GMP (GNU - Multi Precision Arithmetic Library), which makes even simple C operations totally agonizing. My program can encrypt and decrypt files or stdin/stdout, with specifications for a pseudo-random seed and key size.
Huffman Encoding in C:
Huffman encoding is one of the most famous lossless compression algorithms. I implemented this one in C as well. The program is capable of encoding files up to 2gb in size, and in ideal conditions it saves about 40% space.
Huffman encoding uses a variety of data structures to accomplish the compression of the file. In essence, it counts the frequencies of each character in a file or standard input, then replaces that with a binary code created through traversal of a Huffman tree.
I'll describe two of the more interesting applications I have programmed recently.
RSA Encryption in C:
RSA encryption is one of the most famous public key encryption algorithms, it utilizes the multiplication of very large prime numbers (thousands of bits), to accomplish this. This operation is trivial to perform, yet non trivial to reverse, there's no efficient way to factor large numbers, making it a very bad idea to try and decrypt RSA without the private key.
The program implemented made use of the GMP (GNU - Multi Precision Arithmetic Library), which makes even simple C operations totally agonizing. My program can encrypt and decrypt files or stdin/stdout, with specifications for a pseudo-random seed and key size.
Huffman Encoding in C:
Huffman encoding is one of the most famous lossless compression algorithms. I implemented this one in C as well. The program is capable of encoding files up to 2gb in size, and in ideal conditions it saves about 40% space.
Huffman encoding uses a variety of data structures to accomplish the compression of the file. In essence, it counts the frequencies of each character in a file or standard input, then replaces that with a binary code created through traversal of a Huffman tree.
Click to set custom HTML
|
|
|
|
Click to set custom HTML