Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Cumparat/Locuit in apartament si ...

Pot folosi sistemul PC pe post de...

Sokol cu distorsiuni de cross-over

Filtru apa potabila cu osmoza inv...
 Kanal D va difuza serialul “...

Upgrade xiaomi mi11

securitate - acum se dau drept - ...

Farmacia Dr Max - Pareri / Sugest...
 De unde cumparati suspensii / gar...

[UNDE] Reconditionare obiecte lemn

Infiltratii casa noua

sugestie usa interior
 ANAF si plata la selfpay

Imprimanta ciss rezista perioade ...

Garmin fēnix 7 / PRO / Saphi...

Care sunt cele mai mari regrete a...
 

Algoritmi de criptare

- - - - -
  • Please log in to reply
110 replies to this topic

#37
trident

trident

    Active Member

  • Grup: Members
  • Posts: 1,185
  • Înscris: 15.01.2006

Quote

`nici one time pad`-ul nu garanteaza siguranta 100% in absolut nici o conditie.
NU EXISTA siguranta 100%. Teoretic, orice mesaj criptat poate fi decriptat... chiar daca ar dura cateva miliarde de ani. Ba chiar poti genera aleatoriu o cheie 4 GB si sa nimeresti exact cheia folosita pt criptare biggrin.gif (desi cred ca nimeni n-ar incerca asa ceva biggrin.gif)

:), eu as incepe cu o cheie de o lungime mai 'mica' cum ar fi 1028 de biti ( 2^1028 numar mai mare decat toti atomii din univers)

#38
Africanul

Africanul

    Active Member

  • Grup: Members
  • Posts: 1,739
  • Înscris: 24.10.2003

View Posttrident, on Nov 28 2006, 22:39, said:

:), eu as incepe cu o cheie de o lungime mai 'mica' cum ar fi 1028 de biti ( 2^1028 numar mai mare decat toti atomii din univers)

Cine a "estimat" asta?
In primul rand nu se cunoaste cat de mare este universul. Apoi nu se stie cat de dens este. Dar, iata!, cineva, a numarat atomii...  :puke:

#39
trident

trident

    Active Member

  • Grup: Members
  • Posts: 1,185
  • Înscris: 15.01.2006
http://www.cs.umass....d/universe.html

iau si eu de bun ce zic alti mai invatati... oricum nu prea are legatura cu discutia despre criptografie

#40
darklordmesiah

darklordmesiah

    Junior Member

  • Grup: Validating
  • Posts: 121
  • Înscris: 21.07.2006
E drept ca nu ma pricep la criptare, adica nu la cea informatica, dar deoarece mi se pare un subiect interesant, am citit topicul. Am o singura intrebare/nelamurire (si, va rog, iertati-mi lipsa de cunostinte). Din moment ce se da un mesaj si se cripteaza printr-un algoritm x (cu n etape), tinand cont ca algoritmul ramane constant, mi se pare (poate doar mie) ca mesajul criptat va face ca un caracter z sa apara intotdeauna drept z_criptat. Deci, in cazul asta, nu se reduce totul permanent la frecventa unui caracter ?
Imi cer scuze din nou, poate ca nu am priceput eu exact ideea. Am impresia ca exemplul meu de mai sus nu corespunde cazului cu "vine politia", dar in fine ...

#41
Garfield

Garfield

    Active Member

  • Grup: Members
  • Posts: 1,200
  • Înscris: 20.11.2004

View Postdarklordmesiah, on Dec 12 2006, 00:17, said:

tinand cont ca algoritmul ramane constant, mi se pare (poate doar mie) ca mesajul criptat va face ca un caracter z sa apara intotdeauna drept z_criptat. Deci, in cazul asta, nu se reduce totul permanent la frecventa unui caracter ?
Tu faci o greseala. Consideri ca se cripteaza fiecare caracter din mesaj si nu mesajul ca un tot.

#42
ammon06

ammon06

    Active Member

  • Grup: Members
  • Posts: 1,139
  • Înscris: 28.04.2006

View Postdarklordmesiah, on Dec 12 2006, 00:17, said:

Din moment ce se da un mesaj si se cripteaza printr-un algoritm x (cu n etape), tinand cont ca algoritmul ramane constant, mi se pare (poate doar mie) ca mesajul criptat va face ca un caracter z sa apara intotdeauna drept z_criptat.

Gandeste-te ca criptarea asta se face si in functie de "ceva". Un exemplu (stupid, recunsc) de criptare este asa: la codul ascii al fiecarui caracter pe care il intalnesc adaug 1 si imi rezulta caracterul criptat. "1" este acel "ceva" de care depinde criptarea mea.
Daca de ex in loc de 1, adaug 2, imi rezulta alt caracter criptat, cu toate ca algoritmul de criptare ramane acelasi. Deci voi obtine rezultate diferite cand criptez textul "abc" adaugand 1 sau adaugand 2.
In alte cuvinte.. algoritmul este unic, parametrii lui difera.

