标签: encryption

为什么密码错误导致"填充无效且无法删除"?

我需要一些简单的字符串加密,所以我写了下面的代码(从这里有很多"灵感" ):

    // create and initialize a crypto algorithm
    private static SymmetricAlgorithm getAlgorithm(string password) {
        SymmetricAlgorithm algorithm = Rijndael.Create();
        Rfc2898DeriveBytes rdb = new Rfc2898DeriveBytes(
            password, new byte[] {
            0x53,0x6f,0x64,0x69,0x75,0x6d,0x20,             // salty goodness
            0x43,0x68,0x6c,0x6f,0x72,0x69,0x64,0x65
        }
        );
        algorithm.Padding = PaddingMode.ISO10126;
        algorithm.Key = rdb.GetBytes(32);
        algorithm.IV = rdb.GetBytes(16);
        return algorithm;
    }

    /* 
     * encryptString
     * provides simple encryption of a string, with a given password
     */
    public static string encryptString(string clearText, string password) {
        SymmetricAlgorithm algorithm = getAlgorithm(password);
        byte[] clearBytes = System.Text.Encoding.Unicode.GetBytes(clearText); …
Run Code Online (Sandbox Code Playgroud)

.net c# encryption exception

40
推荐指数
3
解决办法
7万
查看次数

为什么使用带有CBC模式的非随机IV是一个漏洞?

我理解IV的目的.特别是在CBC模式下,这确保了使用相同密钥加密的2条消息中的第一条块将永远不会相同.但是,如果IV是连续的,为什么它是一个漏洞呢?根据CWE-329 NON-Random IV允许字典攻击的可能性.我知道在实践中像WEP这样的协议不会隐藏IV.如果攻击者拥有IV和密文短信,那么这就打开了对密钥进行字典攻击的大门.我不知道随机iv如何改变这一点.(我知道对wep的攻击比这更复杂.)

随机静脉注射有什么安全优势?这仍然是"理想分组密码"的问题吗?(一种完全安全的分组密码,没有可能的弱点.)

security encryption cryptography

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

如何加密web.config中的一个条目

ASP.NET 4

我在我的Web场上的web.config中对连接字符串使用了RSA密钥加密.但是,还有一个我要加密的自定义密码条目.如何使用RSA密钥对其进行加密,而不对其余配置进行加密.请指教,谢谢.

例:

  <appSettings>
        ...
    <add key="Host" value="www.foo.com" />
    <add key="Token" value="qwerqwre" />
    <add key="AccountId" value="123" />
    <add key="DepartmentId" value="456" />
    <add key="Password" value="asdfasdf" />
    <add key="SessionEmail" value="foo@foo.com" />
    <add key="DefaultFolder" value="789" />
  </appSettings>
Run Code Online (Sandbox Code Playgroud)

asp.net encryption web-config

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

我的PHP登录系统有多安全?

我是PHP新手,这也是我的第一个登录系统,所以如果你们可以查看我的代码,看看你是否能发现任何安全漏洞,那将是很棒的:

注意:虽然此处未显示,但我正在清理所有用户输入.

注册:

第1步:我获取用户选择的密码并通过此功能运行它:

encrypt($user_chosen_password, $salt);

function encrypt($plain_text, $salt) {
    if(!$salt) {
        $salt = uniqid(rand(0, 1000000));
    }
    return array(
        'hash' => $salt.hash('sha512', $salt.$plain_text),
        'salt' => $salt
    );
}
Run Code Online (Sandbox Code Playgroud)

第2步:然后我将哈希和salt($password['hash']$password['salt'])存储在数据库的users表中:

id | username | password  | salt       | unrelated info...
-----------------------------------------------------------
1  | bobby    | 809a28377 | 809a28377f | ...
                fd131e5934
                180dc24e15
                bbe5f8be77
                371623ce36
                4d5b851e46
Run Code Online (Sandbox Code Playgroud)

登录:

步骤1:我获取用户输入的用户名并查看数据库以查看是否返回了任何行.在我的网站上,没有2个用户可以共享相同的用户名,因此用户名字段始终具有唯一值.如果我返回1行,我会抓住该用户的盐.

步骤2:然后我通过加密功能运行用户输入的密码(如上所述),但这次我还提供从数据库检索到的盐:

encrypt($user_entered_password, $salt);
Run Code Online (Sandbox Code Playgroud)

第3步:我现在有一个正确的密码来匹配这个变量:$password['hash'].所以我在数据库上进行第二次查找,看看输入的用户名和散列密码是否一起返回一行.如果是,那么用户的凭证是正确的.

步骤4:为了在用户凭证通过后记录用户,我生成一个随机唯一字符串并对其进行哈希处理:

$random_string = uniqid(rand(0, 1000000));
$session_key = hash('sha512', …
Run Code Online (Sandbox Code Playgroud)

php security authentication encryption login

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

加密和安全的docker容器

我们都知道当你无法开源并自由分发软件的情况时 - 我处于其中一种情况.

我有一个应用程序,包含许多二进制文件(从C源代码编译)和python代码,它将所有二进制文件包装到一个系统中.此应用程序曾用作云解决方案,因此用户可以通过网络访问应用程序功能,但无法触摸存储二进制文件和代码的实际服务器.

现在我们想要提供我们系统的"本地"版本.该应用程序将在我们的用户将拥有的PC上运行.我们知道一切都可能被打破,但至少要保护应用程序尽可能保护可能的复制和逆向工程.

我知道docker是一个很棒的部署工具,所以我想知道:有可能创建加密的docker容器,没有人能看到容器文件系统中存储的任何数据吗?这个问题有一个已知的解决方案吗?

另外,也许有一些众所周知的解决方案不是基于docker的?

python security encryption docker

40
推荐指数
5
解决办法
2万
查看次数

用于android的sqlite加密

我很难找到在Android设备上加密我的sqlite数据库的可能性,但我找不到令人满意的解决方案.

我需要像libary这样的东西来引用,以便在使用正常的sqlite函数时对我的数据库进行"动态"加密/解密.

我不希望在存储之前加密数据.

我不想加密整个数据库文件,以便在使用之前解密它.

我知道以下项目:

但我找不到任何有关此事的实例.

顺便说一句,我绝对愿意购买商业版本,但我必须在花费几百美元之前测试它.

有没有人为他自己解决这个问题?

编辑:问题由commonsWare解决,如果您按照他的链接: SQLCypher端口到Android 您将能够下载必要的文件,并且必须将它们添加到您的项目.这可能如下所示: 在此输入图像描述

sqlite encryption android

39
推荐指数
1
解决办法
3万
查看次数

RSA令牌如何运作?

我想了解RSA令牌(SecurID)是如何工作的,那里使用的算法是什么,它是否与常规RSA加密/解密算法相同?

encryption algorithm cryptography rsa access-token

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

Objective C中的RSA实现

我正在使用Objective-C中的一个简单应用程序RSA Algorithm.我想在服务器/客户端通信上使用它.我需要iOS/iPhone中的RSA算法实现方面的帮助.

  • 我有加密和解密的知识.
  • 我想要一个开源库或代码添加到我的项目中.
  • 我必须去CommonCryptor.h.

iphone encryption rsa objective-c ios

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

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

在我公司的MySQL数据库中加密客户信息的最佳方法?

长话短说,我们公司最近有一个入侵,我们的MySQL数据库被丢弃和被盗.高管们现在非常紧张,除了提高其他安全措施外,他们还打算加密数据库中的所有客户信息(电子邮件地址,家庭住址,姓名等).

我不确定从哪里开始.我们运行PHP应用程序.显然,这会产生一些我们想要最小化的额外开销.另一个问题是在使用新加密字段的任何地方都难以更改代码.

这对我来说是一种不必要的预防措施,但管理层似乎坚定不移.

什么类型的加密算法/方法最适合此用例?

php mysql security encryption

38
推荐指数
1
解决办法
8万
查看次数