程序设计

专业和发烧友程序员的问答

4
bcrypt如何内置盐?
Coda Hale的文章“如何安全存储密码”声称: bcrypt具有内置的盐,可以防止彩虹表攻击。 他引用了这篇论文,该论文说在OpenBSD的实现中bcrypt: OpenBSD从arcfour(arc4random(3))密钥流生成128位bcrypt盐,该密钥流以内核从设备时序收集的随机数据作为种子。 我不知道这怎么工作。在我的盐概念中: 每个存储的密码都需要不同,因此必须为每个密码生成一个单独的彩虹表 它需要存储在某个地方以便可重复:当用户尝试登录时,我们尝试输入密码,重复与最初存储密码时相同的盐和哈希程序,然后进行比较 当我将Devise(Rails登录管理器)与bcrypt一起使用时,数据库中没有salt列,因此感到困惑。如果盐是随机的并且没有存储在任何地方,我们如何可靠地重复哈希过程? 简而言之,bcrypt如何内置盐?

17
从父页面在iframe中调用JavaScript代码
基本上,我iframe在页面中嵌入了代码,并且iframe有一些JavaScript例程需要从父页面调用。 现在,相反的操作非常简单,您只需要调用parent.functionName(),但是不幸的是,我需要恰好相反。 请注意,我的问题是不会改变的源URL的iframe,但是调用在定义的函数iframe。
615 javascript  html  iframe 


8
设置git拉动所有分支
我想默认情况下推拉所有分支,包括新创建的分支。 我可以为它定义一个设置吗? 否则,当我在本地添加新分支并且想要从服务器中将其提取时,最简单的方法是什么? 我用相同的名称创建了一个新分支,并尝试拉,但它不起作用。向我询问分支的所有远程配置。我该如何设置。

29
如何使用Node.js解决“找不到模块”错误?
从GitHub提取模块并按照说明进行构建后,我尝试使用以下方法将其提取到现有项目中: > npm install ../faye 这似乎可以解决问题: > npm list /home/dave/src/server └─┬ faye@0.7.1 ├── cookiejar@1.3.0 ├── hiredis@0.1.13 └── redis@0.7.1 但是Node.js找不到模块: > node app.js node.js:201 throw e; // process.nextTick error, or 'error' event on first tick ^ Error: Cannot find module 'faye' at Function._resolveFilename (module.js:334:11) at Function._load (module.js:279:25) at Module.require (module.js:357:17) at …
615 node.js 

12
标签与Git中的分支有何不同?我应该在这里使用哪个?
我有一些困难,了解如何使用标签与分支在吉特。 我只是将代码的当前版本从 简历 至 吉特,现在我将为特定功能处理该代码的子集。其他一些开发人员也将对此进行研究,但并非我们小组中的所有开发人员都将在意此功能。我应该创建分支还是标签?在什么情况下我应该使用一种而不是另一种?



29
通过wget在Linux上下载Java JDK会显示在许可证页面上
当我尝试从Oracle下载Java时,我却最终下载了一个页面,告诉我我需要同意OTN许可条款。 抱歉! 为了从Oracle技术网下载产品,您必须同意OTN许可条款。 确保... 您的浏览器启用了“ cookies”并启用了JavaScript。 您单击了您要下载的产品的“接受许可”。 您在接受许可后的30分钟内尝试下载。 如何下载和安装Java?
615 java  linux  install  wget 

14
是什么杀死了我的程序,为什么?
我的应用程序在Linux上作为后台进程运行。当前在“终端”窗口的命令行中启动。 最近,一个用户执行该应用程序一段时间后,它神秘地死了。文本: 被杀 在航站楼上。这发生了两次。我问其他终端是否有人使用kill命令杀死进程?没有。 Linux在什么情况下会决定终止我的进程?我相信外壳程序显示为“ killed”,因为该进程在收到kill(9)信号后就死了。如果Linux发送了kill信号,那么系统日志中是否应该有一条消息说明为什么它被杀死了?
614 linux  process  kill  signals 



15
JSON字符串中的二进制数据。比Base64更好的东西
该JSON格式本身不支持二进制数据。必须对二进制数据进行转义,以便可以将其放入JSON中的字符串元素(即使用反斜杠转义的双引号中的零个或多个Unicode字符)。 逃脱二进制数据的一种明显方法是使用Base64。但是,Base64具有较高的处理开销。它还将3个字节扩展为4个字符,这导致数据大小增加了约33%。 一个用例是CDMI云存储API规范的v0.8草案。您可以使用JSON通过REST-Webservice创建数据对象,例如 PUT /MyContainer/BinaryObject HTTP/1.1 Host: cloud.example.com Accept: application/vnd.org.snia.cdmi.dataobject+json Content-Type: application/vnd.org.snia.cdmi.dataobject+json X-CDMI-Specification-Version: 1.0 { "mimetype" : "application/octet-stream", "metadata" : [ ], "value" : "TWFuIGlzIGRpc3Rpbmd1aXNoZWQsIG5vdCBvbmx5IGJ5IGhpcyByZWFzb24sIGJ1dCBieSB0aGlz IHNpbmd1bGFyIHBhc3Npb24gZnJvbSBvdGhlciBhbmltYWxzLCB3aGljaCBpcyBhIGx1c3Qgb2Yg dGhlIG1pbmQsIHRoYXQgYnkgYSBwZXJzZXZlcmFuY2Ugb2YgZGVsaWdodCBpbiB0aGUgY29udGlu dWVkIGFuZCBpbmRlZmF0aWdhYmxlIGdlbmVyYXRpb24gb2Yga25vd2xlZGdlLCBleGNlZWRzIHRo ZSBzaG9ydCB2ZWhlbWVuY2Ugb2YgYW55IGNhcm5hbCBwbGVhc3VyZS4=", } 是否有更好的方法和标准方法将二进制数据编码为JSON字符串?
613 json  base64 


2
Grunt,NPM和Bower之间的区别(package.json与bower.json)
我是使用npm和bower的新手,在emberjs中构建了我的第一个应用程序:)。 我确实有一些关于Rails的经验,所以我熟悉列出依赖项的文件(例如捆绑程序Gemfile)的概念 问:当我想添加一个包(并检查依赖性进入GIT),在那里它属于-成package.json或成bower.json? 从我所收集, 运行bower install将获取的包,并把它放在/vendor目录下, 运行npm install会取它,把它放进/node_modules目录。 这样的回答说,Bower用于前端,而npm用于后端。乍一看, Ember-app-kit似乎坚持了这种区别...但是gruntfile中的用于启用某些功能的指令给出了两个显式命令,因此我在这里完全感到困惑。 凭直觉我会猜到 npm install --save-dev软件包名称等同于将软件包名称添加到我的package.json中 bower install --save软件包名称可能与将软件包添加到我的bower.json并运行bower install相同。 如果是这样,我什么时候应该显式安装软件包而不将其添加到管理依赖项的文件中(除了全局安装命令行工具以外)?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.