#43
darklordmesiah

darklordmesiah

    Junior Member

  • Grup: Validating
  • Posts: 121
  • Înscris: 21.07.2006
In alte cuvinte, iti multumesc si tie pentru raspuns, desi mi-a fost mai clara explicatia lui Garfield. E clar ca si daca iei un mesaj_x si ii adaugi fiecarui caracter 2(sau 3 sau 4 ... sau n) la codul ascii, chiar daca rezultatul va fi diferit, frecventa va ramane aceeasi, si tocmai asta subliniam eu mai sus. Am inteles insa ca nu se ia fiecare caracter in parte ci intregul mesaj.

#44
mo0n_sniper

mo0n_sniper

    New Member

  • Grup: Members
  • Posts: 8
  • Înscris: 03.12.2005
v-ati gandit vreodata la criptare loosy? :naughty:


glumeam ,glumeam don't jump on me







In GOD we trust.All others must have valid md5 summs

Edited by mo0n_sniper, 12 December 2006 - 23:04.


#45
Garfield

Garfield

    Active Member

  • Grup: Members
  • Posts: 1,200
  • Înscris: 20.11.2004

View Postmo0n_sniper, on Dec 12 2006, 23:03, said:

loosy
exista in limba engleza acest cuvant ?
Daca te-ai referit la "lossy" atunci nu exista astfel de criptare prin definitie (devine imposibil sa ajungi la forma initiala a mesajului, deci nu ai facut criptare ci... orice altceva: distrugere, degradare,...)

#46
mo0n_sniper

mo0n_sniper

    New Member

  • Grup: Members
  • Posts: 8
  • Înscris: 03.12.2005
-_-

GOD damn it kenny

1:am scris din graba si am gresit cateva litere acolo

2:am anticipat k cineva care trebuie sa spuna mereu ceva comercial va sari p mine si am scris mai jos ,and I quote:"glumeam ,glumeam don't jump on me"

#47
laurentiu_i

laurentiu_i

    Junior Member

  • Grup: Members
  • Posts: 76
  • Înscris: 28.09.2006
Doar asa ca o idee, un algoritm destul de sigur(cel putin impotriva tentativelor de spargere tip bruteforce) si relativ usor de implementat este MD5; de fapt nu e chiar un algoritm de criptare pur, ci o functie de tip hash(face rezumatul oricarui fisier pe 128 de biti). A fost folosit pentru criptarea parolelor, insa anul acesta s-au descoperit algoritmi destul de eficienti care genereaza coliziuni(fisiere diferite cu acelasi hash), asa ca probabil ca mai fi folosit ca un fel de checksum. Oricum, daca implementezi un astfel de algoritm si adaugi si un mecanism impotriva atacurilor de tip dictionar(de exemplu adaugi cativa biti random la sfarsitul parolei-se schimba radical hash acesteia) poti sta cat de cat linistit. Parolele in Linux sunt stocate intr-un mod asemanator.

#48
ammon06

ammon06

    Active Member

  • Grup: Members
  • Posts: 1,139
  • Înscris: 28.04.2006

View Postlaurentiu_i, on Dec 16 2006, 01:48, said:

Doar asa ca o idee, un algoritm destul de sigur(cel putin impotriva tentativelor de spargere tip bruteforce) si relativ usor de implementat este MD5; de fapt nu e chiar un algoritm de criptare pur, ci o functie de tip hash(face rezumatul oricarui fisier pe 128 de biti). A fost folosit pentru criptarea parolelor, insa anul acesta s-au descoperit algoritmi destul de eficienti care genereaza coliziuni(fisiere diferite cu acelasi hash), asa ca probabil ca mai fi folosit ca un fel de checksum. Oricum, daca implementezi un astfel de algoritm si adaugi si un mecanism impotriva atacurilor de tip dictionar(de exemplu adaugi cativa biti random la sfarsitul parolei-se schimba radical hash acesteia) poti sta cat de cat linistit. Parolele in Linux sunt stocate intr-un mod asemanator.

1. Nu ca nu este algoritm "pur" de criptare, nu este deloc algoritm de criptare. Un algoritm de criptare trebuie sa fie si reversibil (avand rezultatul criptat, sa pot obtine rezultatul initial), ceea ce la algoritmii de hash (MD5, SHA-1) nu este posibil, deoarece mesajul este distrus in timpul procesului de hashing.

