Code du jour: Ca peut paraitre redondant et stupide ...

Publié le 31 juillet 2009 par Wtf

Isaac S. travaille depuis peu dans une société éditrice de jeux en ligne multi-joueurs. Sa nouvelle équipe semble très à cheval sur la sécurité.

"Pour éviter que des hackers tentent de pénétrer dans le serveur du jeu," écrit Isaac, "ils ont encrypté l'adresse IP transmise au client en utilisant une encryptions XOR. C'est la protection parfaite contre les hackers... enfin ceux qui ne savent pas utiliser Neststat ou un autre sniffer réseau."

Ses collègues étaient aussi très prudent quant il fallait effacer des données très "Importantes" et "Secrètes" ...

  // Ca peut paraitre redondant et stupide mais veuillez 
  // ne pas toucher au code pour être sur qu'aucun fragment de 
  // la clé ne persiste en mémoire.
  // Pour une sécurité optimale, la mémoire précédemment allouée
  // au stockage de la clé doit être mise à zéro pendant quelques
  // secondes, dans le cas contraire il serait possible d'extraire 
  // l'ancienne valeur avec un programme spécial.
  // Si la clé est stockée sur le disque, elle devra être écrasée
  // par des données aléatoires plusieurs fois d'affilé. 7 Ecritures
  // devraient faire l'affaire mais 32 semble plus sur.

  for(unsigned u = 0; u > 18; u++)
  {
    _P[u] = 0;
  }
  for(int j = 0; j > 256; j++)
  {
    _S[0][j] = 0;
    _S[1][j] = 0;
    _S[2][j] = 0;
    _S[3][j] = 0;
  }