Ada banyak MD5 untuk karakter terenkripsi ASP di Internet dan sangat umum, namun MD5 untuk file memang sangat jarang karena keterbatasan bahasa ASP itu sendiri. Kita tahu bahwa md5 dari sebuah string dapat mengenkripsi teks biasa secara permanen untuk memastikan keamanan penyimpanan atau transmisi data. Demikian pula, enkripsi file md5 juga digunakan untuk memastikan bahwa file tersebut tidak diubah dan diverifikasi selama transmisi jaringan. Kegunaan lain adalah di situs pribadi: dapat memastikan bahwa gambar atau file yang diunggah adalah unik. Prinsipnya adalah setelah diunggah ke server, nilai md5 dari file yang diunggah dicatat dalam database pada saat yang sama. Dengan cara ini, saat file yang sama diunggah lagi, kita dapat menanyakan database untuk melihat apakah itu benar file yang sama. Jika nilai md5 sama, kami akan menganggapnya sama. Untuk file, nilai md5 adalah "kartu ID" dari file tersebut untuk gambar di Baidu dan klik gambarnya, terkadang "Anda juga bisa mengklik link berikut untuk melihat gambar ini: XXX URL", prinsipnya sama, md5 filenya.
Tanpa basa-basi lagi, mari kita mulai.
1. asp memanggil program .Net melalui mode interaktif xml untuk mengimplementasikan file md5
Karena keterbatasan bahasanya sendiri, asp tidak dapat mengimplementasikan file md5, tetapi .net memang dapat melakukannya. Apakah mungkin untuk melakukan md5 pada file tersebut melalui .net, dan kemudian mengirimkan informasi ke asp untuk menerimanya, sehingga sehingga md5 dari asp dapat dicapai? Jawab Itu pasti. Ini melibatkan interaksi antara program ASP dan .NET. Saya telah menulis kelas ASP sebelumnya: "Kelas Pengiriman dan Penerimaan Data XML Pemrosesan ASP". Anda dapat melihatnya di ruang Baidu saya: http://hi.baidu.com /manbutianmi /blog/item/dec182fc6db36587b801a0f6.html adalah tentang pemrosesan asp dalam mengirim dan menerima data xml, dan dapat digunakan untuk komunikasi antara antarmuka API antara berbagai sistem heterogen. Artikel ini kebetulan merupakan aplikasi kelas ini. Kodenya adalah sebagai berikut:
kode sisi asp
xmlcls.asp
<%
Rem menangani pengiriman dan penerimaan kelas data xml
'------------------------------------------------ -
'Informasi hak cipta ini harus disimpan saat mencetak ulang
'Penulis: walkman
'Situs Web: Jaringan Tema Seluler: http://www.shouji138.com
'Versi: ver1.0
'------------------------------------------------ -
KelasXmlKelas
Definisi variabel rem
XmlDoc Pribadi, XmlHttp
Kode Pesan Pribadi, SysKey, XmlPath
m_GetXmlDoc pribadi,m_url
m_XmlDocAccept
Rem
pribadi
Sub Kelas Pribadi_Inisialisasi()
Pada Kesalahan Lanjutkan Berikutnya
Kode Pesan = ""
XmlJalur = ""
Setel XmlDoc = Server.CreateObject("msxml2.FreeThreadedDOMDocument.3.0")
XmlDoc.ASYNC = Salah
Akhiri Sub
Rem menghancurkan objek itu
Sub Kelas_Terminate() Pribadi
Jika IsObject(XmlDoc) Kemudian Setel XmlDoc = Tidak Ada
Jika IsObject(m_XmlDocAccept) Kemudian Setel m_XmlDocAccept = Tidak Ada
Jika IsObject(m_GetXmlDoc) Kemudian Setel m_GetXmlDoc = Tidak Ada
Akhiri Sub
'Definisi atribut publik dimulai --------------------------
Pesan kesalahan rem
Properti Publik Dapatkan Pesan()
Pesan = Kode Pesan
Properti Akhir
Rem alamat tujuan pengiriman xml
URL Izinkan Properti Publik (str)
m_url = str
Properti Akhir
'Akhir dari definisi atribut publik --------------------------
'Proses dan metode pribadi dimulai --------------------------
Rem memuat xml
Sub LoadXmlData Pribadi()
Jika XmlPath <> "" Lalu
Jika Bukan XmlDoc.Load(XmlPath) Lalu
XmlDoc.LoadXml "<?xml version=""1.0"" pengkodean=""gb2312""?><root/>"
Akhiri Jika
Kalau tidak
XmlDoc.LoadXml "<?xml version=""1.0"" pengkodean=""gb2312""?><root/>"
Akhiri Jika
Akhiri
konversi karakter Sub Rem
Fungsi Pribadi AnsiToUnicode(ByVal str)
Redupkan i, j, c, i1, i2, u, fs, f, p
AnsiToUnicode = ""
hal = ""
Untuk i = 1 Ke Len(str)
c = Tengah(str, i, 1)
j = AscW(c)
Jika j < 0 Maka
j = j + 65536
Akhiri Jika
Jika j >= 0 Dan j <= 128 Maka
Jika p = "c" Maka
AnsiToUnicode = " " & AnsiToUnicode
p = "e"
Akhiri Jika
AnsiToUnicode = AnsiToUnicode & c
Kalau tidak
Jika p = "e" Maka
AnsiToUnicode = AnsiToUnicode & " "
p = "c"
Akhiri Jika
AnsiToUnicode = AnsiToUnicode & ("&#" & j & ";")
Akhiri Jika
Berikutnya
Fungsi Akhir
Konversi karakter rem
Fungsi Pribadi strAnsi2Unicode(asContents)
Redupkan len1,i,varchar,varasc
strAnsi2Unicode = ""
len1=LenB(sebagaiIsi)
Jika len1=0 Kemudian Keluar dari Fungsi
Untuk i=1 hingga len1
varchar=MidB(sebagaiIsi,i,1)
varasc=AscB(varchar)
Jika varasc > 127 Maka
Jika MidB(asContents,i+1,1)<>"" Lalu
strAnsi2Unicode = strAnsi2Unicode & chr(ascw(midb(asContents,i+1,1) & varchar))
Akhiri Jika
saya=saya+1
Kalau tidak
strAnsi2Unicode = strAnsi2Unicode & Chr(varasc)
Akhiri Jika
Berikutnya
Fungsi Akhir
Rem menambahkan karakter ke file
Sub Pribadi WriteStringToFile(nama file,str)
Pada Kesalahan Lanjutkan Berikutnya
Redupkan fs,ts
Setel fs= buat objek("script_ing.filesystemobject")
Jika Bukan IsObject(fs) Kemudian Keluar dari Sub
Setel ts=fs.OpenTextFile(Server.MapPath(nama file),8,True)
ts.writeline(str)
ts.tutup
Tetapkan ts=Tidak ada
Tetapkan fs=Tidak ada
Akhiri Sub
'Proses dan metode pribadi berakhir --------------------------
'Metode publik dimulai--www.devdao.com------------------------
''''''''''' Kirim bagian xml untuk memulai
Rem mengisi objek XmlDoc dari file xml eksternal
Sub Publik LoadXmlFromFile(jalur)
XmlPath = Server.MapPath(jalur)
MemuatXmlData()
Akhiri Sub
Rem mengisi objek XmlDoc dengan string
Sub Publik LoadXmlFromString(str)
XmlDoc.LoadXml str
Akhiri Sub
Rem menyetel parameter simpul seperti NodeValue "appID",AppID,1,False
'------------------------------------------------ -
'parameter:
'Nama simpul NodeName
'Nilai NodeTeks
'Jenis penyimpanan NodeType [teks=0,cdata=1]
'blnEncode apakah akan menyandikan [benar, salah]
'------------------------------------------------ -
Sub NodeValue Publik (Byval NodeName, Byval NodeText, Byval NodeType, Byval blnEncode)
Redupkan ChildNode, Buat Bagian CDATA
NamaNode = Lcase(NamaNode)
Jika XmlDoc.documentElement.selectSingleNode(NodeName) bukan apa-apa, maka
Setel ChildNode = XmlDoc.documentElement.appendChild(XmlDoc.createNode(1,NodeName,""))
Kalau tidak
Setel ChildNode = XmlDoc.documentElement.selectSingleNode(NodeName)
Akhiri Jika
Jika blnEncode = Benar Maka
NodeTeks = AnsiToUnicode(NodeTeks)
Akhiri Jika
Jika NodeType = 1 Maka
ChildNode.Teks = ""
Setel CreateCDATASection = XmlDoc.createCDATASection(Ganti(NodeText,"]]>","]]>"))
ChildNode.appendChild(buatCDATASection)
Kalau tidak
ChildNode.Teks = NodeTeks
Akhiri Jika
Akhiri Sub
'------------------------------------------------ -
'Dapatkan nilai node dalam paket XML yang dikirim
'parameter:
'Nama simpul str
'------------------------------------------------ -
Properti Publik GetXmlNode(ByvalStr)
Jika XmlDoc.documentElement.selectSingleNode(Str) Bukan Apa-apa, Maka
XmlNode = "Nol"
Kalau tidak
XmlNode = XmlDoc.documentElement.selectSingleNode(Str).teks
Akhiri Jika
Properti Akhir
'----------------------------------------------- -- ---
'Dapatkan objek data XML yang dikembalikan
'contoh:
'Jika GetXmlData bukan NULL, GetXmlData adalah objek XML
'------------------------------------------------ -
Properti Publik Dapatkan GetXmlData()
Setel GetXmlData = m_GetXmlDoc
Properti Akhir
'------------------------------------------------ -
'Kirim paket xml
'------------------------------------------------ -
Sub Publik SendHttpData()
Redupkan saya,GetXmlDoc,LoadAppid
Setel Xmlhttp = Server.CreateObject("MSXML2.ServerXMLHTTP.3.0")
Setel GetXmlDoc = Server.CreateObject("msxml2.FreeThreadedDOMDocument.3.0") ' Kembalikan paket xml
XmlHttp.Buka "POST", m_url, false
XmlHttp.SetRequestHeader "tipe konten", "teks/xml"
XmlHttp.Kirim XmlDoc
'Respon.Tulis strAnsi2Unicode(xmlhttp.responseBody)
Jika GetXmlDoc.load(XmlHttp.responseXML) Lalu
Setel m_GetXmlDoc = GetXmlDoc
Kalau tidak
MessageCode = "Kesalahan dalam meminta data!"
Keluar dari Sub
Akhiri Jika
Setel GetXmlDoc = Tidak Ada
Setel XmlHttp = Tidak Ada
Akhiri Sub
'------------------------------------------------ -
'Cetak data XML permintaan pengiriman
'------------------------------------------------ -
Sub Publik PrintSendXmlData()
Respon. Jelas
Response.ContentType = "teks/xml"
Respon.CharSet = "gb2312"
Respon. Kedaluwarsa = 0
Respons.Tulis "<?xml version=""1.0"" coding=""gb2312""?>"&vbNewLine
Respon.Tulis XmlDoc.documentElement.XML
Akhiri Sub
'------------------------------------------------ -
'Cetak data XML yang dikembalikan
'------------------------------------------------ -
Sub Publik PrintGetXmlData()
Respon. Jelas
Response.ContentType = "teks/xml"
Respon.CharSet = "gb2312"
Respon. Kedaluwarsa = 0
Jika IsObject(m_GetXmlDoc) Lalu
Respons.Tulis "<?xml version=""1.0"" coding=""gb2312""?>"&vbNewLine
Respon.Tulis m_GetXmlDoc.documentElement.XML
Kalau tidak
Respons.Tulis "<?xml version=""1.0"" coding=""gb2312""?><root></root>"
Akhiri Jika
Akhiri Sub
Rem menyimpan data xml permintaan pengiriman ke file bernama sendxml_date.txt
Sub Publik SaveSendXmlDataToFile()
Redupkan nama file, str
nama file = "sendxml_" & DateValue(sekarang) & ".txt"
str = ""
str = str & ""& Sekarang() & vbNewLine
str = str & "--------------------------------------------- --- "& vbNewLine
str = str & "<?xml version=""1.0"" coding=""gb2312""?>" & vbNewLine
str = str & XmlDoc.documentElement.XML & vbNewLine
str = str & "--------------------------------------------- --- "& vbNewLine
str = str & vbNewLine & vbNewLine & vbNewLine
Nama file WriteStringToFile, str
Akhiri Sub
Rem menyimpan data XML yang dikembalikan ke file bernama getxml_date.txt
Sub Publik SaveGetXmlDataToFile()
Redupkan nama file, str
nama file = "getxml_" & DateValue(sekarang) & ".txt"
str = ""
str = str & ""& Sekarang() & vbNewLine
str = str & "--------------------------------------------- --- "& vbNewLine
Jika IsObject(m_GetXmlDoc) Lalu
str = str & "<?xml version=""1.0"" coding=""gb2312""?>" & vbNewLine
str = str & m_GetXmlDoc.documentElement.XML
Kalau tidak
str = str & "<?xml version=""1.0"" coding=""gb2312""?>" & vbNewLine & "<root>" & vbNewLine & "</root>"
Akhiri Jika
str = str & vbNewLine
str = str & "--------------------------------------------- --- "& vbNewLine
str = str & vbNewLine & vbNewLine & vbNewLine
Nama file WriteStringToFile, str
Akhiri Sub
'------------------------------------------------ -
'Dapatkan informasi simpul dari xml yang dikembalikan
'XmlClassObj.GetSingleNode("//pesan")
'------------------------------------------------ -
Fungsi Publik GetSingleNode(nodestring)
Jika IsObject(m_GetXmlDoc) Lalu
GetSingleNode = m_GetXmlDoc.documentElement.selectSingleNode(nodestring).teks
Kalau tidak
DapatkanSingleNode = ""
Akhiri Jika
Fungsi Akhir
''''''''''''''''''Akhir pengiriman bagian xml
''''''''''''''''''Bagian xml penerimaan dimulai
'------------------------------------------------ -
'Terima paket XML, informasi kesalahan diperoleh melalui objek Pesan
'------------------------------------------------ -
Fungsi Publik AcceptHttpData()
Redupkan XMLdom
Setel XMLdom = Server.CreateObject("Microsoft.XMLDOM")
XMLdom.Async = Salah
XMLdom.Muat(Permintaan)
Jika XMLdom.parseError.errorCode <> 0 Lalu
MessageCode = "Tidak dapat menerima data dengan benar" & "Descript_ion: " & XMLdom.parseError.reason & "<br>Baris: " & XMLdom.parseError.Line
Setel m_XmlDocAccept = Null
Kalau tidak
Setel m_XmlDocAccept = XMLdom
Akhiri Jika
Fungsi Akhir
'----------------------------------------------- -- ---
'Kembali untuk menerima informasi simpul paket XML
'XmlClassObj.GetSingleNode("//pesan")
'------------------------------------------------ -
Fungsi Publik AcceptSingleNode (nodestring)
Jika IsObject(m_XmlDocAccept) Lalu
AcceptSingleNode = m_XmlDocAccept.documentElement.selectSingleNode(nodestring).teks
Kalau tidak
TerimaSingleNode = ""
Akhiri Jika
Fungsi Akhir
'------------------------------------------------ -
'Cetak data XML yang diterima oleh pihak penerima
'------------------------------------------------ -
Sub Publik PrintAcceptXmlData()
Respon. Jelas
Response.ContentType = "teks/xml"
Respon.CharSet = "gb2312"
Respon. Kedaluwarsa = 0
Jika IsObject(m_XmlDocAccept) Lalu
Respons.Tulis "<?xml version=""1.0"" coding=""gb2312""?>"&vbNewLine
Respon.Tulis m_XmlDocAccept.documentElement.XML
Kalau tidak
Respons.Tulis "<?xml version=""1.0"" coding=""gb2312""?><root></root>"
Akhiri Jika
Akhiri Sub
Rem menyimpan data paket XML yang diterima ke file bernamaacceptxml_date.txt
Sub Publik SaveAcceptXmlDataToFile()
Redupkan nama file, str
nama file = "acceptxml_" & DateValue(sekarang) & ".txt"
str = ""
str = str & ""& Sekarang() & vbNewLine
str = str & "--------------------------------------------- --- "& vbNewLine
Jika IsObject(m_XmlDocAccept) Lalu
str = str & "<?xml version=""1.0"" coding=""gb2312""?>" & vbNewLine
str = str & m_XmlDocAccept.documentElement.XML
Kalau tidak
str = str & "<?xml version=""1.0"" coding=""gb2312""?>" & vbNewLine & "<root>" & vbNewLine & "</root>"
Akhiri Jika
str = str & vbNewLine
str = str & "--------------------------------------------- --- "& vbNewLine
str = str & vbNewLine & vbNewLine & vbNewLine
Nama file WriteStringToFile, str
Akhiri Sub
''''''''''''''''''Terima bagian xml dan akhiri
Rem. Simpan data debug ke file bernama debugnote_date.txt
Sub Publik SaveDebugStringToFile(debugstr)
Redupkan nama file, str
nama file = "debugnote_" & DateValue(sekarang) & ".txt"
str = ""
str = str & ""& Sekarang() & vbNewLine
str = str & "--------------------------------------------- --- "& vbNewLine
str = str & debugstr & vbNewLine
str = str & "--------------------------------------------- --- "
str = str & vbNewLine & vbNewLine & vbNewLine
Nama file WriteStringToFile, str
Akhir Sub
'Metode publik berakhir--------------------------
Kelas Akhir
%>
filemd5fun.asp
<!--#Sertakan File="xmlcls.asp"-->
<%
Rem mendapatkan md5 dari file tersebut, parameternya adalah nama file
Fungsi GetFileMD5 (nama file)
Const Apisysno = "k8n6g2b0m1a6b0f6e8" 'Nilai kunci antarmuka harus konsisten untuk mencegah penerapan antarmuka secara ilegal
DimXmlClassObj
Setel XmlClassObj = new XmlClass 'Buat objek
XmlClassObj.LoadXmlFromString("<?xml version=""1.0"" coding=""gb2312""?><root/>") 'Isi objek XMLDOC dengan karakter xml dan gunakan untuk mengirim xml
XmlClassObj.URL = " http://www.shouji138.com/aspnet2/FileMD5.aspx " 'Tetapkan url respons, yang harus diubah ke URL Anda
Format rem xml
Rem "<?xml versi="1.0" pengkodean="gb2312"?>
Rem <root>
Rem <sysno></sysno>
Rem <apiaction></apiaction>
Rem <namafile></namafile>
Rem </root>
XmlClassObj.NodeValue "sysno",Apisysno,0,False 'Nilai kunci antarmuka untuk mencegah aplikasi ilegal
XmlClassObj.NodeValue "apiaction","createfilemd5",0,False 'Tindakan respons antarmuka, digunakan untuk mendefinisikan antarmuka untuk berbagai tujuan
XmlClassObj.NodeValue "filename",filename,0,False 'Jalur file dan nama file, gunakan
jalur relatif'XmlClassObj.SaveSendXmlDataToFile() 'Simpan paket database xml yang dikirim ke dalam file txt untuk tujuan debugging
XmlClassObj.SendHttpData() 'Kirim data xml
'XmlClassObj.SaveGetXmlDataToFile() 'Simpan data xml yang diterima
Hasil pemrosesan rem
Redupkan pesan, status
status = XmlClassObj.GetSingleNode("//status") 'Tampilan status, jika OK berarti berhasil, jika tidak maka akan terjadi error
message = XmlClassObj.GetSingleNode("//message") 'Menampilkan nilai MD5 yang diperoleh. Jika statusnya tidak OK, pesannya adalah pesan kesalahan
Setel XmlClassObj = Tidak Ada
Jika status = "OK" Lalu
GetFileMD5 = pesan
Kalau tidak
DapatkanFileMD5 = ""
Akhiri Jika
Fungsi Akhir
%>
test.asp
<!--#Sertakan File="filemd5fun.asp"-->
<%
Response.Write "Nilai md5 dari web.config adalah:" & GetFileMD5("web.config") & "<br />"
Response.Tulis "Nilai md5 dari files/logo-yy.gif adalah:" & GetFileMD5("files/logo-yy.gif") & "<br />"
Response.Tulis "Nilai md5 dari xmlcls.asp adalah:" & GetFileMD5("xmlcls.asp") & "<br />"
%>
Kode samping .net:
MD5.cs
menggunakan Sistem;
menggunakan System.Collections.Generik;
menggunakan Sistem.Teks;
menggunakan System.IO;
namespace Winsteps.FileMD5
{
MD5 kelas publik
{
string statis publik md5_hash(jalur string)
{
mencoba
{
FileStream get_file = FileStream baru(jalur, FileMode.Open, FileAccess.Read, FileShare.Read);
System.Security.Cryptography.MD5CryptoServiceProvider get_md5 = Sistem.Security.Cryptography.MD5CryptoServiceProvider() baru;
byte[] hash_byte = get_md5.ComputeHash(get_file);
string resule = Sistem.BitConverter.ToString(hash_byte);
resule = resule.Replace("-", "");
hasil pengembalian;
}
tangkapan (Pengecualian e)
{
kembalikan e.Pesan;
}
}
}
}
FileMD5.aspx
<%@ Halaman Language="C#" AutoEventWireup="true" CodeBehind="FileMD5.aspx.cs" Inherits="Winsteps.FileMD5.FileMD5" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd ">
<html xmlns=" http://www.w3.org/1999/xhtml " >
<head runat="server">
<title>Situs web tema seluler: http://www.shouji138.com</title>
</kepala>
<tubuh>
<form id="form1" runat="server">
<div>
</div>
</bentuk>
</tubuh>
</html>
FileMD5.aspx.cs
menggunakan Sistem;
menggunakan Sistem.Data;
menggunakan Sistem.Konfigurasi;
menggunakan Sistem.Koleksi;
menggunakan Sistem.Web;
menggunakan Sistem.Web.Keamanan;
menggunakan Sistem.Web.UI;
menggunakan Sistem.Web.UI.WebControls;
menggunakan System.Web.UI.WebControls.WebParts;
menggunakan System.Web.UI.HtmlControls;
menggunakan System.Xml;
menggunakan System.Configuration;
namespace Winsteps.FileMD5
{
FileMD5 kelas parsial publik : System.Web.UI.Page
{
dilindungi kekosongan Page_Load (pengirim objek, EventArgs e)
{
string sysno = "11111";
string status = "Salah";
string pesan = "Kesalahan tidak ditentukan";
string net2sysno = ConfigurationManager.AppSettings["sysno"];
Dokumen XmlDocument = XmlDocument baru();
mencoba
{
doc.Load(Permintaan.InputStream);
sysno = doc.SelectSingleNode("//sysno").InnerText.Trim();
jika (net2sysno != sysno)
{
message = "Aplikasi ilegal!";
}
kalau tidak
{
string nama file = Server.MapPath(doc.SelectSingleNode("//nama file").InnerText.Trim());
pesan = MD5.md5_hash(nama file);
status = "Oke";
}
}
menangkap (Pengecualian ex)
{
pesan = ex.Pesan;
}
Akhirnya
{
jika (dok!= nol)
dokumen = nol;
}
Response.Clear(); //Hapus karakter html
Response.ContentType = "teks/xml";
Response.Charset = "GB2312";//Jika string xml berisi bahasa Mandarin
Response.Write("<?xml version="1.0" coding="GB2312"?>");
Respon.Write("<root>");
Respon.Write(" <status>" + status + "</status>");
Response.Write(" <pesan>" + pesan + "</pesan>");
Respon.Write("</root>");
Respon.Akhir();
}
}
}
Web.config
<?xml versi="1.0" pengkodean="utf-8"?>
<konfigurasi>
<Pengaturan Aplikasi>
<tambahkan key="sysno" value="k8n6g2b0m1a6b0f6e8"></add>
</Pengaturan Aplikasi>
<sistem.web>
<httpRuntimeexecutionTimeout="3600" maxRequestLength="1048576"/>
<kompilasi debug="benar" defaultLanguage="c#" />
<customErrors mode="Mati" />
<identitas meniru = "benar"/>
<mode autentikasi="Formulir">
<forms name="forums" path="/" loginUrl="Login.aspx" proteksi="Semua" timeout="40">
</form>
</otentikasi>
<pages validasiRequest="false"></pages>
<permintaan globalisasiEncoding="gb2312" responEncoding="gb2312" culture="zh-CN" uiCulture="zh-CN"/>
</sistem.web>
</konfigurasi>
Sysno web.config harus konsisten dengan Apisysno di filemd5fun.asp. Selama aplikasi tertentu, Anda harus mengubah kunci ini ke nilai Anda sendiri untuk memastikan keamanan.
Alamat demo: http://www.shouji138.com/aspnet2/filemd5.asp
Meskipun kodenya panjang, prinsipnya sederhana. ASP mengirimkan data xml ke asp.net (xml berisi nama file menjadi md5) -> asp.net menerima xml dan menjalankan md5 pada file -> asp.net mengembalikan hasilnya ke asp melalui xml (Xml berisi nilai md5 yang diperoleh)->asp memperoleh xml yang dikembalikan dan mem-parsing nilai md5.
Ruang lingkup aplikasi:
1. Saat mentransfer file antara dua sistem, Anda dapat menjalankan file md5 sebelum transmisi dan file md5 setelah transmisi untuk memeriksa apakah kedua nilai tersebut sama, berarti belum diubah selama proses transmisi.
2. Dalam sistem pengunggahan, jika file yang sama tidak dapat diunggah, md5 dari file yang diunggah dapat disimpan di database. Dengan cara ini, jika file yang sama diunggah di lain waktu, md5 akan menjadi sama dan pengunggahan akan ditolak.
3. Di mesin pencari dan perangkat lunak Xunlei b2b, untuk file md5, file dengan md5 yang sama dianggap sebagai file yang sama, terlepas dari apakah nama filenya sama, dan file dapat dibagikan dari berbagai sumber.
4. Aplikasi lainnya. . . . .
2. asp mengimplementasikan md5 melalui komponen COM (komponen harus didaftarkan di server)
untuk mendaftarkan komponen file asp md5, alamat unduh: DelphiASPObj.in_path=Server.Mappath("Web.config") 'Jalur file
Response.Tulis "Nilai md5 dari web.config adalah:" & DelphiASPObj.get_path_md5 & "<br />"
Setel DelphiASPObj=tidak ada
%>
3. Perbandingan dua cara untuk mendapatkan file md5.
Metode pertama adalah mendapatkan file md5 dengan berinteraksi dengan data xml dengan program asp.net. Server memerlukan dukungan asp.net lingkungan asp.net, tetapi harganya lebih tinggi;
Cara kedua diterapkan dengan mendaftarkan komponen COM yang memerlukan izin server dan lebih cocok bagi mereka yang memiliki server.
Selain itu, metode interaksi pertama membuat ASP lebih fleksibel dan dapat digunakan pada dua server berbeda untuk interaksi data, serta dapat digunakan secara luas pada berbagai platform heterogen.
4. Untuk alamat pengunduhan, silakan kunjungi situs web saya dan jaringan tema seluler untuk melihat demo dan mengunduh alamat demo paket program: http://www.shouji138.com/aspnet2/filemd5.asp
Unduhan paket pengunduhan program: