我想知道根据不同的字符集破解哈希所需的数学时间.
例如,仅使用7个字母,US-ASCII字母字符,我们知道可以使用26 7个可能的序列.知道每分钟计算机可以生成多少这些可以让我了解生成所有可能的哈希值并破解某个7字符哈希(抛开生日攻击)需要多长时间.
例如,取上面的数字,如果现代四核可以每分钟产生100万个哈希值,那么8031810176 / 1000000 / 60 = 133.86在该范围内找到所有可能的哈希值需要数小时.
此外,具有原生AES的新型Sandy Bridge英特尔芯片如何发挥作用?
我有一组不同大小的正方形和矩形,我想用PHP将它们组合成一个大的正方形/矩形.正方形通常是我想制作蒙太奇的图像 - 但有时它们只是数学对象.
是否有任何PHP算法,这种类型的东西叫什么?
更新:经过更多搜索后,我认为我想要的是bin包装问题.但是,我还想为某些类型的包装问题(如图像)添加一定量的随机化,以引起人们的兴趣.
language-agnostic algorithm math cluster-analysis bin-packing
在启动项目时,我经常会想到几个不同的模式.经过粗略的猜测后,我意识到有些人对增长或存储空间的优化程度低于其他人.显然,列值的大小是主要的.但表元数据,索引和行标题也都起作用.
此外,RDBMS使用与对象或键值数据库完全不同的数据存储方法.
试图找出数据库存储的成本(或需要的空间)有哪些好的资源?
请注意,我的问题与选择数据库没什么关系,而是知道如何最有效地正确使用每个数据库的设计.PostgreSQL,MySQL,CouchDB等数据库都有不同的目标用例和多种方法来解决同样的问题.因此,了解每个解决方案的存储成本将有助于为架构选择最佳解决方案.
在我的私人WAMP PC上运行一些PHP代码时,我突然从服务器得到一个空白的响应 - 实际上没有响应.没有标题,没有数据,PHP错误日志中没有任何内容,nada.我重新启动了APACHE和PHP,但仍然没有.我知道php正在运行,因为我可以正常访问其他PHP脚本.
Firebug报告没有标题,?字节,只需要163ms来"加载"(所以它不是超时).我想到了快速的内存消耗 - 但我监控了我的PC的内存并且没有出现任何高峰.到目前为止,错误和例外一直很好.
世界上有什么?
max_execution_time = 30 ;
max_input_time = 60 ;
max_input_nesting_level = 64 ;
memory_limit = 500M ;
error_reporting = E_ALL | E_NOTICE | E_STRICT
display_errors = On
log_errors = On
Run Code Online (Sandbox Code Playgroud)
:编辑:
我不会@用十英尺杆接触.我认为红宝石家伙会把它扔进去,所以程序员会放弃PHP.
无论如何,我启用了xdebug并且它没有输出任何研磨文件.然后我接受了zombat的建议并在页面顶部放置了一个DIE()并且它有效.我想我只是有一些非常奇怪的代码完全杀死了PHP.即使错误被禁用或抑制,@我仍然应该从服务器返回带有空内容的标题!
如果我发现更多,我会回复.
我通常使用HTTP请求在我的Web服务器(在不同位置)之间传递数据(如果它是敏感的,有时使用SSL).我想知道是否有任何更轻的协议,我可以交换HTTP(S),因为它也支持公共/私人密钥,如SSH或其他东西.
我之前使用PHP套接字构建了一个SMTP客户端,所以如果需要,我不介意这样做.
我的房子刚刚停电了,现在我的git repo(当它发生时我正承诺)正在报告:
user@localhost$ git fsck
fatal: object 192e0282d23863ec80375a77011012ef8cb80f77 is corrupted
Run Code Online (Sandbox Code Playgroud)
我不能因为这个错误而提交.拉取和取出似乎仍然正常.
user@localhost$ git commit
error: unable to find 192e0282d23863ec80375a77011012ef8cb80f77
fatal: 192e0282d23863ec80375a77011012ef8cb80f77 is not a valid object
Run Code Online (Sandbox Code Playgroud)
我尝试重置它,但它没有做任何事情
git reset HEAD 192e0282d23863ec80375a77011012ef8cb80f77
git gc
Run Code Online (Sandbox Code Playgroud)
我该如何解决?
更新:文件仍然很好所以我只是克隆了一个新的repo实例并手动移动文件(很高兴这不是唯一的repo实例!).但是,我保留了破损的回购,以便我可以尝试在此处发布的修补程序,以防下次有时间.
Github提供了一种让URL知道何时使用webhook更新项目的方法.
如何验证发送到我服务器的post-receive hook的帖子实际上来自github?
我应该检查发件人的IP地址,还是可以在某处发送身份验证?我想确保有人不会试图欺骗假装来自github的请求.
一种选择是通过PubSubHubbub设置钩子并使用该hub.secret选项创建帖子体的SHA1 HMAC签名.但是,这需要我的服务器设置请求,而不是等待用户在他们想要的时候设置后接收回调到我的网站.我宁愿让用户将我提供的URL粘贴到帖子网址中.
我有一些大型文件,我想在通过线路发送或保存到磁盘之前进行AES加密.虽然似乎可以加密流,但似乎有警告不要这样做,而是人们建议将文件分成块并使用GCM或crypto/nacl/secretbox.
由于真实性要求,处理数据流更加困难.我们不能加密 - 然后MAC:根据它的性质,我们通常不知道流的大小.我们无法在流完成后发送MAC,因为通常由关闭的流指示.我们无法动态解密流,因为我们必须查看整个密文才能检查MAC.尝试保护流会增加问题的复杂性,没有好的答案.解决方案是将流分解为离散的块,并将它们视为消息.
文件被分段为4KiB块.每次修改时,每个块都会获得一个新的随机128位IV.128位身份验证标记(GHASH)可保护每个块免受修改.
如果解密了大量数据,则在验证身份验证标记之前,并不总是可以缓冲所有解密数据.将数据拆分成小块可以解决延迟身份验证检查的问题,但会引入一个新问题.块可以重新排序......因为每个块都是单独加密的.因此,必须以某种方式将块的顺序编码到块本身中,以便能够检测重新排列任意数量的块.
任何具有实际密码学经验的人都可以指出我正确的方向吗?
我在问这个问题之后意识到,简单地说不能将整个字节流放入内存(加密10GB文件)之间存在差异,字节流也是一个未知的长度,可能会长时间超过流的启动需求要解码(24小时直播视频流).
我最感兴趣的是大blob,在开始需要解码之前可以到达流的末尾.换句话说,加密不需要将整个明文/密文同时加载到存储器中.
php ×2
aes ×1
algorithm ×1
bin-packing ×1
cpu ×1
encryption ×1
git ×1
github ×1
gnupg ×1
go ×1
hash ×1
http ×1
large-data ×1
math ×1
nosql ×1
null ×1
openpgp ×1
postgresql ×1
protocols ×1
rdbms ×1
repository ×1
sha2 ×1
storage ×1
webhooks ×1
wsod ×1