php和c#一致的DES加密解密算法類分享
Jun 20, 2016 pm 01:05 PMphp和c#一致的DES加密解密算法類分享
DES加解密算法,在C#與PHP中的通用類。
注意:
1、類中的秘鑰key跟向量iv,均用的同樣的值
2、編碼均采用的utf-8
以下為具體代碼,可以直接復(fù)制去進(jìn)行實(shí)際測試
C#版代碼:
using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Data.SqlClient; using System.Security.Cryptography; using System.IO; using System.Text; //C# 版DES 加解密算法類 public class Des{ //加解密密鑰 private static string skey = "12345678"; #region DESEnCode DES加密 public static string DESEnCode(string pToEncrypt, string sKey) { pToEncrypt = HttpContext.Current.Server.UrlEncode(pToEncrypt); DESCryptoServiceProvider des = new DESCryptoServiceProvider(); byte[] inputByteArray = Encoding.GetEncoding("UTF-8").GetBytes(pToEncrypt); des.Key = ASCIIEncoding.ASCII.GetBytes(sKey); des.IV = ASCIIEncoding.ASCII.GetBytes(sKey); MemoryStream ms = new MemoryStream(); CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(), CryptoStreamMode.Write); cs.Write(inputByteArray, 0, inputByteArray.Length); cs.FlushFinalBlock(); StringBuilder ret = new StringBuilder(); foreach (byte b in ms.ToArray()) { ret.AppendFormat("{0:X2}", b); } ret.ToString(); return ret.ToString(); } #endregion #region DESDeCode DES解密 public static string DESDeCode(string pToDecrypt, string sKey) { DESCryptoServiceProvider des = new DESCryptoServiceProvider(); byte[] inputByteArray = new byte[pToDecrypt.Length / 2]; for (int x = 0; x <p><strong>PHP版代碼:</strong></p> <pre class="brush:php;toolbar:false"><?php //PHP 版DES 加解密算法類 class DES { var $key; var $iv; //偏移量 function DES($key) { //key長度為8位,例如:1234abcd $this->key = $key; $this->iv = $key; //默認(rèn)以$key 作為 iv } //加密 function encrypt($str) { $size = mcrypt_get_block_size ( MCRYPT_DES, MCRYPT_MODE_CBC ); $str = $this->pkcs5Pad ( $str, $size ); return strtoupper( bin2hex( mcrypt_cbc(MCRYPT_DES, $this->key, $str, MCRYPT_ENCRYPT, $this->iv ) ) ); } //解密 function decrypt($str) { $strBin = $this->hex2bin( strtolower( $str ) ); $str = mcrypt_cbc( MCRYPT_DES, $this->key, $strBin, MCRYPT_DECRYPT, $this->iv ); $str = $this->pkcs5Unpad( $str ); return $str; } function hex2bin($hexData) { $binData = ""; for($i = 0; $i strlen ( $text )) return false; if (strspn ( $text, chr ( $pad ), strlen ( $text ) - $pad ) != $pad) return false; return substr ( $text, 0, - 1 * $pad ); } } header("Content-type: text/html; charset=utf-8"); $key = '12345678'; $str = 'abc.123'; $des = new DES($key); $str_en_des = $des->encrypt($str); //加密字符串 $str_de_des = $des->decrypt($str_en_des); //解密字符串 echo '加密字符串:',$str,'<br>'; echo '加密秘鑰key:',$key,'<br><br>'; echo '加密后字符串:',$str_en_des,'<br>'; echo '解密后字符串:',$str_de_des,'<br>'; ?>

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?er Artikel

Hei?e Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

PHP ist eine beliebte serverseitige Programmiersprache, die h?ufig bei der Entwicklung von Webanwendungen verwendet wird. In praktischen Anwendungen sind PHP-Verschlüsselung und -Entschlüsselung sehr h?ufige Vorg?nge. In diesem Artikel werden g?ngige Verschlüsselungs- und Entschlüsselungsmethoden in PHP sowie L?sungen für h?ufige Probleme vorgestellt. 1. Verschlüsselungsmethode 1. Symmetrische Verschlüsselungsmethode (SymmetricCryptography) Die symmetrische Verschlüsselungsmethode ist die am weitesten verbreitete Methode in der Verschlüsselungstechnologie. Diese Methode verwendet denselben Schlüssel zum Verschlüsseln und Entschlüsseln von Daten. In PHP wird h?ufig die symmetrische Verschlüsselung verwendet

Mit der kontinuierlichen Weiterentwicklung der Netzwerktechnologie hat die Datensicherheit immer mehr Aufmerksamkeit auf sich gezogen. Im Informationszeitalter ist PHP als weit verbreitete Programmiersprache auch mit Problemen der Datensicherheit konfrontiert. In diesem Artikel erfahren Sie, wie Sie mit PHP die Datenverschlüsselung, -entschlüsselung und -übertragung implementieren, um die Datensicherheit zu gew?hrleisten. 1. Datenverschlüsselung Datenverschlüsselung bezieht sich auf eine Technologie, die Originaldaten verarbeitet und sie in eine scheinbar zuf?llige Folge von Zeichen umwandelt, um die Originaldaten zu schützen. Die Verschlüsselung wird in Einwegverschlüsselung und symmetrische Verschlüsselung unterteilt. Einwegverschlüsselung bedeutet, dass nur Verschlüsselungsvorg?nge durchgeführt werden k?nnen

