Précédent   Forum des professionnels en informatique > PHP > Langage > Sessions
Sessions Forum d'entraide sur les sessions avec PHP. Avant de poster -> FAQ sessions, Cours sessions et Sources sécurité
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 02/02/2007, 23h03   #1
Invité de passage
 
Inscription : février 2007
Messages : 15
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 15
Points : 2
Points : 2
Par défaut [Sécurité] Sécuriser une connexion à un PHP

Salut
Comment peux-je sécuriser une connexion à un serveur qui ne supporte pas aucun protocole de cryptage (SSL...) en utilisant le PHP
hach22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2007, 01h11   #2
Membre chevronné
 
Inscription : janvier 2005
Messages : 711
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 711
Points : 671
Points : 671
a mon avis tu ne peux pas.
jobherzt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2007, 01h50   #3
Membre régulier
 
Inscription : janvier 2007
Messages : 85
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 85
Points : 80
Points : 80
Ou ça dépend de ton niveau de tolérance en matière de sécurité

@++
p.legal est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2007, 13h07   #4
Invité de passage
 
Inscription : février 2007
Messages : 15
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 15
Points : 2
Points : 2
J'ai pas beaucoup d'experiance en PHP mais je croix que theoriuquement c'est possible:
Mon idée:
0- Debut crypt_php
1- Après la requete de la page
crypter son cotenu
2- Ce contenu est arrivé crypté alors on utilise un outil en local pour le décrypter
3- Fin

Ou simplement le protéjer par un password puis pour visualiser on utilise ce password.

Je sais que le theorique est plus facile que le pratique mais s'il vous plait c'est extremement important...
hach22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2007, 13h16   #5
Membre chevronné
 
Inscription : janvier 2005
Messages : 711
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 711
Points : 671
Points : 671
Tout depend du contexte :

est ce que tu veux crypter la connexion dans les 2 sens, par exemple por une transaction bancaire ? -> oublie.

si par contre tu ne souhaite QUE transmettre quelque documents a quelque personne a qui tu pourras donner un mot de passe par un moyen sur ou qui possedent une paire de cle RSA alors dans ce cas c'est possible, php integre des fonction de cryptage. mais dans ce cas en effet il faut que le document soit telechargé puis decrypté en local. regarde la doc de mcrypt.
jobherzt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2007, 13h20   #6
Membre chevronné
 
Inscription : janvier 2005
Messages : 711
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 711
Points : 671
Points : 671
en fait, tu peux meme via RSA etendre ce prncipe pour permettre a un grand nombre de personne de telecharger un document crypté :

l'utilsateur installe gnupg et genere une paire de cle RSA
quand il veut telecharger le document, il entre sa cle publique dans un formulaire
un script PHP recupre cette clé publique et crypte le document, puis il lance le telchargement
l'utilsateur decrypte le fichier en local grace a gnupg.

je pense que c'est la mons mauvaise solution.

en ait, la vraie question est :
- combein de personne vont utiliser ce service, et ces personne sont elle connue de toi ? si ce n'est que quelque copains, un fichier crypté grace a un mot de passe peut suffire. sinon suis le protocole ci dessus.
jobherzt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2007, 13h38   #7
Invité de passage
 
Inscription : février 2007
Messages : 15
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 15
Points : 2
Points : 2
je veux crypter la connexion dans les 2sens...
ce service est utiliser seulement par moi...

NB je suis la seule à pouvoir le visualiser pour cela j'ai utiliser ce code
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
 
###############################################################
# Usage:
# Set usernames / passwords below between SETTINGS START and SETTINGS END.
# Open it in browser with "help" parameter to get the code
# to add to all files being protected. 
#    Example: password_protect.php?help
# Include protection string which it gave you into every file that needs to be protected
#
###############################################################
 
/*
-------------------------------------------------------------------
SAMPLE if you only want to request login and password on login form.
Each row represents different user.
 
$LOGIN_INFORMATION = array(
  'zubrag' => 'root',
  'test' => 'testpass',
  'admin' => 'passwd'
);
 
--------------------------------------------------------------------
SAMPLE if you only want to request only password on login form.
Note: only passwords are listed
 
$LOGIN_INFORMATION = array(
  'root',
  'testpass',
  'passwd'
);
 
--------------------------------------------------------------------
*/
 
##################################################################
#  SETTINGS START
##################################################################
 
// Add login/password pairs below, like described above
// NOTE: all rows except last must have comma "," at the end of line
$LOGIN_INFORMATION = array(
  'user' => 'XXXXXXXX'
);
 
// request login? true - show login and password boxes, false - password box only
define('USE_USERNAME', true);
 
##################################################################
#  SETTINGS END
##################################################################
 
 
///////////////////////////////////////////////////////
// do not change code below
///////////////////////////////////////////////////////
 
// show usage example
if(isset($_GET['help'])) {
  die('Include following code into every page you would like to protect, at the very beginning (first line):<br>&lt;?php include("' . __FILE__ . '"); ?&gt;');
}
 
// logout?
if(isset($_GET['logout'])) {
  setcookie("verify", ''); // clear password;
  die("Logged out.");
}
 
if(!function_exists('showLoginPasswordProtect')) {
 
// show login form
function showLoginPasswordProtect($error_msg) {
?>
<html>
<head>
  <title>Please enter password to access this page</title>
  <META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE">
  <META HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE">
</head>
<body>
  <style>
    input { border: 1px solid black; }
  </style>
  <form method="post">
    <h3>Please enter password to access this page</h3>
    <font color="red"><?php echo $error_msg; ?></font><br />
<?php if (USE_USERNAME) echo 'Login:<br /><input type="input" name="access_login" /><br />Password:<br />'; ?>
    <input type="password" name="access_password" /><p></p><input type="submit" name="Submit" value="Submit" />
  </form>
  <br />
</body>
</html>
 
<?php
  // stop at this point
  die();
}
}
 
// user provided password
if (isset($_POST['access_password'])) {
 
  $login = isset($_POST['access_login']) ? $_POST['access_login'] : '';
  $pass = $_POST['access_password'];
  if (!USE_USERNAME && !in_array($pass, $LOGIN_INFORMATION)
  || (USE_USERNAME && ( !array_key_exists($login, $LOGIN_INFORMATION) || $LOGIN_INFORMATION[$login] != $pass ) ) 
  ) {
    showLoginPasswordProtect("Incorrect password.");
  }
  else {
    // set cookie if password was validated
    setcookie("verify", md5($pass));
  }
 
}
 
else {
 
  // check if password cookie is set
  if (!isset($_COOKIE['verify'])) {
    showLoginPasswordProtect("");
  }
 
  // check if cookie is good
  $found = false;
  foreach($LOGIN_INFORMATION as $kay=>$val) {
    if ($_COOKIE['verify'] == md5($val)) {
      $found = true;
      break;
    }
  }
  if (!$found) {
    showLoginPasswordProtect("");
  }
 
}
 
?>
hach22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2007, 13h42   #8
Membre chevronné
 
Inscription : janvier 2005
Messages : 711
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 711
Points : 671
Points : 671
je crois qu'il va falloir que tu nous exlique exactement ce que tu veux faire. je crois qu'on est d'accord sur le fait que tu e pourras pas naviguer de facon transparente avec une connexion dans les 2 sens... donc il va falloir du bricolage avec des outils en local. donc : que veux tu faire ? est ce que TOUT doit etre crypté, ou seulement certain truc ? qu'est ce que tu dois envoyer, et qu'est ce que tu dois recevoir de facon cryptée ?
jobherzt est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h49.


 
 
 
 
Partenaires

Hébergement Web