我试图将通用文本中的SHA1与正则表达式匹配.
理想情况下,我想避免匹配单词.
可以肯定地说,完整的SHA1具有独特的模式(它们很长并且长度一致) - 所以我可以可靠地匹配它们 - 但是缩小的SHA1是什么?
我可以依赖数字的存在吗?
在我的提交日志中查看SHA1 - 数字始终显示在前3个字符中.但这太短了吗?在我可以假设一个数字出现之前,我需要考虑多少个SHA1字符?
这不一定是100%准确 - 我只需要在99%的时间内匹配缩写的SHA1.
我试图从一个字符串计算一个SHA-1哈希,但是当我使用php的sha1函数计算字符串时,我得到的东西比我在C#中尝试时有所不同.我需要C#来计算与PHP相同的字符串(因为php中的字符串是由我无法修改的第三方计算的).如何让C#生成与PHP相同的哈希?谢谢!!!
String = s934kladfklada@a.com
C#代码(生成d32954053ee93985f5c3ca2583145668bb7ade86)
string encode = secretkey + email;
UnicodeEncoding UE = new UnicodeEncoding();
byte[] HashValue, MessageBytes = UE.GetBytes(encode);
SHA1Managed SHhash = new SHA1Managed();
string strHex = "";
HashValue = SHhash.ComputeHash(MessageBytes);
foreach(byte b in HashValue) {
strHex += String.Format("{0:x2}", b);
}
Run Code Online (Sandbox Code Playgroud)
PHP代码(生成a9410edeaf75222d7b576c1b23ca0a9af0dffa98)
sha1();
Run Code Online (Sandbox Code Playgroud) 我并不是说这是一场辩论,但我正在努力理解为什么这么多应用程序使用SHA1来实现散列机密的技术原理,当SHA512更安全时.也许这仅仅是为了向后兼容.
除了明显更大的尺寸(128个字符对比40个)或轻微的速度差异外,还有其他原因让人们使用前者吗?
此外,我认为SHA-1几年前首先被VCR的处理器破解.有没有人破解512(可能还有吹叶机),或者没有盐腌仍然可以安全使用?
我在索引中添加了一个文件:
git add somefile.txt
Run Code Online (Sandbox Code Playgroud)
然后我得到了这个文件的SHA1:
git hash-object somefile.txt
Run Code Online (Sandbox Code Playgroud)
我现在有一个SHA1,我想使用SHA1检索索引中对象的文件名.
git show 5a5bf28dcd7944991944cc5076c7525439830122
Run Code Online (Sandbox Code Playgroud)
此命令返回文件内容,但不返回文件名.
如何从SHA1获取完整的文件名和路径?
我需要一个用Excel VBA编写的函数,它将使用标准算法(如SHA-1)对密码进行哈希处理.一些简单的界面,如:
Public Function CreateHash(Value As String) As String
...
End Function
Run Code Online (Sandbox Code Playgroud)
该功能需要在安装了Excel 2003的XP工作站上运行,否则必须不使用第三方组件.它可以引用和使用XP提供的DLL,例如CryptoAPI.
有没有人知道实现这种散列功能的样本?
将一些存储过程从MySQL转换为Microsoft SQL服务器.除了一个程序使用MySQL SHA1()函数外,一切进展顺利.我似乎无法在MS-SQL中找到相同的东西.
有没有人知道SHA1()MS-SQL上的有效等价物?
最近我用于开发的主机开始过热.我开始每天获得4或5次锁定.一切都冻结了.我的所有项目都使用git进行版本控制.
我记得看过Linus在谷歌的谈话时说git会确保文件没有损坏.在我的情况下,可以安全地假设git会在其中一个源文件损坏时警告我.
OS是Mac OS X 10.4文件系统是HFS +.
我正在使用谷歌地图Android API,我遇到了一些问题.
我正在用android studio签署我的apk(在.android/keystore.jks创建一个).我也选择"发布"作为其中的类型.我用过这个命令
keytool -list -v -keystore C:\Users\Toshiba\.android\keystore.jks
Run Code Online (Sandbox Code Playgroud)
从密钥库中获取SHA1指纹.
SHA1是正确的,但地图不会显示在已签名的APK上.它显示在调试APK中.
使用keytool和release keystore(keystore.jks)会得到我:
SHA1: 33:46:07:82:5B:D4:45:D2:60:CE:5A:29:97:9F:6C:44:XX:XX:XX:XX
Run Code Online (Sandbox Code Playgroud)
调试工作正常(我在谷歌的API控制台中添加了2)
33:46:07:82:5B:D4:45:D2:60:CE:5A:29:97:9F:6C:44:XX:XX:XX:XX;yac.breakingpoint
7C:28:61:5B:C3:4A:5C:50:44:AA:FD:58:69:E9:70:91:XX:XX:XX:XX;yac.breakingpoint
Run Code Online (Sandbox Code Playgroud)
XX被涂黑了.
keytool说它使用SHA256withRSA作为调试和发布密钥库的签名算法.
我究竟做错了什么?
更新 所以我尝试了一个新的API密钥,清理项目并重建它,新的密钥库 - 仍然无法发布...调试很好!
更新2 仍未找到工作解决方案......帮助我!
更新3好吧,使用带有构建类型调试的签名APK工作.提取CERT.RSA并运行keytool -printcert -file ./CERT.SA.获得与发布版本类型相同的结果.在发布它不起作用!
更新4 这是我做的另一个尝试:
/build文件夹不beeing COMMITED,因为他们在.gitignore文件中.那没起效.
更新5我的 一位朋友试图重现这个问题.使用android studio时,他有完全相同的问题.可能是android工作室的bug?
是否有任何输入SHA-1将计算为十四进制的十六进制值,即"0000000000000000000000000000000000000000"?
sha1 ×10
git ×3
hash ×3
android ×1
c ×1
c# ×1
cryptographic-hash-function ×1
cryptography ×1
excel ×1
google-maps ×1
mysql ×1
objective-c ×1
php ×1
sha512 ×1
sql ×1
sql-server ×1
t-sql ×1
vba ×1