草庐IT

Encryption

全部标签

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

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

java - PBEWithMD5AndTripleDES 的 key 大小是多少?

我正在尝试将现有代码中的PBEWithMD5AndDES替换为PBEWithMD5AndTripleDES。到目前为止,我使用的是我之前使用的相同密码,并收到此异常:java.security.InvalidKeyException:非法key大小我在网上查了一下,发现DES使用64位key,而TripleDES使用128位key。我不清楚我的密码短语如何用于生成key的细节,也不知道去哪里看才能完全理解这一点。我的密码长度为260个字符。我尝试将长度加倍,但我得到了相同的异常。我正在从我的密码短语生成一个PBEKeySpec,它具有8字节盐和12次迭代计数。我看到还有另一个构造函数采

java - 密码分析 : XOR of two plaintext files

我有一个文件,其中包含两个异或明文文件的结果。我如何攻击此文件以解密其中一个明文文件?我搜索了很多,但找不到任何答案。谢谢!编辑:好吧,我还有两个密文,我对它们进行异或运算以获得两个明文的异或。我问这个问题的原因是,根据BruceSchneier,pg的说法。198,AppliedCryptography,1996“......她可以将它们异或在一起并得到两个明文消息相互异或。这很容易破解,然后她可以将其中一个明文与密文进行异或以获得key流。”(这与简单的流密码有关)但除此之外,他没有提供任何解释。这就是为什么我在这里问。原谅我的无知。另外,使用的算法比较简单,使用长度为3的对称ke

java - 将源代码隐藏在 .jar 文件中

可以轻松提取.jar文件并查看源代码。我想保护源代码不被看到。一种可能的答案是像我们对zip文件所做的那样使用密码保护文件。但是,如果知道密码,则可以轻松查看源代码。有什么方法可以隐藏源代码并且仍然可以运行吗?类似于.exe在Windows中的作用。这应该在Windows和Linux环境中运行。 最佳答案 看看ProGuard,它是一个流行的java混淆器。至于将您的java程序打包为windows可执行文件,这篇文章可能会对您有所帮助:HowcanIconvertmyJavaprogramtoan.exefile?

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

java - 比播种 SecureRandom 更好的创建 AES key 的方法

我需要将加密数据从Java客户端发送到C#服务器。现在我正在学习如何使用AES(要求)加密数据。按照这个接受的答案androidencryption/decryptionwithAES我正在执行以下操作:byte[]keyStart="qweroiwejrwoejlsifeoisrn".getBytes();//Randomcharacterstringbyte[]toEncrypt=myMessageString.getBytes();keyGen=KeyGenerator.getInstance("AES");sr=SecureRandom.getInstance("SHA1PRN

java - 从 AES 加密字符串中删除\r 和\n

我正在使用AES加密字符串,但加密后的字符串末尾包含\n和\r。publicclassAESImpl{privatestaticStringdecryptedString;privatestaticStringencryptedString;publicstaticvoidmain(String[]args)throwsNoSuchAlgorithmException,IOException,ClassNotFoundException{StringstrToEncrypt="Thistexthastobeencrypted";SecretKeysecretKey=generateSe

Java双向加密库

这个问题在这里已经有了答案:EncryptPasswordinConfigurationFiles?[closed](10个答案)关闭5年前。我需要将数据库密码保存为加密字符串,然后在连接前解密。谁能推荐我一个好的Java双向加密库?

java - IDTECH信用卡读卡器数据解密

我正在尝试解密IDTECH信用卡读卡器的加密数据。此详细信息已使用DUKPT使用带有CBC密码的三重DES加密。加密刷卡(来自IDTECH信用卡读卡器):028801001F372300%*5150********7903^PAYPASS/MASTERCARD^***************?*;5150********7903=***************?*8871B640F379F3BD8D057A13F8145439B28D80BE8A43F3440D85928F576065EEE1BA54CAADFF67D552C2B0CBF1A9F34B63402B967998FC7C8

java - 在 Bouncy CaSTLe 中将字节编码的 key 转回其原始 ECPublicKey

在Java中,我有一个以字节数组形式发送的ECDH公钥。收到字节数组后,我该如何将其转回公钥?我正在使用BouncyCaSTLe,但Java解决方案同样有用。谢谢 最佳答案 当您获得编码key时,假设您使用默认的“[yourkeyPair].getPublic().getEncoded()”方法,这将起作用。X509EncodedKeySpecks=newX509EncodedKeySpec(pubKeyByteString.toByteArray());KeyFactorykf;try{kf=java.security.KeyFa