问题列表 - 第14269页

SplObjectStorage不能与String一起使用,该怎么办?

有人建议使用SplObjectStorage来跟踪一组独特的东西.很好,除了它不适用于字符串.错误说"SplObjectStorage :: attach()期望参数1是对象,在第59行的fback.php中给出的字符串"

有任何想法吗?

php spl

7
推荐指数
2
解决办法
2883
查看次数


使用MD5从密码生成加密密钥?

我正在编写一个简单的文件加密程序.主要是作为学术练习,但可能用于未来的严肃使用.所有繁重的工作都是通过第三方库完成的,但是以非安全的方式将这些部分放在一起对于非密码学家来说仍然是一个挑战.基本上,我已经掌握了一切我认为应该的方式.

我使用128位AES进行加密,密钥长度为128位.我希望用户能够输入可变长度密码,因此我决定使用MD5散列密码,然后使用散列作为密钥.我认为这是可以接受的 - 钥匙总是应该是一个秘密,所以没有理由担心碰撞攻击.

现在我已经实现了这个,我遇到了几篇文章,表明这是一个坏主意.我的问题是:为什么?如果选择了一个好的密码,那么密码本身应该足够强大,除非通过特殊的(读取:当前不可行的)蛮力努力,否则永远不会泄露密钥,对吧?我应该使用像PBKDF2这样的东西来生成密钥,还是除了最极端的加密应用程序之外的所有内容都是过度杀伤?

md5 key aes pbkdf2

5
推荐指数
1
解决办法
8071
查看次数

'变量名'不能出现在常量表达式c ++中

任何人都有任何线索这个错误可能意味着什么?我正在绊倒一些似乎无法绕过它的代码.我用h*2代替hprime尝试了它,只用w*2而不是wprime.每次我得到相同的编译器(g ++编译器)错误:

grid.cpp:在构造函数'Grid :: Grid(int,int)'中:

grid.cpp:34:错误:'hprime'不能出现在常量表达式中

(编译器并不总是说hprime,它会说出任何变量,无论是h还是hprime或width).任何帮助将不胜感激!

class Grid
{
    public:
    Grid(int x, int y);
    ~Grid();

    void addObstacle(int w, int h);
    void toString();

    int** grid;
    int height;
    int width;

};

