Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Wind Tre 'accende' il 5G Standalone in Italia: si apre una nuova era basata sui servizi
Wind Tre 'accende' il 5G Standalone in Italia: si apre una nuova era basata sui servizi
Con la prima rete 5G Standalone attiva in Italia, WINDTRE compie un passo decisivo verso un modello di connettività intelligente che abilita scenari avanzati per imprese e pubbliche amministrazioni, trasformando la rete da infrastruttura a piattaforma per servizi a valore aggiunto
OPPO Find X9 Pro: il camera phone con teleobiettivo da 200MP e batteria da 7500 mAh
OPPO Find X9 Pro: il camera phone con teleobiettivo da 200MP e batteria da 7500 mAh
OPPO Find X9 Pro punta a diventare uno dei riferimenti assoluti nel segmento dei camera phone di fascia alta. Con un teleobiettivo Hasselblad da 200 MP, una batteria al silicio-carbonio da 7500 mAh e un display da 6,78 pollici con cornici ultra ridotte, il nuovo flagship non teme confronti con la concorrenza, e non solo nel comparto fotografico mobile. La dotazione tecnica include il processore MediaTek Dimensity 9500, certificazione IP69 e un sistema di ricarica rapida a 80W
DJI Romo, il robot aspirapolvere tutto trasparente
DJI Romo, il robot aspirapolvere tutto trasparente
Anche DJI entra nel panorama delle aziende che propongono una soluzione per la pulizia di casa, facendo leva sulla propria esperienza legata alla mappatura degli ambienti e all'evitamento di ostacoli maturata nel mondo dei droni. Romo è un robot preciso ed efficace, dal design decisamente originale e unico ma che richiede per questo un costo d'acquisto molto elevato
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 07-07-2004, 22:21   #1
Python
Senior Member
 
Iscritto dal: Jul 2002
Messaggi: 2183
[php] crypt di password

stavo provando a cryptare le password nel mio forum in php


il problema è che usando la stessa funzione, il crypt viene diverso ogni volta

cioè per esempio

$password = "prova";

$prova = crypt($password);
echo "crypting $prova <br>";

$prova = crypt($password);
echo "crypting $prova <br>";

$prova = crypt($password);
echo "crypting $prova <br>";

in teoria dovrebbero venire 3 righe uguali.... invece vegono diverse..... qual'è la funzione che crypta sempre nello stesso modo? (oppure dov'è che sbaglio io?)
__________________
NB: HP NX6310 | Intel Core Solo 1,66 | 1024 DDR2 5300 | 60 GB 5400 rpm | Intel GMA 950 | DVDRW DL
PC: AMD Athlon 64 3800+ | 1024 DDR 3200 | ATI X600 256MB | HDD 250 GB 7200 rpm | DVD RW DL HP
Ho concluso recentemente con: aleph0 - ayyyoooo
Python è offline   Rispondi citando il messaggio o parte di esso
Old 07-07-2004, 23:21   #2
SteR9
Senior Member
 
L'Avatar di SteR9
 
Iscritto dal: Jun 2002
Città: Milano
Messaggi: 959
Re: [php] crypt di password

Quote:
Originariamente inviato da Python
stavo provando a cryptare le password nel mio forum in php


il problema è che usando la stessa funzione, il crypt viene diverso ogni volta

cioè per esempio

$password = "prova";

$prova = crypt($password);
echo "crypting $prova <br>";

$prova = crypt($password);
echo "crypting $prova <br>";

$prova = crypt($password);
echo "crypting $prova <br>";

in teoria dovrebbero venire 3 righe uguali.... invece vegono diverse..... qual'è la funzione che crypta sempre nello stesso modo? (oppure dov'è che sbaglio io?)
devi usare md5... guarda qua
ciao
SteR9 è offline   Rispondi citando il messaggio o parte di esso
Old 07-07-2004, 23:55   #3
Python
Senior Member
 
Iscritto dal: Jul 2002
Messaggi: 2183
thank you domani cambio negli script
__________________
NB: HP NX6310 | Intel Core Solo 1,66 | 1024 DDR2 5300 | 60 GB 5400 rpm | Intel GMA 950 | DVDRW DL
PC: AMD Athlon 64 3800+ | 1024 DDR 3200 | ATI X600 256MB | HDD 250 GB 7200 rpm | DVD RW DL HP
Ho concluso recentemente con: aleph0 - ayyyoooo
Python è offline   Rispondi citando il messaggio o parte di esso
Old 08-07-2004, 00:58   #4
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Attenzione...md5 non cripta (nasconde) la password...ma ne fa un fingerprint...ovvero a partire da una stringa arbitraria colcola una stringa di lunghezza sempre costante (128 bit se non sbaglio)... Il risultato non è univoco (in teoria + stringhe possono portare allo stesso md5, ma è altamente improbabile trovarne due uguali)... Di conseguenza il rpocesso non invertibile... Cioè partendo dal md5 non si può tornare alla stringa originale...

