Malá hra o velkého Bajta (4) - Vigenérova šifra

Místo pro dotazy a rady ohledně programovacích jazyků (C++, C#, PHP, ASP, Javascript, VBS..) a tvorby webových stránek

Moderátor: Mods_senior

koblížek007
nováček
Příspěvky: 1
Registrován: červen 18
Pohlaví: Nespecifikováno

Re: Malá hra o velkého Bajta (4) - Vigenérova šifra

Příspěvekod koblížek007 » 02 čer 2018 18:05

Zatím se učím a zkouším.

Pouze šifrování:

Kód: Vybrat vše

import unidecode

puvodni_zprava = unidecode.unidecode(input("Zadejte zprávu k šifrování: "))
heslo = unidecode.unidecode(input("Zadejte heslo: "))

abeceda = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
otocena_abeceda = abeceda[::-1]
i = 0

def kontrola():
   global i

   velikost_hesla = len(heslo)

   if i >= velikost_hesla:
      i = 0
   else:
      pass

   if heslo[i] in abeceda:
      pass
   else:
      i = i + 1
      kontrola()

for znak in puvodni_zprava:
   if znak in abeceda:
      pass
   else:
      print(znak)
      continue

   kontrola()

   if(znak == heslo[i]):
      print(otocena_abeceda[0])
   else:
      vzdalenost_prvni = abeceda.find(znak)
      vzdalenost_prvni = vzdalenost_prvni + 1
      vzdalenost_druha = otocena_abeceda.find(heslo[i])

      vzdalenost = vzdalenost_prvni + vzdalenost_druha

      if(vzdalenost > 26):
         vzdalenost = vzdalenost - 26

      print(otocena_abeceda[vzdalenost])

   i = i + 1



Reklama
Uživatelský avatar
faraon
Master Level 8
Master Level 8
Příspěvky: 6670
Registrován: prosinec 10
Pohlaví: Muž

Re: Malá hra o velkého Bajta (4) - Vigenérova šifra

Příspěvekod faraon » 03 čer 2018 07:22

Vítej na PC-Help, pěkný začátek. Jen malou poznámku - reciproká šifra má tu výhodu, že šifrovací funkce je zároveň dešifrovací. Takže s heslem "A" (neboli posun 0) bude:

Kód: Vybrat vše

OT: ABCDEFGHIJKLMNOPQRSTUVWXYZ
ŠT: ZYXWVUTSRQPONMLKJIHGFEDCBA
Všech 500 nejvýkonnějších superpočítačů na světě má přes petaflops a běží na Linuxu:
https://www.root.cz/galerie/nejvykonnejsi-superpocitace-sveta-cerven-2019/


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Malá vs Velká case
    od jarek3202 » 23 čer 2019 14:17 » v Rady s výběrem hardwaru a sestavením PC
    4
    161
    od Donald64
    23 čer 2019 18:07
  • Zmizelá hra
    od TomášJedno2 » 03 črc 2018 16:10 » v Hry
    2
    389
    od RIKI22
    03 črc 2018 17:43
  • Prohlížečová hrá
    od Fantousek » 13 srp 2018 19:24 » v Hry
    0
    406
    od Fantousek
    13 srp 2018 19:24
  • hra Stalker
    od perez » 26 pro 2018 22:44 » v Hry
    4
    450
    od perez
    26 pro 2018 23:35
  • Padá mi hra
    od rorobca » 13 lis 2018 12:06 » v Hry
    2
    591
    od zavislak97
    13 lis 2018 14:42

Zpět na “Programování a tvorba webu”

Kdo je online

Uživatelé prohlížející si toto fórum: CommonCrawl [Bot] a 1 host