标签: encryption

无法检查签名:未找到公钥

我尝试使用以下命令解密文件:

gpg --output file.txt --decrypt file.pgp
Run Code Online (Sandbox Code Playgroud)

文件已成功解密但我收到错误:

"gpg:无法检查签名:未找到公钥"

任何想法,为什么我得到这个错误?

encryption cmd gnupg pgp

48
推荐指数
3
解决办法
8万
查看次数

指定的密钥不是此算法的有效大小

我有这个代码:

RijndaelManaged rijndaelCipher = new RijndaelManaged();

            // Set key and IV
            rijndaelCipher.Key = Convert.FromBase64String("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz012345678912");
            rijndaelCipher.IV = Convert.FromBase64String("1234567890123456789012345678901234567890123456789012345678901234");
Run Code Online (Sandbox Code Playgroud)

我被抛出:

Specified key is not a valid size for this algorithm.

Specified initialization vector (IV) does not match the block size for this algorithm.
Run Code Online (Sandbox Code Playgroud)

这个字符串出了什么问题?我能算一下你的一些例子吗?

c# encryption rijndaelmanaged

47
推荐指数
2
解决办法
7万
查看次数

附加在我的加密字符串上的新行

在主要:

public static void main(String[] args) throws NoSuchAlgorithmException {
    System.out.println("encrypt:" + encryptPassword("superuser")+":" );
}

public static String encryptPassword(final String password) throws NoSuchAlgorithmException {
    MessageDigest md = MessageDigest.getInstance("MD5");
    byte[] hashPassword = md.digest(password.getBytes());
    String encryPass = Base64.encodeBase64String(hashPassword);
    return encryPass;
}
Run Code Online (Sandbox Code Playgroud)

我得到这个输出:

encrypt:C66i8K4gFQ23j1jN2sRCqQ==:
Run Code Online (Sandbox Code Playgroud)

但是当我在我的应用程序中实现相同的东西时,我得到以下输出:

encrypt:C66i8K4gFQ23j1jN2sRCqQ==
:
Run Code Online (Sandbox Code Playgroud)

注意:我的加密字符串附加了新行.

应用代码:

public boolean authenticateUsernamePasswordInternal(UsernamePasswordCredentials credentials) {
    try {
        System.out.println("encrypt:" + getHash("superuser")+":" );
    } catch (Exception e) {
        logger.error(e.getMessage(), e);
        throw new BadCredentialsAuthenticationException(ErrorConstants.CONNECTION_FAILED);
    }
}

