-
如何保存密钥文件更安全5
下面是一个进行加密的工具类,加密类会产生一个密钥文件,密钥文件保存到了硬盘文件中,程序中要进行对数据的加解密操作。密钥文件保存在文件,别人也就可以读取密钥文件,获得加密数据的内容。有什么可以安全保存密钥文件的方式么?
public class EncryptUtil { private static String keyPath = null; private static String getKeyPath() { keyPath = "c:\\yhb.des"; return keyPath; } /** * 对称加密-产生密钥<br/> */ public static void generatorKey() { SecretKey key = null; try { // 指定算法,这里为DES;如果想用Blowfish算法,则用getInstance("Blowfish") // BouncyCastle基本上支持所有通用标准算法 KeyGenerator keygen = KeyGenerator.getInstance("DES"); // 指定密钥长度,长度越高,加密强度越大 keygen.init(56); // 产生密钥 key = keygen.generateKey(); // 构造输出文件,这里的目录是动态的,根据用户名称来构造目录 ObjectOutputStream keyFile = new ObjectOutputStream( new FileOutputStream(getKeyPath())); keyFile.writeObject(key); keyFile.close(); } catch (NoSuchAlgorithmException e5) { e5.printStackTrace(); System.exit(0); } catch (IOException e4) { e4.printStackTrace(); System.exit(0); } } /** * 对称加密-读取密钥.<br/> */ private static SecretKey getSecretKey() { // 从密钥文件中读密钥 SecretKey key = null; try { ObjectInputStream keyFile = new ObjectInputStream( new FileInputStream(getKeyPath())); key = (SecretKey) keyFile.readObject(); keyFile.close(); } catch (FileNotFoundException ey1) { e1.printStackTrace(); System.exit(0); } catch (Exception ey2) { e2.printStackTrace(); } return key; } /** * 加密文本信息.<br/> */ public static String encrypt(String encryptStr) { SecretKey key = getSecretKey(); Cipher cipher = null; try { // 设置算法,应该与加密时的设置一样 cipher = Cipher.getInstance("DES"); // 设置解密模式 cipher.init(Cipher.ENCRYPT_MODE, key); } catch (Exception ey3) { ey3.printStackTrace(); } byte[] data = null; try { data = cipher.doFinal(encryptStr.getBytes()); } catch (IllegalBlockSizeException e) { e.printStackTrace(); } catch (BadPaddingException e) { e.printStackTrace(); } encryptStr = Base64.encodeBase64String(data); return encryptStr; } /** * 解密文本信息.<br/> */ public static String decrypt(String decryptStr) { SecretKey key = getSecretKey(); // 用key产生Cipher Cipher cipher = null; try { // 设置算法,应该与加密时的设置一样 cipher = Cipher.getInstance("DES"); // 设置解密模式 cipher.init(Cipher.DECRYPT_MODE, key); } catch (Exception ey3) { ey3.printStackTrace(); System.exit(0); } byte[] data = Base64.decodeBase64(decryptStr); try { data = cipher.doFinal(data); } catch (IllegalBlockSizeException e) { e.printStackTrace(); } catch (BadPaddingException e) { e.printStackTrace(); } decryptStr = new String(data); return decryptStr; } }
2012年8月15日 16:25
相关推荐
C# RSA读取密钥文件pfx cer 签名验签加密解密帮助类以及RSA公钥私钥与java互转
本发明公开了一种基于文件属性的密钥加密方法,包括:接收用户文件,根据用户文件生成属性集合、访问结构树、主密钥和公钥,随机生成对称密钥,使用对称密钥和对称加密算法加密用户文件,以得到数据密文,使用公钥和...
我们看到,密文和密钥文件的密文都是乱码,如果不加密密钥文件你需要用安全的地方来保存密钥文件,但是如果有安全的地方保存文件你为何不直接保存原文件算了,何必多此一举,而加密后你只要记住密码就可以了。...
CERT Keyfinder是一个实用程序,用于查找和分析文件系统上的密钥文件以及Android APK文件中包含的密钥文件。 CERT Keyfinder开发由美国国土安全部(DHS)赞助。
量子密钥分发是安全分发密钥的一种方式,文件包含其密钥率和传输距离的仿真代码,包含各类协议的比较,直接运行即可,非常有用的资料。。。。
在 linux 系统客户端若要登录 目标虚拟机,使用 xxx.pem 密钥对文件登录,使用以下命令:在 windows 上登录 linux 可用其他虚拟终端软件
ABB机器人选项包,密钥,三种方法,真实、虚拟、密钥三种方法,有教程、有软件、也有密钥。
针对文件传输存在的安全性问题,设计与实现了基于转发隔离的文件安全传输系统。首先,采用转发隔离技术,对客户端和文件接收服务器进行隔离,保证文件接收服务器的安全。再者,利用密钥服务器来生成、颁发、管理文件加密...
详细阐述了在安全日志服务器中成立密钥管理中心的必要性,提出由密钥管理中心统一负责用户身份的认证和日志文件的加密传送。最后重点讨论了安全日志服务器的密钥管理系统中密钥的分配问题和多个CA之间交叉认证模式的...
说明: 量子密钥分发是安全分发密钥的一种方式,文件包含其密钥率和传输距离的仿真代码,包含各类协议的比较,直接运行即可,非常有用的资料。。。。 (Quantum key distribution (QKD) is a way of secure key ...
python实现Diffie-Hellman密钥交换算法工程文件 详解博客地址:https://blog.csdn.net/m0_52316372/article/details/125692548
3、信息系统接收密钥并保存到文件中或自设计的密码方案; 4、信息系统的数据或登录密码加密存储到某一文件中,查询或登录时,可以解密查看明文; 5、通信服务端发送过程中,可以看到所发密钥的数字信封、密文...
提出了一种能够很好利用BitTorrent快速传输特性的同时,也能增加文件下载安全控制的方案。...用户成功下载文件后需要进行身份认证,合法用户可以安全获得文件加密密钥,解密得到明文文件。实验结果表明该方
其他用户满足访问策略后可以从临近记账节点或文件拥有者获取文件密钥解密文件最终获得明文文件。本发明确保了用户数据的安全性,用户使用简单方便,同时公钥密码技术使得文件更为安全;区块链账本的不可篡改性进一步...
python用16位密钥实现文件加密解密
它仅需调整几个旋钮,而不是复杂的配置,并且不需要对安全密钥管理或加密有深入的了解。建筑学安装二进制发行作业系统拱二进位Linux amd64 Linux 臂64 Linux ppc64le Linux s390x 苹果M1 臂64 苹果amd64 视窗amd64 ...
缘起:最近对于淘宝之类的网站密码设置的复杂了些,后来想想很多网站的如银行类以及QQ密保之类的一些信息需要保存,但保存到网上感觉不安全,直接写入文本又不安全,因此产生了编写直接文本文件加密工具的想法。...
信息安全--密钥短语密码.此密码之首要弱处为,如果密码学家可发现(如频率分析, 暴力破解, 臆测或任何其他方法) 加密文件两字元之原文,则关键值可透过解一方程组得到。 由于我们知道a及m互质,这个事实可被用于快速...
有文件切割,保护文件夹功能,文件/文件夹彻底删除,生成随机密钥 ,即时安全通讯工具密聊。是一个功能齐全,易用,能绝对确保你的数据安全,大大改变了加密工具单调枯燥的样板。采用公开加密算法,无法破解。很好用...
IC卡比磁条卡具有更安全、交易成本低、使用方便等优势 IC卡具有保密性好、文件管理安全等特点,适应未来更为复杂的业务需求,为医保、社保等领域提供服务。金融IC卡的密钥管理系统是IC卡管体制使发卡行和持卡人得到...