當前位置:首頁 » 密碼管理 » xml文件加密解密

xml文件加密解密

發布時間: 2022-06-29 10:32:17

『壹』 xml文件加密了怎麼破解

文檔為加密了不要著急,如果強行破解的話會損壞文件的。但凡是加密的文件都有解密的方法,最常見的就是輸入密碼的那種
可以多試一下常用密碼,大多數人設置密碼一般都是設置的常用密碼。注意密碼中字母的大小寫或者全形半形問題,或者使用密碼找回的功能試一下。還可以先把密碼輸入到記事本上,然後再復制粘貼進去。
希望能幫到你

『貳』 xml巧妙加密,急求解決辦法,怎麼解密方法

DES是一種標準的數據加密演算法,關於這個演算法的詳細介紹可以參考wiki和網路:php中有一個擴展可以支持DES的加密演算法,是:extension=php_mcrypt.dll在配置文件中將這個擴展打開還不能夠在windows環境下使用需要將PHP文件夾下的libmcrypt.dll拷貝到系統的system32目錄下,這是通過phpinfo可以查看到mcrypt表示這個模塊可以正常試用了。 下面是PHP中使用DES加密解密的一個例子: //$input - stuff to decrypt //$key - the secret key to use function do_mencrypt($input, $key) { $input = str_replace(""n", "", $input); $input = str_replace(""t", "", $input); $input = str_replace(""r", "", $input); $key = substr(md5($key), 0, 24); $td = mcrypt_mole_open('tripledes', '', 'ecb', ''); $iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_RAND); mcrypt_generic_init($td, $key, $iv); $encrypted_data = mcrypt_generic($td, $input); mcrypt_generic_deinit($td); mcrypt_mole_close($td); return trim(chop(base64_encode($encrypted_data))); } //$input - stuff to decrypt //$key - the secret key to use function do_mdecrypt($input, $key) { $input = str_replace(""n", "", $input); $input = str_replace(""t", "", $input); $input = str_replace(""r", "", $input); $input = trim(chop(base64_decode($input))); $td = mcrypt_mole_open('tripledes', '', 'ecb', ''); $key = substr(md5($key), 0, 24); $iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_RAND); mcrypt_generic_init($td, $key, $iv); $decrypted_data = mdecrypt_generic($td, $input); mcrypt_generic_deinit($td); mcrypt_mole_close($td); return trim(chop($decrypted_data)); }參考自:

『叄』 如何:用對稱密鑰對 XML 元素進行解密

使用 XML 加密,您可以存儲或傳輸敏感 XML,而無需擔心數據被輕易讀取。 此代碼示例使用高級加密標准 (AES) 演算法(又稱為 Rijndael)對 XML 元素進行解密。 當使用諸如 AES 這樣的對稱演算法對 XML 數據進行加密時,必須使用相同的密鑰對 XML 數據進行加密和解密。 此過程中的示例假定已加密的 XML 使用了相同密鑰加密,並且加密方和解密方對使用的演算法和密鑰達成了一致。 此示例不在加密的 XML 中存儲或加密 AES 密鑰。 此示例適合於以下情形:單個應用程序需要基於存儲在內存中的會話密鑰,或基於從密碼派生的加密強密鑰對數據進行加密。

『肆』 xml文件里有資料庫的連接密碼, 需要把密碼加密,加密的話是不是直接弄個密文換上就好了 解密怎麼解

只要有程序,無須破解密碼,只要在判斷程序的地方,把相等判斷改為不等判斷即可.
原始程序要麼是:
if 密碼 等於 '原始密碼' then 繼續使用;
要麼是:
if 密碼 不等於 '原始密碼' then 出錯退出;
只要找到這樣的地方,把等於改為不等於,或者把不等於改為等於,然後任意輸入密碼就能登陸。

『伍』 XML加密文件密碼如何破解

用文件夾加密超級大師加密電腦中重要的文件是最安全

文件夾加密超級大師
強大易用的加密軟體,具有文件加密、文件夾加密、數據粉碎、徹底隱藏硬碟分區、禁止或只讀使用USB設備等功能。
文件夾加密和文件加密時有最快的加密速度,加密的文件和加密的文件夾有最高的加密強度,並且防刪除、防復制、防移動。
還有方便的加密文件夾和加密文件的打開功能(臨時解密),讓您每次使用加密文件夾或加密文件後不用重新加密!
實用的數據粉碎刪除和硬碟分區徹底隱藏、禁止使用USB設備、只讀使用U盤和移動硬碟等安全輔助功能使
文件夾加密超級大師成為一款不可思議的文件加密軟體和文件夾加密軟體。

『陸』 c#加密xml文件

xml加密(XML Encryption)是w3c加密xml的標准。這個加密過程包括加密xml文檔的元素及其子元素,通過加密,xml的初始內容將被替換,但其xml格式仍然被完好的保留。 介紹 我們有3個加密xml的方法 1、僅僅使用對稱加密的方法加密xml 這種加密方法只使用一個密鑰,也就是說無論是加密xml還是解密xml都使用一個相同的密鑰。因為這個密鑰不會在被加密的xml中保存,所以我們需要在加密和解密的過程中載入這個密鑰並保護它不被竊取。 2、使用對稱加密和非對稱加密相結合的方法來加密xml 這種方法需要一個用於加密數據的對稱密鑰和一個用於保護這個對稱密鑰的非對稱密鑰。被加密的對稱密鑰和被加密的數據一起保存在xml文檔中。當用私有非對稱密鑰解密密鑰的時候要用公開非對稱密鑰對密鑰進行加密。 本文就將使用這種方法。想學到其他更多的方法請參看MSDN等到更多的信息。 (譯者註:非對稱加密演算法需要兩個密鑰:公開密鑰(publickey)和私有密鑰(privatekey)。公開密鑰與私有密鑰是一對,如果用公開密鑰對數據進行加密,只有用對應的私有密鑰才能解密;如果用私有密鑰對數據進行加密,那麼只有用對應的公開密鑰才能解密。因為加密和解密使用的是兩個不同的密鑰,所以這種演算法叫作非對稱加密演算法。) 3、使用X.509加密xml,這種方法是用X.509作為非對稱密鑰,它由諸如VeriSign之類的第三方提供。 該網站有具體方法,請查閱 http://hi..com/jam12315/blog/item/42b5c4c426ee15af8326ac3b.html 參考文獻: tp://dotnetslackers.com/articles/xml/XMLEncryption.aspx

滿意請採納

『柒』 如何:用對稱密鑰對 XML 元素進行加密

使用
XML
加密,您可以存儲或傳輸敏感
XML,而無需擔心數據被輕易讀取。
此過程使用高級加密標准
(AES)
演算法(又稱為
Rijndael)對
XML
元素進行解密。
當使用諸如
AES
這樣的對稱演算法對
XML
數據進行加密時,必須使用相同的密鑰對
XML
數據進行加密和解密。
此過程中的示例假定加密的
XML
將使用相同密鑰進行解密,並且加密方和解密方對使用的演算法和密鑰達成了一致。
此示例不在加密的
XML
中存儲或加密
AES
密鑰。
此示例適合於以下情形:單個應用程序需要基於存儲在內存中的會話密鑰,或基於從密碼派生的加密強密鑰對數據進行加密。

『捌』 如何使用C#加密解密XML文檔

可以用DES對稱加/解密。XML文檔讀寫我就簡單的用一個序列化的例子了。我只寫加/解/序列化,怎麼顯示你隨意了。
1、建立一個Student的類了,四個屬性
public class Student
{
public string SID { get; set; }

public string Name { get; set; }

public string Score { get; set; }

public string Address { get; set; }
}
2、在你要加/解的頁面加Using
using System.Security.Cryptography;
using System.IO;
using System.Xml.Serialization;
就是序列化、加密、IO了
3、寫兩個方法,加/解
/// <summary>
/// DES的加密方法
/// </summary>
/// <param name="pToEncrypt"></param>
/// <param name="sKey"></param>
/// <returns></returns>
public string Encrypt(string pToEncrypt, string sKey)
{
DESCryptoServiceProvider des = new DESCryptoServiceProvider();
byte[] inputByteArray = Encoding.Default.GetBytes(pToEncrypt);
des.Mode = CipherMode.ECB;
des.Padding = PaddingMode.Zeros;
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);
}
return ret.ToString();
}
/// <summary>
/// DES的解密
/// </summary>
/// <param name="pToDecrypt"></param>
/// <param name="sKey"></param>
/// <returns></returns>
public string Decrypt(string pToDecrypt, string sKey)
{
DESCryptoServiceProvider des = new DESCryptoServiceProvider();
des.Mode = CipherMode.ECB;
des.Padding = PaddingMode.Zeros;
byte[] inputByteArray = new byte[pToDecrypt.Length / 2];
for (int x = 0; x < pToDecrypt.Length / 2; x++)
{
int i = (Convert.ToInt32(pToDecrypt.Substring(x * 2, 2), 16));
inputByteArray[x] = (byte)i;
}
des.Key = ASCIIEncoding.ASCII.GetBytes(sKey);
des.IV = ASCIIEncoding.ASCII.GetBytes(sKey);
MemoryStream ms = new MemoryStream();
CryptoStream cs = new CryptoStream(ms, des.CreateDecryptor(), CryptoStreamMode.Write);
cs.Write(inputByteArray, 0, inputByteArray.Length);
cs.FlushFinalBlock();
StringBuilder ret = new StringBuilder();
return System.Text.Encoding.Default.GetString(ms.ToArray()).TrimEnd('\0');
}
//上面為什麼要TrimEnd,因為ms.ToArray()裡面以8位為單位增長,你字元串長11位,這里就是16位,最後面是\0字元,去掉就行。
4、調用加解就很簡單了。
private void button1_Click(object sender, EventArgs e)
{
string Key = "12345678"; //DES的密鑰,8位字元串,不要用中文,如果要解密,這個密鑰也是一樣的。

List<Student> list = new List<Student>()
{
new Student(){ SID="1", Name="張三", Score="87.5", Address="A小區asfasdf"},
new Student(){ SID="2", Name="李四", Score="77.5", Address="B小區asdfsdf"},
new Student(){ SID="3", Name="王五", Score="67.5", Address="C小區23412423434535345"},
};
//假定要加密的是分數和地址

foreach (var obj in list)
{
obj.Score = Encrypt(obj.Score, Key);
obj.Address = Encrypt(obj.Address, Key);
}
XmlSerializer xs = new XmlSerializer(typeof(List<Student>)); //序列化建立xml
Stream stream = new FileStream(@"d:\12345.XML", FileMode.Create, FileAccess.ReadWrite, FileShare.ReadWrite);
xs.Serialize(stream, list);
stream.Close();
}
上面是寫一些數據,然後加密兩個屬性:Score和Address。存到D盤
解就是反過來呀。
private void button2_Click(object sender, EventArgs e)
{
string Key = "12345678"; //DES的密鑰

XmlSerializer xs = new XmlSerializer(typeof(List<Student>));
Stream stream = new FileStream(@"d:\\12345.XML", FileMode.Open, FileAccess.Read, FileShare.Read);
var str = xs.Deserialize(stream);
stream.Close();
var list = (List<Student>)str; //轉回List

foreach (var obj in list)
{
obj.Score = Decrypt(obj.Score, Key);
obj.Address = Decrypt(obj.Address, Key);
}
}
其實加解密方法有好多,如果有針對整個XML文件進行壓縮、加密的代碼可發出來一共學習

