4.5. Java crypt

本文介绍两种在Java中实现密码加密的方法:一是使用netkiller的安全Crypt包;二是利用PostgreSQL JDBC提供的org.postgresql.util.UnixCrypt类。这两种方法均可为密码添加salt进行加密处理,适用于网络传输等场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >



Crypt.java 



导入netkiller。安全; 

Crypt pw = new Crypt(); 

字符串passwd = pw.crypt(“passwd”,“salt”); 

System.out.println(passwd); 

关于JAVA的Crypt包请与我联系



第二种方法:

使用PostgreSQL JDBC中提供的org.postgresql.util.UnixCrypt产生crypt。



类postgresql.util.UnixCrypt 

java.lang.Object 

   | 

   + ---- postgresql.util.UnixCrypt 

   公共类UnixCrypt扩展对象

   这个类为我们提供了在通过网络流传输口令时的加密的功能

   所有游戏静态方法用于加密口令与状语从句:Unix的加密的口令比较。

   参阅约翰·杜马斯的Java Crypt(加密)页面获取原始代码。

   http://www.zeh.com/local/jfd/crypt.html 

方法

public static final String crypt(String salt,String original)

    加密给出了明文口令和一个“种子”(“salt”)的口令。

参数:

    salt - 一个两字符字串代表的所用的种子,用以向加密的引用说明加密的不同方式。如果你要生成一个新的密文那么这个值应该是随机生成的

    原-待加密口令。

返回:

    。一个字串,先是2字符的种子,跟着然后密文口令



方法:

1.安装的PostgreSQL JDBC,请到HTTP:/ /www.postgresql.org下载

2.将JDBC的.jar文件加到JAVA的CLASSPATH中

3.新建JAVA文件

4.编译javac crypt.java 

5.运行JAVA CLASS文件java your-package.your-class 
java crypt 



导入org.postgresql.util.UnixCrypt; 

进口java.io.InputStreamReader; 

进口java.io.BufferedReader; 

进口java.io.IOException; 



公共类crypt { 

    公共静态无效的主要(字符串[]参数)抛出IOException {

       字符串密码; 

       BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 

       System.out.println(“输入密码进行加密,密码”+ 

                        “将在屏幕上回显)”; 

       System.out.println(“请确保没有人在看”); 

       System.out.print(“password:>”); 

       密码= br.readLine(); 

       的System.out.println(UnixCrypt.crypt(密码)); 

    }; 

};



原文出处:Netkiller 系列 手札
本文作者:陈景峯
转载请与作者联系,同时请务必标明文章原始出处和作者信息及本声明。

### Java 加密库及相关教程 #### 常见的Java加密库 在Java中,有多种用于实现加密功能的库。其中最常用的是JCA(Java Cryptography Architecture),这是Java平台的一部分,提供了广泛的加密服务接口。 另一个流行的开源库是Bouncy Castle[^1]。该库不仅支持标准的加密算法,还实现了许多其他高级协议和服务,如OpenPGP。例如,在`OpenPGPTest.java`文件中的测试方法`encryptMessageAsJavascriptAndDecryptItAsJava()`展示了如何利用特定于JavaScript的艺术品来加密消息给Java环境: ```java String encryptedMessage = openPgp.encryptAndSign( unencryptedMessage, JAVASCRIPT_USER_ID_EMAIL, JAVascript_PASSPHRASE, OpenPGP.ArmoredKeyPair.of(JAVASCRIPT_PRIVATE_KEYS, JAVASCRIPT_PUBLIC_KEYS), JAVA_USER_ID_EMAIL, JAVA_PUBLIC_KEYS); ``` 这段代码片段说明了通过调用`openpgp.encryptAndSign`函数来进行数据加密的过程。 除了上述提到的技术外,还有Apache Commons Codec这样的工具包可以用来处理基本编码解码操作;以及Google Tink,它是一个多语言、跨平台的安全API集合,旨在使安全更易于访问并减少错误配置的风险。 对于希望深入了解这些技术的人来说,官方文档通常是最好的起点之一。Oracle提供的关于JCE (Java Cryptography Extension) 的指南非常详尽,并且包含了大量实用的例子。此外,网络上也有很多第三方资源提供详细的教程和实践案例供学习者参考。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值