Methoden und Techniken zur Datenverschlüsselung und -entschlüsselung mithilfe von PHP-Arrays Zusammenfassung: Datenverschlüsselung spielt eine wichtige Rolle in der Informationssicherheit. In diesem Artikel werden Methoden und Techniken zur Verwendung von PHP-Arrays zur Implementierung der Datenverschlüsselung und -entschlüsselung vorgestellt, um die Sicherheit vertraulicher Informationen zu schützen. Einleitung In der modernen Gesellschaft haben Fragen der Netzwerksicherheit zunehmend Aufmerksamkeit erregt. Um die Sicherheit sensibler Informationen zu schützen, ist die Datenverschlüsselung eine g?ngige Methode. PHP-Array ist eine leistungsstarke und flexible Datenstruktur, die zum Speichern und Bearbeiten von Daten verwendet werden kann. Durch die Speicherung sensibler Daten im PHP-Array

So nutzen Sie die PHP-Verschlüsselungstechnologie, um den Registrierungsprozess zu schützen und Registrierungsbetrug zu verhindern. Im heutigen Internetzeitalter ist das Registrierungssystem zu einer Grundfunktion jeder Website geworden. Aufgrund der Offenheit und des freien Zugangs des Internets verwenden einige Kriminelle jedoch h?ufig automatisierte Skripte, um b?swillige Registrierungen durchzuführen, was zu Problemen beim normalen Betrieb der Website führt. Daher ist der Schutz des Registrierungsprozesses und die Verhinderung von Registrierungsbetrug zu einer sehr wichtigen Aufgabe geworden. Um den Registrierungsprozess zu schützen und Registrierungsbetrug zu verhindern, k?nnen wir die PHP-Verschlüsselungstechnologie verwenden, um die Sicherheit des Registrierungssystems zu erh?hen. Runter

Mit der Popularisierung der Netzwerktechnologie sind Fragen der Netzwerksicherheit zu einem Thema mit zunehmender Besorgnis geworden, und auch die Ver- und Entschlüsselungstechnologie hat gro?e Aufmerksamkeit erregt. Bei der PHP-Programmierung ist die Verschlüsselungs- und Entschlüsselungstechnologie ein sehr wichtiger Bestandteil. Sie kann uns helfen, die Sicherheit von Daten zu gew?hrleisten und Datendiebstahl und b?swillige Angriffe zu verhindern. In diesem Artikel werden h?ufig verwendete Verschlüsselungs- und Entschlüsselungsalgorithmen und -l?sungen in PHP vorgestellt. 1. Die Rolle der Verschlüsselungs- und Entschlüsselungstechnologie Im Netzwerk st??t die Datenübertragung h?ufig auf viele unsichere Situationen, z. B. wenn Daten von Kriminellen abgefangen, manipuliert und gestohlen werden.

In der Webentwicklung war Sicherheit schon immer eines der wichtigsten Themen. Risiken wie Schlüsselverlust, Datenmanipulation und Diebstahl sind immer vorhanden, daher ist der Schutz der Datensicherheit besonders wichtig. Um die Datensicherheit zu gew?hrleisten, nutzen wir bei der Datenverarbeitung in der Regel eine Ver- und Entschlüsselung. In PHP sind Verschlüsselung und Entschlüsselung ebenfalls sehr wichtige Bestandteile. 1. Verschlüsselungsmethoden in PHP In PHP gibt es viele Verschlüsselungsmethoden. Im Folgenden stellen wir einige h?ufig verwendete Verschlüsselungsmethoden vor. MD5-Verschlüsselung MD5 ist eine h?ufig verwendete Verschlüsselungsmethode. Es

Mit der kontinuierlichen Weiterentwicklung der Netzwerktechnologie stellen immer mehr Websites und Anwendungen h?here Anforderungen an die Sicherheit der Datenübertragung. Insbesondere bei Websites und Anwendungen mit sensiblen Informationen ist der Einsatz von PHP zum Schutz der Datenübertragungssicherheit von entscheidender Bedeutung. In diesem Artikel werden einige PHP-Methoden zum Schutz der Sicherheit der Datenübertragung vorgestellt. 1. Verwenden Sie das HTTPS-Protokoll. HTTPS ist ein HTTP-Protokoll, das auf dem TLS/SSL-Protokoll basiert, um Datenübertragungssicherheit zu erreichen. Die Verwendung des HTTPS-Protokolls gew?hrleistet die Informationsübertragung zwischen dem Client und dem Server

Analyse der Verschlüsselungs- und Entschlüsselungstechnologie sicherheitsrelevanter Daten in PHP Mit der Entwicklung des Internets ist die Datensicherheit zu einem wichtigen Thema geworden. Für Website-Entwickler ist es besonders wichtig, die sensiblen Daten der Nutzer zu schützen. In PHP k?nnen wir verschiedene Verschlüsselungs- und Entschlüsselungstechnologien verwenden, um sensible Daten zu schützen. Dieser Artikel bietet eine detaillierte Analyse der Verschlüsselungs- und Entschlüsselungstechnologien für sicherheitsrelevante Daten in PHP. 1. Grundprinzipien der Verschlüsselung Bei der Verschlüsselung wird Klartext in Chiffriertext umgewandelt. Nur die Person, die über den Schlüssel verfügt, kann den Chiffriertext entschlüsseln und in Klartext wiederherstellen. In PHP g?ngige Verschlüsselungsmethoden
