Jump to content

cmiN

Active Members
  • Posts

    1609
  • Joined

  • Last visited

  • Days Won

    27

Everything posted by cmiN

  1. Am vazut in php, VB.net, c++, am facut si eu in python . Si eu m-am gandit prima data la ideea lui dranaxum, dar am conceput sursa pentru a urma exact pasii dati de Hertz. Python #! /usr/bin/env python # 09.08.2009 <> 09.08.2009 | cmiN # Challenge [Programare] Valori (Hertz) @ rstcenter.com def main(): string = "93752xxx746x27x1754xx90x93xxxxx238x44x75xx08750912738x8461x8759383xx328x4x4935903x6x5550360535004x0xx945958961296x267x8842xxx5x6xx61x4x48482x80xxx83316843x7x4x83x9521731xxx25x51xx457x6x5x9698222x771237745034x5133592x27xx8x87xx35221x36x0x50x23x7x63x998418xx" strlist = list(string) strsum, x = 0, 0 while True: try: item = strlist[x] except: break if item == "x": strlist.remove("x") x -= 2 else: strsum += int(item) x += 1 input("The string value is %s." % str(strsum)) if __name__ == "__main__": main()
  2. Da ... pai chestia asta a mea sa fie o particica dintr-un intreg test. Si zic eu ar fi mult mai accesate si mult mai bine intelese si procesate de toata lumea decat acel regulament. Trebuie exact ca la scoala, sa imbini utilul cu placutul etc., sa gasesti noi forme de a atrage superficialii si in final sa-i schimbi cat de cat.
  3. Da nu puteti sa ziceti toti intr-un singur post ce faceti, inloc sa spuneti pe bucati cat luati si apoi cat faceti. E mult mai important sa afli ce faci si apoi cat iei. Stiu ca pare Off Topic da se creeaza si mai mult daca apar altii si altii care vorbesc pe bucati. Si ca sa nu fie chiar Off, eu nu fac nimic , uneori mai luam jocuri si le faceam frumos pe dvd/cd cu crack patch tot si intructiuni si le vindeam la lenesi / idioti sau instalam tot felul de windows-uri, le intretineam le faceam acele trucuri si instalam chestii bune sa se pastreze sau mai reparam cate un pc rareori din punct de vedere hardware. Si cat faceam ? Maxim 100 roni pe an.
  4. @SirGod Pai asta ma intrebam si eu, ce motiv ar fi avut sa dea deface la forum-ul alora si la parti din site ...
  5. Sincer nu ma asteptam ... Oricum daca erau baietii de treaba ii anuntau de problema nu dadeau deface, pentru ca si site-ul si forum-ul si tot ce mai au ei pe acolo sunt destul de dragute si continut de calitate. Maine poimaine vezi ca pica si milw0rm-ul .
  6. Maximul e 24 pts si pentru a trece trebuie sa ai peste 20 .
  7. Eu zic ca s-ar potrivi mult mai bine decat broastele testul asta: SWF, a carui sursa este: FLA, iar varianta in text (cu tot cu punctaj): TXT. Intrebarile sunt punctate de la 1 la 4 inclusiv unde 4 e cea mai buna alegere si 1 cea mai proasta. Ca sa iasa cu succes din toate punctele de vedere trebuie sa ganditi ca un "nou venit", iar intrebarile si raspunsurile sunt formate in asa fel incat sa reiasa si parti ale personalitatii, cum ar fi indiferenta, superficialitatea, etc. Astept pareri ...
  8. Eu sunt mai paranoic ... mereu ultima versiune, ultimile update-uri, deci tot acolo.
  9. Trebuia sa pun un no_scale ca sa le pastreze la dimensiunile originale indiferent de setarile din browser, oricum sunt la inceput si tot acolo am ramas de cand am inceput sa invat . Te referi sa fac movieclipuri cu listenere pe ele la fel ca la si butoane, numai ca am in plus atunci cand tin mouse pe el, atunci cand iau, etc. Si de ce ? Oricum am vazut ca fac faze ciudate butoanele daca pun in interiorul lor movieclip-uri mai mult de 1 sau in fiecare patrat de ala, etc. am uitat cum dar stiu ca faceau faze si mergeau aiurea, nu mai putea da click pe ele, etc.
  10. cmiN

    [Draw] 2s

    Prima am auzit-o si eu la cineva pe mess ... si nici eu nu mi-am dat seama de vreo solutie 2D pana acum. Cred ca ai dreptate.
  11. cmiN

    [Draw] 2s

    @black: c0rect! @daemien: Corect! @d3ath: nice try Indiciu: Nu conteaza daca folositi si / sau amestecati cifre romane cu arabice. Mai cunosc o posibilitate da va las pe voi ... chinuiti-va si la prima imagine.
  12. Toate sunt un fel de bux-uri, dar sub alta forma. Daca cineva a luat vreun premiu din concursurile de tipul asta eu imi modelez carnaciorul in forma de "animalut" din acela cu trompa cum arata ala de pe index.
  13. cmiN

    Mesaj codificat

    Si totusi e un xss ? E vulnerabil ?
  14. cmiN

    I'm Back

    Sal ... eu stiu, poate continui treaba aia cu prajiturele de yahoo generate, partial cunoscute .
  15. Vezi ca am dat edit la sursa, si am facut-o ceva mai complexa. Ideea este ca am pus acea sursa cu scop educativ, in invatarea unor chestii din programarea in python, pentru incepatori ajuta sa inteleaga mai bine cum sa se joace cu listele si cu array-uri etc. Si ce ai vazut tu reprezinta numai o bucatica din ce am in minte sa fac. Putini stiu sau intereseaza python pe forumul asta, deci incep sa ma bag si eu in seama cu cate ceva pe langa tot c++ si borland delphi, vb, chestii black hat sau ce mai vedeti si voi . Mai ales ca e si comentata in romana, deci sigur ajuta pe cineva.
  16. #! /usr/bin/env python # 20.07.2009 <> 20.07.2009 | cmiN # Challenge 4 Hertz @ rstcenter.com __doc__=""" This library encodes / decodes a file by reversing the bytes read from it.\n """ __usage__=""" Usage: byte.py filename.ext method lineswitch type Method: b - reverse bytes: A3 C4 5D -> 3A 4C D5 l - reverse lines: A3 C4 5D -> 5D C4 A3 r - reverse rows : A3 C4 5D 6B 2C 3F 2E D3 1A -> 2E D3 1A 6B 2C 3F A3 C4 5D Lineswitch: ON - Reverse also the LineFeed byte (new line) OFF - Don't change the LineFeed position Type: A - ASCII B - BINARY """ import os, sys def reverse(filepath, mode, switch, flag): if flag=="A": flag="" else: flag="b" infile=open(filepath, "r"+flag) #0x03 Deschidem fisierul din locatia citita si inbytes=infile.readlines() # ii citim octetii linie cu linie. infile.close() for x in range(len(inbytes)): #0x04 Spargem fiecare linie in lista, apoi l=[] # convertim octetii, obtinand in final l[:]=inbytes[x] # o lista ce contine liste ce contin inbytes[x]=l # string-uri cu reprezentarea hexadecimala a fiecarui octet. for y in range(len(inbytes[x])): z=hex(ord(inbytes[x][y]))[2:] while len(z)<2: z="0"+z inbytes[x][y]=z if switch=="OFF": for x in inbytes: try: x.remove("0a") except: status=True else: status=False if "r" in mode: #0x05 In functie de modul ales inversam inbytes.reverse() # pozitia si rasturnam octeti. if "l" in mode: for x in inbytes: x.reverse() if "b" in mode: for x in inbytes: for y in range(len(x)): x[y]=x[y][::-1] if switch=="OFF": for x in inbytes: x.append("0a") if status: inbytes[len(inbytes)-1].remove("0a") outbytes="" for x in inbytes: #0x06 Convertim fiecare string inapoi in octet, for y in x: # apoi ii scriem pe toti intr-un fisier outbytes+=chr(int(y, 16)) # cu nume si extensie inversata. outfile=open(infile.name[::-1], "w"+flag) outfile.write(outbytes) outfile.close() print("Ready! Check %s" % outfile.name) del filepath, mode, switch, flag, infile, inbytes, x, y, z, outbytes, outfile def main(): if len(sys.argv)!=5: #0x02 Citim argumentele furnizate de user si print(__doc__) # daca avem suficiente apelam functia reverse() print(__usage__) # cu argumentele ce contin locatia unui fisier si modul preferat. else: reverse(sys.argv[1], sys.argv[2], sys.argv[3], sys.argv[4]) if __name__=="__main__": try: #0x01 Executam functia main(), exceptand orice erroare main() # poate aparea pe parcurs. except WindowsError: print("An error occurred!") os.system("pause >NUL") #0x00 Pauza de final pentru citirea output-ului. *** sursa editata *** Updated to: 22.07.2009
  17. Dura faza cu "bashina" =D ... in rest e perfect .
  18. Bun daca ai anticipat si asta . Revin saptamana viitoare cu misiunea 2 .
  19. Da ... pachetele de 10 cifre sunt folosite ca separator iar cele de 9 le lipeste o cifra care contribuie la valoarea decimala ascii pentru fiecare caracter din string-ul final. Faza e ca decat sa te complici atat puteai sa iei mereu primele 10 caractere si vedeai daca al 10-lea caracter se repeta in primele 9. Daca se repeta e clar ca e un pachet de 9 si vedeai cifra lipsa care o adaugai intr-o variabila, dar daca nu se repeta era clar ca e un pachet de 10 cifre distincte si in loc sa adaugi vreo cifra la variabila adaugai un separator. Si dupa fiecare pachet de 9 sau 10 cifre analizat taiai pachetul, adica primele 9 sau 10 cifre ... depinde de lungimea pachetului descoperit de tine. Si apoi faceai conversia si gata mesajul. Am avut grija in algoritmul pentru codare de eventualele bug-uri cum ar fi: Dupa un pachet de 9 urmatorul pachet sa nu inceapa niciodata cu cifra care ii lipsea pachetului anterior, deoarece pachetul de 9 avand imediat dupa el cifra lipsa devine pachet de 10 si se strica tot, iar faza misto a "librarii" este ca de fiecare data pentru acelasi string se genereaza un cod complet diferit, ramanand la fel doar lungimea . Oricum te-ai prins .. gJ , v-am zis ca era usor.
  20. Nu prea am inteles mare lucru, oricum nu stiu php, dar pare cam ciudata ideea ) ... pe ce se bazeaza zi cum faci ? A meu arata asa: #! /usr/bin/env python # 14.07.2009 <> 14.07.2009 | cmiN # Challenge [Programare] Misiunea 1: Evadarea (cmiN) @ rstcenter.com __doc__=""" This library encodes a string to a numeric string and decodes a numeric string to a string.""" __usage__=""" Usage: [+] Encode a string: sh_cipher.py encode "string" [+] Decode an encoded string: sh_cipher.py decode "7956...532" """ import os, random, sys def encode(instr): outstr, aenstr="", "" for x in instr: aenstr+=str(ord(x))+" " z=" " for x in aenstr: numbers=["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"] if not x==" ": numbers.remove(x) random.shuffle(numbers) while z==numbers[0]: random.shuffle(numbers) z=x for x in numbers: outstr+=x del instr, aenstr, numbers, x, z return outstr def decode(outstr): l=[] aenstr, instr="", "" l[:]=outstr while len(l)!=0: if l[9] in l[:9]: numbers=["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"] for x in l[:9]: numbers.remove(x) aenstr+=numbers[0] l[:9]=[] else: aenstr+=" " l[:10]=[] aenstr=aenstr.strip(" ") for x in aenstr.split(" "): instr+=chr(int(x)) del outstr, aenstr, numbers, x, l return instr def main(): args=sys.argv if len(args)!=3: print(__doc__) print(__usage__) else: if args[1]=="encode": print(encode(args[2])) elif args[1]=="decode": print(decode(args[2])) else: raise Exception del args if __name__=="__main__": try: main() except: print("An error occurred!") os.system("pause >NUL")
  21. Corect lokipaki ! Asteptam si algoritmul ...
  22. Trebuie sa ajungi la un mesaj care iti spune care este parola ... tot mesajul cu tot cu parola are 85 de caractere( + spatii si semne ).
  23. Da .. insa am mai facut ceva de e asa lung ... nu iti trebuie nicio cunostinta .. decat ceva creer si acel ascii table si da .. eu am scris toata aia . 10x!
×
×
  • Create New...