草庐IT

公钥与私钥

全部标签

java - 如何确定X509公钥的长度

如何确定Java中X509公钥的长度(以位为单位)?我希望在运行“opensslx509-incert.crt-noout-text”时获得与“Public-Key”相同的值。例如:Certificate:Data:Version:3(0x2)SerialNumber:17:00:00:01:a2:41:4b:56:3e:99:ba:92:b5:00:02:00:00:01:a2SignatureAlgorithm:sha256WithRSAEncryptionIssuer:DC=com,DC=magnicomp,CN=MagniCompIssuingCAValidityNotBefo

java - 从 RSA .pem 文件中获取私钥

这个问题在这里已经有了答案:DecryptinganOpenSSLPEMEncodedRSAprivatekeywithJava?(2个答案)关闭5年前。给定此.pem文件(使用openssl生成并使用密码加密):-----BEGINRSAPRIVATEKEY-----Proc-Type:4,ENCRYPTEDDEK-Info:DES-EDE3-CBC,AC009672952033EB2wegzxf3MtncXS1CY3c.............-----ENDRSAPRIVATEKEY-----如何在Java中获取PrivateKey对象?我写了下面的代码,但我找不到获取KeySp

java - 我如何压缩或编码椭圆曲线公钥并将其放在网络上?

我正在开发分布式数字签名,用于签署文档并通过网络将其发送到应用程序服务器。我正在使用java中的套接字编程来完成它。我认为应该对公钥进行编码或压缩,即x和y值以某种方式表示为单个二进制数据并保存在公共(public)注册表或网络中。但我不知道如何在java中执行此操作。//IhaveclasslikethispublicclassCryptoSystem{EllipticCurveec=newEllipticCurve(newP192());//-------------------//--------------------publicECKeyPairgeneratekeyPair

java - 对使用公钥和私钥进行加密(用于加密)感到困惑

当客户向我的服务器请求许可证时,我正在制作一个许可证系统,如果他们被允许拥有一个许可证,我会向他们发送一个许可证。在我当前的系统上,我使用单个私钥加密许可证,并将公钥嵌入到他们用来解密许可证的客户端应用程序中。有用!其他人告诉我,我应该在服务器上使用公钥加密并将私钥分发给客户端。我在网上搜索了一下,发现有时他们使用私钥加密,有时他们使用公钥加密。这种情况我该怎么办? 最佳答案 OthershavetoldmethatIshouldbeencryptingwiththepublickeyontheserveranddistributi

java - 从字节数组创建私钥

有没有办法从字节数组生成私钥?我使用getEncoded()方法获得了这个字节数组,但现在我必须将它转换回PrivateKey。谢谢,维克 最佳答案 我也在找这个答案,终于找到了。keyBytes是最初使用getEncoded()创建的字节数组。//addBouncyCastleasaproviderifyouwantSecurity.addProvider(neworg.bouncycastle.jce.provider.BouncyCastleProvider());//createakeyfactory-usewhicheve

java - 在 Java 中将 PKCS#8 私钥转换为 PEM

大家好,我正在尝试将我在java程序中生成的PKCS#8私钥转换为PEM编码文件。Security.addProvider(newBouncyCastleProvider());SecureRandomrand=newSecureRandom();JDKKeyPairGenerator.RSAkeyPairGen=newJDKKeyPairGenerator.RSA();keyPairGen.initialize(2048,rand);KeyPairkeyPair=keyPairGen.generateKeyPair();PEMWriterprivatepemWriter=newPEM

公钥密码学算法类型综述

作者:网安新生研讨课第一小组采用协议CCBY-NC,原文链接:https://www.cnblogs.com/Multya/p/18072514概念公开密钥密码学(英语:Public-keycryptography)也称非对称式密码学(英语:Asymmetriccryptography)是密码学的一种算法,它需要两个密钥,一个是公开密钥,另一个是私有密钥;公钥用作加密,私钥则用作解密。使用公钥把明文加密后所得的密文,只能用相对应的私钥才能解密并得到原本的明文,最初用来加密的公钥不能用作解密。由于加密和解密需要两个不同的密钥,故被称为非对称加密;不同于加密和解密都使用同一个密钥的对称加密。公钥可

java - 如何使用新的 Bouncy CaSTLe 库从 PKCS10CertificationRequest 获取公钥?

在新版本的BouncyCaSTLe库中,PKCS10CertificationRequest发生了变化。在以前的版本中,可以使用getPublicKey()方法从此类请求中获取PublicKey(请参阅olddoc)。现在这个方法消失了。如何从此类请求中获取PublicKey?有getSubjectPublicKeyInfo().parsePublicKey()但它返回ASN1Primitive。我从SPKACNetscapeCertRequest看到,我仍然可以通过调用getPublicKey()直接读取PublicKey。 最佳答案

带有公钥/私钥的java-jwt

Auth0提供两个JWT库,一个用于Node:node-jsonwebtoken,还有一个用于Java:java-jwt.我创建了私钥/公钥对,并在Node中成功使用node-jsonwebtoken:varkey=fs.readFileSync('private.key');varpem=fs.readFileSync('public.pem');varheader={...};varpayload={...};header.algorithm="RS256";varmessage=jsonwebtoken.sign(payload,key,header);vardecoded=js

java - ssh 私钥/公钥认证示例

这个问题在这里已经有了答案:SSHJExampleofPublicKeyAuthfromFile(2个答案)关闭5年前。谁能给我一个私钥/公钥认证的例子sshj?在sshj中,命令行等同于什么,ssh-i/path/to/mykey.privateusername@host我试过了(省略了错误处理),finalSSHClientssh=newSSHClient();ssh.loadKnownHosts();ssh.connect("host");ssh.authPublickey("username","/path/to/mykey.private");finalSessionsess