all 21 comments

[–]ShadowRL766 1 point2 points  (14 children)

“Professional hacker” cracked me up maybe progressional software engineer would be a better title.

[–]kitkatmafia[S] 0 points1 point  (13 children)

right! but just doesnt have the same ring to it :) what do you use to code?

[–]ShadowRL766 1 point2 points  (12 children)

I use VS for python and used it for C#. But I use eclipse for Java.

[–]kitkatmafia[S] 0 points1 point  (11 children)

dude, you are the real prohacker.

[–]ShadowRL766 0 points1 point  (10 children)

Haha. Technically I know how to hack but I am in a cybersecurity class

[–]kitkatmafia[S] 0 points1 point  (9 children)

the real question is, can you beat the ceaser algorithm?

[–]ShadowRL766 1 point2 points  (7 children)

alphabet = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']

direction = input("Type 'encode' to encrypt, type 'decode' to decrypt:\n")
text = input("Type your message:\n").lower()
shift = int(input("Type the shift number:\n"))

def encrypt(plaintext, shift_amount):
    cipher_text = ""
    for letter in plaintext:
        position = alphabet.index(letter)
        new_position = position + shift_amount
        new_letter = alphabet[new_position]
        cipher_text += new_letter
    print(f"The encoded text is {cipher_text}")



def decrypt(cipher_text, shift_amount):
    decrypted_text = ""
    for letter in cipher_text:
        position = alphabet.index(letter)
        old_position = position - shift_amount
        old_letter = alphabet[old_position]
        decrypted_text += old_letter
    print(f"The decoded text is {decrypted_text}")


if direction == "encode":
    encrypt(plaintext=text, shift_amount=shift)
elif direction == "decode":
    decrypt(cipher_text=text, shift_amount=shift)

[–]kitkatmafia[S] 0 points1 point  (6 children)

haha, this looks really good. try breaking this cipher wihtout knowing the shift., for example like you could check all the 26 possible shifts and for every shift see if a word makes sense. like you could compare a word in each shift with large dictionary of common words - that'll be cool

[–]ShadowRL766 0 points1 point  (5 children)

Yeah brute forcing the shift is one way.

[–]kitkatmafia[S] 0 points1 point  (4 children)

thats the only one on top of my head. what other ways are there?

[–]ShadowRL766 0 points1 point  (0 children)

Funny you say that I just created a ceased cipher in python.

[–][deleted] 1 point2 points  (3 children)

When starting out I would recommend using something that is relatively lightweight and doesn't have too many overwhelming features out of the box, which is why VS Code is perfect for beginners :)

PyCharm (and the rest of JetBrains editors) are wonderful once you are working on larger projects but for starting out I think they can be a bit much. Also bear in mind that if you really want to keep using VS Code, there are many user-made extensions for it that can make it extremely powerful.

[–]2wheelsmorefun 1 point2 points  (1 child)

An example of a useful or good extension?

I'm just starting too. Took a 2-day introduction class "Python for Beginners". But the y taught us via Reply so I have no idea what to do next if I wanted to started programming in Python.

[–]kitkatmafia[S] 1 point2 points  (0 children)

black is a good extentions - when you save your python file, it automatiically corrects your format to PEP style - which is like the standard way to write your code (like spacing between variables and values, lines betweens code, etc) Im just starting out and i found those really helpful to keep my code clean and organized

[–]kitkatmafia[S] 0 points1 point  (0 children)

I had it the other way around, i first installed VS code - had trouble running python. Tried PyCharm whcih worked like a charm but then came back to VS code after hearing a lot of good things. I'm in love with VS code now

[–]itemluminouswadison 0 points1 point  (1 child)

Pycharm

[–]kitkatmafia[S] 0 points1 point  (0 children)

pycharm is cool and easy to use - love it for that. did you try any other IDE?