2. Nu exista algoritmi care sa "genereze coliziuni"  :) . S-a demonstrat matematic ca exista cel putin 2 mesaje diferite care, in urma algoritmului de hashing, sa genereze acelasi rezultat. Acest lucru nu este chiar atat de uimitor, deoarece daca ne gandim ca dimensiunea MD5 de ex este fixa (128 biti), ne dam seama ca in aia 128 biti pot sa scriu maxim 2^128 biti. Iar cum lungimea textului initial este variabila.. apar coliziuni.
Problema la MD5 este ca s-a demonstrat si practic ca exista coliziuni (s-au gasit 2 string-uri diferite care in urma MD5 generau acelasi rezultat). La SHA-1, se vorbea despre acest lucru, dar n-am vazut nici un exemplu clar. Dar asta nu inseamna ca algoritmii nu sunt siguri..  

3. Nu e chiar asa de simplu cu random-ul ala. Ca o parola sa fie parola, ea trebuie sa-mi si permita accesul cand e corecta (nu numai sa nu mi-l permita cand e gresita). Daca eu la parola mea adaug ceva random si o salvez MD5, data viitoare cand vreau sa o folosesc.. nu cred ca mai nimeresc eu acelasi random ca sa-mi genereze acelasi MD5. Deci.. nu se adauga chiar ceva "random".

#49
trident

trident

    Active Member

  • Grup: Members
  • Posts: 1,185
  • Înscris: 15.01.2006
Probabil se referea ca adaugi cativa caractere random la sfarsit insa le tii minte :)

Si ce au demonstrat matematic? ca o functie cu domeniu si codomeniu cu numar diferite de elemente nu este bijectiva? :))

Si daca se gasesc coliziuni nu este o problema,o problema este daca se gaseste o modalitate sa scoti stringul din hash, insa daca va uitati pe algoritm o sa vedeti ca este cam imposibil

#50
laurentiu_i

laurentiu_i

    Junior Member

  • Grup: Members
  • Posts: 76
  • Înscris: 28.09.2006

View Posttrident, on Dec 16 2006, 10:09, said:

Probabil se referea ca adaugi cativa caractere random la sfarsit insa le tii minte :)
    Da, la asta ma refeream- faci de exemplu un fisier cu aceste caractere random pe care la adaugi in momentul autentificarii la parola. Cum sa nu fie o problema daca se gasesc coliziuni? Pai in modul asta daca cineva imi vede hash-ul si gaseste un fisier cu acelasi hash, n-are importanta ca e identic sau nu cu al meu (de fapt sansele cele mai mari sunt sa fie total diferit) inseamna ca mi-a spart parola- criptarea se face one-way, nu exista o inversa a functiei care sa-mi dea parola din hash(si asta este valabil pentru toate functiile criptografice-trebuie sa fie foarte greu, daca nu imposibil de inversat), de fapt asta a fost si ideea de baza in proiectarea algoritmului.
    ammon, chiar anul acesta au fost "scosi" pe piata doi algoritmi destul de tari care genereaza coliziuni pentru ORICE HASH(de fapt pentru orice hash cu un inceput dat) in limite rezonabile de timp(pe un notebook de generatie actuala, 2 ore). Asta inseamna ca algoritmul e cam pe duca; apropo, daca nu e algoritm folosit pentru criptare, de ce se pastreaza parolele in Linux in format MD5 :) ?

#51
ioman87

ioman87

    Member

  • Grup: Members
  • Posts: 313
  • Înscris: 05.02.2006

View Postlaurentiu_i, on Dec 16 2006, 11:28, said:

ammon, chiar anul acesta au fost "scosi" pe piata doi algoritmi destul de tari care genereaza coliziuni pentru ORICE HASH(de fapt pentru orice hash cu un inceput dat) in limite rezonabile de timp(pe un notebook de generatie actuala, 2 ore). Asta inseamna ca algoritmul e cam pe duca; apropo, daca nu e algoritm folosit pentru criptare, de ce se pastreaza parolele in Linux in format MD5 :) ?
Exista algoritmi care pot genera coliziuni dar: nu se genereaza coliziuni doar pornind de la un HASH. Trebuie sa se cunoasca mesajul initial si aici exista 2 optiuni:
- optam sa obtinem un alt mesaj cu acelasi hash: mesajul coliziune rezultat va fi fi aproape identic cu cel initial doar ca va avea ceva biti shimbati in asa fel incat sa rezulte acelasi MD5 (acesti algoritmi au complexitatea mica la care te refereai).
- optam sa creem 2 mesaje M1 si M2 avand acelasi MD5 pornind de la doua mesaje distince m1 si m2, M1=m1+d1,M2=m2+d2, unde d1 si d2 sunt vectori de caractere generati de algoritm pentru ca mesajele rezultate sa aibe acelasi MD5. Acest fel de atac e mult mai periculos decat primul dar si mai costisitor: o echipa de cercetatori a reusit in "doar" 6 luni sa obtina prin aceasta metoda coliziunea a 2 certificate (semnate cu MD5) folosind pana la 1200 de calculatoare: http://www.win.tue.n...ncementv1.0.pdf

P.S. : MD5 si alti algoritmi de hash sunt algoritmi de criptare intr-o singura directie (sau one-way encryption ca suna mai bine parca :) )

#52
Dorado

Dorado

    New Member

  • Grup: Members
  • Posts: 14
  • Înscris: 06.08.2005
Intamplator si de altfel nevoit de situatie, cautand niste metode de face o mobila  :P am intrat din nou pe forum. Asa ca imi cer scuze celor care mi-au cerut codul sursa si nu le-am raspuns.
De atunci am mai schimbat vreo doua calculatoare, si am facut o adevarat munca de dedectiv sa gasesc programul, ca sa nu mai vorbesc si de instalarea foxului :D
Iata codul:

IF EMPTY(ALLTRIM(thisform.text1.Value))
	MESSAGEBOX('Introdu parola',0,'EasyStyle')
	RETURN 
ENDIF 
LOCAL nr_crt, necifr, cifr, nr_tot, cr_medie,y, cifr1, pas
necifr=thisform.edit1.Value
cifr=''
CR_MEDIE=ASC(SUBSTR(ALLTRIM(thisform.text1.Value),1,1))
pas=ALLTRIM(thisform.text1.value)
re=LEN(necifr)
sl=''
ptr=1
FOR i=1 TO re
	FOR j=1 TO LEN(pas)
		y=ASC(SUBSTR(necifr,ptr,1))
		tr=ASC(SUBSTR(pas,j,1))
		IF y+tr>255
			ml=y+tr-256
		ELSE 
			ml=y+tr
		ENDIF 
		cifr=cifr+CHR(ml)
		*sl=sl+ALLTRIM(STR(y,3,0))+'+'+ALLTRIM(STR(tr,3,0))+'='+ALLTRIM(STR(ml,3,0))+CHR(13)
		ptr=ptr+1
		IF ptr>re
			i=ptr
			EXIT 
		ENDIF 			
	ENDFOR 
ENDFOR 
pr=''
FOR i=1 TO LEN(ALLTRIM(thisform.text1.Value))
	pr=pr+ALLTRIM(STR(ASC(SUBSTR(ALLTRIM(thisform.text1.Value),i,1)),3,0))
ENDFOR 
necifr=cifr
y=0
cifr=''
p=1
r=LEN(necifr)
FOR z=1 TO LEN(pr) 
	p1=SUBSTR(pr,z,1)
	IF p1='0' OR p1='1'
		LOOP 
	ENDIF  
	p2=ROUND(VAL(p1),0)
	cifr=''
	DO WHILE y=0
		FOR i=1 TO p2 
			IF p*p2-i<=r
				cifr=cifr+SUBSTR(necifr,p*p2-(i-1),1) &&1
			ELSE 
				y=1
			ENDIF 
		ENDFOR  
		p=p+1
	ENDDO 
	necifr=cifr 
	y=0
	p=1
ENDFOR 			

thisform.edit2.Value=''
thisform.edit2.Value=cifr
PS.
thisform.text1.Value = parola
thisform.edit1.Value= textul ce trebuia criptat
thisform.edit2.Value sau cifr = textul criptat

Codul de aici era intr-un form. De cativa ani nu m-am mai uitat peste el, asa ca prea multe despre el nu stiu ce sa va spun, decat daca ma intrebati si incep sa scotocesc sa vad ce am facut.
Vis-a-vis de ce au spus ceilalti forumisti, raman in continuare la parerea mea, ca e aextrem de greu de descifrat daca parola e lunga si textul ce urmeaza a fi criptat e deasemenea lung.
Id-ul de YM e xdoradox.

Mult succes.

Edited by ciuly, 07 April 2008 - 14:02.
adaugat tag-ul code


#53
AndreiASM

AndreiASM

    Active Member

  • Grup: Members
  • Posts: 1,021
  • Înscris: 24.06.2007
Reverse engineering si dureaza 2 minute pana e spart... :)

#54
fairmonk

fairmonk

    New Member

  • Grup: Members
  • Posts: 1
  • Înscris: 08.04.2009
Are cineva vre-un pdf/doc despre CSA (Common Scrambling Algorithm) in afara de ce este pe Wikipedia? Mi-ar fi de mare ajutor, pls

Edited by ciuly, 08 April 2009 - 20:07.


Anunturi

Bun venit pe Forumul Softpedia!

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate