blowfish加密算法之BLOWFISH算法有何特点

blowfish  时间:2021-07-04  阅读:()

有谁会写java的Blowfish-CBC加密算法吗?

public class BlowfishAlgorithmEncryptor { public static final Integer BLOWFISH_IVLENGTH = 8; public static final Integer BLOWFISH_KEYSIZE = 128; public static final String BLOWFISH_ALGORITHM = "Blowfish"; public static final String BLOWFISH_CBC_PKCS5PADDING = "Blowfish/CBC/PKCS5Padding"; private Key key; public Key initialKey() { try { KeyGenerator keyGenerator = KeyGenerator .getInstance(BLOWFISH_ALGORITHM); keyGenerator.init(BLOWFISH_KEYSIZE.intValue()); key = keyGenerator.generateKey(); } catch (NoSuchAlgorithmException e) { // TODO Auto-generated catch block e.printStackTrace(); return null; } return key; } public byte[] encrypt(byte[] plainBytes) { try { ByteArrayInputStream inputStream = new ByteArrayInputStream( plainBytes); ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); SecureRandom random = new SecureRandom(); byte[] iv = new byte[BLOWFISH_IVLENGTH]; random.nextBytes(iv); Cipher cipher = getCipher(Cipher.ENCRYPT_MODE, iv); outputStream.write(iv); CipherOutputStream cipherStream = new CipherOutputStream( outputStream, cipher); for (int i = inputStream.read(); i != -1; i = inputStream.read()) { cipherStream.write(i); } inputStream.close(); cipherStream.close(); outputStream.close(); return outputStream.toByteArray(); } catch (Exception e) { e.printStackTrace(); return null; } } public byte[] decrypt(byte[] cipherBytes) { try { ByteArrayInputStream inputStream = new ByteArrayInputStream( cipherBytes); ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); byte[] iv = new byte[BLOWFISH_IVLENGTH]; inputStream.read(iv); Cipher cipher = getCipher(Cipher.DECRYPT_MODE, iv); CipherInputStream cipherStream = new CipherInputStream(inputStream, cipher); for (int i = cipherStream.read(); i != -1; i = cipherStream.read()) { outputStream.write(i); } inputStream.close(); cipherStream.close(); outputStream.close(); return outputStream.toByteArray(); } catch (Exception e) { e.printStackTrace(); return null; } } private Cipher getCipher(int mode, byte[] iv) { IvParameterSpec spec = new IvParameterSpec(iv); try { Cipher cipher = Cipher.getInstance(BLOWFISH_CBC_PKCS5PADDING); cipher.init(mode, key, spec); return cipher; } catch (Exception e) { e.printStackTrace(); return null; } } }

TrueCrypt是全球最著名、最权威的硬盘加密软件之一?

TrueCrypt是全球最著名、最权威的硬盘加密软件之一,迄今为止没有任何方法可以破解其加密的磁盘。

它拥有AES-256、Blowfish(448-bitkey)、CAST5、Serpent、Triple DES三种加密算法。

支持长密码,如果长度为20位,暴力破解需要1056993066125年时间!它的加密方式有三种:将文件虚拟为分区来加密,对分区乃至整个硬盘加密,对操作系统加密。

本文将选用其中的分区加密。

  

  运行下载回来的TrueCrypt Setup 6.2a.exe,可选择“Install”(安装)、“Extract”(解压)。

考虑到还要将其拷贝到移动硬盘上使用,请选择“Extract”,直到完成。

接着,将中文补丁解压,再拷贝到TrueCrypt的解压目录。

然后运行解压目录中的TrueCrypt,在程序主界面上单击“Settings”下的“Language”,再选择简体中文,整个程序即可中文化。

加密算法之BLOWFISH算法有何特点

AES-256和RSA-2048绝对可以,用RSA加密密匙,AES加密数据,因为非对称算法加密数据速度实在太慢,所以用非对称算法加密数据根本行不通,但是安全性非常高。

ucloud国内云服务器2元/月起;香港云服务器4元/首月;台湾云服务器3元/首月

ucloud云服务器怎么样?ucloud为了扩大云服务器市场份额,给出了超低价云服务器的促销活动,活动仍然是此前的Ucloud全球大促活动页面。目前,ucloud国内云服务器2元/月起;香港云服务器4元/首月;台湾云服务器3元/首月。相当于2-4元就可以试用国内、中国香港、中国台湾这三个地域的云服务器1个月了。ucloud全球大促仅限新用户,国内云服务器个人用户低至56元/年起,香港云服务器也仅8...

野草云提供适合入门建站香港云服务器 年付138元起 3M带宽 2GB内存

野草云服务商在前面的文章中也有多次提到,算是一个国内的小众服务商。促销活动也不是很多,比较专注个人云服务用户业务,之前和站长聊到不少网友选择他们家是用来做网站的。这不看到商家有提供香港云服务器的优惠促销,可选CN2、BGP线路、支持Linux与windows系统,支持故障自动迁移,使用NVMe优化的Ceph集群存储,比较适合建站用户选择使用,最低年付138元 。野草云(原野草主机),公司成立于20...

Sharktech10Gbps带宽,不限制流量,自带5个IPv4,100G防御

Sharktech荷兰10G带宽的独立服务器月付319美元起,10Gbps共享带宽,不限制流量,自带5个IPv4,免费60Gbps的 DDoS防御,可加到100G防御。CPU内存HDD价格购买地址E3-1270v216G2T$319/月链接E3-1270v516G2T$329/月链接2*E5-2670v232G2T$389/月链接2*E5-2678v364G2T$409/月链接这里我们需要注意,默...

blowfish为你推荐
stackoverflowerrorjava.lang.StackOverflowError错误开票系统国税承认的开票系统有哪些qq号查询怎样查找本地qq号码php论坛怎样快速在个人电脑上建立一个自己的PHP论坛服务器?waves插件请问下waves9是什么东西,插件吗?问卷星登陆请问问卷星怎么设置答题时间?layoutsubviews如何让NSSplitView的子View的大小固定社工库网站怎么找社工库?51信用卡论坛刚才发现51信用卡管家可以查个人征信了,就查了下信用卡信用记录。这是截图,大家帮我看看我的这个逾期水表读数家用水表怎么读数
美国虚拟主机空间 网通服务器租用 二级域名申请 132邮箱 arvixe 免费ftp空间 permitrootlogin 哈喽图床 服务器怎么绑定域名 镇江联通宽带 本网站在美国维护 hkg 135邮箱 南通服务器 购买国外空间 申请免费空间和域名 阿里云官方网站 www789 vul 中国电信网络测速 更多