「java密钥开发」java 密钥
今天给各位分享java密钥开发的知识,其中也会对java 密钥进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、用java写一个密钥
- 2、用java开发的WEB服务器如何将DES密钥传给客户端?
- 3、JAVA 开发中页面怎么读取钥匙key信息?
- 4、北大青鸟java培训:网络运营安全密钥的算法问题?
- 5、java RSA算法实现256位密钥怎么做
用java写一个密钥
简单的每位上的数减去2加密
import java.util.Scanner;
import java.util.regex.Pattern;
import java.util.regex.Matcher;
public class Encryption {
public static void main(String[] args) {
System.out.print("请输入数字:");
Scanner sca = new Scanner(System.in);
String line = sca.nextLine();
char[] cha = line.toCharArray();
Pattern pattern = Pattern.compile("[0-9]*");
Matcher isNum = pattern.matcher(line);
if(isNum.matches()){
for(int i=0;icha.length;i++){
int j= Integer.parseInt(String.valueOf(cha[i]));
if(j2){
j=j+10;
}
j=j-2;
System.out.print(j);
}
}else System.out.println("输入必须是数字!");
}
}
用java开发的WEB服务器如何将DES密钥传给客户端?
密钥可以直接作为密钥对象保存的,然后用的时候再进行转换
参考代码:
import java.security.Key;
import java.security.KeyException;
import java.security.NoSuchAlgorithmException;
import javax.crypto.Cipher;
import javax.crypto.IllegalBlockSizeException;
import javax.crypto.KeyGenerator;
import javax.crypto.NoSuchPaddingException;
import javax.crypto.SecretKey;
public class Test {
public static void main(String [] args) {
String Algorithm="DES"; //定义 加密算法,可用 DES,DESede,Blowfish
KeyGenerator keygen;
try {
keygen = KeyGenerator.getInstance(Algorithm);
SecretKey deskey = keygen.generateKey();
Cipher ci = Cipher.getInstance("DES");
//将其包装为byte[]发送
byte[] b = ci.wrap(deskey);
//发送
//...
//接收到后
//解封装
Key key = ci.unwrap(b, Algorithm, Cipher.PRIVATE_KEY);
//...
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
} catch (KeyException e) {
e.printStackTrace();
} catch (IllegalBlockSizeException e) {
e.printStackTrace();
} catch (NoSuchPaddingException e) {
e.printStackTrace();
}
}
}
JAVA 开发中页面怎么读取钥匙key信息?
你这个是一个读取密钥的控件,
var result = FTUCtrl.SetCertResult_Ex,直接就获取到了key,
当然控件的实现那是控件的事,它可能是由其他诸如VC类的底层语言开发的控件(比如ocx控件),可由其他语言调用。设计到安全性能,控件在读取key的时候应该是有自己的一套加密算法。你只要调用控件提供的js方法就能得到key值。当然客户端在使用时需要将控件安装到本地才行 ,浏览器设置满足条件的话,会自动提示安装ActiveX控件 。
类似比如,数字读卡器,office控件,都是类似的使用机制
北大青鸟java培训:网络运营安全密钥的算法问题?
随着互联网的不断发展,为了保护我们的信息在网络上的安全性,通常都会基于安全算法和密钥来实现的。
今天,IT培训就通过案例分析来了解一下关于安全密钥的算法问题。
DES算法简介DES(DataEncryptionStandard)是目前为流行的加密算法之一。
DES是对称的,也就是说它使用同一个密钥来加密和解密数据。
DES还是一种分组加密算法,该算法每次处理固定长度的数据段,称之为分组。
DES分组的大小是64位,如果加密的数据长度不是64位的倍数,可以按照某种具体的规则来填充位。
从本质上来说,DES的安全性依赖于虚假表象,从密码学的术语来讲就是依赖于“混乱和扩散”的原则。
混乱的目的是为隐藏任何明文同密文、或者密钥之间的关系,而扩散的目的是使明文中的有效位和密钥一起组成尽可能多的密文。
两者结合到一起就使得安全性变得相对较高。
DES算法具体通过对明文进行一系列的排列和替换操作来将其加密。
过程的关键就是从给定的初始密钥中得到16个子密钥的函数。
要加密一组明文,每个子密钥按照顺序(1-16)以一系列的位操作施加于数据上,每个子密钥一次,一共重复16次。
每一次迭代称之为一轮。
要对密文进行解密可以采用同样的步骤,只是子密钥是按照逆向的顺序(16-1)对密文进行处理。
计算16个子密钥上面提到DES算法的一步就是从初始密钥中计算得出16个子密钥。
DES使用一个56位的初始密钥,但是这里提供的是一个64位的值,这是因为在硬件实现中每8位可以用于奇偶校验,在软件实现中多出的位只是简单的忽略掉。
要获得一个56位的密钥,可以执照表1的方式执行密钥转换。
DES算法的实现考虑到DES算法中涉及的位操作很多,因此DES算法通常都是在硬件中实现。
DES算法中的图表和术语(通过线、框画的流程图,以及诸如S盒、P盒这样的术语)使其更倾向于在硬件中实现,当然,软件实现也有它的价值所在。
在软件开发中,通过几种基本的指令操作来帮助实现DES中的各种置换、转换以及替换操作都是很有效的。
java RSA算法实现256位密钥怎么做
参考下面代码:
try {
KeyPairGenerator keyPairGen = KeyPairGenerator.getInstance("RSA",
new org.bouncycastle.jce.provider.BouncyCastleProvider());
final int KEY_SIZE = 128;// 没什么好说的了,这个值关系到块加密的大小,可以更改,但是不要太大,否则效率会低
keyPairGen.initialize(KEY_SIZE, new SecureRandom());
KeyPair keyPair = keyPairGen.generateKeyPair();
return keyPair;
} catch (Exception e) {
throw new Exception(e.getMessage());
}
关于java密钥开发和java 密钥的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
发布于:2022-11-24,除非注明,否则均为
原创文章,转载请注明出处。