Jump to content

Encryption Challange


sablefoxx

Recommended Posts

JHCZMLV X
Oojr moe Tkuimi-Soyi
Tsieo phw qpgvrgpni dh nii geec mprgn hm wxetvrz iy jok zmheee sg ahg ltuo, pyd bj ahvkxz usisiak mv dq: ygji dc tjmvl sjo ahh epeciw pnvy moi qzox lxy skcmlv lls eitkipq, ubx xe hnh gv pkmmbvtd oe ghuvgblhxxznf mg pt, `cxw dlpe if xal uuo hm e qzox,' xavuirm Hpxne `jmmoowd ipgifrrw hy cqxolvhltvsg?'

Zo urx deh noawbketsgn mc see spu mkxw (hw lply el zhg mhbps, qoe xal hqd whc bldr lxy fgoe cigj syixwy cxw zxjaiq), aaltjok alt alrelbrg yy teztnt e whiui-voexy wbyek bg ghyxw ehr xkvudvx vj vptgmgn ur kgk txnkvrz ahg ntpwxps, jlxu swnwlraj a Jlbae Tkuimi higl ipnm orlw gln pphze di alv.

Iseei phs pymomcr sb zxyy tofhvzlbyi bu tjkm; usg oiq Eepcg daprz tt fs olra wnjl dft bj moe ykr as wpae xal Rclupx hly gs basgvy, `Vl spae! Sa kecb! B zlpwl oi ehtg!' (galr hse glhbgjd ba skpr njmlrykkkw, xe opgnyrgn mv ltc tuem zhg ynnli eo ueol wqxwlvto ag xaps, dem hx ise gmfl iv kes wtpmrh jbivo ghxjcay); fna wjog alt Caofba aednhpaj tbsd h wcdvo sje os mmz wcslagdlt-csvrev, kgk pdzkrh ta iv, kgk xwpn uykyign hu, Eatcr wmhrvow as wpr sixa, fqb ba jalsuiw hctylz ltc mvrw ahcd loi wld aiolr doyvvt derr t yadlba axeh rmmoet k phmhecbem-woeuxa, sg l wnxvo tq dtri dft bj ba, apn ubvctnt abah eekpshttl, wal rcx tjvdds glx migvw hjipr vx, tud hykaycltrpr dau tnzx xy tvqx ao uox px ezp qspu a nkkni glbomm-oono nuhtc tui aldio.

Pomip Rnfupt erxjoxyg jemjh

Kx tusisee qhtepd wvac heax Tsieo tmxtc ig, rxcet ygji rznfmwlrkxz osl tn glx dotvw zlt haf xh nev yna evlia.

Xal rclupx-wzlr axut udkhmvst br epkg k mbrcpl ssk zooo phc, pyd glxu dkzilh hfdqigsy fypu, wd duqhxula dahx Pwipi ahd pym h qdxeax mv tjsgr eqzug wmvprsgn ltcsrpy iehykl wwp fbygk hgbllpu qaypbug fypu e kprl hxlp yoes.

Ixehrv moe yoes apd vrvr kegz, hy wwp frpe ceti lsslwy, ssk zhg rtk tapngc hm tkwx hw hse jiga dqgg as azox euvuv rxy eco tb ahudgb poei haf khpni dh oeeaea rxet. Hskzx, hse gvbld vy evsz oojr tud okdl sje wuem zhg gtz gdxiak mv, bwd ba apd tbs whrm dh zit lnlxapni; dalr hse yshref km alt diqil vf vrx diaw, aah gvtkmxk xwlt glxf wgbx mmaweq abah eeiispcdf egk bqyd-zltwvrw; alrg kgk xwprr wal scg fhth lnq tbjtwbxz ljyg hthu pgql. Zlt eobo wvwp k chv ucoz sgl oh dal wwpliil hs urx wehdeq; mm dau vtiiaweq `SKHNIO FHVBLLNHX', iuv dh oig rrrem kiukiwsxytziga iv gtz ibatl: wal dkn gvx atkr xh krqz moi ylr ssk mecb hm oxwlvrz zooouvhn, do zeghggn mv tje ig mgao qxx vj ise pyiiocbwz eh dhr jxsl rkla mi.

`Heyp!' moowqaa Eatcr xh oetcxsj, `pqtrv lbcj k yhpa ls glbz, I urtsp isiao gvtjsgn su euzfepni nhdr heavvl! Ooy lkhzt ehrc'es anv momcv mr em oooo! Poc, X hohpwu't ukr hrnehvrz hbqem px, tgea my P fgve vju ehr xhw oh dal ldfsr!' (Aapcj gtz ztcy ymdlla dkbi.)

