我正在做关于MD5碰撞的演讲,我想让人们知道碰撞的可能性.
最好有两个文本块对同一个东西进行哈希处理,并解释在碰撞之前需要多少[a-zA-Z]组合.
显而易见的答案是哈希每个可能的组合,直到两个哈希相同.那么你将如何编写这个呢?作为一个快速实验,我尝试散列5列[AZ]的每个组合,将其存储在.net哈希表中并捕获碰撞异常.这有两个问题 - 哈希表最终超时,我很确定我需要更多的字符.
显然这个数据结构太大而无法在内存中处理,所以现在我必须要涉及一个数据库.听起来像是一个测试天蓝色的好项目 - 有点像这些家伙.
有人能指出我这样做的有效方法吗?
在本页面:
http://www.shutterfly.com/documentation/OflyCallSignature.sfly
它说,一旦你生成一个哈希你然后:
将哈希值转换为十六进制字符串
csharp中有代码可以执行此操作吗?
使用一些漂亮的标准C#代码来调整图像大小,并将其放在彩色背景上
Image imgToResize = Image.FromFile(@"Dejeuner.jpg");
Size size = new Size(768, 1024);
Bitmap b = new Bitmap(size.Width, size.Height);
Graphics g = Graphics.FromImage((Image)b);
g.InterpolationMode = InterpolationMode.HighQualityBicubic;
g.FillRectangle(Brushes.Green, 0, 0, size.Width, size.Height);
g.DrawImage(imgToResize, new Rectangle(0,150,768, 570));
b.Save("sized_HighQualityBicubic.jpg");
Run Code Online (Sandbox Code Playgroud)
结果在第0和第1列像素中有一个有趣的人工制品.第0列似乎与背景颜色混合,第1列变浅.
看到左上角放大了高质量的双三次和双三次.
..和HighQualityBilinear
这个论坛帖子似乎是有同样问题的人:具有锋利边缘的DrawImage
听起来像是我的错误?我可以理解为什么颜色会在调整大小的图像的顶部混合.但混合左/右边缘的颜色没有意义.有谁知道防止这些文物的修复?
更新:这里的评论非常相似:GDI + InterpolationMode
这里有一个有趣的ASP.NET FormsAuthentication功能,在这个SO答案中解释:如何在app域之间传递经过身份验证的会话
快速摘要; 您可以使用相同的加密密钥创建两个ASP.NET网站.WebsiteA可以创建一个formauth令牌,并使用查询字符串(或POST正文)中的令牌重定向到WebsiteB.在WebsiteB和ASP.NET中启用EnableCrossAppRedirects会检测令牌并创建formauth cookie.在代码中:
FormsAuthentication.RedirectFromLoginPage("alice", true);
FormsAuthenticationTicket ticket = new FormsAuthenticationTicket("Alice", true, 30);
string encrypted = FormsAuthentication.Encrypt(ticket);
Response.Redirect("http://siteb.dev/Secure/WebForm1.aspx?" + FormsAuthentication.FormsCookieName + "=" + encrypted);
Run Code Online (Sandbox Code Playgroud)
听起来像一个很棒的功能,但它在哪里记录?使用未记录的功能我会感到有些不安.
我看过的地方 - 在任何MSDN参考中都没有提到这个功能.我想也许RedirectFromLoginPage会像我上面的代码一样构建一个重定向,但事实并非如此.
我想为日志记录构建一个格式良好的异常字符串.从silverlight这样做,所以像nlog这样的选项(还没有),log4net不是一个选项.
任何人都看到了构建类似的代码:
ExceptionType: xxxx
Message: xxxx
StackTrace: XXX
InnerException
ExceptionType: xxxx
Message: xxxx
StackTrace: XXX
Run Code Online (Sandbox Code Playgroud)
我现在正在自己编写,只是希望有代码可以做更好的事情.
更新:当我得出与扎克相同的结论时,我正准备关闭这个q,但不会剥夺扎克的观点!:)
.ToString()看起来像这样:
System.Exception: I can't handle this ---> System.DivideByZeroException: Attempted to divide by zero. at MuckingAround.RussTest_Click(Object sender, RoutedEventArgs e) --- End of inner exception stack trace --- at MuckingAround.RussTest_Click(Object sender, RoutedEventArgs e) at System.Windows.Controls.Primitives.ButtonBase.OnClick() at System.Windows.Controls.Button.OnClick() at System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e) at System.Windows.Controls.Control.OnMouseLeftButtonUp(Control ctrl, EventArgs e) at MS.Internal.JoltHelper.FireEvent(IntPtr unmanagedObj, IntPtr unmanagedObjArgs, Int32 argsTypeIndex, String eventName)
假设我想从这个html中删除span标记:
<html><span>we do like <b>bold</b> stuff</span></html>
Run Code Online (Sandbox Code Playgroud)
我期待这段代码能够完成我所追求的目标
string html = "<html><span>we do like <b>bold</b> stuff</span></html>";
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(html);
HtmlNode span = doc.DocumentNode.Descendants("span").First();
span.ParentNode.RemoveChild(span, true); //second parameter is 'keepGrandChildren'
Run Code Online (Sandbox Code Playgroud)
但输出看起来像这样:
<html> stuff<b>bold</b>we do like </html>
Run Code Online (Sandbox Code Playgroud)
它似乎正在反转跨度内的子节点.难道我做错了什么?
我正在编写一个应用程序,以便更好地了解DKIM.规范说我从域TXT记录中检索"ASN.1 DER编码"公钥.我可以在"s1024._domainkey.yahoo.com"="MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDrEee0Ri4Juz + QfiWYui/E9UGSXau/2P8LjnTD8V4Unn + 2FAZVGE3kL23bzeoULYv4PeleB3gfm"上看到关键字.
如何从.net使用此密钥?我见过的例子从X509Certificate2或包含RSAParameters的XML文件中获取密钥.
更正:我从network-tools.com DNS工具上复制/粘贴了上面的密钥,该工具必须缩短它.nslookup给了我完整的密钥:
s1024._domainkey.yahoo.com文本= "K = RSA;吨= Y; P = MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDrEee0Ri4Juz + QfiWYui/E9UGSXau2P8LjnTD8V4Unn + 2FAZVGE3kL23bzeoULYv4PeleB3gfm" "JiDJOKU3Ns5L4KJAUUHjFwDebt0NP + sBK0VKeTATL2Yr/S3bTxhy + 1xtj4RkdV7fVxTn56Lb4udUnwuxK4V5b5PdOKj + XcwIDAQAB; N = A 1024位的密钥;"
所以abelenky与BASE64在正确的轨道上......
一旦我导航到URL,我可以检索WebBrowser控件中的HTML 吗?
也许我可以通过InvokeScript和ScriptNotify做一些javascript黑客攻击