当前位置:首页 » 密码管理 » des加密文件

des加密文件

发布时间: 2022-08-04 09:25:13

⑴ DES算法怎么用来加密文件(图片、文档、音频、视频等)

这个我不清楚。

加密文件(图片、文档、音频、视频等),我使用的是超级加密3000.

超级加密3000的主要功能有文件加密(保护文本,文档,电子表,图片,网页等内容),文件夹加密、隐藏、加锁,文件隐藏、粉碎等。可满足日常工作和生活中的安全保密需求,您尽可放心使用。

⑵ 如何解DES加密的文件

一个用DES来加密、解密的类
http://www.javanb.com/java/1/17816.html

import java.security.*;
import javax.crypto.Cipher;
import javax.crypto.SecretKey;
import javax.crypto.SecretKeyFactory;
import javax.crypto.spec.DESKeySpec;

/**
* 字符串工具集合
* @author Liudong
*/
public class StringUtils {

private static final String PASSWORD_CRYPT_KEY = "__jDlog_";
private final static String DES = "DES";

/**
* 加密
* @param src 数据源
* @param key 密钥,长度必须是8的倍数
* @return 返回加密后的数据
* @throws Exception
*/
public static byte[] encrypt(byte[] src, byte[] key)throws Exception {
//DES算法要求有一个可信任的随机数源
SecureRandom sr = new SecureRandom();
// 从原始密匙数据创建DESKeySpec对象
DESKeySpec dks = new DESKeySpec(key);
// 创建一个密匙工厂,然后用它把DESKeySpec转换成
// 一个SecretKey对象
SecretKeyFactory keyFactory = SecretKeyFactory.getInstance(DES);
SecretKey securekey = keyFactory.generateSecret(dks);
// Cipher对象实际完成加密操作
Cipher cipher = Cipher.getInstance(DES);
// 用密匙初始化Cipher对象
cipher.init(Cipher.ENCRYPT_MODE, securekey, sr);
// 现在,获取数据并加密
// 正式执行加密操作
return cipher.doFinal(src);
}

/**
* 解密
* @param src 数据源
* @param key 密钥,长度必须是8的倍数
* @return 返回解密后的原始数据
* @throws Exception
*/
public static byte[] decrypt(byte[] src, byte[] key)throws Exception {
// DES算法要求有一个可信任的随机数源
SecureRandom sr = new SecureRandom();
// 从原始密匙数据创建一个DESKeySpec对象
DESKeySpec dks = new DESKeySpec(key);
// 创建一个密匙工厂,然后用它把DESKeySpec对象转换成
// 一个SecretKey对象
SecretKeyFactory keyFactory = SecretKeyFactory.getInstance(DES);
SecretKey securekey = keyFactory.generateSecret(dks);
// Cipher对象实际完成解密操作
Cipher cipher = Cipher.getInstance(DES);
// 用密匙初始化Cipher对象
cipher.init(Cipher.DECRYPT_MODE, securekey, sr);
// 现在,获取数据并解密
// 正式执行解密操作
return cipher.doFinal(src);
}
/**
* 密码解密
* @param data
* @return
* @throws Exception
*/
public final static String decrypt(String data){
try {
return new String(decrypt(hex2byte(data.getBytes()),
PASSWORD_CRYPT_KEY.getBytes()));
}catch(Exception e) {
}
return null;
}
/**
* 密码加密
* @param password
* @return
* @throws Exception
*/
public final static String encrypt(String password){
try {
return byte2hex(encrypt(password.getBytes(),PASSWORD_CRYPT_KEY.getBytes())); }catch(Exception e) {
}
return null;
}

比较长, 转了一部分.
参考资料:http://www.javanb.com/java/1/17816.html

⑶ Des加密解密方法 用java C#和C++三种方式实现

Solaris下的系统,有一个用C做的加密工具,调用Sunwcry的des(1)对文件进行加密,然后在java中对文件进行解密。java中用的是标准的DES/CBC/NoPadding算法,可是解密后发现开头有8byte的数据出错了,请高人指点一下。

cbc_encrypt.c : 加密用的C程序

cbc_decrypt.c:解密用的C程序

TestDescbc.java:解密用的java程序

Test01.dat原始文件
Test03.dat cbc_encrypt加密后的文件
Test05.dat cbc_decrypt解密后的文件

Test06.dat TestDescbc解密后的文件

⑷ 使用des对文件加密后怎么解密

您好,一般来说在线加密工具都是网页版的,des加密需要加密前明文和加密密钥,在网页的控件上填写好对应信息之后,点击加密按钮一般就可以看到加密后的加密结果。

⑸ DES怎么加密文件使文件大小不变,给源码.急用

DES加密怎么可能保证文件长度不变?按照DES算法标准,最后肯定要有填充的过程呢,除非你自己搞一个算法。

⑹ 怎么用des算法对文件进行加密

这个我不会

给文件加密,我使用的是超级加密3000.

超级加密3000有超快和最强的文件、文件夹加密功能、数据保护功能,文件夹、文件的粉碎删除以及文件夹伪装等功能。

⑺ 【急】【求助】.des加密文件怎样打开

想实现用方法1加密文件 后再方法2 解密文件 可成功正常运行"C:/j2sdk1.4.2_08/bin/aa.class"文件

//方法1 这是加密文件, 把"C:/aa.class" 加密为 "C:/j2sdk1.4.2_08/bin/aaEncode.class"
//方法2 这是解密文件,把"C:/j2sdk1.4.2_08/bin/aaEncode.class" 解密为 "C:/j2sdk1.4.2_08/bin/aa.class"

//方法3 这是先加密再解密的代码,这是加密文件, 把"C:/aa.class" 加密到一个内存后把这内存解密到 "C:/j2sdk1.4.2_08/bin/aa.class"

其中直接运行方法3 可正常运行"C:/j2sdk1.4.2_08/bin/aa.class"文件,成功!

如果先运行 方法1 再运行方法2 不可正常运行"C:/j2sdk1.4.2_08/bin/aa.class"文件,失败!

请高手解决一下。

//方法1 这是加密文件, 把"C:/aa.class" 加密为 "C:/j2sdk1.4.2_08/bin/aaEncode.class"
void CTestDllDlg::OnBnClickedjiami()
{
CString spath ;
int ilen = 800;
char *pBufferRead = new char[ilen];
ZeroMemory(pBufferRead,ilen);
spath ="C:/aa.class";
CFile fFileRead(spath,CFile::modeReadWrite | CFile::modeNoTruncate );
ilen = fFileRead.GetLength();

fFileRead.Read(pBufferRead,fFileRead.GetLength());
fFileRead.Close();

char *key =new char[10];
strcpy(key,"1234567");
char *bufferEncode =new char[ilen];
Des_EncodeFile( bufferEncode, pBufferRead, key,ilen);

spath ="C:/j2sdk1.4.2_08/bin/aaEncode.class";
CFile fFileWrite(spath,CFile::modeReadWrite | CFile::modeNoTruncate | CFile::modeCreate);
fFileWrite.SeekToBegin();
fFileWrite.Write(bufferEncode,ilen);
fFileWrite.Close();

CString ss;
//ss.Format("新文件大小原 %s 新%s",bufferEncode,pBufferRead);
// AfxMessageBox(ss);
delete [] pBufferRead ;
delete [] key ;
delete [] bufferEncode ;
}
//方法2 这是解密文件,把"C:/j2sdk1.4.2_08/bin/aaEncode.class" 解密为 "C:/j2sdk1.4.2_08/bin/aa.class"
void CTestDllDlg::OnBnClickedjiemi()
{
CString spath ;
int ilen = 800;
char *pBufferRead = new char[ilen];
ZeroMemory(pBufferRead,ilen);
spath ="C:/j2sdk1.4.2_08/bin/aaEncode.class";
CFile fFileRead(spath,CFile::modeReadWrite | CFile::modeNoTruncate );
ilen = fFileRead.GetLength();
fFileRead.Read(pBufferRead,fFileRead.GetLength());
fFileRead.Close();

char *key =new char[10];
strcpy(key,"1234567");
char *bufferDecode =new char[ilen ];
Des_DecodeFile( bufferDecode, pBufferRead, key,ilen);

spath ="C:/j2sdk1.4.2_08/bin/aa.class";
CFile fFileWrite(spath,CFile::modeReadWrite | CFile::modeNoTruncate | CFile::modeCreate);
fFileWrite.SeekToBegin();
fFileWrite.Write(bufferDecode,ilen);
fFileWrite.Close();

CString ss;
//ss.Format("新文件大小原 %s 新%s",bufferDecode,pBufferRead);
// AfxMessageBox(ss);
delete [] pBufferRead ;
delete [] key ;
delete [] bufferDecode ;
}
//方法3 这是先加密再解密的代码,这是加密文件, 把"C:/aa.class" 加密到一个内存后把这内存解密到 "C:/j2sdk1.4.2_08/bin/aa.class"
void CTestDllDlg::OnBnClickedjiajiemi()
{
CString spath ;
int ilen = 800;
char *pBufferRead = new char[ilen];
ZeroMemory(pBufferRead,ilen);
spath ="C:/aa.class";
CFile fFileRead(spath,CFile::modeReadWrite | CFile::modeNoTruncate );
ilen = fFileRead.GetLength();

fFileRead.Read(pBufferRead,fFileRead.GetLength());
fFileRead.Close();

char *key =new char[10];
strcpy(key,"1234567");
char *bufferEncode =new char[ilen];
Des_EncodeFile( bufferEncode, pBufferRead, key,ilen);

char *bufferDecode =new char[ilen ];
Des_DecodeFile( bufferDecode, bufferEncode, key,ilen);

spath ="C:/j2sdk1.4.2_08/bin/aa.class";
CFile fFileWrite(spath,CFile::modeReadWrite | CFile::modeNoTruncate | CFile::modeCreate);
fFileWrite.SeekToBegin();
fFileWrite.Write(bufferDecode,ilen);
fFileWrite.Close();

CString ss;
//ss.Format("新文件大小原 %s 新%s",bufferEncode,pBufferRead);
// AfxMessageBox(ss);
delete [] pBufferRead ;
delete [] key ;
delete [] bufferEncode ;
delete [] bufferDecode ;
}
//
int CTestDllDlg::Des_EncodeFile( char *buf, char *input, char *key,int lenp)
{
Des_Go(buf, input, lenp, key, sizeof(key), ENCRYPT);
return 0;
}

//
int CTestDllDlg::Des_DecodeFile(char *output, char *input, char *key,int lenp)
{
Des_Go(output,input, lenp, key, sizeof(key), DECRYPT);

return 0;
}

或是看看下面这个网址

http://hi..com/sammy17084/blog/item/369fa202a6263d054afb5167.html
希望对你有帮助

⑻ 什么是DES加密

DES算法具有极高安全性,到目前为止,除了用穷举搜索法对DES算法进行攻击外,还没有发现更有效的办法。而56位长的密钥的穷举空间为256,这意味着如果一台计算机的速度是每一秒种检测一百万个密钥,则它搜索完全部密钥就需要将近2285年的时间
可以使用加密软件对数据进行加密

如文件夹加密超级大师
采用先进的加密算法,使您的文件加密后,真正的达到超高的加密强度,让您的加密文件无懈可击,没有密码无法解密。
五种加密方法:
闪电加密速度快,对文件夹没有大小限制,无论多大都可以在几秒内加密完毕。
隐藏加密后,数据被彻底隐藏,只能通过软件打开或解密。

金钻加密是把文件夹加密成一个加密文件, 打开或解密时需要输入密码。特点是安全性极高,没有正确密码任何人无法打开或解密。适用于比较小一点的重要文件存放的文件夹。

全面加密是把文件夹里面的所有文件加密成加密文件, 打开文件夹不需要密码,但是打开里面的每个文件都需要密码。

移动加密是把数据加密成exe文件,可以移动到其他没有安装软件的电脑上解密,也可以通过网络传输。

注意:金钻加密,移动加密,全面加密忘记密码无法解密,所以请您牢记密码。

热点内容
全名k歌安卓手机里面怎么录屏 发布:2024-05-17 14:40:07 浏览:180
常用数据库介绍 发布:2024-05-17 14:31:38 浏览:504
中孚存储介质信息消除工具 发布:2024-05-17 14:31:33 浏览:588
服务器访问ip如何调转主页 发布:2024-05-17 14:30:33 浏览:788
好玩的解压化妆小游戏 发布:2024-05-17 14:10:57 浏览:127
交通银行怎么登陆不了密码 发布:2024-05-17 13:54:48 浏览:543
安卓如何自动连接无线 发布:2024-05-17 13:53:51 浏览:262
python的urlparse 发布:2024-05-17 13:44:20 浏览:769
linux命令全称 发布:2024-05-17 12:07:54 浏览:110
ftpnas区别 发布:2024-05-17 12:06:18 浏览:949