Szwa, hhdn, fypu. Adflq xal fcve uikpr psfl tq kg lrs! `T wbrwlr jyp tecj mvpxz I'xo yhpapn oc moiu dbti?' hse febk anynk. `M bfsg fx nevdbuk hzmraalrg xxhv ise pigarg yy alt paexa. Sev wx zit: ehnx pvunn ul jdfr glhbscxw tmaps qspu, I vrbuo--' (uzr, lsn zeg, Kepgt saq pxhrpd llztcay xapnic hm xwts fska ip rxy ptdsbrl pn vrx zgwzoyvhvm, cxw aldfgu xaps ykl usi l vrvr noqn hwtdcthrbay hyk zldhiak hmf jok rrdhlrhzl, au dalvt haf rh vng dh smheea xh oet, cmppa tt jel noqn iyereipi mv sci ba skpr) `--lil, ahcd'l hfdft glx yiirm kmheaagx--iuv dalr X hoahxy wjkm Seitthhx vr Nygnmifdr M'ol gqd mv?' (Eatcr ltk nq swle lsag Ptaivewl apd, oe Phugkdnki tttuik, iuv davyvst glxf wgbx umrp geegk wqbwz xd dal.)

Tklsgxmsc hse oizhn cqtpr. `X hoahxy ih S loeaw fnpe yiirm algzutl moe gkkal! Wzw syguy kd'es wtpm gs vvmg yna ebznt xal pgyisi isag atsk ysmo xwpie lxhdu nhdrllrq! Xal Apdbweisirw, B ahkxd--' (zlt haf vtahgb zses ehrvx dau xh vrt wifxxuipq, momh eizi, tz iv nbkr'i dohrw ht cve alt citlm dotn) `--ubx X dhnpe oaxo mv ehv tuif dhcd moi clmr sy ahg mhbricy vw, rvu mxhd. Tapafi, Fh'ao, sl alxd Nra Slankgk sg Lufxkhlkk?' (tuh hse gvbld vy vbvidel el zhg civot--qaagr jutdllcxyg nw rvu'to yhpatnt xayowqa alt lie! Hh fow daprz joh ghblf wtuevp ig?) `Egk wjkm hr xrnbvtut nsmapt riep loe'nv momcv mr jhy auubuk! Cz, ig'pe uexok ks iz afo: ilrjkiz M hsayp lle kd pymieea yi zooopoigp.'

Dbag, koyx, wvac. Ehrvx dau xhalxyg rpll tq nh, zs Pwipi lvop lxnec eayobug cqtpr. `Stnnl'es mkcl ti kprl qnjh vy-gpkwe, I flhblf daprz!' (Oiaea dau dal gpe.) `I usil tjor'sp gpmrqulr jok zejnee sy tinu ta xtl-tvqx. Kipka tc spae! M ppsj ihb atce qspu hgbx dmis mr! Xalrg kkl rd xipi bu tjo tpv, X'x asvtpd, dem fsj xitlm javma h fpe, aah moav'c olvn wixi t towcx, fsj vnba. Ubt fy vhxh pag ftas, K ghuhtc?' Aah alrg Kepgt meteg ao iom yeisee weleri, tuh lpng sg zaasgn xd seewxsf, kx t kvtlml whyt qp phc, `Sz cnxl lav ltaw? Sz cnxl lav ltaw?' pyd fsfltkwxz, `Hd magw xht ekmz?' jdc, yby lle, cc loi rzuyhg'a apcplv tttuik xugcmpsc, tt qmwu't oevo qpetrv poier phc hse cym pt. Urx miae tuem zhg gtz hdkiak hmf, cxw oes uufx ulgwx mv hgpaz xaht urx deh hayobug jkgk mc saah pptj Nbuew, lnq wtfipq mv ltc vrvr latxxzxaj, `Nba, Wpncr, mlpa xe glx arwda: kms joh iolr gkm h fpe?' wuig zufnxupn, ehhqi! ahwwi! ksly sui vhmg eivr p sent hm svsvrw pyd qvr secfxz, eco tui yhln gtz skpr.

Npbje ykl usi l bvx abrv, kgk wwp jhqild wz hu xd see jxlt kx t tsbpng: wal lqydlh ja, bhx ba wcc tsp slrx solrjotk; ftqoei alr ykl hrdehrv evni ztzwpre, nrw ahg Gapxt Caofba wcc lamaw ia wbnhv, rnyvntnt hhdn kd. Moigp wnw gvt c whtice tb fx soud: tden heax Tsieo epot ehr abud, cxw deh uufx bu tkwx as wpae mm zaa, kl px ifraiw h cqbglv, `Ds ml itys cxw dlxdkrvl, ooy vtai xe's timaipq!' Loi lls pphze doaprs tt jlxu sjo mbvcpd glx jotxxy, fje tui Khbdsm deh yo ysgnet dh ii hpea: wal fqegk ltcsrpy pn c vhuk, azw uees, wjsvo apd lvx nw ba k kva dq lnqiz hcxzprv qrbq moe tyhm.

Xwprr axye fyhyw pwl esnud vrx oeaw, bhx moea gxyi pwl ysvref; kgk awpn Npbje jkw iity ayp moe ykr ksly oai lpdg kgk ye ehr smoet, dkfmcr eiikf dqyk, zlt hayoxk scnef hdhn glx tifnel, adydrvbug jyp zlt haf iolr vy zlx dft nktpn.

Uewkicwy flx jaoo nwsc l lvxmse vrkli-apgtiw aadvx, hpa xaqi hm sqvbk kalsf; xalrg gtz rdehvrz vn kd xegtat n xbuy iyekic vel, egk Ansvl'w utrfx moowqaa apd tuem pt oszox qplbrz ao qxx vj ise qshys qp moi wlly; fna, ankl! lmisee xal lqmdz atce gsh satqx, vv ise xir dau dhv wblly, fna av kgf vpee vx pvunn gvx daea egf oh dalq. Wzwrzxy, op dal wtnoah mpmg bhbrs, dhr gtte wzhu e azw pykaakx loi wld asm uovsvlh qpfbvx, hnf lxomco ig atz a nsmapt oobv tiowd ypjipea mgjhgc apkw: dhr xkpef dal pxetyi zvlfog rin tn glx soeu, tuh iz hrv zyecd wlpxrhg mm mivdxk!

Eatcr jbudkxz amcj dbsk iejsgk gjctnmg

Hlkmx vttyeq xal dqyk hrs qohrw ahcd ba pto iaxh h sokes tpdsnkx, uov wnjl alrtik ahcx t yei-soyi: loe mxxsx szwa egk lqydlh pwoak moe rklzevp iaxh ahg vhciatefx zhrfog fsj pvrv lhw. Jyp zlt woakxk tq qxa sje os xaht fkkr lpwl, nrw dapnxy eqzug efvni davwt meqw hm btszox uwojikz apn moshp cbse mowxmhmcd, bhx loe eynsh czt rzxu ggd alv wpaq xavuir moi szoeatf; `apn xcic tf zc alaf ghbps ro glkvuir,' mosjrhg thvr Cvbji, `xe wbyek bg yy cigj lvxmse wcx dmisohx ff sjynshtcs. Bl, avw K gbzl X nohpw zhwd nw pxve n xxseumhwi! X ehvrd P cqeek, mu T oapr rnqg ava iz brkbu.' Fqb, rvy hpe, fs fhna yna-su-ehr-atf tjsgnw wld ueiwepow seipll, xaht Cvbji wld oizbn vy momcv tuem ceti yla isiakl pnfoxk atce eitsla sfwshdiopx.

Ahgbx zitxeq xh ie py nzi xy wnmmpni lr alt wigxel dqyk, zs hse jiga bcmd as ise geuse, jkem ldaiak loe oszox utnq egvtjok rin zn vx, hy av kgf vpee n fhvk qp kbptd fbv louvdbuk epocpx bp nsdl xtwefghweu: dapw itmr wal fqegk e attgpx iovdel sc tt, (`jlbjh eokaexyll atz nqd alvt messkl,' scsw Hpxne,) nrw yowxw alt yepo hm tjo uvxiwe jel h pczxy ppmey, abah vrx dsgos `QVBUK OO' ulejeisyesy rbbuxto oa mm pn nkkni aptgikz.

Ansvl xpviak "Wyipu Fl" fdetyi

Ba wcc tsp kprl axsl vy lhc `Sciao fl,' bwd moi ltsr pbatno Tsmrp wnw gvt iybuk iz db xaht kx t oygcy. `As, B'sl nyhr jxcsg,' wal scsw, `hrs der aaltjok px'h xaeoxk "pqslvr" dc nbx'; yvr urx oes cenh llvgbts rxne ymmalg rbzxdcirw tiowd vomaorrr poo jkw nsi muerm, hnf otaic fp oc pplf lxhwid aah hahgb nutapafega tjsgnw, pwl oivhuuo moin hohpw uov bxtibmee xal skwisi gflrw moekb yymtydf ltk tcezox isez: wnjh cc, moei l rrh-avt rydlv ltly fnyn ayn pj nzu usek iv dhv pdyg; nrw ahcd bm cdf chx rvut pbuktc vrvr kegzef axeh n ogpfg, sm bwjllyc usegnl; hrs dhr ltk ngfxy jdcgbxmln vrta, mu joh hkpnm wnjl ucoz e uvtvvx tegveq `thpsqx,' ba mh llzsla cgbmhmc eo qmlhgtox dmis yby, lvopok vv altrv.

Avwgfxy, xwts osmalg gtz rde mnvdld `rybzsc,' do Npbje xogaygpd gs mhsvo ba, eco fvrwpni sm cigj nvgx, (pt jkw, pr ulcg, e lvrv yy tmmpd sptcowb hm gwprec-mhrv, mnzxpcd, cmgl-arzel, vdlsg xnykgi, mvjupe, nrw oov lnaxtceq xhhsv,) cal ztcy fshu fkxbzlto ig sym.


`Wjkm h gjcibyl megvbuk!' hliq Eepcg; `S fbwi me flnatkxz bt atkr e mllgcvvtt.'

Lnq wh pt ykl prspeq: wal wcc gva dyll xxu ipmalw wtgu, egk hgb yhgt mrvkaaepow bt pe tui moowqaa xwlt flx dau xhd xwp rvkaa skjx msg rovrz ahtynnl ise ymmalg nhvv xytb xaht nyolpn raehxu. Fkbla, ldheiik, zhg gtpxto fbv t mey wbuyips gs lle kp loi lls tsbug vy lovxyk nrr mutdalv: hse siea a nsmapt yeezhbs clhbx isif; `jhy iv wbnli pnq, chb kpyp,' zexo Aymvl tq rxywtwf, `vr ff gqsgn sje ayxhnevrxy, pxve n gtudno. B dscoee aaht K cavyao br pbre vrxu?' Eco sui myign mv jpycl aaht vrx mppxe bj t japnel mh wixi tmtgb moi rlnqpx ps dvhdr dft, ssk zhg mhbps yog vxteolxy ikpr ueopni cxlr hfcu e moipq.

Tmxtc a jlbse, hsgkmcr tuem uovrbuk bzrr ltwpgxxk, wwp drgbkef yg nsxyg vrmv tjo zhvspn nx hucg; lna, eals ssk woqb Tsmrp! wuig zhg qha xd ehr hhvr, urx msjyd flx oaf phykdetrr moe nsmapt royhxu kgi, tuh lsea wal wgxm ierv tb xal tclel jdc ig, wal fqegk wwp cbyek nqd ivwhtbyc klaer ba: wwp cbyek sgo ba ujttr tehipvr algzutl moe ivtzw, pyd flx arkow oig mefx mv cnsfi ye znr sy ahg vxnw dq tui mhbno, ubx xe wnw mvo uvbwttcy; nrw dhgx loi wld gmkld jokziaq ohx pptj dkfmcr, tui ivot vbaxap tumgn scd wvac lnq gkpef.

`Mhti, iseei'l uo wcx pr rcyvrz simo moei!' davh Tsieo mv ltcsrpy, yavrxy wwlrcpr; `P affbzi nzu gs elaxo hmj isif qbuuvo!' Loi vpnrvtsla qtci wprfiem vgbr nsdo aqzbje, (vrhbkw dhr zxyy uoeksb qoyphdef sm), hrs dozimpmgc loi hnoyhxk hgbllpu do fiolrgvr hw iz bemgn tgkkz mceo uik lygc; tuh dycr wal rgwxtftceq xkfipq mv fdi hrv hdn gkkz jdc hnzbug erxhxto hrvlllh sg h kpxe bj vyosexa wwp wnw isaasgn evliawm oetcxsj, uzr glbz cwbbvyh nhvpw dau fxyc uznq sy wrgdxuhxyg gs ul tyy ilsewe. `Oym pt'u xh bwt yoj,' xavuirm wsdc Aymvl, `tq zklxtyd gs ul tyy ilsewe! Jlr, ahgbx'z lpcdyc xuowqa vj bp lrjm ao okdl scp rrwilcvkusi eprfsg!'

Zoqx alv tje sies op k epxiwe tptzs dyq alpe wnw efipq nuhtc tui mhbno: loi daeaiw pt, cxw msjyd vr ba a xokf wblly gtre, qx pomrs tui pvrfc `XHX BP' wrvx iecempjjwll qtykgn bu gjcrnrmz. `Wgve, P'pa pag mm,' zakn Tsmrp, `aah bm iv wtrih xe tvhd lcbzlv, X naa vxhcj dal otj; aah bm iv wtrih xe tvhd sokesig, T cnr vyegz nuhtc tui wvot; ch lmisee atf I'nv zlx xytb xal gcbwlr, pyd V hhu't ekkl awtcu ltwpgxl!'

Zlt ltr e eptvvx imi, lnq wtpd cxqpsjdll xh oetcxsj, `Lsipl phy? Yrbjl lly?', usekipq alv wlnq sg ahg dhw su see lxhd vy ylia hhvga daa sm deh rrbabug, cxw zlt haf unptg cnytgtsrh mv fkxw alpe sui klmcsglh ise fefl skjx: as qp shvx, ahkc zlrtcaypr oarzxuw lsea sgl ecdl jezp, bhx Tsieo ahh vzt fs fbcj sgas ise jer vf ghilgitnt rhahkxz iyi zug-sy-ahg-gtf xwtntw mv hczilr, isag mm zegwxk ujttr hnsl cxw zxjaiq jhy lkpx as vz oa mg ahg mhtqdy wnc.

Lv sjo llx iz wbvd, hnf fxyc hzoa jbuiurxk suq tui vhkg.


Xxex rsacxxy: Tjo Ivsa zf Gitys

hint

Link to comment
Share on other sites

Interesting :)

Also here is a simpler implementation of the Vigenère Cipher

# Simple Vigenère cipher
import string
a = string.ascii_uppercase
def translate(p_text, k_text):
    'Translates p_text to the correct corresponding letter of k_text'
    for p in string.punctuation:
        # strips any punctuation
        p_text.replace(p, '')
    # translate letters
    cipher_letters = []
    for index, letter in enumerate(p_text):
        k_index = index % len(k_text)
        cipher_letters.append(k_text[k_index])
    return cipher_letters

def encrypt(p_text, k_text):
    'Give plaint text and password, it will return encrypted text.'
    p_text = p_text.upper()
    k_text = k_text.upper()
    # strip any punctuation
    for p in string.punctuation:
        p_text = p_text.replace(p, '')
    cipher_text = []
    cipher_letters = translate(p_text, k_text)
    for index, letter in enumerate(p_text):
        p = letter
        k = cipher_letters[index]
        cipher_number = (a.index(p) + a.index(k)) % 26
        cipher_text.append(a[cipher_number])
    return ''.join(cipher_text)

def decrypt(c_text, k_text):
    'Give plaint text and password, it will return decrypted test.'
    c_text = c_text.upper()
    k_text = k_text.upper()
    # strip any punctuation
    for p in string.punctuation:
        c_text = c_text.replace(p, '')
    cipher_text = []
    cipher_letters = translate(c_text, k_text)
    for index, letter in enumerate(c_text):
        c = letter
        k = cipher_letters[index]
        cipher_number = (a.index(c) - a.index(k)) % 26
        cipher_text.append(a[cipher_number])
    return ''.join(cipher_text)
    
if __name__ == '__main__':
    print 'Running Test Text'
    print 'P: CRYPTO'
    print 'K: ABCDEF'
    print 'C: %s' % encrypt('CRYPTO', 'ABCDEF')
    print 'D: %s' % decrypt(encrypt('CRYPTO', 'ABCDEF'), 'ABCDEF')

Edited by Zimmer
Link to comment
Share on other sites

edit: Hmm, the rabbit hole is deep...

Edited by digip
Link to comment
Share on other sites

Bravo. Digip, bravo.

Link to comment
Share on other sites

Bravo. Digip, bravo.

I must admit, I didnt write any code to do this. I figured, why reinvent the wheel, there are programs and sites that can do this automatically, without providing the key, it figures it out automatically through a python/php script combo. So in esscense, I cheated, but the end result was the same.

:)

Link to comment
Share on other sites

That's no fun :)

Meh, I try to work smarter, not harder. Not like there are rules to this sort of thing, I just wanted the answer.

Link to comment
Share on other sites

Meh, I try to work smarter, not harder. Not like there are rules to this sort of thing, I just wanted the answer.

That's true man and couldn't agree more! Why try to build something when its already out there. Waste of time and resources. Good work!

Edited by Infiltrator
Link to comment
Share on other sites

That's true man and couldn't agree more! Why try to build something when its already out there. Waste of time and resources. Good work!

To understand how it works. It's one thing to say you understand something, it's entirely different to prove you do. This is in essence the old debate of why do I need to learn how to do math by hand, if I have a calculator.

Edited by sablefoxx
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...