问候,
我目前正在开发一个涉及登录系统的项目,该系统旨在尽可能安全地进行设置.
我要问的是,MD5中的每个元素(从密码字段获取)是否值得,通过它向每个要使用MD5进行哈希处理的char元素添加一个salt,完成后,添加全部从每个角色的哈希值,然后添加一个单独的盐,然后MD5再次?
这实际上是安全的,还是只是矫枉过正?
我将首先解释一下这个场景:
我在计算机A内的IE浏览器我有一个插件,这样我就可以访问该文档对象的IE浏览器,这样我就可以抢在给定时间内的cookie.
我想将该cookie转移到另一台计算机B中的新浏览器.
为了在新计算机BI中启动浏览器使用InternetExplorer对象,我可以使用对象实例控制浏览器,但我不知道如何将第一台计算机A的cookie"注入"到新创建的IE浏览器.
我试过两种方法.
首先,我尝试在使用WinInet API InternetSetCookie启动浏览器之前编写cookie .
其次,我试图拦截BeforeNavigate2事件并在HTTP请求的标头中设置cookie.
但这些都没有奏效:(
是否可以在导航到网站之前在新的Internet Explorer中设置cookie,从而能够维护用户在之前的计算机中拥有的内容?
谢谢 :)
更新:我仍然遇到这个问题,并使用wireshark进行了一些其他调查.
在BeforeNavigate2的情况下,IExplore只是忽略标题中的"Cookie:"值.
在InternetSetCookie的情况下,它似乎正常工作.它创建常规IExplore导航创建的相同文件,但是当您转到该页面时,IE将忽略包含cookie的文件.
我用来编写cookie的代码是:
string cookie = "COOKIEVALUES";
InternetSetCookie("http://www.facebook.com/", "", cookie+";expires=Sat, 08-Jan-2014 00:00:00 GMT");
Run Code Online (Sandbox Code Playgroud) 我正在使用jQuery函数来克隆包含一组输入元素的DIV:
<div class="history-form-fields">
<div class="row">
<label for="History_0_type">Type</label>
<select name="History[0][type]" id="History_0_type">
<option value="">Select</option>
</select>
</div>
<div class="row">
<label for="History_0_name">Name</label>
<input type="text" name="History[0][name]" id="History_0_name" />
</div>
<div class="row">
<label for="History_0_year">Year</label>
<select name="History[0][year]" id="History_0_year">
<option value="">Select</option>
</select>
</div>
</div>
<input id="addAnother" type="button" value="Add Another" />
Run Code Online (Sandbox Code Playgroud)
当克隆此DIV时,需要修改输入元素NAME和ID标记,以便我们可以识别服务器端脚本中的数据.
我有以下代码克隆DIV并修改INPUT和SELECT标记:
var counter = 0;
$('#addAnother').click(function(){
var divCloned = $('.history-form-fields:first').clone();
divCloned.insertAfter('.history-form-fields:last');
initNewInputs(divCloned.children('.row'), ++counter);
});
function initNewInputs(divs, idNumber)
{
var inputs = divs.children('input, select').get(); // find all the INPUT and SELECT tags
for(var i in inputs)
{
inputs[i].id …Run Code Online (Sandbox Code Playgroud) 在输入框或contenteditable = true div中,如何修改字母"a"的按键以返回字母"b"的按键?即,每次在div中键入字母"a"时,输出实际上是字母"b".
我并不关心在IE中运行的解决方案 - 只适用于Safari,Chrome和FF.
在Chrome中,我可以看到按键事件具有属性"charCode","keyCode"和"which",所有这些属性都被分配了按键事件编号.如果我在一个按键触发一个事件,我可以修改这些值,但我无法弄清楚如何返回,使得被输入的实际密钥是不同的.例如:
$(window).keypress(function(e){ //$(window) is a jQuery object
e.charCode = 102;
e.which = 102;
e.keyCode = 102;
console.log(e);
return e;
});
Run Code Online (Sandbox Code Playgroud)
我还可以看到,除了charCode,和keyCode之外,还有一个"originalEvent"属性,而这个属性又具有这些属性.但是,我无法修改那些(我试过像e.originalEvent.charCode = 102这样的东西).
我需要一个include只包含文件的函数/语句.PHP中有一个吗?
您可能建议使用@include但该方法存在问题 - 如果要包含的文件存在,如果解析器在包含的文件中发现错误,PHP将不会输出警告.
有一种简单的方法来创建Java的子类enum吗?
我问这个是因为我喜欢其中10个实现相同的接口,但是它们对于某些方法也有相同的实现,所以我想通过将所有相同的实现放在扩展的中间对象中来重用代码Enum,它也是超类我需要的所有其他人
也许它不像我想的那么简单?
预先感谢
我想从double值中获取十进制值.
例如:
23.456 -> 0.456
11.23 -> 0.23
Run Code Online (Sandbox Code Playgroud)
任何人都可以让我知道如何在C#中做到这一点?
谢谢,马赫什
我有一个Windows窗体,我有一个类检查文本文件,以确保它具有某些方面.现在我在构造函数中有方法,它看起来有点奇怪.我应该将构造函数留空,并实现一个start()类型方法并调用它?到目前为止我的代码看起来像这样
public class Seating
{
private int segments = 0;
public Seating()
{
checkInvoice();
getSegmentCount();
}
}
Run Code Online (Sandbox Code Playgroud) 我有两个菜鸟问题:
1)为什么node.js在一个线程中运行?为什么不只是使用过程本身?或者在线程而不是进程中运行它有什么好处?
2)如果进程中的某个线程崩溃会发生什么(我知道,未处理的异常将导致进程退出),但是如果它正确捕获会发生什么?或者像浮点异常这样的例外.这个过程也会崩溃吗?
我只知道对齐内存分配的基本思路.但我并不关心对齐问题,因为我不是汇编程序员,也没有MMX/SIMD的经验.而且我认为这是过早优化之一.
这些天人们越来越多地谈论缓存命中,缓存一致性,大小优化等.一些源代码甚至分配在CPU缓存行上显式对齐的内存.
坦率地说,我不知道我的i7 CPU的缓存行大小是多少.我知道大尺寸对齐没有坏处.但是没有SIMD会真的得到回报吗?
假设程序中有100000项100字节数据.访问这些数据是该计划最密集的工作.
如果我们改变数据结构并使所有100字节大小的数据按16字节对齐,是否可以获得显着的性能增益?10%?5%?