问题标签 [sha]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows - windows如何管理用户和密码?
我正在研究Linux和Windows的加密方法。
我知道 Linux 通过影子文件 (/etc/shadow) 管理他的密码,通过MD5或SHA加密每个密码(大部分)并将它们保存在该文件中,但是 windows 使用哪个文件来管理用户和密码?
有人可以给我一些解释或我可以阅读的任何网站吗?
haskell - 如何将浮点数小数部分的前 32 位转换为 Word32?
说我有一个浮动。我想要这个浮点数小数部分的前 32 位?具体来说,我正在考虑让这部分 sha256 伪代码工作(来自维基百科)
我天真地尝试做 floor (((sqrt 2) - 1) * 2^32),然后将返回的整数转换为 Word32。这似乎根本不是正确的答案。我想通过乘以 2^32 次幂,我实际上是左移了 32 个位置(在地板之后)。显然,情况并非如此。无论如何,总而言之,我如何生成 h[0..7] ?
security - hmac 密钥和盐长度
我正在使用 hmac sha1 对传递给第三方服务的用户 ID 进行签名。所有用户都使用相同的秘密,并且每个用户的盐都是唯一的。
hmac 是否适用于短字符串?userid:timestamp 可以是例如 12:1304985212 盐和秘密的顺序重要吗?(salt+secret vs secret+salt) 共享密钥长度应该是多少,盐长度应该是多少?我可以使用相同的秘密来签署服务器和远程服务之间的消息,还是生成单独的秘密更好?
谢谢
ssl - SHA-2 在互联网安全中的作用是什么?
我正在做一些轻松有趣的阅读,我想得到一些澄清,请。
我知道 SSL 使用公钥加密技术并且是 HTTPS 连接背后的主干。SSL 中使用的加密可以是 AES-128、256 或其他。SHA 在安全中扮演安全连接的哪一部分?如果连接是安全的,并且使用 AES 加密,那么 SHA 在哪里发挥作用?
ios - 获取 MD5 和 SHA-1
我正在寻找在我的 iPhone 应用程序中获取 MD5 和 SHA-1 的帮助。谁能给我一个关于如何获得这些的想法?
linux - 在密码之后或之前,SALT 附加在密码的什么位置?
当您使用 GNU/Linux 时,密码(主要)被加密在 MD5 和 SHA 中
。操作系统在加密之前将 SALT 附加到该密码以避免字典攻击。
我的问题是,SO 在密码之前或之后在哪里附加 SALT?
例如,我的密码是:peter2011在加密之前,它是:
saltpeter2011还是peter2011salt ?
提前致谢。
我不知道你是否误解了我的问题,但我不是在问 Linux 如何存储他的密码,我是在问如何加密它,我的意思是:
encrypt_in_md5(saltpeter2011)或encript_in_md5(peter2011salt)
我知道 /etc/shadow 文件存储为 $salt&encripted_password
提前致谢!
encryption - 使用弱密码 bcrypt 或 SHA-256 + AES-256 加密文件?
我从一个弱密码(ex 为 8 个小写字符)和一个文件开始。我需要使用该密码加密该文件。结果必须能够抵御已知的攻击。
方法 1:我可以使用 SHA-256 对密码进行哈希处理,然后使用生成的哈希和文件作为 AES-256 的输入,从而得到一个加密文件。我知道 SHA-256 和 AES-256 都非常快。这不会使文件容易受到暴力攻击吗?
例如,是否可以抓取一个预先计算的 SHA-256 哈希表,并假设它是一个非常小的文件和一个非常弱的密码,尝试在合理的时间内使用该表中的每个哈希进行 AES-256 解密(几个个月使用专门的硬件)。
方法 2:使用 bcrypt。如果我理解正确,bcrypt 比 SHA-256 + AES-256 更适合加密文件,因为它的密钥生成方案有一个工作因素,可以产生更强的密钥。还是我错了?
我见过的 Ruby 和 Python 实现(包装器?)专注于使用 bcrypt 作为密码的散列方案,而不是密码本身。我什至可以使用 bcrypt 来散列弱通行证并“一步”加密文件吗?
方法 3:使用 bcrypt 对 pass 进行散列,使用该散列和文件作为 AES-256 的输入,给我加密文件。这解决了“生成密钥太快”的问题。(假设它是一个问题。)但是,bcrypt 哈希是 448 位长,而 AES-256 需要一个 256 位的密钥。天真的解决方案是简单地删除散列的尾随位并将其用作 AES-256 的密钥。我不会走这条路,因为我对密码学知之甚少,不知道后果是什么。
编辑:我不能给通行证加盐,因为这是离线应用程序。IE。没有合理的地方存放盐。我可以对通行证进行加盐并将未加密的加盐与加密文件一起存储。如果说数据库遭到破坏,盐几乎本质上是公开/可见的。盐的目的是防止彩虹表攻击。感谢尼莫,下面。
java - 如何减小 SHA1 的大小?
我有一个问题,也许是一个愚蠢的问题,我想在使用 SHA1 算法散列后将数据存储在数据库中。但是,在未来的某个时间,由于 SHA1 中的 size words 很大,数据库中的大小会增加。
我们可以减小 SHA1 算法的大小,也许是一半。我为我愚蠢的问题和我糟糕的英语感到抱歉。谢谢。:D
我正在使用 JAVA。
java - Java:如何为文件创建 SHA-1?
在纯 Java6 中为非常大的文件创建 SHA-1 的最佳方法是什么?如何实现此方法:
tomcat - 如何在 tomcat6 中使用带有 BASIC 身份验证的散列密码?
我想在 tomcat-users.xml 中使用带有 BASIC 身份验证的散列密码。我在领域定义中添加了 digest="SHA"。UserDatabase 部分在 $TOMCAT_HOME/conf/server.xml 中定义如下:
但重启后,tomcat 仍将 $TOMCAT_HOME/conf/tomcat-users.xml 密码中定义的所有密码视为纯文本密码。
即,我可以使用用户名/密码 guest/e5e9fa1ba31ecd1ae84f75caaa474f3a663f05f4 登录,但不能使用应有的 guest/secret 登录。
请指出我做错了什么?