private String getHash(String password) throws NoSuchAlgorithmException, UnsupportedEncodingException{  
    MessageDigest md = MessageDigest.getInstance("MD5"); …
Run Code Online (Sandbox Code Playgroud)

java encryption base64

47
推荐指数
2
解决办法
3万
查看次数

更新到 .Net 6 时出现问题 - 加密字符串

我正在使用与此处提供的类似的字符串加密/解密类作为解决方案。

\n

这在 .Net 5 中对我来说效果很好。
\n现在我想将我的项目更新到 .Net 6。

\n

使用 .Net 6 时,解密的字符串确实会根据输入字符串的长度在某个点被截断。

\n

\xe2\x96\xb6\xef\xb8\x8f 为了方便调试/重现我的问题,我在这里创建了一个公共重现存储库。

\n
    \n
  • 加密代码是标准 2.0 项目中特意使用的。
  • \n
  • 引用此项目的是 .Net 6 和 .Net 5 Console 项目。
  • \n
\n

两者都使用完全相同的输入"12345678901234567890"和路径短语调用加密方法"nzv86ri4H2qYHqc&m6rL"

\n

.Net 5 输出:"12345678901234567890"
\n.Net 6 输出:"1234567890123456"

\n

长度之差为4.

\n

我还查看了.Net 6 的重大更改,但找不到可以指导我找到解决方案的内容。

\n

我很高兴就我的问题提出任何建议,谢谢!

\n

加密等级

\n
public static class StringCipher\n{\n    // This constant is used to determine the keysize of …
Run Code Online (Sandbox Code Playgroud)

.net c# migration encryption .net-6.0

47
推荐指数
2
解决办法
1万
查看次数

存储信用卡详细信息

我的业务要求迫使我在短时间内存储客户的完整信用卡详细信息(编号,姓名,到期日期,CVV2).

理由:如果客户打电话订购产品并且他们的信用卡被当场拒绝,您很可能会失去销售.如果您了解他们的详细信息,感谢他们的交易,然后发现该卡被拒绝,您可以给他们打电话,他们更有可能找到另一种支付产品的方式.如果信用卡被接受,您可以清除订单中的详细信息.

我无法改变这一点.现有的系统以明文形式存储信用卡详细信息,而我正在构建的新系统中替换它,我显然不会复制这个!

那么,我的问题是如何在短时间内安全存储信用卡.我显然想要某种加密,但最好的方法是什么?

环境:C#,WinForms,SQL-Server.

c# security encryption credit-card pci-dss

46
推荐指数
7
解决办法
2万
查看次数

如何在iPhone上加密CoreData内容

我有一些信息,我想在iPhone应用程序上静态加密.我是iPhone开发的新手,有些我对CoreData以及它与视图的集成方式并不十分熟悉.我将数据作为JSON,但我可以轻松地将其放入SQLITE3数据库或任何其他支持数据格式.我将采取最简单的方法(a)加密和(b)与iPhone视图层集成.

每次启动应用程序时,用户都需要输入密码来解密数据.加密的目的是在用户丢失电话时防止数据被访问.

出于速度原因,我宁愿一次加密和解密整个文件,而不是加密数据库每一行中的每个字段.

注意:这是不一样的想法的问题929744,其目的是让用户从搞乱或看到的数据.使用时数据应完全透明.

另请注意:我愿意使用SQLCipher存储数据,但更愿意使用iPhone/CoreData框架上已有的东西,而不是经历冗长的构建/集成过程.

iphone encryption core-data

46
推荐指数
4
解决办法
3万
查看次数

PHP AES加密/解密

我在PHP中找到了en/decode字符串的示例.起初它看起来非常好,但它不会工作:-(

有谁知道问题是什么?

$Pass = "Passwort";
$Clear = "Klartext";

$crypted = fnEncrypt($Clear, $Pass);
echo "Encrypted: ".$crypted."</br>";

$newClear = fnDecrypt($crypted, $Pass);
echo "Decrypted: ".$newClear."</br>";

function fnEncrypt($sValue, $sSecretKey) {
    return trim(base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $sSecretKey, $sDecrypted, MCRYPT_MODE_ECB, mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB), MCRYPT_RAND))));
}

function fnDecrypt($sValue, $sSecretKey) {
    return trim(mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $sSecretKey, base64_decode($sEncrypted), MCRYPT_MODE_ECB, mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB), MCRYPT_RAND)));
}
Run Code Online (Sandbox Code Playgroud)

结果是:

加密: boKRNTYYNp7AiOvY1CidqsAn9wX4ufz/D9XrpjAOPk8=

解密: —‚(ÑÁ ^ yË~F'¸®Ó–í œð2Á_B‰Â—

php encryption cryptography aes encryption-symmetric

46
推荐指数
6
解决办法
20万
查看次数

如何从商店导出不可导出的私钥

我需要从Windows商店导出私钥.如果密钥被标记为不可导出,我该怎么办?我知道有可能,程序越狱可以导出这个密钥.

要导出密钥,我使用Org.BouncyCastle.Security.DotNetUtilities.GetKeyPair()该导出密钥(RSACryptoServiceProvider)cryptoProv.ExportParameters(true).导出的密钥我Org.BouncyCastle.Cms.CmsSignedDataGenerator用于CMS签名.

我需要.Net的解决方案,但任何解决方案都会很有用.谢谢.

.net encryption bouncycastle rsacryptoserviceprovider

46
推荐指数
4
解决办法
10万
查看次数

安全和身份验证:SSL与SASL

我的理解是SSL将加密算法(如AES,DES等)与密钥交换方法(如Diffier-Hellman)相结合,在不安全的网络(如Internet)上的两个端点之间提供安全的加密和识别服务. .

我的理解是SASL是一个MD5/Kerberos协议,几乎可以做同样的事情.

所以我的问题是:选择两者的优缺点是什么,哪些方案更适合?基本上,我正在寻找一些选择SSL时要遵循的指导方针或改为使用SASL.提前致谢!

encryption ssl md5 kerberos sasl

46
推荐指数
2
解决办法
4万
查看次数

什么是C/C++中最好的加密库?

什么是C/C++中最好的加密库在以下方面:

  • 质量
  • 便于使用
  • 可读性
  • 可移植性
  • 性能

你最喜欢什么,为什么喜欢它?

c c++ encryption

45
推荐指数
5
解决办法
8万
查看次数