Grid::Grid(int w, int h)
{
    width = w;
    height = h;
    const int hprime = h*2;
    const int wprime = w*2;
    grid = new int[wprime][hprime];

    for(int x=0;x<wprime;x++) {
        for (int y=0; y<hprime;y++) {
            grid[x][y] = 0;<br>
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

c++ compiler-construction g++

8
推荐指数
1
解决办法
2万
查看次数

从Java VM无效访问堆栈红区

我试图弄清楚在Java中可能导致此错误的原因:

Invalid access of stack red zone 0x115ee0ed0 rip=0x114973900
Run Code Online (Sandbox Code Playgroud)

有没有人遇到过这个错误信息?它实际上是在杀死JVM,一切都停在那里.

我目前正在使用这个版本的Java :(在OS X 10.6上)

java version "1.6.0_15"
Java(TM) SE Runtime Environment (build 1.6.0_15-b03-219)
Java HotSpot(TM) 64-Bit Server VM (build 14.1-b02-90, mixed mode)
Run Code Online (Sandbox Code Playgroud)

我正在寻找的是关于如何避免再次发生这种情况的某种解释和提示.

提前致谢!

java jvm jvm-hotspot red-zone

15
推荐指数
2
解决办法
5751
查看次数

了解锁定帮助?

我正在创建一个处理数千个请求的ASP.net网站,这一切都源于他们共享的一个主要对象来阅读它.我试图绕过这些不同类型的锁.

我对每个人都有一些常见问题.

  1. 每个锁应用程序,会话,对象的范围是什么
  2. 什么时候使用一个而不是另一个?
  3. 多个用户可以一次运行锁中的代码吗?
  4. 表现命中?

1.

public class MyClass
   {
      lock
      {
        // DO COOL CODE STUFF.
      }
   }
Run Code Online (Sandbox Code Playgroud)

2.

public class MyClass
{
  Application.Lock  
  // DO COOL CODE STUFF.
  Application.Unlock 
 } 
Run Code Online (Sandbox Code Playgroud)

3.

public static object lockObject = new object();
public class MyClass
{    
    lock(lockObject) 
    {
      // DO COOL CODE STUFF. 
    }
}
Run Code Online (Sandbox Code Playgroud)

4.

private static readonly ReaderWriterLockSlim slimLock =  new ReaderWriterLockSlim();
public class MyClass
{
    slimLock.EnterWriteLock();
    // DO COOL CODE STUFF HERE.     
    slimLock.ExitWriteLock();
}
Run Code Online (Sandbox Code Playgroud)

c# asp.net locking

5
推荐指数
1
解决办法
210
查看次数

如何在CSS中获得align ="center"效果并符合XHTML并使其适用于大多数浏览器

我试图让一些HTML页面更加合规,并开始使用简单的东西,比如删除表格中的align ="center"等.

但是,我似乎无法使用CSS获得我想要的效果.东西我试过包括

text-align:middle
vertical-align:middle
Run Code Online (Sandbox Code Playgroud)

并且是设计师朋友最推荐的

margin-left:auto; margin-right:auto; width: 100px
Run Code Online (Sandbox Code Playgroud)

但在某些布局或某些浏览器(尤其是IE6)下似乎没有任何工作.是否有一种可靠的方法来使用纯CSS并使其适用于大多数浏览器?

编辑:我的意思text-align: center;.匆匆输入.该页面已有DOCTYPE,但我不确定它是否合适.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Run Code Online (Sandbox Code Playgroud)

html css xhtml

0
推荐指数
1
解决办法
4669
查看次数

在C++中将AES加密字符串转换为十六进制

我有一个char*字符串,我使用AES加密编码.此字符串包含各种十六进制字符,而不仅仅是ASCII可查看的字符.我需要转换这个字符串,以便我可以通过HTTP发送它,它不接受加密算法生成的所有字符.

转换此字符串的最佳方法是什么?我使用了以下函数但是有很多空格(0xFF),它无法转换所有字符.

char *strToHex(char *str){
   char *buffer = new char[(dStrlen(str)*2)+1];
   char *pbuffer = buffer;
   int len = strlen( str );
   for(int i = 0; i < len ; ++i ){
      sprintf(pbuffer, "%02X", str[i]);
      pbuffer += 2;
   }
   return buffer;
}
Run Code Online (Sandbox Code Playgroud)

谢谢你,贾斯汀

c++

2
推荐指数
2
解决办法
1626
查看次数

Access数据库默认日期不能包含00小时,00分钟或00秒

所以,我们有许多年前编写的旧的VB 6应用程序.

它使用Access数据库来存储数据,而VB6 App作为此数据的接口现在,更改VB6应用程序将非常困难,而我正在努力避免这种情况.

问题是,当VB6将数据插入到访问数据库中的表中时,该表有一个使用"Now()"来设置默认值的列.

现在有关于此日期和时间值的计算,包括乘法.所以..当任何日期/时间成分为0时,最终结果为0.

IE dd*mm*yy*hh*n*s - 如果有的话为零,结果为零

为了克服这个问题我可以
•改变用于指定日期的代码(不是很理想)
希望在Access数据库的默认值中进行一些验证以确保时间中没有0值

是否有任何方法可以验证这样的默认值?就像是

If DatePart(‘hh’,date) == 0 OR DatePart(‘n’,date) = 0 OR DatePart(‘s’,Date) = 0
Then add one to all of them.
Run Code Online (Sandbox Code Playgroud)

编辑
这不是我的代码,这是我之前编写的代码,以及其他开发人员的开始.
我们无法确定我们的代码是生产中使用的代码.因此,为什么我宁愿不改变代码.我们计划在时间允许的情况下尽快重写.
问题每月只发生一次或两次,因此对应用程序的运行并不重要.

vb6 ms-access

0
推荐指数
1
解决办法
386
查看次数

'git'的JIRA代码验证提交钩子

有没有人有我可以使用的git提交钩子,以确保在签入消息中出现JIRA问题编号?我没有从git commit hook驱动JIRA的经验,所以任何帮助都会受到赞赏 - 工作源更是如此!

git commit-message jira

14
推荐指数
1
解决办法
1万
查看次数