Skip to main content
Viewing 10 posts - 1 through 10 (of 10 total)
  • Author
    Posts
  • #31745
    Anonymous
    Inactive

    Has anyone got any advise on how to learn to use python for breaking ciphers? I have a book called “Hacking secret ciphers with python” but I don’t know how useful it will be. Please post any books or websites that might be helpful!

    #31767
    Anonymous
    Inactive

    I can certainly recommend “Learning to Program in Python” by P.M. Heathcote (link below)
    https://www.amazon.co.uk/Learning-Program-Python-2017-Heathcote/dp/1910523119
    It’s guide to nearly everything you’ll need to know and more, and has useful exercise, including stuff on ASCII and validationwhich will be useful.
    Having already used two Python programs to manipulate ciphertext this year, I wish you all the best.

    #31774
    Anonymous
    Inactive

    You’re not obliged to use python. If you haven’t programmed before, python is a great placd to start, but if you want to do some more sophisticated programming, i would recommend c# with visual studio. It is incredibly powerful and is what i myself am using for the majority of my code.
    Remember there are loads of languages that are great fir beginners. If you find one language hard, try another one. Most people find one language much easier than others.

    #31766
    Anonymous
    Inactive

    The Practical cryptography website has some great content and uses python for many of its code breaking scripts / programs.

    #31813
    Anonymous
    Inactive

    @alimans I disagree that C# more “sophisticated” than python {edited}. Especially considering python is generally better suited for this sort of task.

    • This reply was modified 6 years, 6 months ago by .
    • This reply was modified 6 years, 6 months ago by .
    #31820
    Anonymous
    Inactive

    Sorry to say that I can not publish some of the comments on this forum. If you have advise that is great, but please do not mention or link to webpages which either are cipher decoders, or that you can just copy and paste the python code and then they are effectively a decoder. These types of comments will not be published.

    #31833
    Anonymous
    Inactive

    @that one guy

    {snip} Never in my post did I say that C# is more “Sophisticated” than Python, I just recommended it for more “Sophisticated” Programming, which is merely an opinion.

    • This reply was modified 6 years, 6 months ago by .
    • This reply was modified 6 years, 6 months ago by .
    #31839
    Anonymous
    Inactive

    I am language neutral, but the trade off between interpreted languages and compiled languages goes something like:

    Compiled languages:

    * Are generally faster, since the source code is already converted into platform specific binary code, the code can then be executed directly e.g. as an .exe file.

    * Do syntax and type checks at compile time, reducing runtime errors (but not eliminating logic or design errors!).

    Interpreted languages

    * An interpreter converts the source code to machine executable code at run time (slower).

    * Are more portable, as the source code is platform independent.

    * Are often easier to adapt as changes can be tested immediately without the compilation stage. The code is also often more readable (to human mortals).

    Compiled Interpreted Languages

    * Some languages such as Java and Python are both compiled and interpreted.

    So find a language that you are comfortable with and get the appropriate Integrated Development Environment (IDE) and Linker/Compiler software (This need not be specialist, some use plain text editors Notepad, Notepad++, Brackets etc.) and have a go. Many tools are open source, well supported and free of charge.

    The challenges here can be done by paper (hard work) or text editor/word processor or spreadsheet or computer program. Part of the fun will be experimenting with different methods (or combinations) and developing your skills with your chosen tools as well as the satisfaction of cracking the ciphers.

    Good luck.

    #31894
    Anonymous
    Inactive

    Thank you all for your advice!
    I will try the what you suggested and good luck to everyone with challenge 4!

    #31950
    Anonymous
    Inactive

    Up to now I have been using Perl (interpreted) for tasks like frequency analysis, IOC calcs and applying specific substitutions, but if the future challenges need brute force approach I think I’ll take the opportunity to learn python. This will allow some multi threading, as then I can do more on my multicore PC. And I get to learn something new, always a bonus.

Viewing 10 posts - 1 through 10 (of 10 total)
  • You must be logged in to reply to this topic.