Encryption program in Python 🔐

Поділитися
Вставка
  • Опубліковано 31 гру 2024

КОМЕНТАРІ • 141

  • @BroCodez
    @BroCodez  2 роки тому +74

    import random
    import string
    chars = " " + string.punctuation + string.digits + string.ascii_letters
    chars = list(chars)
    key = chars.copy()
    random.shuffle(key)
    #ENCRYPT
    plain_text = input("Enter a message to encrypt: ")
    cipher_text = ""
    for letter in plain_text:
    index = chars.index(letter)
    cipher_text += key[index]
    print(f"original message : {plain_text}")
    print(f"encrypted message: {cipher_text}")
    #DECRYPT
    cipher_text = input("Enter a message to encrypt: ")
    plain_text = ""
    for letter in cipher_text:
    index = key.index(letter)
    plain_text += chars[index]
    print(f"encrypted message: {cipher_text}")
    print(f"original message : {plain_text}")

    • @riufq
      @riufq 2 роки тому +1

      can you made video about the compaction encryption?

    • @mr.randomly2799
      @mr.randomly2799 Рік тому

      ​@@Love.Stefan yk wether you like it or not python is going to pretty much be the number one most used language

    • @la_sn3ak3r19
      @la_sn3ak3r19 Рік тому

      it doesnt always work

    • @la_sn3ak3r19
      @la_sn3ak3r19 Рік тому

      When you add string.uppercase it messes with the decryption process occasionally.

    • @eyoel308
      @eyoel308 Рік тому +1

      what is ur coding app

  • @AM-mv6ro
    @AM-mv6ro 2 роки тому +247

    I'm 67 and was a complete beginner at programming when I started learning about computing in December 2021. I started with your Python beginner course and I am now a senior Python developer with 3 juniors that I oversee. Thank you Bro Code for your hard work and dedication.

    • @gainzovereverything7719
      @gainzovereverything7719 2 роки тому +2

      Teach me 😢

    • @kamal9294
      @kamal9294 2 роки тому +2

      Nice

    • @AM-mv6ro
      @AM-mv6ro 2 роки тому +1

      @@gainzovereverything7719 Sure, how can I assist you?

    • @riufq
      @riufq 2 роки тому +18

      67?!
      everytime i see people above 50 years old want to learned programming. You guys just make me feel motivated.

    • @gainzovereverything7719
      @gainzovereverything7719 2 роки тому +5

      @@AM-mv6ro How did you get your job after learning python?

  • @katipunero_ph9920
    @katipunero_ph9920 3 місяці тому +1

    I stop playing with Python almost a year.. After watching this video I easily regain some of my old python skill than other video.. Thank you

  • @AmanuelBerhanuTsehay
    @AmanuelBerhanuTsehay Місяць тому +1

    Awesome video as usual. I also learned we can use the random.seed() function to replicate the shuffles and even use for passwords
    import random
    import string
    chars = string.ascii_letters + string.digits + string.punctuation + " "
    chars = list(chars)
    while True:
    main_choice = input("insert E to Encrypt, D to Decrypt or Q to Quit: ").lower()
    if main_choice == "e":
    print("Encryption Mode:")
    plain_text = input("Enter plain text: ")
    random.seed(input("Enter password: "))
    key = chars.copy()
    random.shuffle(key)
    cipher_text = ""
    for char in plain_text:
    cipher_text += key[chars.index(char)]
    print(f"cipher text: {cipher_text}")
    elif main_choice == "d":
    print("Decryption Mode:")
    cipher_text = input("Enter cipher text: ")
    random.seed(input("Enter password: "))
    key = chars.copy()
    random.shuffle(key)
    plain_text = ""
    for char in cipher_text:
    plain_text += chars[key.index(char)]
    print(f"Plain text: {plain_text}")
    else:
    break
    print("--------------------------------------")

  • @zabehullahalizadeh2310
    @zabehullahalizadeh2310 2 роки тому +5

    Thank you Bro Code . You are really active and you are doing very well. Keep on going

  • @disdoodanimations
    @disdoodanimations 2 роки тому +11

    great video, your explaining is really good, i cant wait for your next video!

  • @avivagmon9315
    @avivagmon9315 2 роки тому +5

    Bro code on his way to be a complete chill dude that dedicates every video to a fundraiser.
    Pfp checks out

  • @skylineshorts5075
    @skylineshorts5075 2 роки тому +4

    Thanks for the tutorial bro, can u make some pygame tutorial?

  • @zohaibwaris-q8x
    @zohaibwaris-q8x 4 місяці тому

    THANKS BRO 💙 these are the highest quality videos I found on you_tube related to programming.

  • @moneyexploit
    @moneyexploit 9 місяців тому

    Love You Bro Code
    I Learned Python Paid Courses But They Teach Me About Basic Things In Python. But I Want to Deeper Understand in Python. Then I See Your Video I Learns a Lot's of Things More Than My Paid Courses. Thank you So Much. Love Again

  • @JarppaGuru
    @JarppaGuru Рік тому

    1:32
    x = range(33, 127) # 33-126
    ascii = ""
    for n in x:
    ascii += chr(n)

  • @oumarelfarouqdiarra6619
    @oumarelfarouqdiarra6619 2 роки тому +5

    Thanks for all these helpful and very interesting videos ☺️

  • @MacN_
    @MacN_ Рік тому +2

    These videos you've created are so helpful. thank you so much!!! NM✌

  • @Deformed
    @Deformed 2 роки тому +7

    Hey brother, can you PLEASE do a video on your IDE setup and configuration? Or is it just default PyCharm as-is? I don't really like VS Code

  • @romeo9015
    @romeo9015 3 місяці тому

    One way to make this more secure is to replace each character with a random number of characters. Then input more random strings of characters in between it. Keep track of what all these random string are equal to and implement a way of storing it separately from the message (another file works fine for testing). This will mean every message will have a different key, just like in the video. The method I described SHOULD prevent most simple cracking algorithms from accessing your data. You could further encrypt your keys with a separate, private algorithm if you’d like more security. There are also ways to encrypt the actual syntax in your algorithm if you need even more security (I forgot what this is called). If you need security for business or just doing wanna risk using your own, just use existing methods. It’s just more reliable.

  • @recon6660
    @recon6660 2 роки тому +1

    wow that was awesome knowing how this work.

  • @tamz_exe
    @tamz_exe 2 місяці тому

    i'm a little late to this video, but this was a fun project. instead of making a decryption method i made it so it saves both the plain and encrypted texts into a json file, like a password manager

  • @OpGamer-kj4ve
    @OpGamer-kj4ve 2 роки тому +4

    Can you also teach us Ceaser encryption and other types of encryption methods?

    • @JarppaGuru
      @JarppaGuru Рік тому +1

      #quick and dirty ceasar
      alpha = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
      plain_text = "IHATEAPPLE"
      cipher_text = ""
      key = 13 # 1-25 also can use key=alpha.index("N")
      # 13 is btw ROT-13 so you get to flies same time xD
      for letter in plain_text:
      l = len(alpha)
      a = alpha.index(letter)
      k = a + key
      if k >= l:
      k = k - l
      cipher_text += alpha[k]
      print(cipher_text)
      plain_text = ""
      for letter in cipher_text:
      l = len(alpha)
      a = alpha.index(letter)
      k = a - key
      if k < 0:
      k = k + l
      plain_text += alpha[k]
      print(plain_text)

    • @novianindy887
      @novianindy887 Рік тому +1

      this video is Ceaser Encrytion itself

  • @KavinduSamarasinghe-z4i
    @KavinduSamarasinghe-z4i 10 місяців тому

    thamcuu lavuuuu ummmmmmmmmmmmmmmmmmmmmmmmma..Because of you i've got a place in our uni ❤

  • @EclipseRoblx
    @EclipseRoblx 2 роки тому +4

    Can you please make a tutorial on how to make a “Key input” code? like when you enter the correct key in the input it sends a console log

    • @MetaaR
      @MetaaR Рік тому +1

      #Checks if key is equal to input.
      userIn=input()
      key="example123"
      if userIn==key:
      print("Yes")
      #Checks if key is inside the input.
      userIn=input()
      key="example123"
      if key in userIn:
      print("Yes")
      #Checks if key is a permutation of the input.
      userIn=input()
      key="example123"
      cntIn=[0]*256
      cntKey=[0]*256
      check=True
      for i in userIn:
      cntIn[ord(i)]+=1
      for i in key:
      cntIn[ord(i)]+=1
      for i in range(256):
      if cntKey[i]>cntIn[i]:
      check=False
      break
      if check:
      print("Yes")

  • @RODRIGO6803
    @RODRIGO6803 Рік тому +1

    I am too in college working on a final assignment, I will use this to encrypt user passwords for the project. thanks a lot! like and sub.

  • @M7ilan
    @M7ilan 2 роки тому +1

    Do more please with this topic.

  • @Mosinsarmory
    @Mosinsarmory 7 місяців тому

    You can make it much shorter by changing it to string.printable which contains all of those characters.

  • @rickkk09
    @rickkk09 2 роки тому +2

    ma nigga is rocking it

  • @shazamvirk750
    @shazamvirk750 2 роки тому

    Amazing information..thanks sir

  • @skeledum
    @skeledum Рік тому

    Thanks man, you helped me out

  • @Koshak87
    @Koshak87 Рік тому +5

    07:55 - top 10 anime betrayals.

  • @ogfakii9187
    @ogfakii9187 2 роки тому +1

    Basically a Caesar Cypher

  • @terrifictable
    @terrifictable 2 роки тому +2

    can you make a video about rsa/aes encryption (in c or c++)?

  • @Cxrruptwd
    @Cxrruptwd Рік тому +1

    I just created the ultimate encrypter, it's not released yet and I'm planning on keeping it closed source to prevent hackers from hacking it.

  • @kapibara2440
    @kapibara2440 Рік тому

    Just fantastic 😊

  • @mr.unknown5307
    @mr.unknown5307 2 роки тому +1

    Please make a course on shell scripting

  • @meshoDev
    @meshoDev 2 роки тому +1

    We can use AES for better encryption
    Good video🫡✨
    Keep it up bro 😎

    • @BroCodez
      @BroCodez  2 роки тому +4

      true but that might be too complex for beginners at this level

    • @johnhansen4794
      @johnhansen4794 2 роки тому

      @@BroCodez There's a reason I paint my one time pads in Oil.

  • @serenity.111
    @serenity.111 2 роки тому

    great contents, thank u so much

  • @ajflink
    @ajflink 4 місяці тому

    I made a substitution cipher....Then, I got carried away and now it is a multistaged cipher but the shift value is randomized and contained but in its own cipher in the output. So, one input can result in over 50 different outputs, yet they all decipher to that input.
    Edit: I also made it random if the cipher itself is then ciphered again before being outputed.

  • @aijazbirsfun547
    @aijazbirsfun547 7 місяців тому +1

    Radhe Radhe
    Sanatan Hi Satya Hai
    Jai To All Gods & Godesses
    Jai Baba Farid Ji
    Radhaswami Ji

  • @SashoSuper
    @SashoSuper 11 місяців тому

    The enemy is not getting the message, but so is your team.

  • @codingworld-programmerslif430
    @codingworld-programmerslif430 2 роки тому +1

    Hello, how about you start cyber security course for beginners...?

  • @massswitch6661
    @massswitch6661 9 місяців тому

    Nice video, what is the "f" stand for, and also the " : " next to the words.

    • @talaramadan1895
      @talaramadan1895 8 місяців тому

      this is an f string, and the colon is used in the for loops, to end a condition. so its like for index in chars do this (aka:)

  • @HunaBopa
    @HunaBopa Рік тому +1

    Your explanation is incredibly excellent Chris. What are you doing these days? I want your help to create an app. Would you do that?

  • @Python902
    @Python902 6 місяців тому

    Well Bro Kindly start the series of Cyber Security yeah AI kindly

  • @ardcodelover
    @ardcodelover 2 роки тому

    Nice

  • @lukas5238
    @lukas5238 2 роки тому +1

    Bro can you show us how to make a preset Timer in Tkinter where if the time is up it prints a text?

  • @rtygbf
    @rtygbf Рік тому

    this helped me soo much

  • @adedamolayusuf7018
    @adedamolayusuf7018 2 роки тому +3

    your voice sounds a bit different in this video. Hope to see your face in a video

    • @BroCodez
      @BroCodez  2 роки тому +2

      It might be because I've been sick lately 😷

    • @adedamolayusuf7018
      @adedamolayusuf7018 2 роки тому

      @@BroCodez Sorry to hear that bro hope you are feeling better now.

  • @ProfessorX-f2t
    @ProfessorX-f2t 4 місяці тому

    🔐

  • @jameshall4853
    @jameshall4853 2 роки тому +2

    How would you expand on this if you could?

  • @Der_Rotsteiner
    @Der_Rotsteiner Рік тому +1

    How to use "filetree" in Python

  • @short-shots
    @short-shots 2 роки тому +1

    Cant believe we are getting them for free

  • @Dm__0612
    @Dm__0612 2 роки тому

    Thank you ❤️

  • @ClevererChain99
    @ClevererChain99 4 місяці тому

    But the key changes every time, so how would you decode older messages?

  • @SunPodder
    @SunPodder 2 роки тому +1

    Waiting for your react.js course 🙌

  • @VAIBHAVMALHOTRA19
    @VAIBHAVMALHOTRA19 8 місяців тому

    Can you please explain for loop part in this code

  • @-hackers_industry
    @-hackers_industry Рік тому

    "How the heck do you spell punctuation!?":
    Bro Code, 2023

  • @rm_commando5067
    @rm_commando5067 2 роки тому +2

    Is there a way to make the user input a key for the code to use?

    • @Someone-nw7yc
      @Someone-nw7yc Рік тому

      probably ask for user input and let the program return/print the original message if password correct

  • @mdfaisalmahamud
    @mdfaisalmahamud 2 роки тому

    javascript project video upload please

  • @D4C_1891
    @D4C_1891 4 місяці тому

    But how can I decipher it if the kye is random ?

  • @trillius
    @trillius 2 роки тому

    Thanks!

  • @A_Basic_Guy
    @A_Basic_Guy Рік тому

    This didn't work for me, there is nothing wrong with the code but when i reopen the program the encrypted message or numbers to say wil come out as a hole different thing.

  • @karolynepessoa8959
    @karolynepessoa8959 Рік тому

    i need do make a app with symmetric and asymmetric cipher. Do you think that i can use this program??

  • @woodesther8939
    @woodesther8939 Рік тому

    Pls it doesn’t work when you run the program value error comes indicating that the letter is not in list

  • @gingerdarkgd
    @gingerdarkgd 10 місяців тому

    one problem with this program is that so it generates random key every time you run it and if i close the program and reopen it i cannot decrypt the text, to solve this you could save key with someone indicator like e-; and then ask user for this indicator and then check if this key exist in the file

  • @iloveBTSforever
    @iloveBTSforever 9 місяців тому

    I have a .wiaw virus from the Stop/Djvu family of viruses. Can this video help?

  • @_______9021
    @_______9021 9 місяців тому

    hi i want to know is there any way to encrypt the question or how to find out the key of the cipher code?

  • @Force_Drippz
    @Force_Drippz 7 місяців тому

    if i want the key to not be shuffled so i can share a code to friend like a secret code how do i do it?

  • @danielhod53
    @danielhod53 2 роки тому

    bro what keyboard and mic you use?

  • @nicholasdemakis616
    @nicholasdemakis616 Рік тому

    why cant i see the second enter a message to encrypt im using pycharm is there a setting i need to turn on?

  • @FLKS-3310
    @FLKS-3310 Рік тому

    how do i make it print the characters that i choose?

  • @AllenDende
    @AllenDende Рік тому

    broo fire fire,

  • @Purple-Astro
    @Purple-Astro Рік тому

    thanks bro

  • @djangoKid-uz9oe
    @djangoKid-uz9oe 11 місяців тому +1

    What IDE are you using?

  • @saseda
    @saseda Рік тому

    How 2 people to using it? 😊😊😊

  • @pythonmini7054
    @pythonmini7054 Рік тому

    It only works on txt file not on docx files

  • @Ahmed_760
    @Ahmed_760 9 місяців тому

    how can we encrypt videos?

  • @zarqanawaz7129
    @zarqanawaz7129 7 місяців тому

    Which libraries require for it

  • @vadimkondratiev7214
    @vadimkondratiev7214 10 місяців тому

    a question from a noob. If the encryption is random every time, how can it be used to encrypt and decrypt the messages on a constant basis?

    • @脱不完的头发
      @脱不完的头发 10 місяців тому

      please use goole translator to translate Chinese into English.
      因为randomruffle()在整个程序的最外层,先执行random,生成了一个暗号,再执行加密解密。这个暗号在程序本次执行过程中是不变的,但是在每次点击三角,也就是新的一次执行全部程序的时候,暗号会出现变化。你说的情况当randomshuffle()在加密和解密两段代码的内部时会出现。

    • @talaramadan1895
      @talaramadan1895 8 місяців тому

      if you still have the program running without ending and starting again, it would have the same key. but here when he re starts the program it generates a new key. so a way to overcome this is by saving the key in a variable after its been randomly generated for the first time. hope this helps!

  • @obaidali8813
    @obaidali8813 2 роки тому

    Please we need Javascript

  • @TheFkedOnes
    @TheFkedOnes Рік тому

    Wich version of python is this?

  • @JC-fd8ho
    @JC-fd8ho Рік тому

    is that substitation encryption ?

  • @al-cadaalachannel3194
    @al-cadaalachannel3194 2 роки тому

    Did you begin advanced level bro?

  • @mehdi_craft
    @mehdi_craft Рік тому

    I think its a little hard

  • @seanchristiangarais3189
    @seanchristiangarais3189 2 роки тому +1

    Can I do this on C#?

    • @TotallyNotAPie
      @TotallyNotAPie 10 місяців тому

      Well you basically just translate the python code to c# code. Although its not gonna be exactly the same

  • @aayushshrestha1210
    @aayushshrestha1210 Рік тому

    what text editor is that

  • @reincarnationofthelightking
    @reincarnationofthelightking 3 місяці тому

    i don't know what are you talking about and even after reading comment section I didn't still get it, sorry guys but I am dumb asf, I hope I will understand it after watching other videos,.

  • @paxi5765
    @paxi5765 Рік тому

    can you decrypt when key lost

  • @aweawertable
    @aweawertable 2 роки тому

    Do i need to be good in math to be a programmer?

    • @TotallyNotAPie
      @TotallyNotAPie 10 місяців тому

      Not for everything but you do need some basic math like algebra

  • @DADIroRohman
    @DADIroRohman Рік тому

    w

  • @wsnippets
    @wsnippets 2 роки тому

    Love you bro code

  • @pawan4920
    @pawan4920 2 роки тому

    B

  • @wsnippets
    @wsnippets 2 роки тому

    1st comment

  • @arshiaa104
    @arshiaa104 2 роки тому +1

    Cumment

  • @deletoblue6059
    @deletoblue6059 2 роки тому

    no way

  • @zstar8397
    @zstar8397 Рік тому +1

    Hey hope you are doing alright just I wanna say that
    GOD loved the world so much he sent his only begotten
    son Jesus to die a brutal death for us so that we can have eternal life and we can all accept this amazing gift this by simply trusting in Jesus, confessing that GOD raised him from the dead, turning away from your sins and forming a relationship with GOD.

  • @JarppaGuru
    @JarppaGuru Рік тому

    1:54
    x = range(32, 127) # 32-126
    ascii = ""
    for n in x:
    ascii += chr(n)