小编Fil*_*ina的帖子

OSX中的python crypt

我有一个Django应用程序,它重置在Ubuntu机器上运行的unix用户密码,但我的开发环境是OS X,我遇到了这种烦人的情况:

OS X:

>>> import crypt
>>> crypt.crypt('test','$1$VFvON1xK$')
'$1SoNol0Ye6Xk'
Run Code Online (Sandbox Code Playgroud)

Linux的:

>>> import crypt
>>> crypt.crypt('test','$1$VFvON1xK$')
'$1$VFvON1xK$SboCDZGBieKF1ns2GBfY50'
Run Code Online (Sandbox Code Playgroud)

从阅读pydoc开始crypt,我看到它使用了特定于操作系统的crypt实现,因此我还在两个系统中测试了以下代码,结果与Python相同:

#include <unistd.h>

int main() {
        char *des = crypt("test","$1$VFvON1xK$ls4Zz4XTEuVI.1PnYm28.1");
        puts(des);
}
Run Code Online (Sandbox Code Playgroud)

我如何让OS X的crypt()实现产生与Linux相同的结果crypt()
为什么Python实现没有涵盖这一点(正如我对跨平台部署的这种情况所期望的那样)?

c python encryption

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

转发协议@required到子类

我有:

@interface SuperClass : UIViewController <UITableViewDelegate,UITableViewDataSource>
Run Code Online (Sandbox Code Playgroud)

然后

@interface SubClass : SuperClass
Run Code Online (Sandbox Code Playgroud)

SuperClass没有实现所需的协议方法SubClass.
是否可以防止警告(说SuperClass实现不完整)?

而不是实现empty/nil方法SuperClass,可以对@required警告进行验证SubClass吗?

objective-c

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

C变量声明

有什么区别

char *a[10];
Run Code Online (Sandbox Code Playgroud)

char *(a[10]); 
Run Code Online (Sandbox Code Playgroud)

我总是使用第一个用于char指针数组,但现在我发现代码使用了第二个.
由于我不确定它是否是同一个东西,我打印sizeof()两者都返回80(64位操作系统)所以我倾向于相信两者是相同的(一个char指针数组).

但由于我无法在线或使用*([])语法找到任何解释,我正在寻找一些确认.

谢谢

c

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

创建PKCS#7分离签名

我一直在谷歌搜索如何做到这一点(在Java中),但收效甚微.
创建Signature对象非常简单,获取证书链也是如此,但如何使用该数据创建分离的PKCS#7对象?

java keystore digital-signature x509certificate pkcs#7

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

django模板:过滤后点

所以我在模板上下文中有一个列表,我想随机应用然后访问结果对象的属性.
到目前为止,我在django文档的模板部分读到的内容,过滤器总是必须在变量之后才能理解(尽管我还是尝试过)

{{ my_list|random.attribute }}
Run Code Online (Sandbox Code Playgroud)

不行.
现在我正在使用自定义过滤器来访问属性,所以我可以在任何其他过滤器之后将其链接起来,但对此最好的解决方案是什么?

django-templates

3
推荐指数
1
解决办法
355
查看次数