- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我目前正在使用Windows的高安全性Web服务器上工作(我知道,如果由我决定,它将是OpenBSD)Server 2012。
在研究密码套件的选择并加快了解哪些被认为最强和什么不是最强时,我有几个问题。
最佳答案
抱歉,下面的格式。我将尝试按主题对它们进行分组,因此这意味着一些问题会被多次访问且无序。
It is my understanding that as of OpenSSL 1.0.1e (or current TLS 1.2) that block ciphers (specifically AES and Camellia) are no longer vulnerable to cache timing side-channel attacks.
It is my understanding that as of OpenSSL 1.0.1e (or current TLS 1.2) that block ciphers (specifically AES and Camellia) are no longer vulnerable to cache timing side-channel attacks.
T = Auth(m)
C = Enc(m||t)
Send {C} to peer
C = Enc(m)
T = Auth(C)
Send {C || T} to peer
C
进行身份验证的密文
T
。填充预告片不会显示自己,因为从未执行过解密。
C = Enc(m)
T = Auth(m)
Send {C || T} to peer
For all normal intents and purposes RC4 is completely broken. Don't use it. Is this a correct blanket statement?
... While the RC4 algorithm is known to have a
variety of cryptographic weaknesses (see [26]
for an excellent survey), it has not been previously
explored how these weaknesses can be exploited
in the context of TLS. Here we show that new and
recently discovered biases in the RC4 keystream
do create serious vulnerabilities in TLS when using
RC4 as its encryption algorithm.
Knowing #1, it is now safe to say that block ciphers in CBC mode are once again safe, even though that there are a few known weak attack vectors that simplify them slightly.
Knowing #1, it is now safe to say that block ciphers in CBC mode are once again safe, even though that there are a few known weak attack vectors that simplify them slightly.
SHA1 has known collisions, SHA2-256 is the new minimum known secure standard, correct?
SHA1 has known collisions, SHA2-256 is the new minimum known secure standard, correct?
SHA1 has known collisions, SHA2-256 is the new minimum known secure standard, correct?
Ephemeral keys are are the only way to achieve perfect forward secrecy using OpenSSL or TLS 1.2, correct?
Ephemeral keys are are the only way to achieve perfect forward secrecy using OpenSSL or TLS 1.2, correct?
next = Hash( current)
破坏该属性。
Is there a mathematical or probability reason to consider GCM safer than CBC after the current round of OpenSSL updates?
ECDHE-RSA-AES256-GCM-SHA384
),您可以控制算法(例如
ECDHE
,
RSA
,
AES256
,
SHA384
)并控制协议(protocol)(例如TLSv1.2)。
SSLv23_method
方法,然后使用SSL_CTX_set_options
调用SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3
。这使您可以使用TLSv1.0及更高版本。 SSL_OP_NO_COMPRESSION
也可能是一个好主意。您仍然需要注意更高级别的压缩泄漏,这是因为SPDY和HTTP等协议(protocol)的BREACH造成的。 SSL_set_cipher_list
进行设置。不要将密码套件与RC4或MD5之类的算法一起使用。下面的示例字符串也删除了RC4
和SHA1
(以及其他较小的密码)。 SSL_CTX_set_options
和SSL_OP_CIPHER_SERVER_PREFERENCE
进行选择来进行选择。 const char* const PREFERRED_CIPHERS = "kEECDH:kEDH:kRSA:AESGCM:AES256:AES128:3DES:"
"!MD5:!RC4:!aNULL:!eNULL:!EXP:!LOW:!MEDIUM:!ADH:!AECDH";
int res = SSL_set_cipher_list(ssl, PREFERRED_CIPHERS);
if(1 != res) handleFailure();
const char* const PREFERRED_CIPHERS =
/* TLS 1.2 only */
"ECDHE-ECDSA-AES256-GCM-SHA384:"
"ECDHE-RSA-AES256-GCM-SHA384:"
"ECDHE-ECDSA-AES128-GCM-SHA256:"
"ECDHE-RSA-AES128-GCM-SHA256:"
/* TLS 1.2 only */
"DHE-DSS-AES256-GCM-SHA384:"
"DHE-RSA-AES256-GCM-SHA384:"
"DHE-DSS-AES128-GCM-SHA256:"
"DHE-RSA-AES128-GCM-SHA256:"
/* TLS 1.0 and above */
"DHE-DSS-AES256-SHA:"
"DHE-RSA-AES256-SHA:"
"DHE-DSS-AES128-SHA:"
"DHE-RSA-AES128-SHA:"
/* SSL 3.0 and TLS 1.0 */
"EDH-DSS-DES-CBC3-SHA:"
"EDH-RSA-DES-CBC3-SHA:"
"DH-DSS-DES-CBC3-SHA:"
"DH-RSA-DES-CBC3-SHA";
ClientHello
。这是限制公布为受支持的密码套件数量的另一个原因,因为每个密码套件都需要两个字节。因此,您可以将密码套件所需的大小从160个字节(每个密码套件80个)减少到大约30个字节(约15个密码套件)。
ClientHello
的
openssl s_client -connect www.google.com:443
。注意79个密码套件。
SecureTransport
的受影响版本,因此10.8至10.8.3仍将不起作用。而且某些版本的iOS可能会被破坏。
SSL_OP_SAFARI_ECDHE_ECDSA_BUG
作为上下文选项。有关详细信息,请参见
SSL_OP_SAFARI_ECDHE_ECDSA_BUG和
Apple are, apparently, dicks...。
t1_lib.c
,以确保
pref_list
不包括较弱的曲线。
PSK
是预共享 key ,而
SRP
是安全远程密码。我看到很多人都将
PSK
和
SRP
删除为错误的密码(例如,首选密码包括“!PSK:!SRP”)。实际上,通常不需要它们,因为没有人使用它们,但是它们也像
RC4
或
MD5
一样不错。实际上,它们是首选的,因为它们具有所需的安全性。
PSK
和
SRP
。它们是最可取的,因为它们提供了客户端和服务器的相互身份验证,并且不会遭受中间人拦截。也就是说,客户端和服务器都知道密码和 channel 设置成功,或者一个(或两者)都不知道密码或 key 而 channel 设置失败。他们不会以纯文本形式将用户名或密码放在网络上,因此恶意服务器或对手在攻击过程中一无所获。
PSK
和
SRP
具有“ channel 绑定(bind)”属性,这是重要的安全属性。在传统的基于RSA的SSL/TLS中,设置了安全 channel ,然后在不相交的步骤中将用户密码压入线路。如果客户端出错,并与恶意服务器建立了 channel ,则将用户名和密码提供给恶意服务器。在这种情况下,身份验证机制与下一层的工作是脱节的或“未绑定(bind)的”。
PSK
和
SRP
不会遇到未绑定(bind)的 channel ,因为绑定(bind)内置在协议(protocol)中。
关于openssl - 与我的xgf相比,OpenSSL 1.0.1e CipherSuites和TLS1.2混合信号更多,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17497742/
所以我目前正在研究 C 中的 POSIX 线程和信号编程。我的讲师使用 sigset(int sigNumber, void* signalHandlerFUnction) 因为他的笔记不是世界上最好
我正在制作一个 C++ 游戏,它要求我将 36 个数字初始化为一个 vector 。你不能用初始化列表初始化一个 vector ,所以我创建了一个 while 循环来更快地初始化它。我想让它把每个数字
我正在尝试让 Python 发送 EOF信号 (Ctrl+D) 通过 Popen() .不幸的是,我找不到任何关于 Popen() 的引用资料。 *nix 类系统上的信号。这里有谁知道如何发送 EOF
我正在尝试让 Python 发送 EOF信号 (Ctrl+D) 通过 Popen() .不幸的是,我找不到任何关于 Popen() 的引用资料。 *nix 类系统上的信号。这里有谁知道如何发送 EOF
我正在学习编码并拥有一个实时的 Django 项目来保持我的动力。在我的 Django 应用程序中,用户留下评论,而其他人则回复所述评论。 每次用户刷新他们的主页时,我都会计算他们是否收到了关于他们之
登录功能中的django信号有什么用?用户已添加到请求 session 表中。那么 Django auth.login 函数中对信号的最后一行调用是什么? @sensitive_post_param
我已经将用户的创建与函数 create_user_profile 连接起来,当我创建我的用户时出现问题,我似乎连接的函数被调用了两次,而 UserProfile 试图被创建两次,女巫触发了一个错误 列
我有一个来自生产者对象处理的硬件的实时数据流。这会连接到一个消费者,该消费者在自己的线程中处理它以保持 gui 响应。 mainwindow::startProcessing(){ QObje
在我的 iPhone 应用程序中,我想提供某种应用程序终止处理程序,该处理程序将在应用程序终止之前执行一些最终工作(删除一些敏感数据)。 我想尽可能多地处理终止情况: 1) 用户终止应用 2) 设备电
我试图了解使用 Angular Signals 的优势。许多解释中都给出了计数示例,但我试图理解的是,与我下面通过变量 myCount 和 myCountDouble 所做的方式相比,以这种方式使用信
我对 dispatch_uid 的用法有疑问为信号。 目前,我通过简单地添加 if not instance.order_reference 来防止信号的多次使用。 .我现在想知道是否dispatch
有时 django 中的信号会被触发两次。在文档中,它说创建(唯一)dispatch_uid 的一个好方法是模块的路径或名称[1] 或任何可哈希对象的 ID[2]。 今天我尝试了这个: import
我有一个用户定义的 shell 项目,我试图在其中实现 cat 命令,但允许用户单击 CTRL-/ 以显示下一个 x 行。我对信号很陌生,所以我认为我在某个地方有一些语法错误...... 主要...
http://codepad.org/rHIKj7Cd (不是全部代码) 我想要完成的任务是, parent 在共享内存中写入一些内容,然后 child 做出相应的 react ,并每五秒写回一些内容
有没有一种方法可以找到 Qt 应用程序中信号/槽连接的总数有人向我推荐 Gamma 射线,但有没有更简单的解决方案? 最佳答案 检查 Qt::UniqueConnection . This is a
我正在实现一个信号/插槽框架,并且到了我希望它是线程安全的地步。我已经从 Boost 邮件列表中获得了很多支持,但由于这与 boost 无关,我将在这里提出我的未决问题。 什么时候信号/槽实现(或任何
在我的代码中,我在循环内创建相同类型的新对象并将信号连接到对象槽。这是我的试用版。 A * a; QList aList; int aCounter = 0; while(aCounter aLis
我知道 UNIX 上的 C 有 signal() 可以在某些操作后调用某些函数。我在 Windows 上需要它。我发现了,它存在什么 from here .但是我不明白如何正确使用它。 我在 UNIX
目前我正在将控制台 C++ 项目移植到 Qt。关于移植,我有一些问题。现在我的项目调整如下我有一个派生自 QWidget 的 Form 类,它使用派生自 QObject 的其他类。 现在请告诉我我是否
在我的 Qt 多线程程序中,我想实现一个基于 QObject 的基类,以便从它派生的每个类都可以使用它的信号和槽(例如抛出错误)。 我实现了 MyQObject : public QObject{..
我是一名优秀的程序员,十分优秀!