Heim  >  Artikel  >  Backend-Entwicklung  >  So verschlüsseln Sie PHP

So verschlüsseln Sie PHP

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼Original
2019-08-30 10:12:523194Durchsuche

So verschlüsseln Sie PHP

MD5-Verschlüsselung:

string md5 ( string $str [, bool $raw_output = false ] )

1.md5() gibt den Hashwert standardmäßig als 32-stellige Hexadezimalzahl zurück. Es werden zwei akzeptiert Parameter, der erste ist die zu verschlüsselnde Zeichenfolge und der zweite ist der boolesche Wert von raw_output. Der Standardwert ist false. Wenn md5() auf „true“ gesetzt ist, gibt er den ursprünglichen 16-Bit-Nachrichtenauszug zurück.

2.md5() ist eine Einwegverschlüsselung ohne umgekehrten Entschlüsselungsalgorithmus, kann aber dennoch einige gängige Zeichenfolgen durch Sammlung, Aufzählung, Kollision und andere Methoden knacken.

Verwandte Empfehlungen: „PHP-Tutorial

  $username='jellybool';
  $password='abcd';
  /*简单地对字符串进行md5加密*/
  echo md5($username);
  echo "
";
  echo md5($password);
  echo "
";
  /*更推荐的做法是对重要的敏感数据进行多次加密,以防被轻易破解*/
  echo md5(md5($password));
  /*以上输出:
  username:4f5436e5d72608fb647b691e8edcf42e
  password:7bf02cf0f4af6da4accbc73d2a175476
  password(两次加密):864704bb35754f8cd0232cba6b91521b
  string crypt ( string $str [, string $salt ] )

1.crypt() akzeptiert zwei Parameter, der erste ist die Zeichenfolge, die verschlüsselt werden muss, und der zweite Der zweite ist der Salt-Wert (der Verschlüsselungsinterferenzwert ist. Wenn er nicht angegeben wird, wird er standardmäßig automatisch von PHP generiert. Er gibt eine Hash-Zeichenfolge oder eine Zeichenfolge mit weniger als 13 Zeichen zurück. Letzteres dient der Unterscheidung des Salt Wert.

2.crypt() ist eine Einwegverschlüsselung, genau wie MD5.

  $password='jellybool.com';
  echo crypt($password);
  echo "
";
  echo crypt($password,"jellybool");
  //输出:je7fNiu1KNaEs
  /*当我们要加自定义的盐值时,如例子中的jellybool作为第二个参数直接加入,

Sha1-Verschlüsselung:

string sha1 ( string $str [, bool $raw_output = false ]

1 Es ist MD5 sehr ähnlich, außer dass sha1() standardmäßig einen 40-stelligen Hashwert zurückgibt. Die Eigenschaften der eingehenden Parameter sind dieselben, der erste ist die verschlüsselte Zeichenfolge, der zweite ist der boolesche Wert von raw_output, der Standardwert ist false. Wenn er auf true gesetzt ist, gibt sha1() das ursprüngliche 20-Bit-Originalformat zurück Nachrichtenauszug.

2.sha1() ist ebenfalls eine Einwegverschlüsselung und verfügt über keinen umgekehrten Entschlüsselungsalgorithmus.

  $my_intro="abc";
  echo sha1($my_intro);
  //输出:c98885c04c1208fd4d0b1dadd3bd2a9ff4d042ca
  echo "
";
  //当然,可以将多种加密算法混合使用
  echo md5(sha1($my_intro));
  //输出:94f25bf9214f88b1ef065a3f9b5d9874

Urlencode-Verschlüsselung:

string urlencode ( string $str )

1. Ein Parameter, der die zu verschlüsselnde Zeichenfolge übergibt (wird normalerweise zum Verschlüsseln von URLs verwendet).

2. URL-Code ist eine bidirektionale Verschlüsselung und kann mit URL-Code verschlüsselt werden (genau genommen handelt es sich nicht um eine echte Verschlüsselung).

3. Alle nicht-alphanumerischen Zeichen in dieser Zeichenfolge werden durch ein Prozentzeichen (%) gefolgt von zwei hexadezimalen Ziffern ersetzt (+).

  $a = "http abc你好";
  $b = urlencode($a);
  $c = urldecode($b);
  echo $b;
  echo '
';
  echo $c;
  ?>

Das obige ist der detaillierte Inhalt vonSo verschlüsseln Sie PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn