Dunque... intanto secondo me puoi comunque usare una tecnica hash (che NON è la funzione hash e basta, che nell'uso comune non effettua una vera e propria crittografia com'è stato giustamente annotato... ecco perchè ho parlato di VARIANTE... c'era un motivo) ed eventualmente anche solo una semplice funzione hash se il controllo di corrispondenza della carta può essere effettuato al momento del pagamento (di persona dicevi): in questo caso l'albergatore reinserirà la carta di credito e potrà verificarne la corrispondenza con quanto memorizzato nel db.

Se invece è assolutamente necessario risalire al numero della carta (ma perchè? Eventualmente spiega bene questa motivazione) allora - come già ti hanno suggerito - devi usare un algoritmo che consenta la decrittazione delle informazioni... il "classico" sistema con chiavi asimmetriche si presta bene... potresti anche criptare il codice usando Mcrypt (v. http://www.php.net/manual/en/functio...odule-open.php)