當前位置:首頁 » 密碼管理 » vsmd5加密

vsmd5加密

發布時間: 2022-04-20 15:48:36

❶ VS2005自帶的MD5加密安全嗎

MD5散列演算法都是一樣的,所以在安全性上都一樣,沒有區別
-----------------------------------------------------------------------------------
wings_lee:
這個演算法可以製造相同的散列值,本來也沒什麼新鮮的嘛,N年前這事就不是新聞了
MD5除了作身份驗證之外還有的是用途,而且還可以加Salt。
試想你想篡改報文,為了讓報文和校驗部分吻合就找了一段位元組流發出去,這段位元組流本身卻可能沒有任何意義,而他又不能從散列值恢復出報文,那就不是真正意義上的破譯。

❷ VS2013中c語言md5加密函數怎麼調用

1、主要就是調用庫函數,MD5加密說到底也是函數計算,沒有什麼思路的問題,了解md5的發明演算法,本質是一個數學問題。

2、常式:

#ifndefMD5_H
#defineMD5_H

typedefstruct
{
unsignedintcount[2];
unsignedintstate[4];
unsignedcharbuffer[64];
}MD5_CTX;
#defineF(x,y,z)((x&y)|(~x&z))
#defineG(x,y,z)((x&z)|(y&~z))
#defineH(x,y,z)(x^y^z)
#defineI(x,y,z)(y^(x|~z))
#defineROTATE_LEFT(x,n)((x<<n)|(x>>(32-n)))
#defineFF(a,b,c,d,x,s,ac)
{
a+=F(b,c,d)+x+ac;
a=ROTATE_LEFT(a,s);
a+=b;
}
#defineGG(a,b,c,d,x,s,ac)
{
a+=G(b,c,d)+x+ac;
a=ROTATE_LEFT(a,s);
a+=b;
}
#defineHH(a,b,c,d,x,s,ac)
{
a+=H(b,c,d)+x+ac;
a=ROTATE_LEFT(a,s);
a+=b;
}
#defineII(a,b,c,d,x,s,ac)
{
a+=I(b,c,d)+x+ac;
a=ROTATE_LEFT(a,s);
a+=b;
}
voidMD5Init(MD5_CTX*context);
voidMD5Update(MD5_CTX*context,unsignedchar*input,unsignedintinputlen);
voidMD5Final(MD5_CTX*context,unsignedchardigest[16]);
voidMD5Transform(unsignedintstate[4],unsignedcharblock[64]);
voidMD5Encode(unsignedchar*output,unsignedint*input,unsignedintlen);
voidMD5Decode(unsignedint*output,unsignedchar*input,unsignedintlen);

#endif
源文件md5.c
#include<memory.h>
#include"md5.h"

unsignedcharPADDING[]={0x80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};