Anche la stessa crypt è one-way....il problema per cui ti rende stringhe sempre diverse non lo conosco, ma credo dipenda dal salt (il parametro opzionale della crypt... Lo puoi specificare te oppure ne viene creato uno automaticamente è viene ritornato come i primi due caratteri della stringa del risutlato... Prova ad usare i due caratteri della prima stringa generata come salt delle chiamate successive...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 08-07-2004, 01:00   #5
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Confermo....è per quello...
Codice PHP:
<?php
$password 
crypt("My1sTpassword"); // let salt be generated

# You should pass the entire results of crypt() as the salt for comparing a
# password, to avoid problems when different hashing algorithms are used. (As
# it says above, standard DES-based password hashing uses a 2-character salt,
# but MD5-based hashing uses 12.)
if (crypt($user_input$password) == $password) {
   echo 
"Password verified!";
}
?>
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 08-07-2004, 16:23   #6
Python
Senior Member
 
Iscritto dal: Jul 2002
Messaggi: 2183
credo di aver capito, danke

mentre che lavoravo (si fa x dire ovviamente ) stamattina sono incorso in un altro problema

allora praticamente sto lavorando su un mio vecchio forum, ecco stavo sistemando la pagina di amministrazione per adattarla al php4 e al problema del passaggio delle variabili con $_GET e $_POST

semplificando la cosa vi espongo il problema (vi risparmio il codice x come l'ho scritto io, è un classico esempio di codice organizzato pessimamente )

la "prima pagina è questa"

Codice PHP:
echo "
<BR>
<CENTER><br>

<form name='modifc' method='post' action=\"admin.php?loginname=
$loginname&passname=$passname&action=modifica&vai=1\">";

$queryforum mysql_query ("SELECT * FROM general_forum ORDER BY posizione")
or die (
"Errore nel DataBase, impossibile accedere ai dati");

while (
$valori mysql_fetch_array ($queryforum)){
$a4 $valori ["id"];
$a5 $valori ["titolo"];
$a6 $valori ["commento"];
$a7 $valori ["posizione"];

echo 
"
<br>
ID: 
$a4 || <font color='black'><b>$a5</b></font> || Posizione: <input type='text' name='$a4' value='$a7'>
<br>

"
;

}

echo 
"<br>
<input type='submit' name='invia'  value='  Modifica Posizioni  '> <input type='reset' value='  Reset  '>
</form>

</center>"
;


la tabella al quale fa riferimento contiene le "stanze" (per dire, off topic, discussioni generali, etc)
l'id è una chiave univoca di riferimento
il nome e il commento penso lo capiate
la posizione serve x ordinare le stanze
questa "sezione" della pagina di amministrazione serve x cambiare gli ordini (appunto il parametro "posizione")
con il while che controlla l'esistenza dell'ultimo record vengono create tante caselle di testo quante sono le stanze, e ogni variabile (ogni casella di testo insomma) ha come nome variabile $id_di_riferimento_del_forum
ora devo portare queste variabili nell'altra "pagina", cioè devo leggerle con $_POST

ecco l'altra "pagina"

Codice PHP:
// #######################################################

$ctrlvarfrm mysql_query ("SELECT * FROM general_forum")
or die (
"Errore nel DataBase, impossibile accedere ai dati");


$quantiforum mysql_num_rows ($ctrlvarfrm)
or die (
"Errore nel DataBase, impossibile accedere ai dati");


for (
$var=1$var < ($quantiforum 1); $var++){

$
$var $_POST['$var'];

$mah = $$var;

echo 
"<br>variab $var ecco $mah<br>";

}

// ######################################################

$queryforum mysql_query ("SELECT * FROM general_forum ORDER BY posizione")
or die (
"Errore nel DataBase, impossibile accedere ai dati");

while (
$valori mysql_fetch_array ($queryforum)){
$iddi $valori ["id"];
$tit $valori ["titolo"];
$posiz $valori ["posizione"];

$posz = $$iddi;

mysql_query ("UPDATE general_forum SET posizione='$posz' WHERE id='$iddi'");

echo 
"<br>Forum $tit aggiornato.<br>"
ecco la parte chiusa nei cancelletti è quella su cui sto sbattendo la testa... purtroppo non mi risulta ci siano i puntatori come in c....
__________________
NB: HP NX6310 | Intel Core Solo 1,66 | 1024 DDR2 5300 | 60 GB 5400 rpm | Intel GMA 950 | DVDRW DL
PC: AMD Athlon 64 3800+ | 1024 DDR 3200 | ATI X600 256MB | HDD 250 GB 7200 rpm | DVD RW DL HP
Ho concluso recentemente con: aleph0 - ayyyoooo

Ultima modifica di Python : 08-07-2004 alle 16:28.
Python è offline   Rispondi citando il messaggio o parte di esso
Old 08-07-2004, 16:29   #7
Python
Senior Member
 
Iscritto dal: Jul 2002
Messaggi: 2183
uhm credo di aver risolto

ho tolto gli apici da questo

Codice PHP:
$$var $_POST[$var]; 

ora provo x bene


edit:
funziona che è una meraviglia... mi stupisco anch'io del codice-spazzatura che genero
__________________
NB: HP NX6310 | Intel Core Solo 1,66 | 1024 DDR2 5300 | 60 GB 5400 rpm | Intel GMA 950 | DVDRW DL
PC: AMD Athlon 64 3800+ | 1024 DDR 3200 | ATI X600 256MB | HDD 250 GB 7200 rpm | DVD RW DL HP
Ho concluso recentemente con: aleph0 - ayyyoooo

Ultima modifica di Python : 08-07-2004 alle 16:36.
Python è offline   Rispondi citando il messaggio o parte di esso
Old 08-07-2004, 16:35   #8
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
In questo modo indicizzi il vettore...
Puoi usare un foreach e verificare la chiave...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 08-07-2004, 16:47   #9
Python
Senior Member
 
Iscritto dal: Jul 2002
Messaggi: 2183
Quote:
Originariamente inviato da cionci
In questo modo indicizzi il vettore...
Puoi usare un foreach e verificare la chiave...
scusa non ho capito molto, sono andato a vedere questa funzione e se ho ben capito la dovrei utilizzare al posto di mysql_fetch_array?
__________________
NB: HP NX6310 | Intel Core Solo 1,66 | 1024 DDR2 5300 | 60 GB 5400 rpm | Intel GMA 950 | DVDRW DL
PC: AMD Athlon 64 3800+ | 1024 DDR 3200 | ATI X600 256MB | HDD 250 GB 7200 rpm | DVD RW DL HP
Ho concluso recentemente con: aleph0 - ayyyoooo
Python è offline   Rispondi citando il messaggio o parte di esso
Old 08-07-2004, 16:53   #10
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Se funziona va bene anche così...
No...foreach è un costrutto generico... Si può usare su qualsiasi vettore...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 08-07-2004, 17:00   #11
Python
Senior Member
 
Iscritto dal: Jul 2002
Messaggi: 2183
no funziona bene il fetch_array, l'ho sempre usato


ah mi è spuntato un'altro problema (e quando mai, ne spuntano sempre)
in pratica non riesco a far funzionare il controllo di stringhe

mi spiego

Codice PHP:
if ( crypt($passname$a9) == $a9 ){ 
bene ho la certezza (ho provato con degli echo di controllo) che entrambi sono uguali, eppure non funziona il controllo me lo da sempre come falso...


edit: niente, ho risolto. piccolo errore di distrazione (in questo script sul quale sto reiniziando a lavorare l'ultima modifica l'avevo fatta circa 2 anni fa, non potevo ricordarmi come l'avevo disorganizzato )
__________________
NB: HP NX6310 | Intel Core Solo 1,66 | 1024 DDR2 5300 | 60 GB 5400 rpm | Intel GMA 950 | DVDRW DL
PC: AMD Athlon 64 3800+ | 1024 DDR 3200 | ATI X600 256MB | HDD 250 GB 7200 rpm | DVD RW DL HP
Ho concluso recentemente con: aleph0 - ayyyoooo

Ultima modifica di Python : 08-07-2004 alle 17:04.
Python è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Wind Tre 'accende' il 5G Standalone in Italia: si apre una nuova era basata sui servizi Wind Tre 'accende' il 5G Standalone in Italia: s...
OPPO Find X9 Pro: il camera phone con teleobiettivo da 200MP e batteria da 7500 mAh OPPO Find X9 Pro: il camera phone con teleobiett...
DJI Romo, il robot aspirapolvere tutto trasparente DJI Romo, il robot aspirapolvere tutto trasparen...
DJI Osmo Nano: la piccola fotocamera alla prova sul campo DJI Osmo Nano: la piccola fotocamera alla prova ...
FUJIFILM X-T30 III, la nuova mirrorless compatta FUJIFILM X-T30 III, la nuova mirrorless compatta
Car of the Year 2026, rivelate le 7 fina...
Il mouse diventa indossabile: Prolo Ring...
Animal Crossing: New Horizons torna in v...
Task Manager impazzito su Windows 11: in...
NZXT: il PC in abbonamento finisce in tr...
Halo 2 e 3: remake in arrivo, multiplaye...
Robot Phone e un nuovo ecosistema AI: HO...
Amazon sorprende tutti: extra 15% di sco...
HONOR 400 Lite 5G a 209,90€: smartphone ...
Asus TUF Gaming F15 con RTX 4070 e i7-12...
OpenAI punta alla quotazione in Borsa: v...
Samsung Galaxy S25 Ultra a 1.099€ su Ama...
OpenAI aggiorna Sora: arrivano i persona...
I TV LG OLED AI B5 scendono di prezzo, d...
Operazione Cagliostro: Voltaiko e lo sch...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 13:35.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v