『玖』 C# 加密、解密 XML 文件操作

以下給出里兩種加密方法1,MD5 ;2,RSA
MD5加密如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Security.Cryptography;

namespace 數據加密與解密
{
public partial class frmMD5 : Form
{
public frmMD5()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{
if (textBox1.Text == "")
{ MessageBox.Show("請輸入加密數據"); return; }
MD5CryptoServiceProvider M5 = new MD5CryptoServiceProvider();
textBox2.Text = ASCIIEncoding.ASCII.GetString(M5.ComputeHash(ASCIIEncoding.ASCII.GetBytes(textBox1.Text)));
}

//MD5是不可的演算法。破解只有用暴力破解法
private void button2_Click(object sender, EventArgs e)
{
MD5CryptoServiceProvider M5 = new MD5CryptoServiceProvider();
//this.textBox3.Text=M5.
}

}
}
RSA加密如下:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Security.Cryptography;

namespace 數據加密與解密
{
public partial class frmRSA : Form
{
public frmRSA()
{
InitializeComponent();
this.Text = "RSA加密解密";
tb_Encrypt.ReadOnly = true;
tb_Decrypt.ReadOnly = true;
}

private void button1_Click(object sender, EventArgs e)
{
//使用默認密鑰創建RSACryptoServiceProvider對象
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();
//顯示包含公鑰/私鑰對的XML表示形式,如果只顯示公鑰,將參數改為false即可
rtb_Keys.Text = rsa.ToXmlString(true);
//將被加密的字元串轉換為位元組數組
byte[] dataToEncrypt = Encoding.UTF8.GetBytes(tb_Input.Text);
try
{
//得到加密後的位元組數組
byte[] encryptedData = rsa.Encrypt(dataToEncrypt, false);
tb_Encrypt.Text = Encoding.UTF8.GetString(encryptedData);
//得到解密後的位元組數組
byte[] decryptedData = rsa.Decrypt(encryptedData, false);
tb_Decrypt.Text = Encoding.UTF8.GetString(decryptedData);
}
catch (Exception err)
{
MessageBox.Show(err.Message);
}
}
}
}

熱點內容
python中文web 發布:2025-05-16 12:10:13 瀏覽:766
windowsandroid編譯 發布:2025-05-16 12:02:23 瀏覽:333
為什麼華為的系統是安卓 發布:2025-05-16 12:02:11 瀏覽:127
app怎麼提供伺服器地址 發布:2025-05-16 11:48:27 瀏覽:397
雙面警長第一季ftp 發布:2025-05-16 11:41:20 瀏覽:664
php取數組第一個 發布:2025-05-16 11:30:58 瀏覽:423
解調演算法 發布:2025-05-16 11:21:09 瀏覽:136
python密碼暴力破解 發布:2025-05-16 11:13:28 瀏覽:592
倒角刀編程 發布:2025-05-16 11:12:55 瀏覽:350
資料庫的酸性 發布:2025-05-16 11:03:17 瀏覽:124