怎么用“cipher”这个dos命令呢?怎么用这个命令解windows密码呢?
cipher这个命令使用的前提是:磁盘必须是NTFS格式的。
cipher密码解密_cipher解密工具
cipher密码解密_cipher解密工具
首先在计算机开始- 运行- 里面输入 cmd 进入命令提示行,如果你要对E盘中的资源进行机密的话,先输入E:这样首先会切换到E盘下进行工作。下面我们就来举例说明吧。
1.cipher /e mod5 表示对mod5这个文件夹进行加密
2.cipher /d mod5 表示对mod5这个文件夹进行解密
3.cipher /e /a mod5 表示对mod5这个文件夹下面的文件所有加密
4.cipher /d /a mod5 表示对mod5这个文件夹下面的文件所有解密
irrrsible-cipher和cipher区别
cipher表示对用户口令采用可逆算法进行了加密,非法用户可以通过对应的解密算法解密密文后得到明文密码,安全性较低。
irrrsible-cipher表示对用户密码采用不可逆算法进行了加密,使非法用户无法通过解密算法特殊处理后得到明文密码,为用户提供更好的安全保障。
怎样解密加密文件
问题一:word文档加密了怎么解密啊 10分 方法一:插入文件法
启动WORD,新建一个空白文档,执行“插入――〉文件”命令,打开“插入文件”对话框,定位到需要解除保护的文档所在的文件夹,选中相应文档,单击“插入骇按钮,将加密保护的文档插入到新文档中,文档保护会被自动撤销。
方法二:文件另存法
打开保护的文档,执行“文件――〉另存为”命令,打开“另存为”对话框,将“文件类型”选定为“WORD97―2003&6.0/95―RTF(.doc)”,然后取名保存,关闭该文档,重新打开一下,执行“工具――〉取消文档保护”命令即可。
或者将文件类型另存为HTML,然后将其中的内容,粘贴到新建文档中。
方法三:写字板法
启动写字板,打开保护的WORD文档,另存为WORD文档,同时可以取消对文档的保护。
但此方法可能会使文档中的等要素丢失。
问题二:加密文件夹如何解密 一、加密文件或文件夹
步骤一:打开Windows资源管理器。
步骤二:右键单击要加密的文件或文件夹,然后单击“属性”。
步骤三:在“常规”选项卡上,单击“高级”。选中“加密内容以便保护数据”复选框
在加密过程中还要注意以下五点:
1.要打开“Windows 资源管理器”,请单击“开始→程序→附件”,然后单击“Windows 资源管理器”。
2.只可以加密NTFS分区卷上的文件和文件夹,FAT分区卷上的文件和文件夹无效。
3.被压缩的文件或文件夹也可以加密。如果要加密一个压缩文件或文件夹,则该文件或文件夹将会被解压。
4.无法加密标记为“系统”属性的文件,并且位于root目录结构中的文件也无法加密。
5.在加密文件夹时,系统将询问是否要同时加密它的子文件夹。如果选择是,那它的子文件夹也会被加密,以后所有添加进文件夹中的文件和子文件夹都将在添加时自动加密。
二、解密文件或文件夹
步骤一:打开Windows资源管理器。
步骤二:右键单击加密文件或文件夹,然后单击“属性”。
步骤三:在“常规”选项卡上,单击“高级”。
步骤四:清除“加密内容以便保护数据”复选框。
同样,我们在使用解密过程中要注意以下问题:
1.要打开“Windows资源管理器”,请单击“开始→程序→附件”,然后单击“Windows资源管理器”。
2.在对文件夹解密时,系统将询问是否要同时将文件夹内的所有文件和子文件夹解密。如果选择仅解密文件夹,则在要解密文件夹中的加密文件和子文件夹仍保持加密。但是,在已解密文件夹内创立的新文件和文件夹将不会被自动加密。
以上就是使用文件加、解密的方法!而在使用过程中我们也许会遇到以下一些问题,在此作以下说明:
1.高级按钮不能用
原因:加密文件系统(EFS)只能处理NTFS文件系统卷上的文件和文件夹。如果试图加密的文件或文件夹在FAT或FAT32卷上,则高级按钮不会出现在该文件或文件夹的属性中。
解决方案:
将卷转换成带转换实用程序的NTFS卷。
打开命令提示符。
键入:Convert [drive]/fs:ntfs
(drive 是目标驱动器的驱动器号)
2.当打开加密文件时,显示“拒绝访问”消息
原因:加密文件系统(EFS)使用公钥证书对文件加密,与该证书相关的私钥在本计算机上不可用。
解决方案:
查找合适的证书的私钥,并使用证书管理单元将私钥导入计算机并在本机上使用。
3.用户基于NTFS对文件加密,重装系统后加密文件无法被访问的问题的解决方案(注意:重装Win2000/XP前一定要备份加密用户的证书):
步骤一:以加密用户登录计算机。
步骤二:单击“开始→运行”,键入“mmc”,然后单击“确定”。
步骤三:在“控制台”菜单上,单击“添加/删除管理单元”,然后单击“添加”。
步骤四:在“单独管理单元”下,单击“证书”,然后单击“添加”。
步骤五:单击“我的用户账户”,然后单击“完成”(如图2,如果你加密用户不是就不会出现这个窗口,直接到下一步) 。
步骤六:单击“关闭”,然后单击“确定”。
步骤七:双击“证书――当前用户”,双击“个人”,然后双击“证书”。
步骤八:单击“预期目的”栏中显示“加密文件”字样的证书。
步骤九:右键单击该证书,指向“所有任务”,然后单击“导出”。
步骤十:按照证书导出向导的指示将证书及相关的私钥以PFX文件格式导出(注意:使用“导出私钥”方式导出,这样可以保证证书受密码保护,以防别......>>
问题三:加密文件夹解密后里面没内容。怎样才能找到加密前的文件? 打开我的电脑,在”工具”选项的下拉菜单”文件夹选项”选项中有个”显示隐藏文件”前面打勾,按确定
问题四:电脑文件加密 怎么解密啊 你都折腾了两遍重装系统的事儿了,现在那些个文件你放弃吧,无法打开了,你用的是系统自带的EFS加密功能,该功能非常强大,几乎没有的方法,本来你应该在加密之后马上导出加密证书的,这样就能在重装系统后导入加密证书以解密文件,至少能够打开文件,现在是不行了。就算是你次刚重装完系统,也已经非常危险了,完全得靠你的运气,除非你运气非常好,才能用数据恢复软件找到以前的所需的所有加密文件,并构造一个与原加密用户名相同的用户,并用NewSid更改该用户的SID为原来那个用户的SID,进行适当更改后才能打开加密文件。
问题五:如何系统加密文件 EFS(Encrypting File System,加密文件系统)是Windows XP内置的一个实用功能,可以对NTFS分区上的文件和数据进行加密,在很大程度上提高了数据的安全性。小李之所以可以打破EFS加密算法的保护,关键是使用了系统提供的“策略”方法,该方法可以让特定的用户读取所有的加密文件。当然,该方法是针对多帐户环境而言的。因为在该公用电脑中存在多个拥有权限的帐号。小王使用的是“Administrator”账户,而另一个同事在该机上使用的账户名称是“hongyun”,该账户同样拥有权限。小李正是借助于“hongyun”账户,才轻松突破了加密的束缚。小李首先以“hongyun”账户登录系统,之后在“开始”→“运行”中执行“cmd.exe”程序,在CMD窗口首先切换到C盘根目录,之后执行命令“cipher /r:mykey”,注意其中的“mykey”为导出密钥文件名。随后系统提示输入密码(如图1),小李输入的密码为“key123456789”。当然,该密码的可以随意设置。
这样,就在C盘根目录下生成两个文件,扩展名分别为“cer”和“pfx”。本例中生成的文件为“mykey.cer”和“mykey.pfk”,其中“mykey.cer”为公钥证书文件,“mykey.pfk”为人的私钥证书文件。在“开始”→“运行”中运行“gpedit.msc”命令,打开组策略编辑器窗口。在窗口左侧的列表中依次展开“计算机配置”→“Windows设置”→“安全设置”→“公钥策略”→“正在加密文件系统”分支,在其右键菜单上点击“添加数恢复程序”项,弹出作向导界面(如图2)。在其中的“选择故障恢复”窗口中点击“浏览文件夹”按钮,在文件选择窗口中导入前面创建的“mykey.cer”文件,之后依次点击“下一步”按钮完成作。
在资源管理器中进入D盘中的“小王的文件”文件夹,在其中任意文件的属性窗口中打开“常规”面板,点击“高级”按钮,在高级属性窗口中点击“详细信息”按钮,在信息窗口(如图3)中可以看到刚才创建的恢复项目。
双击前面生成的文件“mykey.pfk”,弹出证书导入向导界面(如图4),依次点击“Next”按钮,在“密码”窗口中输入预设的密码“key123456789”,完成证书的导入作。当完成上述作后。在资源管理器中D盘中的“小王的文件”文件夹,双击其中的加密文件,即可正常访问其内容了。这样,小李几乎没有花费什么力气,就成功的找回了小王的加密文件了。
问题六:Win7 如何实现加密文件的解密? 不知道你是用的是不是win7上的bitlocker加密的文件,你需要解密文件,解密需要打开控制面板,再选择系统与安全,打开它,你就能看见bitlocker了,然后单击管理bitlocker,就能解密了,需要你先前设定的密码才能解密,用bitlocker加密的软件在xp系统里只能出来,不能往u盘里装东西。
问题七:求救 如何解密手机加密文件??????? 如是加了密,不关那种密,与电脑联机也是无济于事,打不开的。只有通过刷机软件解密。不过这样下来你手机所有的信息都没有了,自然照片也没有了。建议你用东震,它可以扫描密码,而不破坏其内存数据。
问题八:电脑上的文件加密了怎么解密啊 使用的是EFS加密,如果没有备份加密证书的话,那就你节哀顺变吧!恢复的可能性很小。
你可以试一下下面的小方法:
1.工具-文件夹选项-查看-使用简单文件夹共享 (把前面的勾勾去掉)
2.在加密的文件上点右键-属性-安全-高级-所有者-替换所有者(把下面替换子容器的选项打上勾) 替换成你自己的用户
这个方法能用,你就算运气好,不行的话我也没有办法 了!
EFS加密非常危险,我你使用专业的文件夹加密软件文件夹加密超级来加密您的文件夹。
问题九:文件以前加密更换电脑后怎样解密 步骤一:打开Windows资源管理器。
步骤二:右键单击加密文件或文件夹,然后单击“属性”。
步骤三:在“常规”选项卡上,单击“高级”。
步骤四:清除“加密内容以便保护数据”复选框。
同样,我们在使用解密过程中要注意以下问题:
1.要打开“Windows资源管理器”,请单击“开始→程序→附件”,然后“Windows资源管理器”。
2.在对文件夹解密时,系统将询问是否要同时将文件夹内的所有文件和子文件夹解密。如果选择仅解密文件夹,则在要解密文件夹中的加密文件和子文件夹仍保持加密。但是,在已解密文件夹内创立的新文件和文件夹将不会被自动加密。
以上就是使用文件加、解密的方法!而在使用过程中我们也许会遇到以下一些问题,在此作以下说明:
1.高级按钮不能用
原因:加密文件系统EFS只能处理NTFS 文件系统卷上的文件和文件夹。如果试图加密的文件或文件夹在 FAT 或 FAT32 卷上,则高级按钮不会出现在该文件或文件夹的属性中。
解决方案:
将卷转换成带转换实用程序的 NTFS 卷。 打开命令提示符。 键入:Convert drive/fs ntfs
(drive 是目标驱动器的驱动器号)
2.当打开加密文件时,显示“拒绝访问”消息
原因:加密文件系统 EFS用公钥证书对文件加密,与该证书相关的私钥在本计算机上不可用。
解决方案:
查找合适的证书的私钥,并使用证书管理单元将私钥导入计算机并在本机上使用。
3.用户基于NTFS对文件加密,重装系统后加密文件无法被访问的问题的解决方案(注意:重装Win2000/XP前一定要备份加密用户的证书):
步骤一:以加密用户登录计算机。
步骤二:单击“开始→运行”,键入“mmc”,然后单击“确定”。
步骤三:在“控制台”菜单上,单击“添加/删除管理单元”,然后单击“添加”。
步骤四:在“单独管理单元”下,单击“证书”,然后单击“添加”。
步骤五:单击“我的用户账户”,然后单击“完成”(如图2,如果你加密用户不是就不会出现这个窗口,直接到下一步) 。
步骤六:单击“关闭”,然后单击“确定”。
步骤七:双击“证书――当前用户”,双击“个人”,然后双击“证书”。
步骤八:单击“预期目的”栏中显示“加密文件”字样的证书。
步骤九:右键单击该证书,指向“所有任务”,然后单击“导出”。
步骤十:按照证书导出向导的指示将证书及相关的私钥以PFX文件格式导出(注意:使用“导出私钥”方式导出,这样可以保证证书受密码保护,以防别人盗用。另外,证书只能保存到你有读写权限的目录下)。
4.保存好证书
注意将PFX文件保存好。以后重装系统之后无论在哪个用户下只要双击这个证书文件,导入这个私人证书就可以访问NTFS系统下由该证书的原用户加密的文件夹(注意:使用备份恢复功能备份的NTFS分区上的加密文件夹是不能恢复到非NTFS分区的)。
这个证书还可以实现下述用途:
(1)给予不同用户访问加密文件夹的权限
将我的证书按“导出私钥”方式导出,将该证书发给需要访问这个文件夹的本机其他用户。然后由他登录,导入该证书,实现对这个文件夹的访问。
(2)在其也WinXP机器上对用“备份恢复”程序备份的以前的加密文件夹的恢复访问权限
将加密文件夹用“备份恢复”程序备份,然后把生成的Backup.bkf连同这个证书拷贝到另外一台WinXP机器上,用“备份恢复”程序将它恢复出来(......>>
英语cipher和password作为密码的区别是什么?
你好,cipher作为密码,多指的是一整套的密码系统,而passwor多指进入指令,比如我们常说的登录密码之类,这两个比较起来,cipher多指偏大系统的密码,password多指具体使用的偏小的密码。
ja密码加密与解密
以下两个类可以很方便的完成字符串的加密和解密
加密 CryptHelper encrypt(password)
解密 CrypHelper decrypt(password)
代码如下
CryptUtils ja
[ja]
package gdie lab crypt;
import ja io IOException;
import jax crypto Cipher;
import jax crypto KeyGenerator;
import jax crypto SecretKey;
import apache xerces internal impl util Base ;
public class CryptUtils {
private static String Algorithm = DES ;
private static byte[] DEFAULT_KEY=new byte[] { };
private static String VALUE_ENCODING= UTF ;
/
生成密钥
@return byte[] 返回生成的密钥
@throws exception
扔出异常
/
public static byte[] getSecretKey() throws Exception {
KeyGenerator keygen = KeyGenerator getInstance(Algorithm)
SecretKey deskey = keygen generateKey()
// if (debug ) System out println ( 生成密钥 +byte hex (deskey getEncoded
// ()))
return deskey getEncoded()
}/
将指定的数据根据提供的密钥进行加密
@param input
需要加密的数据
@param key
密钥
@return byte[] 加密后的数据
@throws Exception
/
public static byte[] encryptData(byte[] input byte[] key) throws Exception {
SecretKey deskey = new jax crypto spec SecretKeySpec(key Algorithm)
// if (debug )
// {
// System out println ( 加密前的二进串 +byte hex (input ))
// System out println ( 加密前的字符串 +new String (input ))
//
// }
Cipher c = Cipher getInstance(Algorithm)
c init(Cipher ENCRYPT_MODE deskey)
byte[] cipherByte = c doFinal(input)
// if (debug ) System out println ( 加密后的二进串 +byte hex (cipherByte ))
return cipherByte;
}public static byte[] encryptData(byte[] input) throws Exception {
return encryptData(input DEFAULT_KEY)
}/
将给定的已加密的数据通过指定的密钥进行解密
@param input
待解密的数据
@param key
密钥
@return byte[] 解密后的数据
@throws Exception
/
public static byte[] decryptData(byte[] input byte[] key) throws Exception {
SecretKey deskey = new jax crypto spec SecretKeySpec(key Algorithm)
// if (debug ) System out println ( 解密前的信息 +byte hex (input ))
Cipher c = Cipher getInstance(Algorithm)
c init(Cipher DECRYPT_MODE deskey)
byte[] clearByte = c doFinal(input)
// if (debug )
// {
// System out println ( 解密后的二进串 +byte hex (clearByte ))
// System out println ( 解密后的字符串 +(new String (clearByte )))
//
// }
return clearByte;
}public static byte[] decryptData(byte[] input) throws Exception {
return decryptData(input DEFAULT_KEY)
}/
字节码转换成 进制字符串
@param byte[] b 输入要转换的字节码
@return String 返回转换后的 进制字符串
/
public static String byte hex(byte[] bytes) {
StringBuilder hs = new StringBuilder()
for(byte b : bytes)
hs append(String format( % $ X b))
return hs toString()
}public static byte[] hex byte(String content) {
int l=content length()》 ;
byte[] result=new byte[l];
for(int i= ;i
int j=i《 ;
String s=content substring(j j+ )
result[i]=Integer valueOf(s ) byteValue()
}return result;
}/
将字节数组转换为base 编码字符串
@param buffer
@return
/
public static String bytesToBase (byte[] buffer) {
//BASE Encoder en=new BASE Encoder()
return Base encode(buffer)
// return encoder encode(buffer)
}/
将base 编码的字符串解码为字节数组
@param value
@return
@throws IOException
/
public static byte[] base ToBytes(String value) throws IOException {
//return Base decodeToByteArray(value)
// System out println(decoder decodeBuffer(value))
// return decoder decodeBuffer(value)
return Base decode(value)
}/
加密给定的字符串
@param value
@return 加密后的base 字符串
/
public static String encryptString(String value) {
return encryptString(value DEFAULT_KEY)
}/
根据给定的密钥加密字符串
@param value 待加密的字符串
@param key 以BASE 形式存在的密钥
@return 加密后的base 字符串
@throws IOException
/
public static String encryptString(String value String key) throws IOException {
return encryptString(value base ToBytes(key))
}/
根据给定的密钥加密字符串
@param value 待加密的字符串
@param key 字节数组形式的密钥
@return 加密后的base 字符串
/
public static String encryptString(String value byte[] key) {
try {
byte[] data=value getBytes(VALUE_ENCODING)
data=CryptUtils encryptData(data key)
return bytesToBase (data)
} catch (Exception e) {
// TODO Auto generated catch block
e printStackTrace()
return null;
}}
/
解密字符串
@param value base 形式存在的密文
@return 明文
/
public static String decryptString(String value) {
return decryptString(value DEFAULT_KEY)
}/
解密字符串
@param value base 形式存在的密文
@param key base 形式存在的密钥
@return 明文
@throws IOException
/
public static String decryptString(String value String key) throws IOException {
String s=decryptString(value base ToBytes(key))
return s;
}/
解密字符串
@param value base 形式存在的密文
@param key 字节数据形式存在的密钥
@return 明文
/
public static String decryptString(String value byte[] key) {
try {
byte[] data=base ToBytes(value)
data=CryptUtils decryptData(data key)
return new String(data VALUE_ENCODING)
}catch(Exception e) {
e printStackTrace()
return null;
}}
}package gdie lab crypt;
import ja io IOException;
import jax crypto Cipher;
import jax crypto KeyGenerator;
import jax crypto SecretKey;
import apache xerces internal impl util Base ;
public class CryptUtils {
private static String Algorithm = DES ;
private static byte[] DEFAULT_KEY=new byte[] { };
private static String VALUE_ENCODING= UTF ;
/
生成密钥
@return byte[] 返回生成的密钥
@throws exception
扔出异常
/
public static byte[] getSecretKey() throws Exception {
KeyGenerator keygen = KeyGenerator getInstance(Algorithm)
SecretKey deskey = keygen generateKey()
// if (debug ) System out println ( 生成密钥 +byte hex (deskey getEncoded
// ()))
return deskey getEncoded()
}/
将指定的数据根据提供的密钥进行加密
@param input
需要加密的数据
@param key
密钥
@return byte[] 加密后的数据
@throws Exception
/
public static byte[] encryptData(byte[] input byte[] key) throws Exception {
SecretKey deskey = new jax crypto spec SecretKeySpec(key Algorithm)
// if (debug )
// {
// System out println ( 加密前的二进串 +byte hex (input ))
// System out println ( 加密前的字符串 +new String (input ))
//
// }
Cipher c = Cipher getInstance(Algorithm)
c init(Cipher ENCRYPT_MODE deskey)
byte[] cipherByte = c doFinal(input)
// if (debug ) System out println ( 加密后的二进串 +byte hex (cipherByte ))
return cipherByte;
}public static byte[] encryptData(byte[] input) throws Exception {
return encryptData(input DEFAULT_KEY)
}/
将给定的已加密的数据通过指定的密钥进行解密
@param input
待解密的数据
@param key
密钥
@return byte[] 解密后的数据
@throws Exception
/
public static byte[] decryptData(byte[] input byte[] key) throws Exception {
SecretKey deskey = new jax crypto spec SecretKeySpec(key Algorithm)
// if (debug ) System out println ( 解密前的信息 +byte hex (input ))
Cipher c = Cipher getInstance(Algorithm)
c init(Cipher DECRYPT_MODE deskey)
byte[] clearByte = c doFinal(input)
// if (debug )
// {
// System out println ( 解密后的二进串 +byte hex (clearByte ))
// System out println ( 解密后的字符串 +(new String (clearByte )))
//
// }
return clearByte;
}public static byte[] decryptData(byte[] input) throws Exception {
return decryptData(input DEFAULT_KEY)
}/
字节码转换成 进制字符串
@param byte[] b 输入要转换的字节码
@return String 返回转换后的 进制字符串
/
public static String byte hex(byte[] bytes) {
StringBuilder hs = new StringBuilder()
for(byte b : bytes)
hs append(String format( % $ X b))
return hs toString()
}public static byte[] hex byte(String content) {
int l=content length()》 ;
byte[] result=new byte[l];
for(int i= ;i
int j=i《 ;
String s=content substring(j j+ )
result[i]=Integer valueOf(s ) byteValue()
}return result;
}/
将字节数组转换为base 编码字符串
@param buffer
@return
/
public static String bytesToBase (byte[] buffer) {
//BASE Encoder en=new BASE Encoder()
return Base encode(buffer)
// return encoder encode(buffer)
}/
将base 编码的字符串解码为字节数组
@param value
@return
@throws IOException
/
public static byte[] base ToBytes(String value) throws IOException {
//return Base decodeToByteArray(value)
// System out println(decoder decodeBuffer(value))
// return decoder decodeBuffer(value)
return Base decode(value)
}/
加密给定的字符串
@param value
@return 加密后的base 字符串
/
public static String encryptString(String value) {
return encryptString(value DEFAULT_KEY)
}/
根据给定的密钥加密字符串
@param value 待加密的字符串
@param key 以BASE 形式存在的密钥
@return 加密后的base 字符串
@throws IOException
/
public static String encryptString(String value String key) throws IOException {
return encryptString(value base ToBytes(key))
}/
根据给定的密钥加密字符串
@param value 待加密的字符串
@param key 字节数组形式的密钥
@return 加密后的base 字符串
/
public static String encryptString(String value byte[] key) {
try {
byte[] data=value getBytes(VALUE_ENCODING)
data=CryptUtils encryptData(data key)
return bytesToBase (data)
} catch (Exception e) {
// TODO Auto generated catch block
e printStackTrace()
return null;
}}
/
解密字符串
@param value base 形式存在的密文
@return 明文
/
public static String decryptString(String value) {
return decryptString(value DEFAULT_KEY)
}/
解密字符串
@param value base 形式存在的密文
@param key base 形式存在的密钥
@return 明文
@throws IOException
/
public static String decryptString(String value String key) throws IOException {
String s=decryptString(value base ToBytes(key))
return s;
}/
解密字符串
@param value base 形式存在的密文
@param key 字节数据形式存在的密钥
@return 明文
/
public static String decryptString(String value byte[] key) {
try {
byte[] data=base ToBytes(value)
data=CryptUtils decryptData(data key)
return new String(data VALUE_ENCODING)
}catch(Exception e) {
e printStackTrace()
return null;
}}
}CryptHelper ja
[ja]
package gdie lab crypt;
import jax crypto Cipher;
import jax crypto SecretKey;
import jax crypto SecretKeyFactory;
import jax crypto spec DESKeySpec;
import jax crypto spec IvParameterSpec;
import springframework util DigestUtils;
public class CryptHelper{
private static String CRYPT_KEY = zhongqian ;
//加密
private static Cipher ecip;
//解密
private static Cipher dcip;
static {
try {
String KEY = DigestUtils md DigestAsHex(CRYPT_KEY getBytes()) toUpperCase()
KEY = KEY substring( )
byte[] bytes = KEY getBytes()
DESKeySpec ks = new DESKeySpec(bytes)
SecretKeyFactory skf = SecretKeyFactory getInstance( DES )
SecretKey sk = skf generateSecret(ks)
IvParameterSpec iv = new IvParameterSpec(bytes)
ecip = Cipher getInstance( DES/CBC/PKCS Padding )
ecip init(Cipher ENCRYPT_MODE sk iv )
dcip = Cipher getInstance( DES/CBC/PKCS Padding )
dcip init(Cipher DECRYPT_MODE sk iv )
}catch(Exception ex) {
ex printStackTrace()
}}
public static String encrypt(String content) throws Exception {
byte[] bytes = ecip doFinal(content getBytes( ascii ))
return CryptUtils byte hex(bytes)
}public static String decrypt(String content) throws Exception {
byte[] bytes = CryptUtils hex byte(content)
bytes = dcip doFinal(bytes)
return new String(bytes ascii )
}//test
public static void main(String[] args) throws Exception {
String password = gly ;
String en = encrypt(password)
System out println(en)
System out println(decrypt(en))
}}
package gdie lab crypt;
import jax crypto Cipher;
import jax crypto SecretKey;
import jax crypto SecretKeyFactory;
import jax crypto spec DESKeySpec;
import jax crypto spec IvParameterSpec;
import springframework util DigestUtils;
public class CryptHelper{
private static String CRYPT_KEY = zhongqian ;
//加密
private static Cipher ecip;
//解密
private static Cipher dcip;
static {
try {
String KEY = DigestUtils md DigestAsHex(CRYPT_KEY getBytes()) toUpperCase()
KEY = KEY substring( )
byte[] bytes = KEY getBytes()
DESKeySpec ks = new DESKeySpec(bytes)
SecretKeyFactory skf = SecretKeyFactory getInstance( DES )
SecretKey sk = skf generateSecret(ks)
IvParameterSpec iv = new IvParameterSpec(bytes)
ecip = Cipher getInstance( DES/CBC/PKCS Padding )
ecip init(Cipher ENCRYPT_MODE sk iv )
dcip = Cipher getInstance( DES/CBC/PKCS Padding )
dcip init(Cipher DECRYPT_MODE sk iv )
}catch(Exception ex) {
ex printStackTrace()
}}
public static String encrypt(String content) throws Exception {
byte[] bytes = ecip doFinal(content getBytes( ascii ))
return CryptUtils byte hex(bytes)
}public static String decrypt(String content) throws Exception {
byte[] bytes = CryptUtils hex byte(content)
bytes = dcip doFinal(bytes)
return new String(bytes ascii )
}//test
public static void main(String[] args) throws Exception {
String password = gly ;
String en = encrypt(password)
System out println(en)
System out println(decrypt(en))
}lishixinzhi/Article/program/Ja/hx/201311/26449
cipher什么意思
cipher的意思:密码。
密码是一种用来混淆的技术,使用者希望将正常的(可识别的)信息转变为无法识别的信息。但这种无法识别的信息部分是可以再加工并恢复和的。密码在中文里是“口令”(password)的通称。
登录网站、电子邮箱和银行取款时输入的“密码”其实严格来讲应该仅被称作“口令”,因为它不是本来意义上的“加密代码”,但是也可以称为秘密的号码。其主要限定于个别人理解(如一则电文)的符号系统。如密码电报、密码式打字机。
特别编制的秘密电码。在约定的范围内使用,以区别于“明码”。《二十年目睹之怪现状》第九二回:“便亲自起了个一百多字的电稿,用他自己私家的密码译了出来,送到电局,打给他胞弟惠禄。”郭沫若《洪波曲》第十五章五:“不过我还可以保证,他们一定会把密码电报大大地改编过一道”。
密码是按特定法则编成,用以对通信双方的信息进行明密变换的符号。换而言之,密码是隐蔽了真实内容的符号序列。就是把用公开的、标准的信息编码表示的信息通过一种变换手段,将其变为除通信双方以外其他人所不能读懂的信息编码,这种独特的信息编码就是密码。