voidMD5Init(MD5_CTX*context)
{
context->count[0]=0;
context->count[1]=0;
context->state[0]=0x67452301;
context->state[1]=0xEFCDAB89;
context->state[2]=0x98BADCFE;
context->state[3]=0x10325476;
}
voidMD5Update(MD5_CTX*context,unsignedchar*input,unsignedintinputlen)
{
unsignedinti=0,index=0,partlen=0;
index=(context->count[0]>>3)&0x3F;
partlen=64-index;
context->count[0]+=inputlen<<3;
if(context->count[0]<(inputlen<<3))
context->count[1]++;
context->count[1]+=inputlen>>29;

if(inputlen>=partlen)
{
memcpy(&context->buffer[index],input,partlen);
MD5Transform(context->state,context->buffer);
for(i=partlen;i+64<=inputlen;i+=64)
MD5Transform(context->state,&input[i]);
index=0;
}
else
{
i=0;
}
memcpy(&context->buffer[index],&input[i],inputlen-i);
}
voidMD5Final(MD5_CTX*context,unsignedchardigest[16])
{
unsignedintindex=0,padlen=0;
unsignedcharbits[8];
index=(context->count[0]>>3)&0x3F;
padlen=(index<56)?(56-index):(120-index);
MD5Encode(bits,context->count,8);
MD5Update(context,PADDING,padlen);
MD5Update(context,bits,8);
MD5Encode(digest,context->state,16);
}
voidMD5Encode(unsignedchar*output,unsignedint*input,unsignedintlen)
{
unsignedinti=0,j=0;
while(j<len)
{
output[j]=input[i]&0xFF;
output[j+1]=(input[i]>>8)&0xFF;
output[j+2]=(input[i]>>16)&0xFF;
output[j+3]=(input[i]>>24)&0xFF;
i++;
j+=4;
}
}
voidMD5Decode(unsignedint*output,unsignedchar*input,unsignedintlen)
{
unsignedinti=0,j=0;
while(j<len)
{
output[i]=(input[j])|
(input[j+1]<<8)|
(input[j+2]<<16)|
(input[j+3]<<24);
i++;
j+=4;
}
}
voidMD5Transform(unsignedintstate[4],unsignedcharblock[64])
{
unsignedinta=state[0];
unsignedintb=state[1];
unsignedintc=state[2];
unsignedintd=state[3];
unsignedintx[64];
MD5Decode(x,block,64);
FF(a,b,c,d,x[0],7,0xd76aa478);/*1*/
FF(d,a,b,c,x[1],12,0xe8c7b756);/*2*/
FF(c,d,a,b,x[2],17,0x242070db);/*3*/
FF(b,c,d,a,x[3],22,0xc1bdceee);/*4*/
FF(a,b,c,d,x[4],7,0xf57c0faf);/*5*/
FF(d,a,b,c,x[5],12,0x4787c62a);/*6*/
FF(c,d,a,b,x[6],17,0xa8304613);/*7*/
FF(b,c,d,a,x[7],22,0xfd469501);/*8*/
FF(a,b,c,d,x[8],7,0x698098d8);/*9*/
FF(d,a,b,c,x[9],12,0x8b44f7af);/*10*/
FF(c,d,a,b,x[10],17,0xffff5bb1);/*11*/
FF(b,c,d,a,x[11],22,0x895cd7be);/*12*/
FF(a,b,c,d,x[12],7,0x6b901122);/*13*/
FF(d,a,b,c,x[13],12,0xfd987193);/*14*/
FF(c,d,a,b,x[14],17,0xa679438e);/*15*/
FF(b,c,d,a,x[15],22,0x49b40821);/*16*/

❸ Asp.net的MD5加密,可怎麼解密呢(C#)

史上MD5解密之最快方法整理-md5在線加密解密一般來說,形如1e4dc79d489e86b2的16位或者32位密碼就是經過MD5加密的,(當然也有特殊,比如DVBBS在登陸時候會先產生一個16位的隨機密碼,當然,這個密碼還是和MD5密碼的形式有點區別,相同的是都是16位的數字+字母組合 。); 這個一般來說可以用一個叫dv.exe的工具來破解。他可以破解加密前是10位以下的純數字或者純字母,破解純數字的,速度超快,但是純字母的,就慢了,當然他還有其他功能,但是其他功能沒什麼特別之處,所以不說。 破解純數字時候:dv -p a.txt -b num 純字母: dv -p a.txt -b char [以上的兩a.txt是保存要破解的密碼存放的文件,存放格式是每行一組,例如: 1e4dc79d489e86b2 admin 1e4dc79d489e86b3 admin2 注意:在要破解的密碼和後面的admin 用戶名之間有一個空格。 當然還有很多字典破解 的工具,不建議使用。 還有就是有很多網站提供MD5密碼查詢,比如: http://www.md5lookup.com/?category=01-3&searck=on http://www.md5.org.cn http://www.xmd5.org/ http://www.milw0rm.com/md5/info.php http://www.neeao.com/md5/ http://md5.mmkey.com/ http://gdataonline.com/seekhash.php http://www.plain-text.info/search.php http://passcracking.com/Good_values_list.asp http://www.hashchecker.com/index.php?_sls=search_hash http://md5.rednoize.com/ http://us.md5.crysm.net/ http://uploadpage.net/ap/php/projects/rt/addhash.php http://www.cmd5.com 這個是我經常用的 http://www.md5lookup.com/ (對數字破解比較好) http://md5.rednoize.com/ (對字母破解比較好) http://nz.md5.crysm.net/ (從1到4位數字)- 好像關了 http://us.md5.crysm.net/ (美英字典的破解收集和IP地址) http://www.xmd5.org/ (對數字破解比較好) http://gdataonline.com/ (估計是基礎字典的破解) http://www.hashchecker.com/ (這個倒是說得很厲害,但是在實際中,很多次我在這里都找不到) http://passcracking.ru/ http://www.milw0rm.com/md5 http://plain-text.info/ (這個是我比較喜歡一個.也請你提交一些已破解的MD5) http://www.securitystats.com/tools/hashcrack.php (多種破解.我試過...沒有一次破解出來.非常沒用) http://www.schwett.com/md5/ - (破解挪威人(Norwegian)字典) http://passcrack.spb.ru/ http://shm.pl/md5/ http://www.und0it.com/ http://www.neeao.com/md5/ http://md5.benramsey.com/ http://www.md5decrypt.com/ http://md5.khrone.pl/ http://www.csthis.com/md5/index.php http://www.md5decrypter.com/ http://www.md5encryption.com/ http://www.md5database.net/ http://md5.xpzone.de/ http://md5.geeks.li/ http://www.hashreverse.com/ http://www.cmd5.com/english.aspx http://www.md5.altervista.org/ http://md5.overclock.ch/biz/index.php?p=md5crack&l=en http://alimamed.pp.ru/md5/ (如果你看不懂俄文,我告訴你,把你的MD5放到第2個格子) http://md5crack.it-helpnet.de/index.php?op=add (德國的....) http://cijfer.hua.fi/ (Projects->md5 reverse lookup) http://shm.hard-core.pl/md5/ http://www.mmkey.com/md5/HOME.ASP http://www.thepanicroom.org/index.php?view=cracker http://rainbowtables.net/services/results.php (我試過破過幾次在這里) http://rainbowcrack.com/ (需要捐獻) http://www.securitydb.org/cracker/ http://passwordsecuritycenter.com/index.php?main_page=proct_info&cPath=3&procts_id=7 這個是證明他們的破解商品的質量..好讓你來買這個破解程序...但是...只要能破解到即可.你又不一定要買.. http://0ptix.co.nr/md5 http://www.abcbit.com/md5/ http://mao8.com/Checkmd5.asp 前兩個是今天入侵剛用過的算是比較好使 下面的是以前搜到的,一般。 http://www.xmd5.com/index_cn.htm http://www.md5lookup.com/?category=01-3&searck=on http://www.md5.org.cn http://www.xmd5.org/ http://www.milw0rm.com/md5/info.php http://www.neeao.com/md5/ http://md5.mmkey.com/ http://gdataonline.com/seekhash.php http://www.plain-text.info/search.php http://passcracking.com/Good_values_list.asp http://www.hashchecker.com/index.php?_sls=search_hash http://md5.rednoize.com/ http://us.md5.crysm.net/ http://uploadpage.net/ap/php/projects/rt/addhash.php

❹ VS2008 MD5加密錯誤

第一個錯誤從你發的代碼中找不到,你發的代碼就只有一個錯誤,就是方法重名了。兩個GetMd5,改一個名稱即可

❺ vb如何用unicode編碼實現MD5加密

''' <summary>生成32位加密字元串</summary>
''' <param name="strSource">需要加密的字元串</param>
''' <returns>加密完成的32位字元串</returns>
''' <remarks></remarks>
Friend Function creatMD5(ByRef strSource As String)
Dim dataToHash As Byte() = (New System.Text.UnicodeEncoding).GetBytes(strSource.ToCharArray)
Dim hashvalue As Byte() = CType(Cryptography.CryptoConfig.CreateFromName("MD5"), Cryptography.HashAlgorithm).ComputeHash(dataToHash)
Dim strSB As New System.Text.StringBuilder
For i = 0 To hashvalue.Length - 1
strSB.Append(hashvalue(i).ToString("x2"))
Next
creatMD5 = strSB.ToString
Return creatMD5
End Function

調用 :creatMD5("md5")
得到 :
如果一定要大寫,改一下:creatMD5 = strSB.ToString.ToUpper

❻ 求用VS2010中VB寫的MD5加密代碼!!! [email protected] 網上的代碼我方進去都用不起!!

我用的是VS2005,下面代碼可以用,估計你也可以的吧?
窗體添加2個TEXTBOX, 2個RadioButton,一個按鈕

Public Class Form1

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim w As Integer
If RadioButton1.Checked = True Then
w = 16
ElseIf RadioButton2.Checked = True Then
w = 32
End If

TextBox2.Text = MD5(TextBox1.Text, w)

End Sub

Public Shared Function MD5(ByVal strSource As String, ByVal Code As Int16) As String
'這里用的是ascii編碼密碼原文,如果要用漢字做密碼,可以用UnicodeEncoding,但會與ASP中的MD5函數不兼容
Dim dataToHash As Byte() = (New System.Text.ASCIIEncoding).GetBytes(strSource)
Dim hashvalue As Byte() = CType(System.Security.Cryptography.CryptoConfig.CreateFromName("MD5"), System.Security.Cryptography.HashAlgorithm).ComputeHash(dataToHash)
Dim i As Integer
Select Case Code
Case 16 '選擇16位字元的加密結果
For i = 4 To 11
MD5 += Hex(hashvalue(i)).ToLower
Next
Case 32 '選擇32位字元的加密結果
For i = 0 To 15
MD5 += Hex(hashvalue(i)).ToLower
Next
Case Else 'Code錯誤時,返回全部字元串,即32位字元
For i = 0 To hashvalue.Length - 1
MD5 += Hex(hashvalue(i)).ToLower
Next
End Select
End Function
End Class

❼ vs.net2005寫的.DLL其他語言可以引用嗎

如果沒有涉及到.net的框架函數的話 還是可以用的。
MD5加密函數是由.net提供的。在MSDN上說明了。
但是如果是你自己用VC.net自己實現的的話就不會由這個問題了。

❽ 求在vs2005中能用的用vb寫的md5加密代碼

先要添加引用system.web
然後
dim strPwd as string= System.Web.Security.FormsAuthentication.("123456", "md5")

❾ 求VB2010中可用的MD5加密代碼(先給10分,保證:滿意答案附加50分以上)

Function getMd5Hash(ByVal input As String) As String
Dim md5Hasher As New MD5CryptoServiceProvider()
'下面這一句是用默認的字元串編碼方式進行md5加密
'對編碼方式不要求的話,可以直接寫成
'Dim md5data As Byte() = md5Hasher.ComputeHash(input)
Dim md5data As Byte() = md5Hasher.ComputeHash(Encoding.Default.GetBytes(input))
Dim md5Builder As New StringBuilder()
Dim i As Integer
For i = 0 To md5data .Length - 1
md5Builder .Append(md5data (i).ToString())
Next i
Return md5Builder .ToString()
End Function
具體說明請參看MSDN.
http://msdn.microsoft.com/zh-cn/library/system.security.cryptography.md5cryptoserviceprovider(v=VS.100).aspx

熱點內容
豌豆伺服器地址 發布:2025-05-15 08:34:56 瀏覽:711
linux下php編譯安裝 發布:2025-05-15 08:30:37 瀏覽:592
c語言八進制十六進制 發布:2025-05-15 08:22:17 瀏覽:282
華為安卓如何更新鴻蒙 發布:2025-05-15 08:18:52 瀏覽:373
工商密碼器是什麼 發布:2025-05-15 08:18:50 瀏覽:751
c語言自考 發布:2025-05-15 07:52:42 瀏覽:501
壓縮的玉 發布:2025-05-15 07:51:22 瀏覽:790
android的控制項 發布:2025-05-15 07:50:36 瀏覽:553
南崗法院伺服器ip地址 發布:2025-05-15 07:46:02 瀏覽:288
實況如何退出賬號安卓 發布:2025-05-15 07:45:56 瀏覽:919