草庐IT

Cryptography

全部标签

c - 验证 Authenticode 签名是否来 self 们公司,用于自动更新程序

我正在实现自动更新功能,需要一些关于如何使用最佳实践安全地执行此操作的建议。我想使用下载文件的Authenticode签名来验证它是否可以安全运行(即来self们公司并且没有被篡改)。我的问题与问题#2008519非常相似。底线问题:检查自动更新功能的Authenticode签名的最佳、最安全的方法是什么?应检查证书中的哪些字段?要求是:(1)检查签名是否有效,(2)检查它是我的签名,(3)当我的证书过期并且我得到一个新证书时,老客户仍然可以更新。这是我研究的一些背景信息/想法:我相信这可以分为两个步骤:验证签名是否有效。我相信这应该很容易使用WinVerifyTrust,如http:

c - Microsoft Crypto API 禁止使用 RSAES-OAEP key 传输算法

我正在使用CryptEncryptMessage生成PKCS#7封装的消息。我正在使用szOID_NIST_AES256_CBC作为加密算法。生成的消息似乎是有效的,但是RSAES-OAEP对于在野外支持有限的关键传输算法(Thunderbird、OpenSSLSMIME模块等不支持它)。我希望CAPI恢复到旧版本RSAencryption用于key传输。有没有办法做到这一点,如果有办法而不是使用CryptEncryptMessage,我可以恢复到低级消息传递功能。但即使使用低级函数,我也找不到办法做到这一点。代码:CRYPT_ENCRYPT_MESSAGE_PARAEncryptMe

node.js - NodeJS 加密 : re-use cipher object to improve performance

我想要nodejs和加密的MongoDB数据库。我担心性能。考虑以下用例:我有一个加密数据库,我从中检索加密字符串列表(例如名称)[_encrypted_name_1,_encrypted_name_2,...]我想解密该列表中的所有元素因为我很关心性能,所以我做了一些测试来解决这个问题。我观察到,与加密/解密非常大的字符串相比,加密/解密大量小字符串的速度非常慢。考虑以下示例:varcrypto=require('crypto'),_=require('lodash'),encryptedStringArray=[],decryptedStringArray=[],encrypted

windows - 加密的 RSA key 不适用于 Windows 中的 MongoDB

我正在尝试使用MongoDB创建X.509身份验证。它在Linux中运行良好,但MongoClient在Windows中的这一步给我带来了问题。我的client.pem看起来像这样-----BEGINCERTIFICATE-----MIIDOjCCAiICAQMwDQYJKoZIhvcNAQELBQAwYTELMAkGA1UEBhMCQVUxDDAKBgNV..............BgHF6LZFIyTXqiOnrHI=-----ENDCERTIFICATE----------BEGINRSAPRIVATEKEY-----Proc-Type:4,ENCRYPTEDDEK-Info:

数据库 | AES 加密()/解密()

我需要以可解密的方式加密一个字符串。最好的方法是通过给定的密码来获得一点保护。安全性在这里并不那么重要。到目前为止我选择了AES_ENCRYPT()但无法解密它。加密:SELECTAES_ENCRYPT('test','test')输出:87bd903885943be48a4e68ab63b0ec6a解密:SELECTAES_DECRYPT('87bd903885943be48a4e68ab63b0ec6a','test')输出:NULL!简单的问题:我到底为什么不能解密它?在网上找不到任何相关信息。如果解决方案变得太大(我喜欢简单),我也可以使用另一种加密方法。非常感谢!MySQL客

c# - 如何在 C# 中验证加盐和散列密码

我使用下面的方法对密码进行加盐和散列处理publicstringCreateSalt(intsize){varrng=newSystem.Security.Cryptography.RNGCryptoServiceProvider();varbuff=newbyte[size];rng.GetBytes(buff);returnConvert.ToBase64String(buff);}publicstringGenerateSHA256Hash(Stringinput,Stringsalt){byte[]bytes=System.Text.Encoding.UTF8.GetBytes

mysql - MySQL 中的加盐和散列密码

我正在寻找一种使用盐来存储和验证mysql密码的方法。我无法访问PHP或任何其他加密软件。我知道PASSWORD()函数,但不允许加盐。还有其他选择吗? 最佳答案 我假设既然你在谈论盐,你真的是指哈希,这是一种单向密码学形式,而不是加密。哈希保证给定的输入值总是产生相同的输出值。使用安全哈希算法,除了尝试哈希函数中的每个明文值之外,没有更好的方法来导出原始明文。虽然SHA1可能足以保护许多系统的密码,但肯定有更好的哈希算法。然而,SHA1在MySQL中可用。虽然SHA1()MySQL函数不接受单独的加盐参数,但您仍然可以加盐您的密码

php mysql_connect 安全

如果Web服务器和数据库服务器在不同的主机上,当您在PHP代码中使用mysql_connect时,黑客是否有可能进行数据包嗅探或使用其他方法获取数据库用户名/密码? 最佳答案 是的,可以嗅探mysql_connect()。密码是"scrambled",但这不会阻止攻击者。所有查询都以纯文本形式通过网络发送,如果您正在嗅探TCP序列ID,则经过身份验证的session可能会被劫持。您必须使用完整的传输层加密,这可以使用MYSQL_CLIENT_SSLflag如果您担心这种攻击。如果您要通过Internet或其他不受信任的网络建立mys

mysql - 如何加强Mysql数据库服务器的安全性?

如果我们为所有文件使用server1(文件服务器),为mysql数据库(数据库服务器)使用server2。server1中的网站为了访问server2中的数据库,是否需要连接到第二个(mysql服务器)的ip地址?在本例中,是远程mysql连接。但是,我从一些人的评论中看到了安全问题。远程访问MySQL不是很安全。当您的远程计算机首次连接到您的MySQL数据库时,密码在通过Internet传输之前会被加密。但在那之后,所有数据都以未加密的“纯文本”形式传递。如果有人能够查看您的连接数据(例如“黑客”从您使用的未加密WiFi连接中捕获数据),则该人将能够查看您的部分或全部数据库。所以我只

mysql - MySQL 是否有加密安全的随机数生成器?

到目前为止,我一直在使用PHP创建密码安全的随机值,使用openssl_random_pseudo_bytes.我想在存储的函数中生成加密安全token,我正在寻找的是RAND(),还是它不是加密安全的? 最佳答案 我也在研究同样的问题。RANDOM_BYTES(len)似乎是我们一直在寻找的解决方案https://dev.mysql.com/doc/refman/5.7/en/encryption-functions.html#function_random-bytes会使用像HEX(RANDOM_BYTES(length_of_