Image
 
linkedin_logo.png rss_logo.jpg
twitter_logo.png youtube_logo.jpg
Latest Additions
 
EH-Net Login
Welcome Guest.






Lost Password?
No account yet? Register
Who's Online
We have 65 guests and 3 members online
 
Free Business and Tech Magazines and eBooks

You are here: Home
EH-Net
May 19, 2013, 09:04:03 AM *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
News: Go back to The Ethical Hacker Network Online Magazine Home Page
 
  Home Help Calendar Login Register  
  Show Posts
Pages: [1]
1  Ethical Hacking Discussions and Related Certifications / Other / Re: Cryptography help. on: February 24, 2010, 04:48:00 PM
That's C#, I sorta dislike Java Tongue Anyway, thanks for explaining. From what I understand of it is, that you narrowed the search down a lot before brute forcing it. I would actually like to see some of your code, if that's alright.

ZF

Better choice between the two, but can't blame me for thinking that.  The two use incredible similar syntax.  I'll have to pretty it up.  It looks like garbage right now with comments and stuff, lol.  I'll post it when I get to pretty-ing it up.

Edited/Added!
This recursive function worked with my formatted data.  In simple, the data was put into a .txt file.  Each line ended with a period and each began without a period.

Example:
555.555.334.
234.515.332.

Then each line was fed into this function.
Code:
void getString(string s)
{
     int pos;  //Position of period
     string str;  //New string.
     pos = s.find_first_of('.');    //Position of first period
     str = s.substr (0, pos); //the number to be pulled
   
     if((pos <= 0)  //If position is equal or less then 0, meaning its the last period of a line. Kill function
            return;
     
     addElement(putInt(str), vnumb); //Puts it into putInt, which converts it to integer.  Vnumb (vector numb)
                                     //determines which of the 3 vectors to put them in.
   
     if(vnumb == 2)  //Changed Vnumb to equally distribute between the vectors.
          vnumb = 0;
     else
         vnumb++;
     
     str = s.substr(pos+1);  //Sets string to be a small string excluding the first number/period(s)
     getString(str);  // Recursive Call

}

I had a lot of code/comments that weren't too useful in the end, so I only posted the one function.  The rest were pretty trivial/basic.
2  Ethical Hacking Discussions and Related Certifications / Other / Re: Cryptography help. on: February 24, 2010, 02:17:43 PM
I used C++ instead of Java.  C++ doesn't have a spit class in the string, but it has a sub-string and find-first-instance-of methods.  Fed a line of encrypted text into my recursive function, which pulled each number into 3 vectors, took the sum of the 3, and from there I was able to subtract a range of values I suspected to be a key.

I could re-write it to make it more efficient and less lines, if I wanted to.
3  Ethical Hacking Discussions and Related Certifications / Other / Re: Cryptography help. on: February 24, 2010, 10:15:53 AM
This was sort of fun to program, because in my design process, I was able to find a reason to use a recursive base function.  Anyways, my first few steps was to read the the encrypted message from a file (I formatted the file to make it a little easier). 

It would equally distribute the 3 numbers into 3 vectors.  Made a 3rd vector and held all the sums.  Then I wrote some functions that did some simple analysis as find min, max, and mode. 

I then did some mental guessing and calculations to get a rough range of values.  I created one function that would brute force the whole ranges till it found a message that was readable.

For example, three numbers, lets say 100, 200, 300.  The some would be 600.  The next numbers would be 150, 250, 350, which would be 750. So on, so on.

I got a range of values around the 700-800 range.  If you compare those to the ASCII table,  Those numbers range from 600-700 from the decimal values. 

I took a loop that would start at lets say 600, and run till 700, till there was a legit ASCII message.  Which went about half ways. 

Note:  Those weren't the real values I was getting, but arbitrary values.
4  Ethical Hacking Discussions and Related Certifications / Other / Re: Cryptography help. on: February 23, 2010, 06:02:25 PM
I cracked it!  Using some math skills I was able to pick a range around 100 or less values for keys.  I pretty much picked arbitrary numbers, and guessed the range.  Then I inputted them into my program.  Ran it about 50 times before I got a good message.  Then my program outputted the data to a txt file and I accomplish the mission! 
5  Ethical Hacking Discussions and Related Certifications / Other / Cryptography help. on: February 22, 2010, 08:58:08 PM
I was doing this mission on HTS(HackThisSite.org).  It dealt with the XECryption algorithm.  I read somewhere, that this algorithm works by taking 3 numbers separated by period(.), adding their sum, and using that number some how related to ASCII decimal value.

Anyways, instead of doing this for X number of numbers.  I built a simple c++ program that would create 3 vectors, put the numbers into the 3 vectors in order.  Then the program would take a 4th vector that for every entry at x, it would have the sum of vector1.at(x), vector2.at(x), etc. 

Using this new vector, then I looked at the ranged of values, and determine it was around a 100.  So I ran the program and it would find the count of every entry in this new vector.  I then looked at the count, and found the highest count.

I took that value, and assumed it was e, since e is the most common letter.  I found the difference between this number and the ASCII decimal value of e, and used that for the key.  I took each value of the sum vector and subtracted the decimal value of e, converted each number to character, and outputted the new string.

That didn't work!

Any tips?
6  Resources / Career Central / Re: Taking my CS/Math Degree in the field of Security. on: February 22, 2010, 10:07:30 AM
Thanks guys!  Right now I'm just taking the courses that are absolutely required to get a CS degree, and when I start picking my optional courses, I'm going to talk to my Adviser and/or a past teacher (Security officer [He sort of inspired me.]).  Since I'm a math major as well. I'm going to ask the math department what I should do to get take a few of their Encryption courses (assuming that will help).

Little fyi, 80% of my knowledge is self taught.  I've got a library, including course text books, 50+, including a few books on security itself.
7  Resources / Career Central / Taking my CS/Math Degree in the field of Security. on: February 21, 2010, 09:35:28 PM
Right now I'm studying Computer Science and Mathematics.  I'm studying mathematics mostly to get some understanding of Encryption, and I like the challenges math gives me.

I'm still undergrad and I want to get a graduate degree with Security.  What can I do to better prepare myself?  Right now I read various online articles and do various tutorials.  My main concern is will a CS degree help put me on the right track.  From some of the classes I've took, I really hope so, but I just want to double check.

I'm also CCNA certified.  I took a few college credit courses in high school  I'm sure that helps.  I'm also working on networking programming tutorials.  I have some experience securing web side apps (php/mysql), and some experience with server security. 

Any career advice/tips?
Pages: [1]
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines
Joomla Bridge by JoomlaHacks.com
Valid XHTML 1.0! Valid CSS!
Page created in 0.082 seconds with 22 queries.
 
Exclusive Deal

sansfire13_245x90_cw90.jpg
SANSFIRE 2013
June 15 - 22

5% Off w/ Code: EHN_5

SANS Deals 4 EH-Netters
5% OFF Any SANS Course in Any Format!
Coupon Code: EHN_5 Including SANS Rocky Mountain 2013 & SANS Boston 2013
Polls
Compared to this year, 2013 will be:
 
Recent Forum Topics
EH-Net News Feeds
Latest Additions
 
         
Advertisement

© 2013 The Ethical Hacker Network
Joomla! is Free Software released under the GNU/GPL License.