Description
boolean
openssl_pkcs7_encrypt
( string infilename, string outfilename, mixed recipcerts, array
headers [, long flags])
openssl_pkcs7_encrypt(
)
prend
le
contenu
du
fichier
infilename
et
le
chiffre
en
utilisant
un
chiffrement
RC2
à
40-bit
,
de
manière
à
ce
que
le
message
ne
puisse
être
lu
que
par
le
possesseur
de
recipcerts
,
qui
peut
être
un
certificat
X.509
,
ou
un
tableau
de
certificats
X.509
.
headers
est
un
tableau
d'en-têtes
qui
seront
ajouté
en
tête
de
message
,
une
fois
que
les
données
auront
été
chiffrées
.
flags
peut
être
utilisé
pour
spécifier
des
options
qui
affecteront
le
chiffrement
(voir
les
constantes
PKCS7
)
.
headers
peut
être
un
tableau
associatif
,
dont
les
clés
sont
les
noms
d
'en-tête
,
ou
bien
un
tableau
indexé
dont
chaque
ligne
contient
une
en-tête
complète
.
Les
paramètres
et
le
type
de
retour
de
cette
fonction
risquent
d'
evoluer
d
'ici
à
la
prochaine
version
de
PHP
.
Exemple
1
.
Exemple
avec
openssl_pkcs7_encrypt(
)
?php
/
/
le
message
que
vous
souhaitez
chiffrer
et
envoyer
à
votre
agent
secret
/
/
en
mission
commandée
,
appelé
"
nighthawk
"
.
Vous
avez
son
certificat
/
/
dans
le
fichier
"
nighthawk.pem
"
$data
=
EOD
Nighthawk
,
Top
secret
,
uniquement
vous
votre
lecture
!
L
'
ennemi
approche
!
Rendez-vous
au
café
à
8h30
,
pour
votre
faux
passeport
.
HQ
EOD
;
/
/
sauvez
le
message
dans
un
fichier
$fp
=
fopen("msg.txt"
,
"w")
;
fwrite($fp
,
$data)
;
fclose($fp)
;
/
/
chiffrez
le
if
(openssl_pkcs7_encrypt("msg.txt"
,
"enc.txt"
,
"nighthawk.pem"
,
array("To
"
=
"nighthawk@agent.com"
,
/
/
keyed
syntax
"From
:
HQ
hq@cia.com
"
,
/
/
indexed
syntax
"Subject
"
=
"Eyes
only"))
)
{
/
/
message
chiffré
:
envoyez
le
!
exec(ini_get("sendmail_path"
)
.
"
enc.txt")
;
}
?
|
|
Note
:
Ces
constantes
ont
été
ajoutées
en
PHP
4.0.6
.