1. Limited time only! Sign up for a free 30min personal tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Some questions about cryptography

  1. Apr 13, 2013 #1


    User Avatar

    Hi I am a first year student studying mathematics. I have been experimenting with various subjects to find my thing, and I think I am interested in discrete mathematics, particulary in number theory and cryptography.

    1) But it seems like, there aren't many companies that are explicitly looking for cryptographers, but rather, they prefer computer scientists with some knowledge in cryptography. But on the other hand, I believe there is some government security agencies (NSA) and forces (Navy). How is the job prospect for cryptographers?

    2) How will the invention and the implementation of quantum computers affect cryptographers? Will they have to look for another job like physicists just after the end of the arms race? Or will the development of this new technology will be the next hot trend?

    3) I have taken two programming languages, one in DrRacket and the other in Python. What is the most popular programming language in the field of cryptography?

    I thank for your replies in advance :)
  2. jcsd
  3. Apr 15, 2013 #2


    User Avatar
    Science Advisor

    Hey set.

    For 2) the effect will be big if real large qu-bit quantum computers come into existence. For more inforhmation see Shors algorithm on the internet.

    For 3) many languages have some implementation of cryptography, but if you are writing new libraries from scratch and need performance, then I would recommend C++.

    If you want to use existing libraries, then many platforms will have some implementation.
  4. Apr 15, 2013 #3
    I would second this answer of C++, but maybe throw in a word for plain old C depending on the platform. C++ has the advantage of more features, with no overhead if you don't use them, but some platforms (microcontrollers mostly, which I assume you aren't using), don't implement C++. So as long as the work is done on a computer, C++ is the way to go, with Java being a good second.

    If you want to learn C++, and can wait for a few months, I'd wait for Bjarne Stroustrup's (the author of C++) new edition of "The C++ Programming Language".
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook